
001package org.hl7.fhir.r5.formats; 002 003// generated 004 005/* 006 Copyright (c) 2011+, HL7, Inc. 007 All rights reserved. 008 009 Redistribution and use in source and binary forms, with or without modification, \ 010 are permitted provided that the following conditions are met: 011 012 * Redistributions of source code must retain the above copyright notice, this \ 013 list of conditions and the following disclaimer. 014 * Redistributions in binary form must reproduce the above copyright notice, \ 015 this list of conditions and the following disclaimer in the documentation \ 016 and/or other materials provided with the distribution. 017 * Neither the name of HL7 nor the names of its contributors may be used to 018 endorse or promote products derived from this software without specific 019 prior written permission. 020 021 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ 022 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ 023 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ 024 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ 025 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ 026 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ 027 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ 028 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ 029 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ 030 POSSIBILITY OF SUCH DAMAGE. 031 */ 032 033// Generated on Thu, Mar 23, 2023 19:59+1100 for FHIR v5.0.0 034 035 036 037import org.hl7.fhir.r5.model.*; 038import org.hl7.fhir.r5.model.Enumerations.FHIRVersion; 039import org.xmlpull.v1.*; 040import org.hl7.fhir.utilities.Utilities; 041import org.hl7.fhir.exceptions.FHIRFormatError; 042import org.hl7.fhir.exceptions.FHIRException; 043import java.io.IOException; 044 045public class XmlParser extends XmlParserBase { 046 047 public XmlParser() { 048 super(); 049 } 050 051 public XmlParser(boolean allowUnknownContent) { 052 super(); 053 setAllowUnknownContent(allowUnknownContent); 054 } 055 056 protected boolean parseBaseContent(int eventType, XmlPullParser xpp, Base res) throws XmlPullParserException, IOException, FHIRFormatError { 057 return false; 058 } 059 060 @SuppressWarnings("unchecked") 061 protected <E extends Enum<E>> Enumeration<E> parseEnumeration(XmlPullParser xpp, E item, EnumFactory e) throws XmlPullParserException, IOException, FHIRFormatError { 062 Enumeration<E> res = new Enumeration<E>(e); 063 parseElementAttributes(xpp, res); 064 res.setValue((E) e.fromCode(xpp.getAttributeValue(null, "value"))); 065 next(xpp); 066 int eventType = nextNoWhitespace(xpp); 067 while (eventType != XmlPullParser.END_TAG) { 068 if (!parseElementContent(eventType, xpp, res)) 069 unknownContent(xpp); 070 eventType = nextNoWhitespace(xpp); 071 } 072 next(xpp); 073 parseElementClose(res); 074 return res; 075 } 076 077 protected DateType parseDate(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 078 DateType res = new DateType(xpp.getAttributeValue(null, "value")); 079 parseElementAttributes(xpp, res); 080 next(xpp); 081 int eventType = nextNoWhitespace(xpp); 082 while (eventType != XmlPullParser.END_TAG) { 083 if (!parseElementContent(eventType, xpp, res)) 084 unknownContent(xpp); 085 eventType = nextNoWhitespace(xpp); 086 } 087 next(xpp); 088 parseElementClose(res); 089 return res; 090 } 091 092 protected DateTimeType parseDateTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 093 DateTimeType res = new DateTimeType(xpp.getAttributeValue(null, "value")); 094 parseElementAttributes(xpp, res); 095 next(xpp); 096 int eventType = nextNoWhitespace(xpp); 097 while (eventType != XmlPullParser.END_TAG) { 098 if (!parseElementContent(eventType, xpp, res)) 099 unknownContent(xpp); 100 eventType = nextNoWhitespace(xpp); 101 } 102 next(xpp); 103 parseElementClose(res); 104 return res; 105 } 106 107 protected CodeType parseCode(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 108 CodeType res = new CodeType(xpp.getAttributeValue(null, "value")); 109 parseElementAttributes(xpp, res); 110 next(xpp); 111 int eventType = nextNoWhitespace(xpp); 112 while (eventType != XmlPullParser.END_TAG) { 113 if (!parseElementContent(eventType, xpp, res)) 114 unknownContent(xpp); 115 eventType = nextNoWhitespace(xpp); 116 } 117 next(xpp); 118 parseElementClose(res); 119 return res; 120 } 121 122 protected StringType parseString(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 123 StringType res = new StringType(xpp.getAttributeValue(null, "value")); 124 parseElementAttributes(xpp, res); 125 next(xpp); 126 int eventType = nextNoWhitespace(xpp); 127 while (eventType != XmlPullParser.END_TAG) { 128 if (!parseElementContent(eventType, xpp, res)) 129 unknownContent(xpp); 130 eventType = nextNoWhitespace(xpp); 131 } 132 next(xpp); 133 parseElementClose(res); 134 return res; 135 } 136 137 protected IntegerType parseInteger(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 138 IntegerType res = new IntegerType(xpp.getAttributeValue(null, "value")); 139 parseElementAttributes(xpp, res); 140 next(xpp); 141 int eventType = nextNoWhitespace(xpp); 142 while (eventType != XmlPullParser.END_TAG) { 143 if (!parseElementContent(eventType, xpp, res)) 144 unknownContent(xpp); 145 eventType = nextNoWhitespace(xpp); 146 } 147 next(xpp); 148 parseElementClose(res); 149 return res; 150 } 151 152 protected Integer64Type parseInteger64(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 153 Integer64Type res = new Integer64Type(xpp.getAttributeValue(null, "value")); 154 parseElementAttributes(xpp, res); 155 next(xpp); 156 int eventType = nextNoWhitespace(xpp); 157 while (eventType != XmlPullParser.END_TAG) { 158 if (!parseElementContent(eventType, xpp, res)) 159 unknownContent(xpp); 160 eventType = nextNoWhitespace(xpp); 161 } 162 next(xpp); 163 parseElementClose(res); 164 return res; 165 } 166 167 protected OidType parseOid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 168 OidType res = new OidType(xpp.getAttributeValue(null, "value")); 169 parseElementAttributes(xpp, res); 170 next(xpp); 171 int eventType = nextNoWhitespace(xpp); 172 while (eventType != XmlPullParser.END_TAG) { 173 if (!parseElementContent(eventType, xpp, res)) 174 unknownContent(xpp); 175 eventType = nextNoWhitespace(xpp); 176 } 177 next(xpp); 178 parseElementClose(res); 179 return res; 180 } 181 182 protected CanonicalType parseCanonical(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 183 CanonicalType res = new CanonicalType(xpp.getAttributeValue(null, "value")); 184 parseElementAttributes(xpp, res); 185 next(xpp); 186 int eventType = nextNoWhitespace(xpp); 187 while (eventType != XmlPullParser.END_TAG) { 188 if (!parseElementContent(eventType, xpp, res)) 189 unknownContent(xpp); 190 eventType = nextNoWhitespace(xpp); 191 } 192 next(xpp); 193 parseElementClose(res); 194 return res; 195 } 196 197 protected UriType parseUri(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 198 UriType res = new UriType(xpp.getAttributeValue(null, "value")); 199 parseElementAttributes(xpp, res); 200 next(xpp); 201 int eventType = nextNoWhitespace(xpp); 202 while (eventType != XmlPullParser.END_TAG) { 203 if (!parseElementContent(eventType, xpp, res)) 204 unknownContent(xpp); 205 eventType = nextNoWhitespace(xpp); 206 } 207 next(xpp); 208 parseElementClose(res); 209 return res; 210 } 211 212 protected UuidType parseUuid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 213 UuidType res = new UuidType(xpp.getAttributeValue(null, "value")); 214 parseElementAttributes(xpp, res); 215 next(xpp); 216 int eventType = nextNoWhitespace(xpp); 217 while (eventType != XmlPullParser.END_TAG) { 218 if (!parseElementContent(eventType, xpp, res)) 219 unknownContent(xpp); 220 eventType = nextNoWhitespace(xpp); 221 } 222 next(xpp); 223 parseElementClose(res); 224 return res; 225 } 226 227 protected UrlType parseUrl(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 228 UrlType res = new UrlType(xpp.getAttributeValue(null, "value")); 229 parseElementAttributes(xpp, res); 230 next(xpp); 231 int eventType = nextNoWhitespace(xpp); 232 while (eventType != XmlPullParser.END_TAG) { 233 if (!parseElementContent(eventType, xpp, res)) 234 unknownContent(xpp); 235 eventType = nextNoWhitespace(xpp); 236 } 237 next(xpp); 238 parseElementClose(res); 239 return res; 240 } 241 242 protected InstantType parseInstant(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 243 InstantType res = new InstantType(xpp.getAttributeValue(null, "value")); 244 parseElementAttributes(xpp, res); 245 next(xpp); 246 int eventType = nextNoWhitespace(xpp); 247 while (eventType != XmlPullParser.END_TAG) { 248 if (!parseElementContent(eventType, xpp, res)) 249 unknownContent(xpp); 250 eventType = nextNoWhitespace(xpp); 251 } 252 next(xpp); 253 parseElementClose(res); 254 return res; 255 } 256 257 protected BooleanType parseBoolean(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 258 BooleanType res = new BooleanType(xpp.getAttributeValue(null, "value")); 259 parseElementAttributes(xpp, res); 260 next(xpp); 261 int eventType = nextNoWhitespace(xpp); 262 while (eventType != XmlPullParser.END_TAG) { 263 if (!parseElementContent(eventType, xpp, res)) 264 unknownContent(xpp); 265 eventType = nextNoWhitespace(xpp); 266 } 267 next(xpp); 268 parseElementClose(res); 269 return res; 270 } 271 272 protected Base64BinaryType parseBase64Binary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 273 Base64BinaryType res = new Base64BinaryType(xpp.getAttributeValue(null, "value")); 274 parseElementAttributes(xpp, res); 275 next(xpp); 276 int eventType = nextNoWhitespace(xpp); 277 while (eventType != XmlPullParser.END_TAG) { 278 if (!parseElementContent(eventType, xpp, res)) 279 unknownContent(xpp); 280 eventType = nextNoWhitespace(xpp); 281 } 282 next(xpp); 283 parseElementClose(res); 284 return res; 285 } 286 287 protected UnsignedIntType parseUnsignedInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 288 UnsignedIntType res = new UnsignedIntType(xpp.getAttributeValue(null, "value")); 289 parseElementAttributes(xpp, res); 290 next(xpp); 291 int eventType = nextNoWhitespace(xpp); 292 while (eventType != XmlPullParser.END_TAG) { 293 if (!parseElementContent(eventType, xpp, res)) 294 unknownContent(xpp); 295 eventType = nextNoWhitespace(xpp); 296 } 297 next(xpp); 298 parseElementClose(res); 299 return res; 300 } 301 302 protected MarkdownType parseMarkdown(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 303 MarkdownType res = new MarkdownType(xpp.getAttributeValue(null, "value")); 304 parseElementAttributes(xpp, res); 305 next(xpp); 306 int eventType = nextNoWhitespace(xpp); 307 while (eventType != XmlPullParser.END_TAG) { 308 if (!parseElementContent(eventType, xpp, res)) 309 unknownContent(xpp); 310 eventType = nextNoWhitespace(xpp); 311 } 312 next(xpp); 313 parseElementClose(res); 314 return res; 315 } 316 317 protected TimeType parseTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 318 TimeType res = new TimeType(xpp.getAttributeValue(null, "value")); 319 parseElementAttributes(xpp, res); 320 next(xpp); 321 int eventType = nextNoWhitespace(xpp); 322 while (eventType != XmlPullParser.END_TAG) { 323 if (!parseElementContent(eventType, xpp, res)) 324 unknownContent(xpp); 325 eventType = nextNoWhitespace(xpp); 326 } 327 next(xpp); 328 parseElementClose(res); 329 return res; 330 } 331 332 protected IdType parseId(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 333 IdType res = new IdType(xpp.getAttributeValue(null, "value")); 334 parseElementAttributes(xpp, res); 335 next(xpp); 336 int eventType = nextNoWhitespace(xpp); 337 while (eventType != XmlPullParser.END_TAG) { 338 if (!parseElementContent(eventType, xpp, res)) 339 unknownContent(xpp); 340 eventType = nextNoWhitespace(xpp); 341 } 342 next(xpp); 343 parseElementClose(res); 344 return res; 345 } 346 347 protected PositiveIntType parsePositiveInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 348 PositiveIntType res = new PositiveIntType(xpp.getAttributeValue(null, "value")); 349 parseElementAttributes(xpp, res); 350 next(xpp); 351 int eventType = nextNoWhitespace(xpp); 352 while (eventType != XmlPullParser.END_TAG) { 353 if (!parseElementContent(eventType, xpp, res)) 354 unknownContent(xpp); 355 eventType = nextNoWhitespace(xpp); 356 } 357 next(xpp); 358 parseElementClose(res); 359 return res; 360 } 361 362 protected DecimalType parseDecimal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 363 DecimalType res = new DecimalType(xpp.getAttributeValue(null, "value")); 364 parseElementAttributes(xpp, res); 365 next(xpp); 366 int eventType = nextNoWhitespace(xpp); 367 while (eventType != XmlPullParser.END_TAG) { 368 if (!parseElementContent(eventType, xpp, res)) 369 unknownContent(xpp); 370 eventType = nextNoWhitespace(xpp); 371 } 372 next(xpp); 373 parseElementClose(res); 374 return res; 375 } 376 377 protected boolean parseBackboneElementContent(int eventType, XmlPullParser xpp, BackboneElement res) throws XmlPullParserException, IOException, FHIRFormatError { 378 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) { 379 res.getModifierExtension().add(parseExtension(xpp)); 380 } else if (!parseElementContent(eventType, xpp, res)){ 381 return false; 382 } 383 return true; 384 } 385 386 protected boolean parseBackboneTypeContent(int eventType, XmlPullParser xpp, BackboneType res) throws XmlPullParserException, IOException, FHIRFormatError { 387 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) { 388 res.getModifierExtension().add(parseExtension(xpp)); 389 } else if (!parseDataTypeContent(eventType, xpp, res)){ 390 return false; 391 } 392 return true; 393 } 394 395 protected boolean parseDataTypeContent(int eventType, XmlPullParser xpp, DataType res) throws XmlPullParserException, IOException, FHIRFormatError { 396 if (!parseElementContent(eventType, xpp, res)){ 397 return false; 398 } 399 return true; 400 } 401 402 protected boolean parseElementContent(int eventType, XmlPullParser xpp, Element res) throws XmlPullParserException, IOException, FHIRFormatError { 403 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) { 404 res.getExtension().add(parseExtension(xpp)); 405 } else if (!parseBaseContent(eventType, xpp, res)){ 406 return false; 407 } 408 return true; 409 } 410 411 protected Address parseAddress(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 412 Address res = new Address(); 413 parseElementAttributes(xpp, res); 414 next(xpp); 415 int eventType = nextNoWhitespace(xpp); 416 while (eventType != XmlPullParser.END_TAG) { 417 if (!parseAddressContent(eventType, xpp, res)) 418 unknownContent(xpp); 419 eventType = nextNoWhitespace(xpp); 420 } 421 next(xpp); 422 parseElementClose(res); 423 return res; 424 } 425 426 protected boolean parseAddressContent(int eventType, XmlPullParser xpp, Address res) throws XmlPullParserException, IOException, FHIRFormatError { 427 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 428 res.setUseElement(parseEnumeration(xpp, Address.AddressUse.NULL, new Address.AddressUseEnumFactory())); 429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 430 res.setTypeElement(parseEnumeration(xpp, Address.AddressType.NULL, new Address.AddressTypeEnumFactory())); 431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 432 res.setTextElement(parseString(xpp)); 433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("line")) { 434 res.getLine().add(parseString(xpp)); 435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("city")) { 436 res.setCityElement(parseString(xpp)); 437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("district")) { 438 res.setDistrictElement(parseString(xpp)); 439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 440 res.setStateElement(parseString(xpp)); 441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("postalCode")) { 442 res.setPostalCodeElement(parseString(xpp)); 443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 444 res.setCountryElement(parseString(xpp)); 445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 446 res.setPeriod(parsePeriod(xpp)); 447 } else if (!parseDataTypeContent(eventType, xpp, res)){ 448 return false; 449 } 450 return true; 451 } 452 453 protected Age parseAge(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 454 Age res = new Age(); 455 parseElementAttributes(xpp, res); 456 next(xpp); 457 int eventType = nextNoWhitespace(xpp); 458 while (eventType != XmlPullParser.END_TAG) { 459 if (!parseAgeContent(eventType, xpp, res)) 460 unknownContent(xpp); 461 eventType = nextNoWhitespace(xpp); 462 } 463 next(xpp); 464 parseElementClose(res); 465 return res; 466 } 467 468 protected boolean parseAgeContent(int eventType, XmlPullParser xpp, Age res) throws XmlPullParserException, IOException, FHIRFormatError { 469 if (!parseQuantityContent(eventType, xpp, res)){ 470 return false; 471 } 472 return true; 473 } 474 475 protected Annotation parseAnnotation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 476 Annotation res = new Annotation(); 477 parseElementAttributes(xpp, res); 478 next(xpp); 479 int eventType = nextNoWhitespace(xpp); 480 while (eventType != XmlPullParser.END_TAG) { 481 if (!parseAnnotationContent(eventType, xpp, res)) 482 unknownContent(xpp); 483 eventType = nextNoWhitespace(xpp); 484 } 485 next(xpp); 486 parseElementClose(res); 487 return res; 488 } 489 490 protected boolean parseAnnotationContent(int eventType, XmlPullParser xpp, Annotation res) throws XmlPullParserException, IOException, FHIRFormatError { 491 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "author")) { 492 res.setAuthor(parseType("author", xpp)); 493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 494 res.setTimeElement(parseDateTime(xpp)); 495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 496 res.setTextElement(parseMarkdown(xpp)); 497 } else if (!parseDataTypeContent(eventType, xpp, res)){ 498 return false; 499 } 500 return true; 501 } 502 503 protected Attachment parseAttachment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 504 Attachment res = new Attachment(); 505 parseElementAttributes(xpp, res); 506 next(xpp); 507 int eventType = nextNoWhitespace(xpp); 508 while (eventType != XmlPullParser.END_TAG) { 509 if (!parseAttachmentContent(eventType, xpp, res)) 510 unknownContent(xpp); 511 eventType = nextNoWhitespace(xpp); 512 } 513 next(xpp); 514 parseElementClose(res); 515 return res; 516 } 517 518 protected boolean parseAttachmentContent(int eventType, XmlPullParser xpp, Attachment res) throws XmlPullParserException, IOException, FHIRFormatError { 519 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 520 res.setContentTypeElement(parseCode(xpp)); 521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 522 res.setLanguageElement(parseCode(xpp)); 523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 524 res.setDataElement(parseBase64Binary(xpp)); 525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 526 res.setUrlElement(parseUrl(xpp)); 527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("size")) { 528 res.setSizeElement(parseInteger64(xpp)); 529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hash")) { 530 res.setHashElement(parseBase64Binary(xpp)); 531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 532 res.setTitleElement(parseString(xpp)); 533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("creation")) { 534 res.setCreationElement(parseDateTime(xpp)); 535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("height")) { 536 res.setHeightElement(parsePositiveInt(xpp)); 537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("width")) { 538 res.setWidthElement(parsePositiveInt(xpp)); 539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frames")) { 540 res.setFramesElement(parsePositiveInt(xpp)); 541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 542 res.setDurationElement(parseDecimal(xpp)); 543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pages")) { 544 res.setPagesElement(parsePositiveInt(xpp)); 545 } else if (!parseDataTypeContent(eventType, xpp, res)){ 546 return false; 547 } 548 return true; 549 } 550 551 protected Availability parseAvailability(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 552 Availability res = new Availability(); 553 parseElementAttributes(xpp, res); 554 next(xpp); 555 int eventType = nextNoWhitespace(xpp); 556 while (eventType != XmlPullParser.END_TAG) { 557 if (!parseAvailabilityContent(eventType, xpp, res)) 558 unknownContent(xpp); 559 eventType = nextNoWhitespace(xpp); 560 } 561 next(xpp); 562 parseElementClose(res); 563 return res; 564 } 565 566 protected boolean parseAvailabilityContent(int eventType, XmlPullParser xpp, Availability res) throws XmlPullParserException, IOException, FHIRFormatError { 567 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableTime")) { 568 res.getAvailableTime().add(parseAvailabilityAvailableTimeComponent(xpp)); 569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notAvailableTime")) { 570 res.getNotAvailableTime().add(parseAvailabilityNotAvailableTimeComponent(xpp)); 571 } else if (!parseDataTypeContent(eventType, xpp, res)){ 572 return false; 573 } 574 return true; 575 } 576 577 protected Availability.AvailabilityAvailableTimeComponent parseAvailabilityAvailableTimeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 578 Availability.AvailabilityAvailableTimeComponent res = new Availability.AvailabilityAvailableTimeComponent(); 579 parseElementAttributes(xpp, res); 580 next(xpp); 581 int eventType = nextNoWhitespace(xpp); 582 while (eventType != XmlPullParser.END_TAG) { 583 if (!parseAvailabilityAvailableTimeComponentContent(eventType, xpp, res)) 584 unknownContent(xpp); 585 eventType = nextNoWhitespace(xpp); 586 } 587 next(xpp); 588 parseElementClose(res); 589 return res; 590 } 591 592 protected boolean parseAvailabilityAvailableTimeComponentContent(int eventType, XmlPullParser xpp, Availability.AvailabilityAvailableTimeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 593 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysOfWeek")) { 594 res.getDaysOfWeek().add(parseEnumeration(xpp, Enumerations.DaysOfWeek.NULL, new Enumerations.DaysOfWeekEnumFactory())); 595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allDay")) { 596 res.setAllDayElement(parseBoolean(xpp)); 597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableStartTime")) { 598 res.setAvailableStartTimeElement(parseTime(xpp)); 599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableEndTime")) { 600 res.setAvailableEndTimeElement(parseTime(xpp)); 601 } else if (!parseElementContent(eventType, xpp, res)){ 602 return false; 603 } 604 return true; 605 } 606 607 protected Availability.AvailabilityNotAvailableTimeComponent parseAvailabilityNotAvailableTimeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 608 Availability.AvailabilityNotAvailableTimeComponent res = new Availability.AvailabilityNotAvailableTimeComponent(); 609 parseElementAttributes(xpp, res); 610 next(xpp); 611 int eventType = nextNoWhitespace(xpp); 612 while (eventType != XmlPullParser.END_TAG) { 613 if (!parseAvailabilityNotAvailableTimeComponentContent(eventType, xpp, res)) 614 unknownContent(xpp); 615 eventType = nextNoWhitespace(xpp); 616 } 617 next(xpp); 618 parseElementClose(res); 619 return res; 620 } 621 622 protected boolean parseAvailabilityNotAvailableTimeComponentContent(int eventType, XmlPullParser xpp, Availability.AvailabilityNotAvailableTimeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 623 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 624 res.setDescriptionElement(parseString(xpp)); 625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("during")) { 626 res.setDuring(parsePeriod(xpp)); 627 } else if (!parseElementContent(eventType, xpp, res)){ 628 return false; 629 } 630 return true; 631 } 632 633 protected CodeableConcept parseCodeableConcept(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 634 CodeableConcept res = new CodeableConcept(); 635 parseElementAttributes(xpp, res); 636 next(xpp); 637 int eventType = nextNoWhitespace(xpp); 638 while (eventType != XmlPullParser.END_TAG) { 639 if (!parseCodeableConceptContent(eventType, xpp, res)) 640 unknownContent(xpp); 641 eventType = nextNoWhitespace(xpp); 642 } 643 next(xpp); 644 parseElementClose(res); 645 return res; 646 } 647 648 protected boolean parseCodeableConceptContent(int eventType, XmlPullParser xpp, CodeableConcept res) throws XmlPullParserException, IOException, FHIRFormatError { 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 (!parseDataTypeContent(eventType, xpp, res)){ 654 return false; 655 } 656 return true; 657 } 658 659 protected CodeableReference parseCodeableReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 660 CodeableReference res = new CodeableReference(); 661 parseElementAttributes(xpp, res); 662 next(xpp); 663 int eventType = nextNoWhitespace(xpp); 664 while (eventType != XmlPullParser.END_TAG) { 665 if (!parseCodeableReferenceContent(eventType, xpp, res)) 666 unknownContent(xpp); 667 eventType = nextNoWhitespace(xpp); 668 } 669 next(xpp); 670 parseElementClose(res); 671 return res; 672 } 673 674 protected boolean parseCodeableReferenceContent(int eventType, XmlPullParser xpp, CodeableReference res) throws XmlPullParserException, IOException, FHIRFormatError { 675 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 676 res.setConcept(parseCodeableConcept(xpp)); 677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 678 res.setReference(parseReference(xpp)); 679 } else if (!parseDataTypeContent(eventType, xpp, res)){ 680 return false; 681 } 682 return true; 683 } 684 685 protected Coding parseCoding(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 686 Coding res = new Coding(); 687 parseElementAttributes(xpp, res); 688 next(xpp); 689 int eventType = nextNoWhitespace(xpp); 690 while (eventType != XmlPullParser.END_TAG) { 691 if (!parseCodingContent(eventType, xpp, res)) 692 unknownContent(xpp); 693 eventType = nextNoWhitespace(xpp); 694 } 695 next(xpp); 696 parseElementClose(res); 697 return res; 698 } 699 700 protected boolean parseCodingContent(int eventType, XmlPullParser xpp, Coding res) throws XmlPullParserException, IOException, FHIRFormatError { 701 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 702 res.setSystemElement(parseUri(xpp)); 703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 704 res.setVersionElement(parseString(xpp)); 705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 706 res.setCodeElement(parseCode(xpp)); 707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 708 res.setDisplayElement(parseString(xpp)); 709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userSelected")) { 710 res.setUserSelectedElement(parseBoolean(xpp)); 711 } else if (!parseDataTypeContent(eventType, xpp, res)){ 712 return false; 713 } 714 return true; 715 } 716 717 protected ContactDetail parseContactDetail(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 718 ContactDetail res = new ContactDetail(); 719 parseElementAttributes(xpp, res); 720 next(xpp); 721 int eventType = nextNoWhitespace(xpp); 722 while (eventType != XmlPullParser.END_TAG) { 723 if (!parseContactDetailContent(eventType, xpp, res)) 724 unknownContent(xpp); 725 eventType = nextNoWhitespace(xpp); 726 } 727 next(xpp); 728 parseElementClose(res); 729 return res; 730 } 731 732 protected boolean parseContactDetailContent(int eventType, XmlPullParser xpp, ContactDetail res) throws XmlPullParserException, IOException, FHIRFormatError { 733 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 734 res.setNameElement(parseString(xpp)); 735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 736 res.getTelecom().add(parseContactPoint(xpp)); 737 } else if (!parseDataTypeContent(eventType, xpp, res)){ 738 return false; 739 } 740 return true; 741 } 742 743 protected ContactPoint parseContactPoint(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 744 ContactPoint res = new ContactPoint(); 745 parseElementAttributes(xpp, res); 746 next(xpp); 747 int eventType = nextNoWhitespace(xpp); 748 while (eventType != XmlPullParser.END_TAG) { 749 if (!parseContactPointContent(eventType, xpp, res)) 750 unknownContent(xpp); 751 eventType = nextNoWhitespace(xpp); 752 } 753 next(xpp); 754 parseElementClose(res); 755 return res; 756 } 757 758 protected boolean parseContactPointContent(int eventType, XmlPullParser xpp, ContactPoint res) throws XmlPullParserException, IOException, FHIRFormatError { 759 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 760 res.setSystemElement(parseEnumeration(xpp, ContactPoint.ContactPointSystem.NULL, new ContactPoint.ContactPointSystemEnumFactory())); 761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 762 res.setValueElement(parseString(xpp)); 763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 764 res.setUseElement(parseEnumeration(xpp, ContactPoint.ContactPointUse.NULL, new ContactPoint.ContactPointUseEnumFactory())); 765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 766 res.setRankElement(parsePositiveInt(xpp)); 767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 768 res.setPeriod(parsePeriod(xpp)); 769 } else if (!parseDataTypeContent(eventType, xpp, res)){ 770 return false; 771 } 772 return true; 773 } 774 775 protected Contributor parseContributor(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 776 Contributor res = new Contributor(); 777 parseElementAttributes(xpp, res); 778 next(xpp); 779 int eventType = nextNoWhitespace(xpp); 780 while (eventType != XmlPullParser.END_TAG) { 781 if (!parseContributorContent(eventType, xpp, res)) 782 unknownContent(xpp); 783 eventType = nextNoWhitespace(xpp); 784 } 785 next(xpp); 786 parseElementClose(res); 787 return res; 788 } 789 790 protected boolean parseContributorContent(int eventType, XmlPullParser xpp, Contributor res) throws XmlPullParserException, IOException, FHIRFormatError { 791 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 792 res.setTypeElement(parseEnumeration(xpp, Contributor.ContributorType.NULL, new Contributor.ContributorTypeEnumFactory())); 793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 794 res.setNameElement(parseString(xpp)); 795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 796 res.getContact().add(parseContactDetail(xpp)); 797 } else if (!parseDataTypeContent(eventType, xpp, res)){ 798 return false; 799 } 800 return true; 801 } 802 803 protected Count parseCount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 804 Count res = new Count(); 805 parseElementAttributes(xpp, res); 806 next(xpp); 807 int eventType = nextNoWhitespace(xpp); 808 while (eventType != XmlPullParser.END_TAG) { 809 if (!parseCountContent(eventType, xpp, res)) 810 unknownContent(xpp); 811 eventType = nextNoWhitespace(xpp); 812 } 813 next(xpp); 814 parseElementClose(res); 815 return res; 816 } 817 818 protected boolean parseCountContent(int eventType, XmlPullParser xpp, Count res) throws XmlPullParserException, IOException, FHIRFormatError { 819 if (!parseQuantityContent(eventType, xpp, res)){ 820 return false; 821 } 822 return true; 823 } 824 825 protected DataRequirement parseDataRequirement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 826 DataRequirement res = new DataRequirement(); 827 parseElementAttributes(xpp, res); 828 next(xpp); 829 int eventType = nextNoWhitespace(xpp); 830 while (eventType != XmlPullParser.END_TAG) { 831 if (!parseDataRequirementContent(eventType, xpp, res)) 832 unknownContent(xpp); 833 eventType = nextNoWhitespace(xpp); 834 } 835 next(xpp); 836 parseElementClose(res); 837 return res; 838 } 839 840 protected boolean parseDataRequirementContent(int eventType, XmlPullParser xpp, DataRequirement res) throws XmlPullParserException, IOException, FHIRFormatError { 841 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 842 res.setTypeElement(parseEnumeration(xpp, Enumerations.FHIRTypes.NULL, new Enumerations.FHIRTypesEnumFactory())); 843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 844 res.getProfile().add(parseCanonical(xpp)); 845 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 846 res.setSubject(parseType("subject", xpp)); 847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 848 res.getMustSupport().add(parseString(xpp)); 849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeFilter")) { 850 res.getCodeFilter().add(parseDataRequirementCodeFilterComponent(xpp)); 851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateFilter")) { 852 res.getDateFilter().add(parseDataRequirementDateFilterComponent(xpp)); 853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueFilter")) { 854 res.getValueFilter().add(parseDataRequirementValueFilterComponent(xpp)); 855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("limit")) { 856 res.setLimitElement(parsePositiveInt(xpp)); 857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sort")) { 858 res.getSort().add(parseDataRequirementSortComponent(xpp)); 859 } else if (!parseDataTypeContent(eventType, xpp, res)){ 860 return false; 861 } 862 return true; 863 } 864 865 protected DataRequirement.DataRequirementCodeFilterComponent parseDataRequirementCodeFilterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 866 DataRequirement.DataRequirementCodeFilterComponent res = new DataRequirement.DataRequirementCodeFilterComponent(); 867 parseElementAttributes(xpp, res); 868 next(xpp); 869 int eventType = nextNoWhitespace(xpp); 870 while (eventType != XmlPullParser.END_TAG) { 871 if (!parseDataRequirementCodeFilterComponentContent(eventType, xpp, res)) 872 unknownContent(xpp); 873 eventType = nextNoWhitespace(xpp); 874 } 875 next(xpp); 876 parseElementClose(res); 877 return res; 878 } 879 880 protected boolean parseDataRequirementCodeFilterComponentContent(int eventType, XmlPullParser xpp, DataRequirement.DataRequirementCodeFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 881 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 882 res.setPathElement(parseString(xpp)); 883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 884 res.setSearchParamElement(parseString(xpp)); 885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 886 res.setValueSetElement(parseCanonical(xpp)); 887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 888 res.getCode().add(parseCoding(xpp)); 889 } else if (!parseElementContent(eventType, xpp, res)){ 890 return false; 891 } 892 return true; 893 } 894 895 protected DataRequirement.DataRequirementDateFilterComponent parseDataRequirementDateFilterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 896 DataRequirement.DataRequirementDateFilterComponent res = new DataRequirement.DataRequirementDateFilterComponent(); 897 parseElementAttributes(xpp, res); 898 next(xpp); 899 int eventType = nextNoWhitespace(xpp); 900 while (eventType != XmlPullParser.END_TAG) { 901 if (!parseDataRequirementDateFilterComponentContent(eventType, xpp, res)) 902 unknownContent(xpp); 903 eventType = nextNoWhitespace(xpp); 904 } 905 next(xpp); 906 parseElementClose(res); 907 return res; 908 } 909 910 protected boolean parseDataRequirementDateFilterComponentContent(int eventType, XmlPullParser xpp, DataRequirement.DataRequirementDateFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 911 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 912 res.setPathElement(parseString(xpp)); 913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 914 res.setSearchParamElement(parseString(xpp)); 915 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 916 res.setValue(parseType("value", xpp)); 917 } else if (!parseElementContent(eventType, xpp, res)){ 918 return false; 919 } 920 return true; 921 } 922 923 protected DataRequirement.DataRequirementValueFilterComponent parseDataRequirementValueFilterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 924 DataRequirement.DataRequirementValueFilterComponent res = new DataRequirement.DataRequirementValueFilterComponent(); 925 parseElementAttributes(xpp, res); 926 next(xpp); 927 int eventType = nextNoWhitespace(xpp); 928 while (eventType != XmlPullParser.END_TAG) { 929 if (!parseDataRequirementValueFilterComponentContent(eventType, xpp, res)) 930 unknownContent(xpp); 931 eventType = nextNoWhitespace(xpp); 932 } 933 next(xpp); 934 parseElementClose(res); 935 return res; 936 } 937 938 protected boolean parseDataRequirementValueFilterComponentContent(int eventType, XmlPullParser xpp, DataRequirement.DataRequirementValueFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 939 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 940 res.setPathElement(parseString(xpp)); 941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 942 res.setSearchParamElement(parseString(xpp)); 943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 944 res.setComparatorElement(parseEnumeration(xpp, DataRequirement.ValueFilterComparator.NULL, new DataRequirement.ValueFilterComparatorEnumFactory())); 945 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 946 res.setValue(parseType("value", xpp)); 947 } else if (!parseElementContent(eventType, xpp, res)){ 948 return false; 949 } 950 return true; 951 } 952 953 protected DataRequirement.DataRequirementSortComponent parseDataRequirementSortComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 954 DataRequirement.DataRequirementSortComponent res = new DataRequirement.DataRequirementSortComponent(); 955 parseElementAttributes(xpp, res); 956 next(xpp); 957 int eventType = nextNoWhitespace(xpp); 958 while (eventType != XmlPullParser.END_TAG) { 959 if (!parseDataRequirementSortComponentContent(eventType, xpp, res)) 960 unknownContent(xpp); 961 eventType = nextNoWhitespace(xpp); 962 } 963 next(xpp); 964 parseElementClose(res); 965 return res; 966 } 967 968 protected boolean parseDataRequirementSortComponentContent(int eventType, XmlPullParser xpp, DataRequirement.DataRequirementSortComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 969 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 970 res.setPathElement(parseString(xpp)); 971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("direction")) { 972 res.setDirectionElement(parseEnumeration(xpp, DataRequirement.SortDirection.NULL, new DataRequirement.SortDirectionEnumFactory())); 973 } else if (!parseElementContent(eventType, xpp, res)){ 974 return false; 975 } 976 return true; 977 } 978 979 protected Distance parseDistance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 980 Distance res = new Distance(); 981 parseElementAttributes(xpp, res); 982 next(xpp); 983 int eventType = nextNoWhitespace(xpp); 984 while (eventType != XmlPullParser.END_TAG) { 985 if (!parseDistanceContent(eventType, xpp, res)) 986 unknownContent(xpp); 987 eventType = nextNoWhitespace(xpp); 988 } 989 next(xpp); 990 parseElementClose(res); 991 return res; 992 } 993 994 protected boolean parseDistanceContent(int eventType, XmlPullParser xpp, Distance res) throws XmlPullParserException, IOException, FHIRFormatError { 995 if (!parseQuantityContent(eventType, xpp, res)){ 996 return false; 997 } 998 return true; 999 } 1000 1001 protected Dosage parseDosage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1002 Dosage res = new Dosage(); 1003 parseElementAttributes(xpp, res); 1004 next(xpp); 1005 int eventType = nextNoWhitespace(xpp); 1006 while (eventType != XmlPullParser.END_TAG) { 1007 if (!parseDosageContent(eventType, xpp, res)) 1008 unknownContent(xpp); 1009 eventType = nextNoWhitespace(xpp); 1010 } 1011 next(xpp); 1012 parseElementClose(res); 1013 return res; 1014 } 1015 1016 protected boolean parseDosageContent(int eventType, XmlPullParser xpp, Dosage res) throws XmlPullParserException, IOException, FHIRFormatError { 1017 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 1018 res.setSequenceElement(parseInteger(xpp)); 1019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1020 res.setTextElement(parseString(xpp)); 1021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalInstruction")) { 1022 res.getAdditionalInstruction().add(parseCodeableConcept(xpp)); 1023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientInstruction")) { 1024 res.setPatientInstructionElement(parseString(xpp)); 1025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 1026 res.setTiming(parseTiming(xpp)); 1027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeeded")) { 1028 res.setAsNeededElement(parseBoolean(xpp)); 1029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeededFor")) { 1030 res.getAsNeededFor().add(parseCodeableConcept(xpp)); 1031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 1032 res.setSite(parseCodeableConcept(xpp)); 1033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 1034 res.setRoute(parseCodeableConcept(xpp)); 1035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 1036 res.setMethod(parseCodeableConcept(xpp)); 1037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseAndRate")) { 1038 res.getDoseAndRate().add(parseDosageDoseAndRateComponent(xpp)); 1039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 1040 res.getMaxDosePerPeriod().add(parseRatio(xpp)); 1041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerAdministration")) { 1042 res.setMaxDosePerAdministration(parseQuantity(xpp)); 1043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerLifetime")) { 1044 res.setMaxDosePerLifetime(parseQuantity(xpp)); 1045 } else if (!parseBackboneTypeContent(eventType, xpp, res)){ 1046 return false; 1047 } 1048 return true; 1049 } 1050 1051 protected Dosage.DosageDoseAndRateComponent parseDosageDoseAndRateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1052 Dosage.DosageDoseAndRateComponent res = new Dosage.DosageDoseAndRateComponent(); 1053 parseElementAttributes(xpp, res); 1054 next(xpp); 1055 int eventType = nextNoWhitespace(xpp); 1056 while (eventType != XmlPullParser.END_TAG) { 1057 if (!parseDosageDoseAndRateComponentContent(eventType, xpp, res)) 1058 unknownContent(xpp); 1059 eventType = nextNoWhitespace(xpp); 1060 } 1061 next(xpp); 1062 parseElementClose(res); 1063 return res; 1064 } 1065 1066 protected boolean parseDosageDoseAndRateComponentContent(int eventType, XmlPullParser xpp, Dosage.DosageDoseAndRateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1067 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1068 res.setType(parseCodeableConcept(xpp)); 1069 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "dose")) { 1070 res.setDose(parseType("dose", xpp)); 1071 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 1072 res.setRate(parseType("rate", xpp)); 1073 } else if (!parseElementContent(eventType, xpp, res)){ 1074 return false; 1075 } 1076 return true; 1077 } 1078 1079 protected Duration parseDuration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1080 Duration res = new Duration(); 1081 parseElementAttributes(xpp, res); 1082 next(xpp); 1083 int eventType = nextNoWhitespace(xpp); 1084 while (eventType != XmlPullParser.END_TAG) { 1085 if (!parseDurationContent(eventType, xpp, res)) 1086 unknownContent(xpp); 1087 eventType = nextNoWhitespace(xpp); 1088 } 1089 next(xpp); 1090 parseElementClose(res); 1091 return res; 1092 } 1093 1094 protected boolean parseDurationContent(int eventType, XmlPullParser xpp, Duration res) throws XmlPullParserException, IOException, FHIRFormatError { 1095 if (!parseQuantityContent(eventType, xpp, res)){ 1096 return false; 1097 } 1098 return true; 1099 } 1100 1101 protected ElementDefinition parseElementDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1102 ElementDefinition res = new ElementDefinition(); 1103 parseElementAttributes(xpp, res); 1104 next(xpp); 1105 int eventType = nextNoWhitespace(xpp); 1106 while (eventType != XmlPullParser.END_TAG) { 1107 if (!parseElementDefinitionContent(eventType, xpp, res)) 1108 unknownContent(xpp); 1109 eventType = nextNoWhitespace(xpp); 1110 } 1111 next(xpp); 1112 parseElementClose(res); 1113 return res; 1114 } 1115 1116 protected boolean parseElementDefinitionContent(int eventType, XmlPullParser xpp, ElementDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 1117 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1118 res.setPathElement(parseString(xpp)); 1119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { 1120 res.getRepresentation().add(parseEnumeration(xpp, ElementDefinition.PropertyRepresentation.NULL, new ElementDefinition.PropertyRepresentationEnumFactory())); 1121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sliceName")) { 1122 res.setSliceNameElement(parseString(xpp)); 1123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sliceIsConstraining")) { 1124 res.setSliceIsConstrainingElement(parseBoolean(xpp)); 1125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 1126 res.setLabelElement(parseString(xpp)); 1127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1128 res.getCode().add(parseCoding(xpp)); 1129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slicing")) { 1130 res.setSlicing(parseElementDefinitionSlicingComponent(xpp)); 1131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("short")) { 1132 res.setShortElement(parseString(xpp)); 1133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 1134 res.setDefinitionElement(parseMarkdown(xpp)); 1135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1136 res.setCommentElement(parseMarkdown(xpp)); 1137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 1138 res.setRequirementsElement(parseMarkdown(xpp)); 1139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 1140 res.getAlias().add(parseString(xpp)); 1141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1142 res.setMinElement(parseUnsignedInt(xpp)); 1143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1144 res.setMaxElement(parseString(xpp)); 1145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 1146 res.setBase(parseElementDefinitionBaseComponent(xpp)); 1147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentReference")) { 1148 res.setContentReferenceElement(parseUri(xpp)); 1149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1150 res.getType().add(parseElementDefinitionTypeRefComponent(xpp)); 1151 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "defaultValue")) { 1152 res.setDefaultValue(parseType("defaultValue", xpp)); 1153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaningWhenMissing")) { 1154 res.setMeaningWhenMissingElement(parseMarkdown(xpp)); 1155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderMeaning")) { 1156 res.setOrderMeaningElement(parseString(xpp)); 1157 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "fixed")) { 1158 res.setFixed(parseType("fixed", xpp)); 1159 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "pattern")) { 1160 res.setPattern(parseType("pattern", xpp)); 1161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("example")) { 1162 res.getExample().add(parseElementDefinitionExampleComponent(xpp)); 1163 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "minValue")) { 1164 res.setMinValue(parseType("minValue", xpp)); 1165 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "maxValue")) { 1166 res.setMaxValue(parseType("maxValue", xpp)); 1167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 1168 res.setMaxLengthElement(parseInteger(xpp)); 1169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 1170 res.getCondition().add(parseId(xpp)); 1171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("constraint")) { 1172 res.getConstraint().add(parseElementDefinitionConstraintComponent(xpp)); 1173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustHaveValue")) { 1174 res.setMustHaveValueElement(parseBoolean(xpp)); 1175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueAlternatives")) { 1176 res.getValueAlternatives().add(parseCanonical(xpp)); 1177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 1178 res.setMustSupportElement(parseBoolean(xpp)); 1179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isModifier")) { 1180 res.setIsModifierElement(parseBoolean(xpp)); 1181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isModifierReason")) { 1182 res.setIsModifierReasonElement(parseString(xpp)); 1183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isSummary")) { 1184 res.setIsSummaryElement(parseBoolean(xpp)); 1185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 1186 res.setBinding(parseElementDefinitionBindingComponent(xpp)); 1187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 1188 res.getMapping().add(parseElementDefinitionMappingComponent(xpp)); 1189 } else if (!parseBackboneTypeContent(eventType, xpp, res)){ 1190 return false; 1191 } 1192 return true; 1193 } 1194 1195 protected ElementDefinition.ElementDefinitionSlicingComponent parseElementDefinitionSlicingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1196 ElementDefinition.ElementDefinitionSlicingComponent res = new ElementDefinition.ElementDefinitionSlicingComponent(); 1197 parseElementAttributes(xpp, res); 1198 next(xpp); 1199 int eventType = nextNoWhitespace(xpp); 1200 while (eventType != XmlPullParser.END_TAG) { 1201 if (!parseElementDefinitionSlicingComponentContent(eventType, xpp, res)) 1202 unknownContent(xpp); 1203 eventType = nextNoWhitespace(xpp); 1204 } 1205 next(xpp); 1206 parseElementClose(res); 1207 return res; 1208 } 1209 1210 protected boolean parseElementDefinitionSlicingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.ElementDefinitionSlicingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1211 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("discriminator")) { 1212 res.getDiscriminator().add(parseElementDefinitionSlicingDiscriminatorComponent(xpp)); 1213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1214 res.setDescriptionElement(parseString(xpp)); 1215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ordered")) { 1216 res.setOrderedElement(parseBoolean(xpp)); 1217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rules")) { 1218 res.setRulesElement(parseEnumeration(xpp, ElementDefinition.SlicingRules.NULL, new ElementDefinition.SlicingRulesEnumFactory())); 1219 } else if (!parseElementContent(eventType, xpp, res)){ 1220 return false; 1221 } 1222 return true; 1223 } 1224 1225 protected ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent parseElementDefinitionSlicingDiscriminatorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1226 ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent res = new ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent(); 1227 parseElementAttributes(xpp, res); 1228 next(xpp); 1229 int eventType = nextNoWhitespace(xpp); 1230 while (eventType != XmlPullParser.END_TAG) { 1231 if (!parseElementDefinitionSlicingDiscriminatorComponentContent(eventType, xpp, res)) 1232 unknownContent(xpp); 1233 eventType = nextNoWhitespace(xpp); 1234 } 1235 next(xpp); 1236 parseElementClose(res); 1237 return res; 1238 } 1239 1240 protected boolean parseElementDefinitionSlicingDiscriminatorComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1241 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1242 res.setTypeElement(parseEnumeration(xpp, ElementDefinition.DiscriminatorType.NULL, new ElementDefinition.DiscriminatorTypeEnumFactory())); 1243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1244 res.setPathElement(parseString(xpp)); 1245 } else if (!parseElementContent(eventType, xpp, res)){ 1246 return false; 1247 } 1248 return true; 1249 } 1250 1251 protected ElementDefinition.ElementDefinitionBaseComponent parseElementDefinitionBaseComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1252 ElementDefinition.ElementDefinitionBaseComponent res = new ElementDefinition.ElementDefinitionBaseComponent(); 1253 parseElementAttributes(xpp, res); 1254 next(xpp); 1255 int eventType = nextNoWhitespace(xpp); 1256 while (eventType != XmlPullParser.END_TAG) { 1257 if (!parseElementDefinitionBaseComponentContent(eventType, xpp, res)) 1258 unknownContent(xpp); 1259 eventType = nextNoWhitespace(xpp); 1260 } 1261 next(xpp); 1262 parseElementClose(res); 1263 return res; 1264 } 1265 1266 protected boolean parseElementDefinitionBaseComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.ElementDefinitionBaseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1267 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1268 res.setPathElement(parseString(xpp)); 1269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1270 res.setMinElement(parseUnsignedInt(xpp)); 1271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1272 res.setMaxElement(parseString(xpp)); 1273 } else if (!parseElementContent(eventType, xpp, res)){ 1274 return false; 1275 } 1276 return true; 1277 } 1278 1279 protected ElementDefinition.TypeRefComponent parseElementDefinitionTypeRefComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1280 ElementDefinition.TypeRefComponent res = new ElementDefinition.TypeRefComponent(); 1281 parseElementAttributes(xpp, res); 1282 next(xpp); 1283 int eventType = nextNoWhitespace(xpp); 1284 while (eventType != XmlPullParser.END_TAG) { 1285 if (!parseElementDefinitionTypeRefComponentContent(eventType, xpp, res)) 1286 unknownContent(xpp); 1287 eventType = nextNoWhitespace(xpp); 1288 } 1289 next(xpp); 1290 parseElementClose(res); 1291 return res; 1292 } 1293 1294 protected boolean parseElementDefinitionTypeRefComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.TypeRefComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1295 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1296 res.setCodeElement(parseUri(xpp)); 1297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1298 res.getProfile().add(parseCanonical(xpp)); 1299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetProfile")) { 1300 res.getTargetProfile().add(parseCanonical(xpp)); 1301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("aggregation")) { 1302 res.getAggregation().add(parseEnumeration(xpp, ElementDefinition.AggregationMode.NULL, new ElementDefinition.AggregationModeEnumFactory())); 1303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 1304 res.setVersioningElement(parseEnumeration(xpp, ElementDefinition.ReferenceVersionRules.NULL, new ElementDefinition.ReferenceVersionRulesEnumFactory())); 1305 } else if (!parseElementContent(eventType, xpp, res)){ 1306 return false; 1307 } 1308 return true; 1309 } 1310 1311 protected ElementDefinition.ElementDefinitionExampleComponent parseElementDefinitionExampleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1312 ElementDefinition.ElementDefinitionExampleComponent res = new ElementDefinition.ElementDefinitionExampleComponent(); 1313 parseElementAttributes(xpp, res); 1314 next(xpp); 1315 int eventType = nextNoWhitespace(xpp); 1316 while (eventType != XmlPullParser.END_TAG) { 1317 if (!parseElementDefinitionExampleComponentContent(eventType, xpp, res)) 1318 unknownContent(xpp); 1319 eventType = nextNoWhitespace(xpp); 1320 } 1321 next(xpp); 1322 parseElementClose(res); 1323 return res; 1324 } 1325 1326 protected boolean parseElementDefinitionExampleComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.ElementDefinitionExampleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1327 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 1328 res.setLabelElement(parseString(xpp)); 1329 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1330 res.setValue(parseType("value", xpp)); 1331 } else if (!parseElementContent(eventType, xpp, res)){ 1332 return false; 1333 } 1334 return true; 1335 } 1336 1337 protected ElementDefinition.ElementDefinitionConstraintComponent parseElementDefinitionConstraintComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1338 ElementDefinition.ElementDefinitionConstraintComponent res = new ElementDefinition.ElementDefinitionConstraintComponent(); 1339 parseElementAttributes(xpp, res); 1340 next(xpp); 1341 int eventType = nextNoWhitespace(xpp); 1342 while (eventType != XmlPullParser.END_TAG) { 1343 if (!parseElementDefinitionConstraintComponentContent(eventType, xpp, res)) 1344 unknownContent(xpp); 1345 eventType = nextNoWhitespace(xpp); 1346 } 1347 next(xpp); 1348 parseElementClose(res); 1349 return res; 1350 } 1351 1352 protected boolean parseElementDefinitionConstraintComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.ElementDefinitionConstraintComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1353 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 1354 res.setKeyElement(parseId(xpp)); 1355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 1356 res.setRequirementsElement(parseMarkdown(xpp)); 1357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 1358 res.setSeverityElement(parseEnumeration(xpp, ElementDefinition.ConstraintSeverity.NULL, new ElementDefinition.ConstraintSeverityEnumFactory())); 1359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suppress")) { 1360 res.setSuppressElement(parseBoolean(xpp)); 1361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("human")) { 1362 res.setHumanElement(parseString(xpp)); 1363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 1364 res.setExpressionElement(parseString(xpp)); 1365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 1366 res.setSourceElement(parseCanonical(xpp)); 1367 } else if (!parseElementContent(eventType, xpp, res)){ 1368 return false; 1369 } 1370 return true; 1371 } 1372 1373 protected ElementDefinition.ElementDefinitionBindingComponent parseElementDefinitionBindingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1374 ElementDefinition.ElementDefinitionBindingComponent res = new ElementDefinition.ElementDefinitionBindingComponent(); 1375 parseElementAttributes(xpp, res); 1376 next(xpp); 1377 int eventType = nextNoWhitespace(xpp); 1378 while (eventType != XmlPullParser.END_TAG) { 1379 if (!parseElementDefinitionBindingComponentContent(eventType, xpp, res)) 1380 unknownContent(xpp); 1381 eventType = nextNoWhitespace(xpp); 1382 } 1383 next(xpp); 1384 parseElementClose(res); 1385 return res; 1386 } 1387 1388 protected boolean parseElementDefinitionBindingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.ElementDefinitionBindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1389 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 1390 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 1391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1392 res.setDescriptionElement(parseMarkdown(xpp)); 1393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 1394 res.setValueSetElement(parseCanonical(xpp)); 1395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additional")) { 1396 res.getAdditional().add(parseElementDefinitionBindingAdditionalComponent(xpp)); 1397 } else if (!parseElementContent(eventType, xpp, res)){ 1398 return false; 1399 } 1400 return true; 1401 } 1402 1403 protected ElementDefinition.ElementDefinitionBindingAdditionalComponent parseElementDefinitionBindingAdditionalComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1404 ElementDefinition.ElementDefinitionBindingAdditionalComponent res = new ElementDefinition.ElementDefinitionBindingAdditionalComponent(); 1405 parseElementAttributes(xpp, res); 1406 next(xpp); 1407 int eventType = nextNoWhitespace(xpp); 1408 while (eventType != XmlPullParser.END_TAG) { 1409 if (!parseElementDefinitionBindingAdditionalComponentContent(eventType, xpp, res)) 1410 unknownContent(xpp); 1411 eventType = nextNoWhitespace(xpp); 1412 } 1413 next(xpp); 1414 parseElementClose(res); 1415 return res; 1416 } 1417 1418 protected boolean parseElementDefinitionBindingAdditionalComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.ElementDefinitionBindingAdditionalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1419 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 1420 res.setPurposeElement(parseEnumeration(xpp, ElementDefinition.AdditionalBindingPurposeVS.NULL, new ElementDefinition.AdditionalBindingPurposeVSEnumFactory())); 1421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 1422 res.setValueSetElement(parseCanonical(xpp)); 1423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 1424 res.setDocumentationElement(parseMarkdown(xpp)); 1425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("shortDoco")) { 1426 res.setShortDocoElement(parseString(xpp)); 1427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 1428 res.getUsage().add(parseUsageContext(xpp)); 1429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("any")) { 1430 res.setAnyElement(parseBoolean(xpp)); 1431 } else if (!parseElementContent(eventType, xpp, res)){ 1432 return false; 1433 } 1434 return true; 1435 } 1436 1437 protected ElementDefinition.ElementDefinitionMappingComponent parseElementDefinitionMappingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1438 ElementDefinition.ElementDefinitionMappingComponent res = new ElementDefinition.ElementDefinitionMappingComponent(); 1439 parseElementAttributes(xpp, res); 1440 next(xpp); 1441 int eventType = nextNoWhitespace(xpp); 1442 while (eventType != XmlPullParser.END_TAG) { 1443 if (!parseElementDefinitionMappingComponentContent(eventType, xpp, res)) 1444 unknownContent(xpp); 1445 eventType = nextNoWhitespace(xpp); 1446 } 1447 next(xpp); 1448 parseElementClose(res); 1449 return res; 1450 } 1451 1452 protected boolean parseElementDefinitionMappingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition.ElementDefinitionMappingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1453 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 1454 res.setIdentityElement(parseId(xpp)); 1455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1456 res.setLanguageElement(parseCode(xpp)); 1457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("map")) { 1458 res.setMapElement(parseString(xpp)); 1459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1460 res.setCommentElement(parseMarkdown(xpp)); 1461 } else if (!parseElementContent(eventType, xpp, res)){ 1462 return false; 1463 } 1464 return true; 1465 } 1466 1467 protected Expression parseExpression(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1468 Expression res = new Expression(); 1469 parseElementAttributes(xpp, res); 1470 next(xpp); 1471 int eventType = nextNoWhitespace(xpp); 1472 while (eventType != XmlPullParser.END_TAG) { 1473 if (!parseExpressionContent(eventType, xpp, res)) 1474 unknownContent(xpp); 1475 eventType = nextNoWhitespace(xpp); 1476 } 1477 next(xpp); 1478 parseElementClose(res); 1479 return res; 1480 } 1481 1482 protected boolean parseExpressionContent(int eventType, XmlPullParser xpp, Expression res) throws XmlPullParserException, IOException, FHIRFormatError { 1483 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1484 res.setDescriptionElement(parseString(xpp)); 1485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1486 res.setNameElement(parseCode(xpp)); 1487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1488 res.setLanguageElement(parseCode(xpp)); 1489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 1490 res.setExpressionElement(parseString(xpp)); 1491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 1492 res.setReferenceElement(parseUri(xpp)); 1493 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1494 return false; 1495 } 1496 return true; 1497 } 1498 1499 protected ExtendedContactDetail parseExtendedContactDetail(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1500 ExtendedContactDetail res = new ExtendedContactDetail(); 1501 parseElementAttributes(xpp, res); 1502 next(xpp); 1503 int eventType = nextNoWhitespace(xpp); 1504 while (eventType != XmlPullParser.END_TAG) { 1505 if (!parseExtendedContactDetailContent(eventType, xpp, res)) 1506 unknownContent(xpp); 1507 eventType = nextNoWhitespace(xpp); 1508 } 1509 next(xpp); 1510 parseElementClose(res); 1511 return res; 1512 } 1513 1514 protected boolean parseExtendedContactDetailContent(int eventType, XmlPullParser xpp, ExtendedContactDetail res) throws XmlPullParserException, IOException, FHIRFormatError { 1515 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 1516 res.setPurpose(parseCodeableConcept(xpp)); 1517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1518 res.getName().add(parseHumanName(xpp)); 1519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 1520 res.getTelecom().add(parseContactPoint(xpp)); 1521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 1522 res.setAddress(parseAddress(xpp)); 1523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 1524 res.setOrganization(parseReference(xpp)); 1525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1526 res.setPeriod(parsePeriod(xpp)); 1527 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1528 return false; 1529 } 1530 return true; 1531 } 1532 1533 protected Extension parseExtension(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1534 Extension res = new Extension(); 1535 parseElementAttributes(xpp, res); 1536 if (xpp.getAttributeValue(null, "url") != null) 1537 res.setUrl(xpp.getAttributeValue(null, "url")); 1538 next(xpp); 1539 int eventType = nextNoWhitespace(xpp); 1540 while (eventType != XmlPullParser.END_TAG) { 1541 if (!parseExtensionContent(eventType, xpp, res)) 1542 unknownContent(xpp); 1543 eventType = nextNoWhitespace(xpp); 1544 } 1545 next(xpp); 1546 parseElementClose(res); 1547 return res; 1548 } 1549 1550 protected boolean parseExtensionContent(int eventType, XmlPullParser xpp, Extension res) throws XmlPullParserException, IOException, FHIRFormatError { 1551 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1552 res.setValue(parseType("value", xpp)); 1553 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1554 return false; 1555 } 1556 return true; 1557 } 1558 1559 protected HumanName parseHumanName(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1560 HumanName res = new HumanName(); 1561 parseElementAttributes(xpp, res); 1562 next(xpp); 1563 int eventType = nextNoWhitespace(xpp); 1564 while (eventType != XmlPullParser.END_TAG) { 1565 if (!parseHumanNameContent(eventType, xpp, res)) 1566 unknownContent(xpp); 1567 eventType = nextNoWhitespace(xpp); 1568 } 1569 next(xpp); 1570 parseElementClose(res); 1571 return res; 1572 } 1573 1574 protected boolean parseHumanNameContent(int eventType, XmlPullParser xpp, HumanName res) throws XmlPullParserException, IOException, FHIRFormatError { 1575 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1576 res.setUseElement(parseEnumeration(xpp, HumanName.NameUse.NULL, new HumanName.NameUseEnumFactory())); 1577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1578 res.setTextElement(parseString(xpp)); 1579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("family")) { 1580 res.setFamilyElement(parseString(xpp)); 1581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("given")) { 1582 res.getGiven().add(parseString(xpp)); 1583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 1584 res.getPrefix().add(parseString(xpp)); 1585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suffix")) { 1586 res.getSuffix().add(parseString(xpp)); 1587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1588 res.setPeriod(parsePeriod(xpp)); 1589 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1590 return false; 1591 } 1592 return true; 1593 } 1594 1595 protected Identifier parseIdentifier(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1596 Identifier res = new Identifier(); 1597 parseElementAttributes(xpp, res); 1598 next(xpp); 1599 int eventType = nextNoWhitespace(xpp); 1600 while (eventType != XmlPullParser.END_TAG) { 1601 if (!parseIdentifierContent(eventType, xpp, res)) 1602 unknownContent(xpp); 1603 eventType = nextNoWhitespace(xpp); 1604 } 1605 next(xpp); 1606 parseElementClose(res); 1607 return res; 1608 } 1609 1610 protected boolean parseIdentifierContent(int eventType, XmlPullParser xpp, Identifier res) throws XmlPullParserException, IOException, FHIRFormatError { 1611 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1612 res.setUseElement(parseEnumeration(xpp, Identifier.IdentifierUse.NULL, new Identifier.IdentifierUseEnumFactory())); 1613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1614 res.setType(parseCodeableConcept(xpp)); 1615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 1616 res.setSystemElement(parseUri(xpp)); 1617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1618 res.setValueElement(parseString(xpp)); 1619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1620 res.setPeriod(parsePeriod(xpp)); 1621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assigner")) { 1622 res.setAssigner(parseReference(xpp)); 1623 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1624 return false; 1625 } 1626 return true; 1627 } 1628 1629 protected MarketingStatus parseMarketingStatus(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1630 MarketingStatus res = new MarketingStatus(); 1631 parseElementAttributes(xpp, res); 1632 next(xpp); 1633 int eventType = nextNoWhitespace(xpp); 1634 while (eventType != XmlPullParser.END_TAG) { 1635 if (!parseMarketingStatusContent(eventType, xpp, res)) 1636 unknownContent(xpp); 1637 eventType = nextNoWhitespace(xpp); 1638 } 1639 next(xpp); 1640 parseElementClose(res); 1641 return res; 1642 } 1643 1644 protected boolean parseMarketingStatusContent(int eventType, XmlPullParser xpp, MarketingStatus res) throws XmlPullParserException, IOException, FHIRFormatError { 1645 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 1646 res.setCountry(parseCodeableConcept(xpp)); 1647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 1648 res.setJurisdiction(parseCodeableConcept(xpp)); 1649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1650 res.setStatus(parseCodeableConcept(xpp)); 1651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateRange")) { 1652 res.setDateRange(parsePeriod(xpp)); 1653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("restoreDate")) { 1654 res.setRestoreDateElement(parseDateTime(xpp)); 1655 } else if (!parseBackboneTypeContent(eventType, xpp, res)){ 1656 return false; 1657 } 1658 return true; 1659 } 1660 1661 protected Meta parseMeta(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1662 Meta res = new Meta(); 1663 parseElementAttributes(xpp, res); 1664 next(xpp); 1665 int eventType = nextNoWhitespace(xpp); 1666 while (eventType != XmlPullParser.END_TAG) { 1667 if (!parseMetaContent(eventType, xpp, res)) 1668 unknownContent(xpp); 1669 eventType = nextNoWhitespace(xpp); 1670 } 1671 next(xpp); 1672 parseElementClose(res); 1673 return res; 1674 } 1675 1676 protected boolean parseMetaContent(int eventType, XmlPullParser xpp, Meta res) throws XmlPullParserException, IOException, FHIRFormatError { 1677 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionId")) { 1678 res.setVersionIdElement(parseId(xpp)); 1679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastUpdated")) { 1680 res.setLastUpdatedElement(parseInstant(xpp)); 1681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 1682 res.setSourceElement(parseUri(xpp)); 1683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1684 res.getProfile().add(parseCanonical(xpp)); 1685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 1686 res.getSecurity().add(parseCoding(xpp)); 1687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 1688 res.getTag().add(parseCoding(xpp)); 1689 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1690 return false; 1691 } 1692 return true; 1693 } 1694 1695 protected MonetaryComponent parseMonetaryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1696 MonetaryComponent res = new MonetaryComponent(); 1697 parseElementAttributes(xpp, res); 1698 next(xpp); 1699 int eventType = nextNoWhitespace(xpp); 1700 while (eventType != XmlPullParser.END_TAG) { 1701 if (!parseMonetaryComponentContent(eventType, xpp, res)) 1702 unknownContent(xpp); 1703 eventType = nextNoWhitespace(xpp); 1704 } 1705 next(xpp); 1706 parseElementClose(res); 1707 return res; 1708 } 1709 1710 protected boolean parseMonetaryComponentContent(int eventType, XmlPullParser xpp, MonetaryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1711 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1712 res.setTypeElement(parseEnumeration(xpp, MonetaryComponent.PriceComponentType.NULL, new MonetaryComponent.PriceComponentTypeEnumFactory())); 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("factor")) { 1716 res.setFactorElement(parseDecimal(xpp)); 1717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 1718 res.setAmount(parseMoney(xpp)); 1719 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1720 return false; 1721 } 1722 return true; 1723 } 1724 1725 protected Money parseMoney(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1726 Money res = new Money(); 1727 parseElementAttributes(xpp, res); 1728 next(xpp); 1729 int eventType = nextNoWhitespace(xpp); 1730 while (eventType != XmlPullParser.END_TAG) { 1731 if (!parseMoneyContent(eventType, xpp, res)) 1732 unknownContent(xpp); 1733 eventType = nextNoWhitespace(xpp); 1734 } 1735 next(xpp); 1736 parseElementClose(res); 1737 return res; 1738 } 1739 1740 protected boolean parseMoneyContent(int eventType, XmlPullParser xpp, Money res) throws XmlPullParserException, IOException, FHIRFormatError { 1741 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1742 res.setValueElement(parseDecimal(xpp)); 1743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("currency")) { 1744 res.setCurrencyElement(parseCode(xpp)); 1745 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1746 return false; 1747 } 1748 return true; 1749 } 1750 1751 protected Narrative parseNarrative(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1752 Narrative res = new Narrative(); 1753 parseElementAttributes(xpp, res); 1754 next(xpp); 1755 int eventType = nextNoWhitespace(xpp); 1756 while (eventType != XmlPullParser.END_TAG) { 1757 if (!parseNarrativeContent(eventType, xpp, res)) 1758 unknownContent(xpp); 1759 eventType = nextNoWhitespace(xpp); 1760 } 1761 next(xpp); 1762 parseElementClose(res); 1763 return res; 1764 } 1765 1766 protected boolean parseNarrativeContent(int eventType, XmlPullParser xpp, Narrative res) throws XmlPullParserException, IOException, FHIRFormatError { 1767 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1768 res.setStatusElement(parseEnumeration(xpp, Narrative.NarrativeStatus.NULL, new Narrative.NarrativeStatusEnumFactory())); 1769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("div")) { 1770 res.setDiv(parseXhtml(xpp)); 1771 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1772 return false; 1773 } 1774 return true; 1775 } 1776 1777 protected ParameterDefinition parseParameterDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1778 ParameterDefinition res = new ParameterDefinition(); 1779 parseElementAttributes(xpp, res); 1780 next(xpp); 1781 int eventType = nextNoWhitespace(xpp); 1782 while (eventType != XmlPullParser.END_TAG) { 1783 if (!parseParameterDefinitionContent(eventType, xpp, res)) 1784 unknownContent(xpp); 1785 eventType = nextNoWhitespace(xpp); 1786 } 1787 next(xpp); 1788 parseElementClose(res); 1789 return res; 1790 } 1791 1792 protected boolean parseParameterDefinitionContent(int eventType, XmlPullParser xpp, ParameterDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 1793 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1794 res.setNameElement(parseCode(xpp)); 1795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1796 res.setUseElement(parseEnumeration(xpp, Enumerations.OperationParameterUse.NULL, new Enumerations.OperationParameterUseEnumFactory())); 1797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1798 res.setMinElement(parseInteger(xpp)); 1799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1800 res.setMaxElement(parseString(xpp)); 1801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 1802 res.setDocumentationElement(parseString(xpp)); 1803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1804 res.setTypeElement(parseEnumeration(xpp, Enumerations.FHIRTypes.NULL, new Enumerations.FHIRTypesEnumFactory())); 1805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1806 res.setProfileElement(parseCanonical(xpp)); 1807 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1808 return false; 1809 } 1810 return true; 1811 } 1812 1813 protected Period parsePeriod(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1814 Period res = new Period(); 1815 parseElementAttributes(xpp, res); 1816 next(xpp); 1817 int eventType = nextNoWhitespace(xpp); 1818 while (eventType != XmlPullParser.END_TAG) { 1819 if (!parsePeriodContent(eventType, xpp, res)) 1820 unknownContent(xpp); 1821 eventType = nextNoWhitespace(xpp); 1822 } 1823 next(xpp); 1824 parseElementClose(res); 1825 return res; 1826 } 1827 1828 protected boolean parsePeriodContent(int eventType, XmlPullParser xpp, Period res) throws XmlPullParserException, IOException, FHIRFormatError { 1829 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 1830 res.setStartElement(parseDateTime(xpp)); 1831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 1832 res.setEndElement(parseDateTime(xpp)); 1833 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1834 return false; 1835 } 1836 return true; 1837 } 1838 1839 protected ProductShelfLife parseProductShelfLife(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1840 ProductShelfLife res = new ProductShelfLife(); 1841 parseElementAttributes(xpp, res); 1842 next(xpp); 1843 int eventType = nextNoWhitespace(xpp); 1844 while (eventType != XmlPullParser.END_TAG) { 1845 if (!parseProductShelfLifeContent(eventType, xpp, res)) 1846 unknownContent(xpp); 1847 eventType = nextNoWhitespace(xpp); 1848 } 1849 next(xpp); 1850 parseElementClose(res); 1851 return res; 1852 } 1853 1854 protected boolean parseProductShelfLifeContent(int eventType, XmlPullParser xpp, ProductShelfLife res) throws XmlPullParserException, IOException, FHIRFormatError { 1855 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1856 res.setType(parseCodeableConcept(xpp)); 1857 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "period")) { 1858 res.setPeriod(parseType("period", xpp)); 1859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialPrecautionsForStorage")) { 1860 res.getSpecialPrecautionsForStorage().add(parseCodeableConcept(xpp)); 1861 } else if (!parseBackboneTypeContent(eventType, xpp, res)){ 1862 return false; 1863 } 1864 return true; 1865 } 1866 1867 protected Quantity parseQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1868 Quantity res = new Quantity(); 1869 parseElementAttributes(xpp, res); 1870 next(xpp); 1871 int eventType = nextNoWhitespace(xpp); 1872 while (eventType != XmlPullParser.END_TAG) { 1873 if (!parseQuantityContent(eventType, xpp, res)) 1874 unknownContent(xpp); 1875 eventType = nextNoWhitespace(xpp); 1876 } 1877 next(xpp); 1878 parseElementClose(res); 1879 return res; 1880 } 1881 1882 protected boolean parseQuantityContent(int eventType, XmlPullParser xpp, Quantity res) throws XmlPullParserException, IOException, FHIRFormatError { 1883 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1884 res.setValueElement(parseDecimal(xpp)); 1885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 1886 res.setComparatorElement(parseEnumeration(xpp, Enumerations.QuantityComparator.NULL, new Enumerations.QuantityComparatorEnumFactory())); 1887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 1888 res.setUnitElement(parseString(xpp)); 1889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 1890 res.setSystemElement(parseUri(xpp)); 1891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1892 res.setCodeElement(parseCode(xpp)); 1893 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1894 return false; 1895 } 1896 return true; 1897 } 1898 1899 protected Range parseRange(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1900 Range res = new Range(); 1901 parseElementAttributes(xpp, res); 1902 next(xpp); 1903 int eventType = nextNoWhitespace(xpp); 1904 while (eventType != XmlPullParser.END_TAG) { 1905 if (!parseRangeContent(eventType, xpp, res)) 1906 unknownContent(xpp); 1907 eventType = nextNoWhitespace(xpp); 1908 } 1909 next(xpp); 1910 parseElementClose(res); 1911 return res; 1912 } 1913 1914 protected boolean parseRangeContent(int eventType, XmlPullParser xpp, Range res) throws XmlPullParserException, IOException, FHIRFormatError { 1915 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 1916 res.setLow(parseQuantity(xpp)); 1917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 1918 res.setHigh(parseQuantity(xpp)); 1919 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1920 return false; 1921 } 1922 return true; 1923 } 1924 1925 protected Ratio parseRatio(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1926 Ratio res = new Ratio(); 1927 parseElementAttributes(xpp, res); 1928 next(xpp); 1929 int eventType = nextNoWhitespace(xpp); 1930 while (eventType != XmlPullParser.END_TAG) { 1931 if (!parseRatioContent(eventType, xpp, res)) 1932 unknownContent(xpp); 1933 eventType = nextNoWhitespace(xpp); 1934 } 1935 next(xpp); 1936 parseElementClose(res); 1937 return res; 1938 } 1939 1940 protected boolean parseRatioContent(int eventType, XmlPullParser xpp, Ratio res) throws XmlPullParserException, IOException, FHIRFormatError { 1941 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numerator")) { 1942 res.setNumerator(parseQuantity(xpp)); 1943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("denominator")) { 1944 res.setDenominator(parseQuantity(xpp)); 1945 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1946 return false; 1947 } 1948 return true; 1949 } 1950 1951 protected RatioRange parseRatioRange(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1952 RatioRange res = new RatioRange(); 1953 parseElementAttributes(xpp, res); 1954 next(xpp); 1955 int eventType = nextNoWhitespace(xpp); 1956 while (eventType != XmlPullParser.END_TAG) { 1957 if (!parseRatioRangeContent(eventType, xpp, res)) 1958 unknownContent(xpp); 1959 eventType = nextNoWhitespace(xpp); 1960 } 1961 next(xpp); 1962 parseElementClose(res); 1963 return res; 1964 } 1965 1966 protected boolean parseRatioRangeContent(int eventType, XmlPullParser xpp, RatioRange res) throws XmlPullParserException, IOException, FHIRFormatError { 1967 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lowNumerator")) { 1968 res.setLowNumerator(parseQuantity(xpp)); 1969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("highNumerator")) { 1970 res.setHighNumerator(parseQuantity(xpp)); 1971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("denominator")) { 1972 res.setDenominator(parseQuantity(xpp)); 1973 } else if (!parseDataTypeContent(eventType, xpp, res)){ 1974 return false; 1975 } 1976 return true; 1977 } 1978 1979 protected Reference parseReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1980 Reference res = new Reference(); 1981 parseElementAttributes(xpp, res); 1982 next(xpp); 1983 int eventType = nextNoWhitespace(xpp); 1984 while (eventType != XmlPullParser.END_TAG) { 1985 if (!parseReferenceContent(eventType, xpp, res)) 1986 unknownContent(xpp); 1987 eventType = nextNoWhitespace(xpp); 1988 } 1989 next(xpp); 1990 parseElementClose(res); 1991 return res; 1992 } 1993 1994 protected boolean parseReferenceContent(int eventType, XmlPullParser xpp, Reference res) throws XmlPullParserException, IOException, FHIRFormatError { 1995 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 1996 res.setReferenceElement(parseString(xpp)); 1997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1998 res.setTypeElement(parseUri(xpp)); 1999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2000 res.setIdentifier(parseIdentifier(xpp)); 2001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 2002 res.setDisplayElement(parseString(xpp)); 2003 } else if (!parseDataTypeContent(eventType, xpp, res)){ 2004 return false; 2005 } 2006 return true; 2007 } 2008 2009 protected RelatedArtifact parseRelatedArtifact(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2010 RelatedArtifact res = new RelatedArtifact(); 2011 parseElementAttributes(xpp, res); 2012 next(xpp); 2013 int eventType = nextNoWhitespace(xpp); 2014 while (eventType != XmlPullParser.END_TAG) { 2015 if (!parseRelatedArtifactContent(eventType, xpp, res)) 2016 unknownContent(xpp); 2017 eventType = nextNoWhitespace(xpp); 2018 } 2019 next(xpp); 2020 parseElementClose(res); 2021 return res; 2022 } 2023 2024 protected boolean parseRelatedArtifactContent(int eventType, XmlPullParser xpp, RelatedArtifact res) throws XmlPullParserException, IOException, FHIRFormatError { 2025 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2026 res.setTypeElement(parseEnumeration(xpp, RelatedArtifact.RelatedArtifactType.NULL, new RelatedArtifact.RelatedArtifactTypeEnumFactory())); 2027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { 2028 res.getClassifier().add(parseCodeableConcept(xpp)); 2029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 2030 res.setLabelElement(parseString(xpp)); 2031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 2032 res.setDisplayElement(parseString(xpp)); 2033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citation")) { 2034 res.setCitationElement(parseMarkdown(xpp)); 2035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 2036 res.setDocument(parseAttachment(xpp)); 2037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 2038 res.setResourceElement(parseCanonical(xpp)); 2039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceReference")) { 2040 res.setResourceReference(parseReference(xpp)); 2041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationStatus")) { 2042 res.setPublicationStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 2043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationDate")) { 2044 res.setPublicationDateElement(parseDate(xpp)); 2045 } else if (!parseDataTypeContent(eventType, xpp, res)){ 2046 return false; 2047 } 2048 return true; 2049 } 2050 2051 protected SampledData parseSampledData(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2052 SampledData res = new SampledData(); 2053 parseElementAttributes(xpp, res); 2054 next(xpp); 2055 int eventType = nextNoWhitespace(xpp); 2056 while (eventType != XmlPullParser.END_TAG) { 2057 if (!parseSampledDataContent(eventType, xpp, res)) 2058 unknownContent(xpp); 2059 eventType = nextNoWhitespace(xpp); 2060 } 2061 next(xpp); 2062 parseElementClose(res); 2063 return res; 2064 } 2065 2066 protected boolean parseSampledDataContent(int eventType, XmlPullParser xpp, SampledData res) throws XmlPullParserException, IOException, FHIRFormatError { 2067 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 2068 res.setOrigin(parseQuantity(xpp)); 2069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interval")) { 2070 res.setIntervalElement(parseDecimal(xpp)); 2071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intervalUnit")) { 2072 res.setIntervalUnitElement(parseCode(xpp)); 2073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 2074 res.setFactorElement(parseDecimal(xpp)); 2075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lowerLimit")) { 2076 res.setLowerLimitElement(parseDecimal(xpp)); 2077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("upperLimit")) { 2078 res.setUpperLimitElement(parseDecimal(xpp)); 2079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dimensions")) { 2080 res.setDimensionsElement(parsePositiveInt(xpp)); 2081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeMap")) { 2082 res.setCodeMapElement(parseCanonical(xpp)); 2083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offsets")) { 2084 res.setOffsetsElement(parseString(xpp)); 2085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 2086 res.setDataElement(parseString(xpp)); 2087 } else if (!parseDataTypeContent(eventType, xpp, res)){ 2088 return false; 2089 } 2090 return true; 2091 } 2092 2093 protected Signature parseSignature(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2094 Signature res = new Signature(); 2095 parseElementAttributes(xpp, res); 2096 next(xpp); 2097 int eventType = nextNoWhitespace(xpp); 2098 while (eventType != XmlPullParser.END_TAG) { 2099 if (!parseSignatureContent(eventType, xpp, res)) 2100 unknownContent(xpp); 2101 eventType = nextNoWhitespace(xpp); 2102 } 2103 next(xpp); 2104 parseElementClose(res); 2105 return res; 2106 } 2107 2108 protected boolean parseSignatureContent(int eventType, XmlPullParser xpp, Signature res) throws XmlPullParserException, IOException, FHIRFormatError { 2109 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2110 res.getType().add(parseCoding(xpp)); 2111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 2112 res.setWhenElement(parseInstant(xpp)); 2113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("who")) { 2114 res.setWho(parseReference(xpp)); 2115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 2116 res.setOnBehalfOf(parseReference(xpp)); 2117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetFormat")) { 2118 res.setTargetFormatElement(parseCode(xpp)); 2119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sigFormat")) { 2120 res.setSigFormatElement(parseCode(xpp)); 2121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 2122 res.setDataElement(parseBase64Binary(xpp)); 2123 } else if (!parseDataTypeContent(eventType, xpp, res)){ 2124 return false; 2125 } 2126 return true; 2127 } 2128 2129 protected Timing parseTiming(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2130 Timing res = new Timing(); 2131 parseElementAttributes(xpp, res); 2132 next(xpp); 2133 int eventType = nextNoWhitespace(xpp); 2134 while (eventType != XmlPullParser.END_TAG) { 2135 if (!parseTimingContent(eventType, xpp, res)) 2136 unknownContent(xpp); 2137 eventType = nextNoWhitespace(xpp); 2138 } 2139 next(xpp); 2140 parseElementClose(res); 2141 return res; 2142 } 2143 2144 protected boolean parseTimingContent(int eventType, XmlPullParser xpp, Timing res) throws XmlPullParserException, IOException, FHIRFormatError { 2145 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 2146 res.getEvent().add(parseDateTime(xpp)); 2147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeat")) { 2148 res.setRepeat(parseTimingRepeatComponent(xpp)); 2149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2150 res.setCode(parseCodeableConcept(xpp)); 2151 } else if (!parseBackboneTypeContent(eventType, xpp, res)){ 2152 return false; 2153 } 2154 return true; 2155 } 2156 2157 protected Timing.TimingRepeatComponent parseTimingRepeatComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2158 Timing.TimingRepeatComponent res = new Timing.TimingRepeatComponent(); 2159 parseElementAttributes(xpp, res); 2160 next(xpp); 2161 int eventType = nextNoWhitespace(xpp); 2162 while (eventType != XmlPullParser.END_TAG) { 2163 if (!parseTimingRepeatComponentContent(eventType, xpp, res)) 2164 unknownContent(xpp); 2165 eventType = nextNoWhitespace(xpp); 2166 } 2167 next(xpp); 2168 parseElementClose(res); 2169 return res; 2170 } 2171 2172 protected boolean parseTimingRepeatComponentContent(int eventType, XmlPullParser xpp, Timing.TimingRepeatComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2173 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bounds")) { 2174 res.setBounds(parseType("bounds", xpp)); 2175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 2176 res.setCountElement(parsePositiveInt(xpp)); 2177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countMax")) { 2178 res.setCountMaxElement(parsePositiveInt(xpp)); 2179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 2180 res.setDurationElement(parseDecimal(xpp)); 2181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationMax")) { 2182 res.setDurationMaxElement(parseDecimal(xpp)); 2183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationUnit")) { 2184 res.setDurationUnitElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 2185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequency")) { 2186 res.setFrequencyElement(parsePositiveInt(xpp)); 2187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequencyMax")) { 2188 res.setFrequencyMaxElement(parsePositiveInt(xpp)); 2189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 2190 res.setPeriodElement(parseDecimal(xpp)); 2191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodMax")) { 2192 res.setPeriodMaxElement(parseDecimal(xpp)); 2193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodUnit")) { 2194 res.setPeriodUnitElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 2195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dayOfWeek")) { 2196 res.getDayOfWeek().add(parseEnumeration(xpp, Enumerations.DaysOfWeek.NULL, new Enumerations.DaysOfWeekEnumFactory())); 2197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timeOfDay")) { 2198 res.getTimeOfDay().add(parseTime(xpp)); 2199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 2200 res.getWhen().add(parseEnumeration(xpp, Timing.EventTiming.NULL, new Timing.EventTimingEnumFactory())); 2201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 2202 res.setOffsetElement(parseUnsignedInt(xpp)); 2203 } else if (!parseElementContent(eventType, xpp, res)){ 2204 return false; 2205 } 2206 return true; 2207 } 2208 2209 protected TriggerDefinition parseTriggerDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2210 TriggerDefinition res = new TriggerDefinition(); 2211 parseElementAttributes(xpp, res); 2212 next(xpp); 2213 int eventType = nextNoWhitespace(xpp); 2214 while (eventType != XmlPullParser.END_TAG) { 2215 if (!parseTriggerDefinitionContent(eventType, xpp, res)) 2216 unknownContent(xpp); 2217 eventType = nextNoWhitespace(xpp); 2218 } 2219 next(xpp); 2220 parseElementClose(res); 2221 return res; 2222 } 2223 2224 protected boolean parseTriggerDefinitionContent(int eventType, XmlPullParser xpp, TriggerDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 2225 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2226 res.setTypeElement(parseEnumeration(xpp, TriggerDefinition.TriggerType.NULL, new TriggerDefinition.TriggerTypeEnumFactory())); 2227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2228 res.setNameElement(parseString(xpp)); 2229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2230 res.setCode(parseCodeableConcept(xpp)); 2231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriptionTopic")) { 2232 res.setSubscriptionTopicElement(parseCanonical(xpp)); 2233 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 2234 res.setTiming(parseType("timing", xpp)); 2235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 2236 res.getData().add(parseDataRequirement(xpp)); 2237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 2238 res.setCondition(parseExpression(xpp)); 2239 } else if (!parseDataTypeContent(eventType, xpp, res)){ 2240 return false; 2241 } 2242 return true; 2243 } 2244 2245 protected UsageContext parseUsageContext(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2246 UsageContext res = new UsageContext(); 2247 parseElementAttributes(xpp, res); 2248 next(xpp); 2249 int eventType = nextNoWhitespace(xpp); 2250 while (eventType != XmlPullParser.END_TAG) { 2251 if (!parseUsageContextContent(eventType, xpp, res)) 2252 unknownContent(xpp); 2253 eventType = nextNoWhitespace(xpp); 2254 } 2255 next(xpp); 2256 parseElementClose(res); 2257 return res; 2258 } 2259 2260 protected boolean parseUsageContextContent(int eventType, XmlPullParser xpp, UsageContext res) throws XmlPullParserException, IOException, FHIRFormatError { 2261 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2262 res.setCode(parseCoding(xpp)); 2263 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 2264 res.setValue(parseType("value", xpp)); 2265 } else if (!parseDataTypeContent(eventType, xpp, res)){ 2266 return false; 2267 } 2268 return true; 2269 } 2270 2271 protected VirtualServiceDetail parseVirtualServiceDetail(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2272 VirtualServiceDetail res = new VirtualServiceDetail(); 2273 parseElementAttributes(xpp, res); 2274 next(xpp); 2275 int eventType = nextNoWhitespace(xpp); 2276 while (eventType != XmlPullParser.END_TAG) { 2277 if (!parseVirtualServiceDetailContent(eventType, xpp, res)) 2278 unknownContent(xpp); 2279 eventType = nextNoWhitespace(xpp); 2280 } 2281 next(xpp); 2282 parseElementClose(res); 2283 return res; 2284 } 2285 2286 protected boolean parseVirtualServiceDetailContent(int eventType, XmlPullParser xpp, VirtualServiceDetail res) throws XmlPullParserException, IOException, FHIRFormatError { 2287 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("channelType")) { 2288 res.setChannelType(parseCoding(xpp)); 2289 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "address")) { 2290 res.setAddress(parseType("address", xpp)); 2291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalInfo")) { 2292 res.getAdditionalInfo().add(parseUrl(xpp)); 2293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxParticipants")) { 2294 res.setMaxParticipantsElement(parsePositiveInt(xpp)); 2295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sessionKey")) { 2296 res.setSessionKeyElement(parseString(xpp)); 2297 } else if (!parseDataTypeContent(eventType, xpp, res)){ 2298 return false; 2299 } 2300 return true; 2301 } 2302 2303 protected boolean parseCanonicalResourceContent(int eventType, XmlPullParser xpp, CanonicalResource res) throws XmlPullParserException, IOException, FHIRFormatError { 2304 if (!parseDomainResourceContent(eventType, xpp, res)){ 2305 return false; 2306 } 2307 return true; 2308 } 2309 2310 protected boolean parseDomainResourceContent(int eventType, XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 2311 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 2312 res.setText(parseNarrative(xpp)); 2313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contained")) { 2314 res.getContained().add(parseResourceContained(xpp)); 2315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) { 2316 res.getExtension().add(parseExtension(xpp)); 2317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) { 2318 res.getModifierExtension().add(parseExtension(xpp)); 2319 } else if (!parseResourceContent(eventType, xpp, res)){ 2320 return false; 2321 } 2322 return true; 2323 } 2324 2325 protected boolean parseMetadataResourceContent(int eventType, XmlPullParser xpp, MetadataResource res) throws XmlPullParserException, IOException, FHIRFormatError { 2326 if (!parseCanonicalResourceContent(eventType, xpp, res)){ 2327 return false; 2328 } 2329 return true; 2330 } 2331 2332 protected boolean parseResourceContent(int eventType, XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 2333 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("id")) { 2334 res.setIdElement(parseId(xpp)); 2335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meta")) { 2336 res.setMeta(parseMeta(xpp)); 2337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicitRules")) { 2338 res.setImplicitRulesElement(parseUri(xpp)); 2339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 2340 res.setLanguageElement(parseCode(xpp)); 2341 } else if (!parseBaseContent(eventType, xpp, res)){ 2342 return false; 2343 } 2344 return true; 2345 } 2346 2347 protected Account parseAccount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2348 Account res = new Account(); 2349 parseResourceAttributes(xpp, res); 2350 next(xpp); 2351 int eventType = nextNoWhitespace(xpp); 2352 while (eventType != XmlPullParser.END_TAG) { 2353 if (!parseAccountContent(eventType, xpp, res)) 2354 unknownContent(xpp); 2355 eventType = nextNoWhitespace(xpp); 2356 } 2357 next(xpp); 2358 parseElementClose(res); 2359 return res; 2360 } 2361 2362 protected boolean parseAccountContent(int eventType, XmlPullParser xpp, Account res) throws XmlPullParserException, IOException, FHIRFormatError { 2363 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2364 res.getIdentifier().add(parseIdentifier(xpp)); 2365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2366 res.setStatusElement(parseEnumeration(xpp, Account.AccountStatus.NULL, new Account.AccountStatusEnumFactory())); 2367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billingStatus")) { 2368 res.setBillingStatus(parseCodeableConcept(xpp)); 2369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2370 res.setType(parseCodeableConcept(xpp)); 2371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2372 res.setNameElement(parseString(xpp)); 2373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2374 res.getSubject().add(parseReference(xpp)); 2375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("servicePeriod")) { 2376 res.setServicePeriod(parsePeriod(xpp)); 2377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 2378 res.getCoverage().add(parseAccountCoverageComponent(xpp)); 2379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 2380 res.setOwner(parseReference(xpp)); 2381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2382 res.setDescriptionElement(parseMarkdown(xpp)); 2383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("guarantor")) { 2384 res.getGuarantor().add(parseAccountGuarantorComponent(xpp)); 2385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 2386 res.getDiagnosis().add(parseAccountDiagnosisComponent(xpp)); 2387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 2388 res.getProcedure().add(parseAccountProcedureComponent(xpp)); 2389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAccount")) { 2390 res.getRelatedAccount().add(parseAccountRelatedAccountComponent(xpp)); 2391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("currency")) { 2392 res.setCurrency(parseCodeableConcept(xpp)); 2393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("balance")) { 2394 res.getBalance().add(parseAccountBalanceComponent(xpp)); 2395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("calculatedAt")) { 2396 res.setCalculatedAtElement(parseInstant(xpp)); 2397 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 2398 return false; 2399 } 2400 return true; 2401 } 2402 2403 protected Account.CoverageComponent parseAccountCoverageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2404 Account.CoverageComponent res = new Account.CoverageComponent(); 2405 parseElementAttributes(xpp, res); 2406 next(xpp); 2407 int eventType = nextNoWhitespace(xpp); 2408 while (eventType != XmlPullParser.END_TAG) { 2409 if (!parseAccountCoverageComponentContent(eventType, xpp, res)) 2410 unknownContent(xpp); 2411 eventType = nextNoWhitespace(xpp); 2412 } 2413 next(xpp); 2414 parseElementClose(res); 2415 return res; 2416 } 2417 2418 protected boolean parseAccountCoverageComponentContent(int eventType, XmlPullParser xpp, Account.CoverageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2419 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 2420 res.setCoverage(parseReference(xpp)); 2421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 2422 res.setPriorityElement(parsePositiveInt(xpp)); 2423 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2424 return false; 2425 } 2426 return true; 2427 } 2428 2429 protected Account.GuarantorComponent parseAccountGuarantorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2430 Account.GuarantorComponent res = new Account.GuarantorComponent(); 2431 parseElementAttributes(xpp, res); 2432 next(xpp); 2433 int eventType = nextNoWhitespace(xpp); 2434 while (eventType != XmlPullParser.END_TAG) { 2435 if (!parseAccountGuarantorComponentContent(eventType, xpp, res)) 2436 unknownContent(xpp); 2437 eventType = nextNoWhitespace(xpp); 2438 } 2439 next(xpp); 2440 parseElementClose(res); 2441 return res; 2442 } 2443 2444 protected boolean parseAccountGuarantorComponentContent(int eventType, XmlPullParser xpp, Account.GuarantorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2445 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 2446 res.setParty(parseReference(xpp)); 2447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onHold")) { 2448 res.setOnHoldElement(parseBoolean(xpp)); 2449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 2450 res.setPeriod(parsePeriod(xpp)); 2451 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2452 return false; 2453 } 2454 return true; 2455 } 2456 2457 protected Account.AccountDiagnosisComponent parseAccountDiagnosisComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2458 Account.AccountDiagnosisComponent res = new Account.AccountDiagnosisComponent(); 2459 parseElementAttributes(xpp, res); 2460 next(xpp); 2461 int eventType = nextNoWhitespace(xpp); 2462 while (eventType != XmlPullParser.END_TAG) { 2463 if (!parseAccountDiagnosisComponentContent(eventType, xpp, res)) 2464 unknownContent(xpp); 2465 eventType = nextNoWhitespace(xpp); 2466 } 2467 next(xpp); 2468 parseElementClose(res); 2469 return res; 2470 } 2471 2472 protected boolean parseAccountDiagnosisComponentContent(int eventType, XmlPullParser xpp, Account.AccountDiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2473 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2474 res.setSequenceElement(parsePositiveInt(xpp)); 2475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 2476 res.setCondition(parseCodeableReference(xpp)); 2477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateOfDiagnosis")) { 2478 res.setDateOfDiagnosisElement(parseDateTime(xpp)); 2479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2480 res.getType().add(parseCodeableConcept(xpp)); 2481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onAdmission")) { 2482 res.setOnAdmissionElement(parseBoolean(xpp)); 2483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageCode")) { 2484 res.getPackageCode().add(parseCodeableConcept(xpp)); 2485 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2486 return false; 2487 } 2488 return true; 2489 } 2490 2491 protected Account.AccountProcedureComponent parseAccountProcedureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2492 Account.AccountProcedureComponent res = new Account.AccountProcedureComponent(); 2493 parseElementAttributes(xpp, res); 2494 next(xpp); 2495 int eventType = nextNoWhitespace(xpp); 2496 while (eventType != XmlPullParser.END_TAG) { 2497 if (!parseAccountProcedureComponentContent(eventType, xpp, res)) 2498 unknownContent(xpp); 2499 eventType = nextNoWhitespace(xpp); 2500 } 2501 next(xpp); 2502 parseElementClose(res); 2503 return res; 2504 } 2505 2506 protected boolean parseAccountProcedureComponentContent(int eventType, XmlPullParser xpp, Account.AccountProcedureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2507 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 2508 res.setSequenceElement(parsePositiveInt(xpp)); 2509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2510 res.setCode(parseCodeableReference(xpp)); 2511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateOfService")) { 2512 res.setDateOfServiceElement(parseDateTime(xpp)); 2513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2514 res.getType().add(parseCodeableConcept(xpp)); 2515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageCode")) { 2516 res.getPackageCode().add(parseCodeableConcept(xpp)); 2517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 2518 res.getDevice().add(parseReference(xpp)); 2519 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2520 return false; 2521 } 2522 return true; 2523 } 2524 2525 protected Account.AccountRelatedAccountComponent parseAccountRelatedAccountComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2526 Account.AccountRelatedAccountComponent res = new Account.AccountRelatedAccountComponent(); 2527 parseElementAttributes(xpp, res); 2528 next(xpp); 2529 int eventType = nextNoWhitespace(xpp); 2530 while (eventType != XmlPullParser.END_TAG) { 2531 if (!parseAccountRelatedAccountComponentContent(eventType, xpp, res)) 2532 unknownContent(xpp); 2533 eventType = nextNoWhitespace(xpp); 2534 } 2535 next(xpp); 2536 parseElementClose(res); 2537 return res; 2538 } 2539 2540 protected boolean parseAccountRelatedAccountComponentContent(int eventType, XmlPullParser xpp, Account.AccountRelatedAccountComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2541 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 2542 res.setRelationship(parseCodeableConcept(xpp)); 2543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 2544 res.setAccount(parseReference(xpp)); 2545 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2546 return false; 2547 } 2548 return true; 2549 } 2550 2551 protected Account.AccountBalanceComponent parseAccountBalanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2552 Account.AccountBalanceComponent res = new Account.AccountBalanceComponent(); 2553 parseElementAttributes(xpp, res); 2554 next(xpp); 2555 int eventType = nextNoWhitespace(xpp); 2556 while (eventType != XmlPullParser.END_TAG) { 2557 if (!parseAccountBalanceComponentContent(eventType, xpp, res)) 2558 unknownContent(xpp); 2559 eventType = nextNoWhitespace(xpp); 2560 } 2561 next(xpp); 2562 parseElementClose(res); 2563 return res; 2564 } 2565 2566 protected boolean parseAccountBalanceComponentContent(int eventType, XmlPullParser xpp, Account.AccountBalanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2567 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("aggregate")) { 2568 res.setAggregate(parseCodeableConcept(xpp)); 2569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 2570 res.setTerm(parseCodeableConcept(xpp)); 2571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("estimate")) { 2572 res.setEstimateElement(parseBoolean(xpp)); 2573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 2574 res.setAmount(parseMoney(xpp)); 2575 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2576 return false; 2577 } 2578 return true; 2579 } 2580 2581 protected ActivityDefinition parseActivityDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2582 ActivityDefinition res = new ActivityDefinition(); 2583 parseResourceAttributes(xpp, res); 2584 next(xpp); 2585 int eventType = nextNoWhitespace(xpp); 2586 while (eventType != XmlPullParser.END_TAG) { 2587 if (!parseActivityDefinitionContent(eventType, xpp, res)) 2588 unknownContent(xpp); 2589 eventType = nextNoWhitespace(xpp); 2590 } 2591 next(xpp); 2592 parseElementClose(res); 2593 return res; 2594 } 2595 2596 protected boolean parseActivityDefinitionContent(int eventType, XmlPullParser xpp, ActivityDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 2597 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2598 res.setUrlElement(parseUri(xpp)); 2599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2600 res.getIdentifier().add(parseIdentifier(xpp)); 2601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 2602 res.setVersionElement(parseString(xpp)); 2603 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 2604 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 2605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2606 res.setNameElement(parseString(xpp)); 2607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 2608 res.setTitleElement(parseString(xpp)); 2609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtitle")) { 2610 res.setSubtitleElement(parseString(xpp)); 2611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2612 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 2613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 2614 res.setExperimentalElement(parseBoolean(xpp)); 2615 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 2616 res.setSubject(parseType("subject", xpp)); 2617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2618 res.setDateElement(parseDateTime(xpp)); 2619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 2620 res.setPublisherElement(parseString(xpp)); 2621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 2622 res.getContact().add(parseContactDetail(xpp)); 2623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2624 res.setDescriptionElement(parseMarkdown(xpp)); 2625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 2626 res.getUseContext().add(parseUsageContext(xpp)); 2627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 2628 res.getJurisdiction().add(parseCodeableConcept(xpp)); 2629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 2630 res.setPurposeElement(parseMarkdown(xpp)); 2631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 2632 res.setUsageElement(parseMarkdown(xpp)); 2633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 2634 res.setCopyrightElement(parseMarkdown(xpp)); 2635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 2636 res.setCopyrightLabelElement(parseString(xpp)); 2637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 2638 res.setApprovalDateElement(parseDate(xpp)); 2639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 2640 res.setLastReviewDateElement(parseDate(xpp)); 2641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 2642 res.setEffectivePeriod(parsePeriod(xpp)); 2643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 2644 res.getTopic().add(parseCodeableConcept(xpp)); 2645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 2646 res.getAuthor().add(parseContactDetail(xpp)); 2647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 2648 res.getEditor().add(parseContactDetail(xpp)); 2649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 2650 res.getReviewer().add(parseContactDetail(xpp)); 2651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 2652 res.getEndorser().add(parseContactDetail(xpp)); 2653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 2654 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 2655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 2656 res.getLibrary().add(parseCanonical(xpp)); 2657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 2658 res.setKindElement(parseEnumeration(xpp, ActivityDefinition.RequestResourceTypes.NULL, new ActivityDefinition.RequestResourceTypesEnumFactory())); 2659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 2660 res.setProfileElement(parseCanonical(xpp)); 2661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2662 res.setCode(parseCodeableConcept(xpp)); 2663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 2664 res.setIntentElement(parseEnumeration(xpp, Enumerations.RequestIntent.NULL, new Enumerations.RequestIntentEnumFactory())); 2665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 2666 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 2667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 2668 res.setDoNotPerformElement(parseBoolean(xpp)); 2669 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 2670 res.setTiming(parseType("timing", xpp)); 2671 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 2672 res.setAsNeeded(parseType("asNeeded", xpp)); 2673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2674 res.setLocation(parseCodeableReference(xpp)); 2675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 2676 res.getParticipant().add(parseActivityDefinitionParticipantComponent(xpp)); 2677 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "product")) { 2678 res.setProduct(parseType("product", xpp)); 2679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 2680 res.setQuantity(parseQuantity(xpp)); 2681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 2682 res.getDosage().add(parseDosage(xpp)); 2683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 2684 res.getBodySite().add(parseCodeableConcept(xpp)); 2685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimenRequirement")) { 2686 res.getSpecimenRequirement().add(parseCanonical(xpp)); 2687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observationRequirement")) { 2688 res.getObservationRequirement().add(parseCanonical(xpp)); 2689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observationResultRequirement")) { 2690 res.getObservationResultRequirement().add(parseCanonical(xpp)); 2691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 2692 res.setTransformElement(parseCanonical(xpp)); 2693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dynamicValue")) { 2694 res.getDynamicValue().add(parseActivityDefinitionDynamicValueComponent(xpp)); 2695 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 2696 return false; 2697 } 2698 return true; 2699 } 2700 2701 protected ActivityDefinition.ActivityDefinitionParticipantComponent parseActivityDefinitionParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2702 ActivityDefinition.ActivityDefinitionParticipantComponent res = new ActivityDefinition.ActivityDefinitionParticipantComponent(); 2703 parseElementAttributes(xpp, res); 2704 next(xpp); 2705 int eventType = nextNoWhitespace(xpp); 2706 while (eventType != XmlPullParser.END_TAG) { 2707 if (!parseActivityDefinitionParticipantComponentContent(eventType, xpp, res)) 2708 unknownContent(xpp); 2709 eventType = nextNoWhitespace(xpp); 2710 } 2711 next(xpp); 2712 parseElementClose(res); 2713 return res; 2714 } 2715 2716 protected boolean parseActivityDefinitionParticipantComponentContent(int eventType, XmlPullParser xpp, ActivityDefinition.ActivityDefinitionParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2717 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2718 res.setTypeElement(parseEnumeration(xpp, Enumerations.ActionParticipantType.NULL, new Enumerations.ActionParticipantTypeEnumFactory())); 2719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeCanonical")) { 2720 res.setTypeCanonicalElement(parseCanonical(xpp)); 2721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeReference")) { 2722 res.setTypeReference(parseReference(xpp)); 2723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2724 res.setRole(parseCodeableConcept(xpp)); 2725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 2726 res.setFunction(parseCodeableConcept(xpp)); 2727 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2728 return false; 2729 } 2730 return true; 2731 } 2732 2733 protected ActivityDefinition.ActivityDefinitionDynamicValueComponent parseActivityDefinitionDynamicValueComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2734 ActivityDefinition.ActivityDefinitionDynamicValueComponent res = new ActivityDefinition.ActivityDefinitionDynamicValueComponent(); 2735 parseElementAttributes(xpp, res); 2736 next(xpp); 2737 int eventType = nextNoWhitespace(xpp); 2738 while (eventType != XmlPullParser.END_TAG) { 2739 if (!parseActivityDefinitionDynamicValueComponentContent(eventType, xpp, res)) 2740 unknownContent(xpp); 2741 eventType = nextNoWhitespace(xpp); 2742 } 2743 next(xpp); 2744 parseElementClose(res); 2745 return res; 2746 } 2747 2748 protected boolean parseActivityDefinitionDynamicValueComponentContent(int eventType, XmlPullParser xpp, ActivityDefinition.ActivityDefinitionDynamicValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2749 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 2750 res.setPathElement(parseString(xpp)); 2751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 2752 res.setExpression(parseExpression(xpp)); 2753 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2754 return false; 2755 } 2756 return true; 2757 } 2758 2759 protected ActorDefinition parseActorDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2760 ActorDefinition res = new ActorDefinition(); 2761 parseResourceAttributes(xpp, res); 2762 next(xpp); 2763 int eventType = nextNoWhitespace(xpp); 2764 while (eventType != XmlPullParser.END_TAG) { 2765 if (!parseActorDefinitionContent(eventType, xpp, res)) 2766 unknownContent(xpp); 2767 eventType = nextNoWhitespace(xpp); 2768 } 2769 next(xpp); 2770 parseElementClose(res); 2771 return res; 2772 } 2773 2774 protected boolean parseActorDefinitionContent(int eventType, XmlPullParser xpp, ActorDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 2775 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2776 res.setUrlElement(parseUri(xpp)); 2777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2778 res.getIdentifier().add(parseIdentifier(xpp)); 2779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 2780 res.setVersionElement(parseString(xpp)); 2781 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 2782 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 2783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2784 res.setNameElement(parseString(xpp)); 2785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 2786 res.setTitleElement(parseString(xpp)); 2787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2788 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 2789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 2790 res.setExperimentalElement(parseBoolean(xpp)); 2791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2792 res.setDateElement(parseDateTime(xpp)); 2793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 2794 res.setPublisherElement(parseString(xpp)); 2795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 2796 res.getContact().add(parseContactDetail(xpp)); 2797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2798 res.setDescriptionElement(parseMarkdown(xpp)); 2799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 2800 res.getUseContext().add(parseUsageContext(xpp)); 2801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 2802 res.getJurisdiction().add(parseCodeableConcept(xpp)); 2803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 2804 res.setPurposeElement(parseMarkdown(xpp)); 2805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 2806 res.setCopyrightElement(parseMarkdown(xpp)); 2807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 2808 res.setCopyrightLabelElement(parseString(xpp)); 2809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2810 res.setTypeElement(parseEnumeration(xpp, Enumerations.ExampleScenarioActorType.NULL, new Enumerations.ExampleScenarioActorTypeEnumFactory())); 2811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 2812 res.setDocumentationElement(parseMarkdown(xpp)); 2813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 2814 res.getReference().add(parseUrl(xpp)); 2815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capabilities")) { 2816 res.setCapabilitiesElement(parseCanonical(xpp)); 2817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 2818 res.getDerivedFrom().add(parseCanonical(xpp)); 2819 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 2820 return false; 2821 } 2822 return true; 2823 } 2824 2825 protected AdministrableProductDefinition parseAdministrableProductDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2826 AdministrableProductDefinition res = new AdministrableProductDefinition(); 2827 parseResourceAttributes(xpp, res); 2828 next(xpp); 2829 int eventType = nextNoWhitespace(xpp); 2830 while (eventType != XmlPullParser.END_TAG) { 2831 if (!parseAdministrableProductDefinitionContent(eventType, xpp, res)) 2832 unknownContent(xpp); 2833 eventType = nextNoWhitespace(xpp); 2834 } 2835 next(xpp); 2836 parseElementClose(res); 2837 return res; 2838 } 2839 2840 protected boolean parseAdministrableProductDefinitionContent(int eventType, XmlPullParser xpp, AdministrableProductDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 2841 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2842 res.getIdentifier().add(parseIdentifier(xpp)); 2843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2844 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 2845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("formOf")) { 2846 res.getFormOf().add(parseReference(xpp)); 2847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administrableDoseForm")) { 2848 res.setAdministrableDoseForm(parseCodeableConcept(xpp)); 2849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitOfPresentation")) { 2850 res.setUnitOfPresentation(parseCodeableConcept(xpp)); 2851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("producedFrom")) { 2852 res.getProducedFrom().add(parseReference(xpp)); 2853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 2854 res.getIngredient().add(parseCodeableConcept(xpp)); 2855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 2856 res.setDevice(parseReference(xpp)); 2857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2858 res.setDescriptionElement(parseMarkdown(xpp)); 2859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 2860 res.getProperty().add(parseAdministrableProductDefinitionPropertyComponent(xpp)); 2861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("routeOfAdministration")) { 2862 res.getRouteOfAdministration().add(parseAdministrableProductDefinitionRouteOfAdministrationComponent(xpp)); 2863 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 2864 return false; 2865 } 2866 return true; 2867 } 2868 2869 protected AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent parseAdministrableProductDefinitionPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2870 AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent res = new AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent(); 2871 parseElementAttributes(xpp, res); 2872 next(xpp); 2873 int eventType = nextNoWhitespace(xpp); 2874 while (eventType != XmlPullParser.END_TAG) { 2875 if (!parseAdministrableProductDefinitionPropertyComponentContent(eventType, xpp, res)) 2876 unknownContent(xpp); 2877 eventType = nextNoWhitespace(xpp); 2878 } 2879 next(xpp); 2880 parseElementClose(res); 2881 return res; 2882 } 2883 2884 protected boolean parseAdministrableProductDefinitionPropertyComponentContent(int eventType, XmlPullParser xpp, AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2885 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2886 res.setType(parseCodeableConcept(xpp)); 2887 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 2888 res.setValue(parseType("value", xpp)); 2889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2890 res.setStatus(parseCodeableConcept(xpp)); 2891 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2892 return false; 2893 } 2894 return true; 2895 } 2896 2897 protected AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent parseAdministrableProductDefinitionRouteOfAdministrationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2898 AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent res = new AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent(); 2899 parseElementAttributes(xpp, res); 2900 next(xpp); 2901 int eventType = nextNoWhitespace(xpp); 2902 while (eventType != XmlPullParser.END_TAG) { 2903 if (!parseAdministrableProductDefinitionRouteOfAdministrationComponentContent(eventType, xpp, res)) 2904 unknownContent(xpp); 2905 eventType = nextNoWhitespace(xpp); 2906 } 2907 next(xpp); 2908 parseElementClose(res); 2909 return res; 2910 } 2911 2912 protected boolean parseAdministrableProductDefinitionRouteOfAdministrationComponentContent(int eventType, XmlPullParser xpp, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2913 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2914 res.setCode(parseCodeableConcept(xpp)); 2915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("firstDose")) { 2916 res.setFirstDose(parseQuantity(xpp)); 2917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxSingleDose")) { 2918 res.setMaxSingleDose(parseQuantity(xpp)); 2919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerDay")) { 2920 res.setMaxDosePerDay(parseQuantity(xpp)); 2921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerTreatmentPeriod")) { 2922 res.setMaxDosePerTreatmentPeriod(parseRatio(xpp)); 2923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxTreatmentPeriod")) { 2924 res.setMaxTreatmentPeriod(parseDuration(xpp)); 2925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetSpecies")) { 2926 res.getTargetSpecies().add(parseAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent(xpp)); 2927 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2928 return false; 2929 } 2930 return true; 2931 } 2932 2933 protected AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent parseAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2934 AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent res = new AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent(); 2935 parseElementAttributes(xpp, res); 2936 next(xpp); 2937 int eventType = nextNoWhitespace(xpp); 2938 while (eventType != XmlPullParser.END_TAG) { 2939 if (!parseAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponentContent(eventType, xpp, res)) 2940 unknownContent(xpp); 2941 eventType = nextNoWhitespace(xpp); 2942 } 2943 next(xpp); 2944 parseElementClose(res); 2945 return res; 2946 } 2947 2948 protected boolean parseAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponentContent(int eventType, XmlPullParser xpp, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2949 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2950 res.setCode(parseCodeableConcept(xpp)); 2951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("withdrawalPeriod")) { 2952 res.getWithdrawalPeriod().add(parseAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent(xpp)); 2953 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2954 return false; 2955 } 2956 return true; 2957 } 2958 2959 protected AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent parseAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2960 AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent res = new AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent(); 2961 parseElementAttributes(xpp, res); 2962 next(xpp); 2963 int eventType = nextNoWhitespace(xpp); 2964 while (eventType != XmlPullParser.END_TAG) { 2965 if (!parseAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponentContent(eventType, xpp, res)) 2966 unknownContent(xpp); 2967 eventType = nextNoWhitespace(xpp); 2968 } 2969 next(xpp); 2970 parseElementClose(res); 2971 return res; 2972 } 2973 2974 protected boolean parseAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponentContent(int eventType, XmlPullParser xpp, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2975 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tissue")) { 2976 res.setTissue(parseCodeableConcept(xpp)); 2977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2978 res.setValue(parseQuantity(xpp)); 2979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 2980 res.setSupportingInformationElement(parseString(xpp)); 2981 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 2982 return false; 2983 } 2984 return true; 2985 } 2986 2987 protected AdverseEvent parseAdverseEvent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2988 AdverseEvent res = new AdverseEvent(); 2989 parseResourceAttributes(xpp, res); 2990 next(xpp); 2991 int eventType = nextNoWhitespace(xpp); 2992 while (eventType != XmlPullParser.END_TAG) { 2993 if (!parseAdverseEventContent(eventType, xpp, res)) 2994 unknownContent(xpp); 2995 eventType = nextNoWhitespace(xpp); 2996 } 2997 next(xpp); 2998 parseElementClose(res); 2999 return res; 3000 } 3001 3002 protected boolean parseAdverseEventContent(int eventType, XmlPullParser xpp, AdverseEvent res) throws XmlPullParserException, IOException, FHIRFormatError { 3003 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3004 res.getIdentifier().add(parseIdentifier(xpp)); 3005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3006 res.setStatusElement(parseEnumeration(xpp, AdverseEvent.AdverseEventStatus.NULL, new AdverseEvent.AdverseEventStatusEnumFactory())); 3007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actuality")) { 3008 res.setActualityElement(parseEnumeration(xpp, AdverseEvent.AdverseEventActuality.NULL, new AdverseEvent.AdverseEventActualityEnumFactory())); 3009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3010 res.getCategory().add(parseCodeableConcept(xpp)); 3011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3012 res.setCode(parseCodeableConcept(xpp)); 3013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3014 res.setSubject(parseReference(xpp)); 3015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 3016 res.setEncounter(parseReference(xpp)); 3017 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 3018 res.setOccurrence(parseType("occurrence", xpp)); 3019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detected")) { 3020 res.setDetectedElement(parseDateTime(xpp)); 3021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedDate")) { 3022 res.setRecordedDateElement(parseDateTime(xpp)); 3023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resultingEffect")) { 3024 res.getResultingEffect().add(parseReference(xpp)); 3025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 3026 res.setLocation(parseReference(xpp)); 3027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriousness")) { 3028 res.setSeriousness(parseCodeableConcept(xpp)); 3029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 3030 res.getOutcome().add(parseCodeableConcept(xpp)); 3031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 3032 res.setRecorder(parseReference(xpp)); 3033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 3034 res.getParticipant().add(parseAdverseEventParticipantComponent(xpp)); 3035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 3036 res.getStudy().add(parseReference(xpp)); 3037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expectedInResearchStudy")) { 3038 res.setExpectedInResearchStudyElement(parseBoolean(xpp)); 3039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suspectEntity")) { 3040 res.getSuspectEntity().add(parseAdverseEventSuspectEntityComponent(xpp)); 3041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributingFactor")) { 3042 res.getContributingFactor().add(parseAdverseEventContributingFactorComponent(xpp)); 3043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preventiveAction")) { 3044 res.getPreventiveAction().add(parseAdverseEventPreventiveActionComponent(xpp)); 3045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigatingAction")) { 3046 res.getMitigatingAction().add(parseAdverseEventMitigatingActionComponent(xpp)); 3047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 3048 res.getSupportingInfo().add(parseAdverseEventSupportingInfoComponent(xpp)); 3049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3050 res.getNote().add(parseAnnotation(xpp)); 3051 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 3052 return false; 3053 } 3054 return true; 3055 } 3056 3057 protected AdverseEvent.AdverseEventParticipantComponent parseAdverseEventParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3058 AdverseEvent.AdverseEventParticipantComponent res = new AdverseEvent.AdverseEventParticipantComponent(); 3059 parseElementAttributes(xpp, res); 3060 next(xpp); 3061 int eventType = nextNoWhitespace(xpp); 3062 while (eventType != XmlPullParser.END_TAG) { 3063 if (!parseAdverseEventParticipantComponentContent(eventType, xpp, res)) 3064 unknownContent(xpp); 3065 eventType = nextNoWhitespace(xpp); 3066 } 3067 next(xpp); 3068 parseElementClose(res); 3069 return res; 3070 } 3071 3072 protected boolean parseAdverseEventParticipantComponentContent(int eventType, XmlPullParser xpp, AdverseEvent.AdverseEventParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3073 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 3074 res.setFunction(parseCodeableConcept(xpp)); 3075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 3076 res.setActor(parseReference(xpp)); 3077 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3078 return false; 3079 } 3080 return true; 3081 } 3082 3083 protected AdverseEvent.AdverseEventSuspectEntityComponent parseAdverseEventSuspectEntityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3084 AdverseEvent.AdverseEventSuspectEntityComponent res = new AdverseEvent.AdverseEventSuspectEntityComponent(); 3085 parseElementAttributes(xpp, res); 3086 next(xpp); 3087 int eventType = nextNoWhitespace(xpp); 3088 while (eventType != XmlPullParser.END_TAG) { 3089 if (!parseAdverseEventSuspectEntityComponentContent(eventType, xpp, res)) 3090 unknownContent(xpp); 3091 eventType = nextNoWhitespace(xpp); 3092 } 3093 next(xpp); 3094 parseElementClose(res); 3095 return res; 3096 } 3097 3098 protected boolean parseAdverseEventSuspectEntityComponentContent(int eventType, XmlPullParser xpp, AdverseEvent.AdverseEventSuspectEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3099 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "instance")) { 3100 res.setInstance(parseType("instance", xpp)); 3101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causality")) { 3102 res.setCausality(parseAdverseEventSuspectEntityCausalityComponent(xpp)); 3103 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3104 return false; 3105 } 3106 return true; 3107 } 3108 3109 protected AdverseEvent.AdverseEventSuspectEntityCausalityComponent parseAdverseEventSuspectEntityCausalityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3110 AdverseEvent.AdverseEventSuspectEntityCausalityComponent res = new AdverseEvent.AdverseEventSuspectEntityCausalityComponent(); 3111 parseElementAttributes(xpp, res); 3112 next(xpp); 3113 int eventType = nextNoWhitespace(xpp); 3114 while (eventType != XmlPullParser.END_TAG) { 3115 if (!parseAdverseEventSuspectEntityCausalityComponentContent(eventType, xpp, res)) 3116 unknownContent(xpp); 3117 eventType = nextNoWhitespace(xpp); 3118 } 3119 next(xpp); 3120 parseElementClose(res); 3121 return res; 3122 } 3123 3124 protected boolean parseAdverseEventSuspectEntityCausalityComponentContent(int eventType, XmlPullParser xpp, AdverseEvent.AdverseEventSuspectEntityCausalityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3125 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessmentMethod")) { 3126 res.setAssessmentMethod(parseCodeableConcept(xpp)); 3127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entityRelatedness")) { 3128 res.setEntityRelatedness(parseCodeableConcept(xpp)); 3129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 3130 res.setAuthor(parseReference(xpp)); 3131 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3132 return false; 3133 } 3134 return true; 3135 } 3136 3137 protected AdverseEvent.AdverseEventContributingFactorComponent parseAdverseEventContributingFactorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3138 AdverseEvent.AdverseEventContributingFactorComponent res = new AdverseEvent.AdverseEventContributingFactorComponent(); 3139 parseElementAttributes(xpp, res); 3140 next(xpp); 3141 int eventType = nextNoWhitespace(xpp); 3142 while (eventType != XmlPullParser.END_TAG) { 3143 if (!parseAdverseEventContributingFactorComponentContent(eventType, xpp, res)) 3144 unknownContent(xpp); 3145 eventType = nextNoWhitespace(xpp); 3146 } 3147 next(xpp); 3148 parseElementClose(res); 3149 return res; 3150 } 3151 3152 protected boolean parseAdverseEventContributingFactorComponentContent(int eventType, XmlPullParser xpp, AdverseEvent.AdverseEventContributingFactorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3153 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 3154 res.setItem(parseType("item", xpp)); 3155 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3156 return false; 3157 } 3158 return true; 3159 } 3160 3161 protected AdverseEvent.AdverseEventPreventiveActionComponent parseAdverseEventPreventiveActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3162 AdverseEvent.AdverseEventPreventiveActionComponent res = new AdverseEvent.AdverseEventPreventiveActionComponent(); 3163 parseElementAttributes(xpp, res); 3164 next(xpp); 3165 int eventType = nextNoWhitespace(xpp); 3166 while (eventType != XmlPullParser.END_TAG) { 3167 if (!parseAdverseEventPreventiveActionComponentContent(eventType, xpp, res)) 3168 unknownContent(xpp); 3169 eventType = nextNoWhitespace(xpp); 3170 } 3171 next(xpp); 3172 parseElementClose(res); 3173 return res; 3174 } 3175 3176 protected boolean parseAdverseEventPreventiveActionComponentContent(int eventType, XmlPullParser xpp, AdverseEvent.AdverseEventPreventiveActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3177 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 3178 res.setItem(parseType("item", xpp)); 3179 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3180 return false; 3181 } 3182 return true; 3183 } 3184 3185 protected AdverseEvent.AdverseEventMitigatingActionComponent parseAdverseEventMitigatingActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3186 AdverseEvent.AdverseEventMitigatingActionComponent res = new AdverseEvent.AdverseEventMitigatingActionComponent(); 3187 parseElementAttributes(xpp, res); 3188 next(xpp); 3189 int eventType = nextNoWhitespace(xpp); 3190 while (eventType != XmlPullParser.END_TAG) { 3191 if (!parseAdverseEventMitigatingActionComponentContent(eventType, xpp, res)) 3192 unknownContent(xpp); 3193 eventType = nextNoWhitespace(xpp); 3194 } 3195 next(xpp); 3196 parseElementClose(res); 3197 return res; 3198 } 3199 3200 protected boolean parseAdverseEventMitigatingActionComponentContent(int eventType, XmlPullParser xpp, AdverseEvent.AdverseEventMitigatingActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3201 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 3202 res.setItem(parseType("item", xpp)); 3203 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3204 return false; 3205 } 3206 return true; 3207 } 3208 3209 protected AdverseEvent.AdverseEventSupportingInfoComponent parseAdverseEventSupportingInfoComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3210 AdverseEvent.AdverseEventSupportingInfoComponent res = new AdverseEvent.AdverseEventSupportingInfoComponent(); 3211 parseElementAttributes(xpp, res); 3212 next(xpp); 3213 int eventType = nextNoWhitespace(xpp); 3214 while (eventType != XmlPullParser.END_TAG) { 3215 if (!parseAdverseEventSupportingInfoComponentContent(eventType, xpp, res)) 3216 unknownContent(xpp); 3217 eventType = nextNoWhitespace(xpp); 3218 } 3219 next(xpp); 3220 parseElementClose(res); 3221 return res; 3222 } 3223 3224 protected boolean parseAdverseEventSupportingInfoComponentContent(int eventType, XmlPullParser xpp, AdverseEvent.AdverseEventSupportingInfoComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3225 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 3226 res.setItem(parseType("item", xpp)); 3227 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3228 return false; 3229 } 3230 return true; 3231 } 3232 3233 protected AllergyIntolerance parseAllergyIntolerance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3234 AllergyIntolerance res = new AllergyIntolerance(); 3235 parseResourceAttributes(xpp, res); 3236 next(xpp); 3237 int eventType = nextNoWhitespace(xpp); 3238 while (eventType != XmlPullParser.END_TAG) { 3239 if (!parseAllergyIntoleranceContent(eventType, xpp, res)) 3240 unknownContent(xpp); 3241 eventType = nextNoWhitespace(xpp); 3242 } 3243 next(xpp); 3244 parseElementClose(res); 3245 return res; 3246 } 3247 3248 protected boolean parseAllergyIntoleranceContent(int eventType, XmlPullParser xpp, AllergyIntolerance res) throws XmlPullParserException, IOException, FHIRFormatError { 3249 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3250 res.getIdentifier().add(parseIdentifier(xpp)); 3251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalStatus")) { 3252 res.setClinicalStatus(parseCodeableConcept(xpp)); 3253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationStatus")) { 3254 res.setVerificationStatus(parseCodeableConcept(xpp)); 3255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3256 res.setType(parseCodeableConcept(xpp)); 3257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3258 res.getCategory().add(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCategory.NULL, new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory())); 3259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criticality")) { 3260 res.setCriticalityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCriticality.NULL, new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory())); 3261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3262 res.setCode(parseCodeableConcept(xpp)); 3263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 3264 res.setPatient(parseReference(xpp)); 3265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 3266 res.setEncounter(parseReference(xpp)); 3267 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 3268 res.setOnset(parseType("onset", xpp)); 3269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedDate")) { 3270 res.setRecordedDateElement(parseDateTime(xpp)); 3271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 3272 res.getParticipant().add(parseAllergyIntoleranceParticipantComponent(xpp)); 3273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastOccurrence")) { 3274 res.setLastOccurrenceElement(parseDateTime(xpp)); 3275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3276 res.getNote().add(parseAnnotation(xpp)); 3277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 3278 res.getReaction().add(parseAllergyIntoleranceReactionComponent(xpp)); 3279 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 3280 return false; 3281 } 3282 return true; 3283 } 3284 3285 protected AllergyIntolerance.AllergyIntoleranceParticipantComponent parseAllergyIntoleranceParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3286 AllergyIntolerance.AllergyIntoleranceParticipantComponent res = new AllergyIntolerance.AllergyIntoleranceParticipantComponent(); 3287 parseElementAttributes(xpp, res); 3288 next(xpp); 3289 int eventType = nextNoWhitespace(xpp); 3290 while (eventType != XmlPullParser.END_TAG) { 3291 if (!parseAllergyIntoleranceParticipantComponentContent(eventType, xpp, res)) 3292 unknownContent(xpp); 3293 eventType = nextNoWhitespace(xpp); 3294 } 3295 next(xpp); 3296 parseElementClose(res); 3297 return res; 3298 } 3299 3300 protected boolean parseAllergyIntoleranceParticipantComponentContent(int eventType, XmlPullParser xpp, AllergyIntolerance.AllergyIntoleranceParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3301 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 3302 res.setFunction(parseCodeableConcept(xpp)); 3303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 3304 res.setActor(parseReference(xpp)); 3305 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3306 return false; 3307 } 3308 return true; 3309 } 3310 3311 protected AllergyIntolerance.AllergyIntoleranceReactionComponent parseAllergyIntoleranceReactionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3312 AllergyIntolerance.AllergyIntoleranceReactionComponent res = new AllergyIntolerance.AllergyIntoleranceReactionComponent(); 3313 parseElementAttributes(xpp, res); 3314 next(xpp); 3315 int eventType = nextNoWhitespace(xpp); 3316 while (eventType != XmlPullParser.END_TAG) { 3317 if (!parseAllergyIntoleranceReactionComponentContent(eventType, xpp, res)) 3318 unknownContent(xpp); 3319 eventType = nextNoWhitespace(xpp); 3320 } 3321 next(xpp); 3322 parseElementClose(res); 3323 return res; 3324 } 3325 3326 protected boolean parseAllergyIntoleranceReactionComponentContent(int eventType, XmlPullParser xpp, AllergyIntolerance.AllergyIntoleranceReactionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3327 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 3328 res.setSubstance(parseCodeableConcept(xpp)); 3329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manifestation")) { 3330 res.getManifestation().add(parseCodeableReference(xpp)); 3331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3332 res.setDescriptionElement(parseString(xpp)); 3333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 3334 res.setOnsetElement(parseDateTime(xpp)); 3335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 3336 res.setSeverityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceSeverity.NULL, new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory())); 3337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exposureRoute")) { 3338 res.setExposureRoute(parseCodeableConcept(xpp)); 3339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3340 res.getNote().add(parseAnnotation(xpp)); 3341 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3342 return false; 3343 } 3344 return true; 3345 } 3346 3347 protected Appointment parseAppointment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3348 Appointment res = new Appointment(); 3349 parseResourceAttributes(xpp, res); 3350 next(xpp); 3351 int eventType = nextNoWhitespace(xpp); 3352 while (eventType != XmlPullParser.END_TAG) { 3353 if (!parseAppointmentContent(eventType, xpp, res)) 3354 unknownContent(xpp); 3355 eventType = nextNoWhitespace(xpp); 3356 } 3357 next(xpp); 3358 parseElementClose(res); 3359 return res; 3360 } 3361 3362 protected boolean parseAppointmentContent(int eventType, XmlPullParser xpp, Appointment res) throws XmlPullParserException, IOException, FHIRFormatError { 3363 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3364 res.getIdentifier().add(parseIdentifier(xpp)); 3365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3366 res.setStatusElement(parseEnumeration(xpp, Appointment.AppointmentStatus.NULL, new Appointment.AppointmentStatusEnumFactory())); 3367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cancellationReason")) { 3368 res.setCancellationReason(parseCodeableConcept(xpp)); 3369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 3370 res.getClass_().add(parseCodeableConcept(xpp)); 3371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 3372 res.getServiceCategory().add(parseCodeableConcept(xpp)); 3373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 3374 res.getServiceType().add(parseCodeableReference(xpp)); 3375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 3376 res.getSpecialty().add(parseCodeableConcept(xpp)); 3377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentType")) { 3378 res.setAppointmentType(parseCodeableConcept(xpp)); 3379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3380 res.getReason().add(parseCodeableReference(xpp)); 3381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 3382 res.setPriority(parseCodeableConcept(xpp)); 3383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3384 res.setDescriptionElement(parseString(xpp)); 3385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 3386 res.getReplaces().add(parseReference(xpp)); 3387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("virtualService")) { 3388 res.getVirtualService().add(parseVirtualServiceDetail(xpp)); 3389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 3390 res.getSupportingInformation().add(parseReference(xpp)); 3391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previousAppointment")) { 3392 res.setPreviousAppointment(parseReference(xpp)); 3393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originatingAppointment")) { 3394 res.setOriginatingAppointment(parseReference(xpp)); 3395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 3396 res.setStartElement(parseInstant(xpp)); 3397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 3398 res.setEndElement(parseInstant(xpp)); 3399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minutesDuration")) { 3400 res.setMinutesDurationElement(parsePositiveInt(xpp)); 3401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestedPeriod")) { 3402 res.getRequestedPeriod().add(parsePeriod(xpp)); 3403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slot")) { 3404 res.getSlot().add(parseReference(xpp)); 3405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 3406 res.getAccount().add(parseReference(xpp)); 3407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 3408 res.setCreatedElement(parseDateTime(xpp)); 3409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cancellationDate")) { 3410 res.setCancellationDateElement(parseDateTime(xpp)); 3411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3412 res.getNote().add(parseAnnotation(xpp)); 3413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientInstruction")) { 3414 res.getPatientInstruction().add(parseCodeableReference(xpp)); 3415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 3416 res.getBasedOn().add(parseReference(xpp)); 3417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3418 res.setSubject(parseReference(xpp)); 3419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 3420 res.getParticipant().add(parseAppointmentParticipantComponent(xpp)); 3421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recurrenceId")) { 3422 res.setRecurrenceIdElement(parsePositiveInt(xpp)); 3423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceChanged")) { 3424 res.setOccurrenceChangedElement(parseBoolean(xpp)); 3425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recurrenceTemplate")) { 3426 res.getRecurrenceTemplate().add(parseAppointmentRecurrenceTemplateComponent(xpp)); 3427 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 3428 return false; 3429 } 3430 return true; 3431 } 3432 3433 protected Appointment.AppointmentParticipantComponent parseAppointmentParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3434 Appointment.AppointmentParticipantComponent res = new Appointment.AppointmentParticipantComponent(); 3435 parseElementAttributes(xpp, res); 3436 next(xpp); 3437 int eventType = nextNoWhitespace(xpp); 3438 while (eventType != XmlPullParser.END_TAG) { 3439 if (!parseAppointmentParticipantComponentContent(eventType, xpp, res)) 3440 unknownContent(xpp); 3441 eventType = nextNoWhitespace(xpp); 3442 } 3443 next(xpp); 3444 parseElementClose(res); 3445 return res; 3446 } 3447 3448 protected boolean parseAppointmentParticipantComponentContent(int eventType, XmlPullParser xpp, Appointment.AppointmentParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3449 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3450 res.getType().add(parseCodeableConcept(xpp)); 3451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3452 res.setPeriod(parsePeriod(xpp)); 3453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 3454 res.setActor(parseReference(xpp)); 3455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 3456 res.setRequiredElement(parseBoolean(xpp)); 3457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3458 res.setStatusElement(parseEnumeration(xpp, Appointment.ParticipationStatus.NULL, new Appointment.ParticipationStatusEnumFactory())); 3459 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3460 return false; 3461 } 3462 return true; 3463 } 3464 3465 protected Appointment.AppointmentRecurrenceTemplateComponent parseAppointmentRecurrenceTemplateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3466 Appointment.AppointmentRecurrenceTemplateComponent res = new Appointment.AppointmentRecurrenceTemplateComponent(); 3467 parseElementAttributes(xpp, res); 3468 next(xpp); 3469 int eventType = nextNoWhitespace(xpp); 3470 while (eventType != XmlPullParser.END_TAG) { 3471 if (!parseAppointmentRecurrenceTemplateComponentContent(eventType, xpp, res)) 3472 unknownContent(xpp); 3473 eventType = nextNoWhitespace(xpp); 3474 } 3475 next(xpp); 3476 parseElementClose(res); 3477 return res; 3478 } 3479 3480 protected boolean parseAppointmentRecurrenceTemplateComponentContent(int eventType, XmlPullParser xpp, Appointment.AppointmentRecurrenceTemplateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3481 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timezone")) { 3482 res.setTimezone(parseCodeableConcept(xpp)); 3483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recurrenceType")) { 3484 res.setRecurrenceType(parseCodeableConcept(xpp)); 3485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastOccurrenceDate")) { 3486 res.setLastOccurrenceDateElement(parseDate(xpp)); 3487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceCount")) { 3488 res.setOccurrenceCountElement(parsePositiveInt(xpp)); 3489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceDate")) { 3490 res.getOccurrenceDate().add(parseDate(xpp)); 3491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("weeklyTemplate")) { 3492 res.setWeeklyTemplate(parseAppointmentRecurrenceTemplateWeeklyTemplateComponent(xpp)); 3493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("monthlyTemplate")) { 3494 res.setMonthlyTemplate(parseAppointmentRecurrenceTemplateMonthlyTemplateComponent(xpp)); 3495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("yearlyTemplate")) { 3496 res.setYearlyTemplate(parseAppointmentRecurrenceTemplateYearlyTemplateComponent(xpp)); 3497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludingDate")) { 3498 res.getExcludingDate().add(parseDate(xpp)); 3499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludingRecurrenceId")) { 3500 res.getExcludingRecurrenceId().add(parsePositiveInt(xpp)); 3501 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3502 return false; 3503 } 3504 return true; 3505 } 3506 3507 protected Appointment.AppointmentRecurrenceTemplateWeeklyTemplateComponent parseAppointmentRecurrenceTemplateWeeklyTemplateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3508 Appointment.AppointmentRecurrenceTemplateWeeklyTemplateComponent res = new Appointment.AppointmentRecurrenceTemplateWeeklyTemplateComponent(); 3509 parseElementAttributes(xpp, res); 3510 next(xpp); 3511 int eventType = nextNoWhitespace(xpp); 3512 while (eventType != XmlPullParser.END_TAG) { 3513 if (!parseAppointmentRecurrenceTemplateWeeklyTemplateComponentContent(eventType, xpp, res)) 3514 unknownContent(xpp); 3515 eventType = nextNoWhitespace(xpp); 3516 } 3517 next(xpp); 3518 parseElementClose(res); 3519 return res; 3520 } 3521 3522 protected boolean parseAppointmentRecurrenceTemplateWeeklyTemplateComponentContent(int eventType, XmlPullParser xpp, Appointment.AppointmentRecurrenceTemplateWeeklyTemplateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3523 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("monday")) { 3524 res.setMondayElement(parseBoolean(xpp)); 3525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tuesday")) { 3526 res.setTuesdayElement(parseBoolean(xpp)); 3527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wednesday")) { 3528 res.setWednesdayElement(parseBoolean(xpp)); 3529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("thursday")) { 3530 res.setThursdayElement(parseBoolean(xpp)); 3531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("friday")) { 3532 res.setFridayElement(parseBoolean(xpp)); 3533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("saturday")) { 3534 res.setSaturdayElement(parseBoolean(xpp)); 3535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sunday")) { 3536 res.setSundayElement(parseBoolean(xpp)); 3537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("weekInterval")) { 3538 res.setWeekIntervalElement(parsePositiveInt(xpp)); 3539 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3540 return false; 3541 } 3542 return true; 3543 } 3544 3545 protected Appointment.AppointmentRecurrenceTemplateMonthlyTemplateComponent parseAppointmentRecurrenceTemplateMonthlyTemplateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3546 Appointment.AppointmentRecurrenceTemplateMonthlyTemplateComponent res = new Appointment.AppointmentRecurrenceTemplateMonthlyTemplateComponent(); 3547 parseElementAttributes(xpp, res); 3548 next(xpp); 3549 int eventType = nextNoWhitespace(xpp); 3550 while (eventType != XmlPullParser.END_TAG) { 3551 if (!parseAppointmentRecurrenceTemplateMonthlyTemplateComponentContent(eventType, xpp, res)) 3552 unknownContent(xpp); 3553 eventType = nextNoWhitespace(xpp); 3554 } 3555 next(xpp); 3556 parseElementClose(res); 3557 return res; 3558 } 3559 3560 protected boolean parseAppointmentRecurrenceTemplateMonthlyTemplateComponentContent(int eventType, XmlPullParser xpp, Appointment.AppointmentRecurrenceTemplateMonthlyTemplateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3561 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dayOfMonth")) { 3562 res.setDayOfMonthElement(parsePositiveInt(xpp)); 3563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nthWeekOfMonth")) { 3564 res.setNthWeekOfMonth(parseCoding(xpp)); 3565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dayOfWeek")) { 3566 res.setDayOfWeek(parseCoding(xpp)); 3567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("monthInterval")) { 3568 res.setMonthIntervalElement(parsePositiveInt(xpp)); 3569 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3570 return false; 3571 } 3572 return true; 3573 } 3574 3575 protected Appointment.AppointmentRecurrenceTemplateYearlyTemplateComponent parseAppointmentRecurrenceTemplateYearlyTemplateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3576 Appointment.AppointmentRecurrenceTemplateYearlyTemplateComponent res = new Appointment.AppointmentRecurrenceTemplateYearlyTemplateComponent(); 3577 parseElementAttributes(xpp, res); 3578 next(xpp); 3579 int eventType = nextNoWhitespace(xpp); 3580 while (eventType != XmlPullParser.END_TAG) { 3581 if (!parseAppointmentRecurrenceTemplateYearlyTemplateComponentContent(eventType, xpp, res)) 3582 unknownContent(xpp); 3583 eventType = nextNoWhitespace(xpp); 3584 } 3585 next(xpp); 3586 parseElementClose(res); 3587 return res; 3588 } 3589 3590 protected boolean parseAppointmentRecurrenceTemplateYearlyTemplateComponentContent(int eventType, XmlPullParser xpp, Appointment.AppointmentRecurrenceTemplateYearlyTemplateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3591 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("yearInterval")) { 3592 res.setYearIntervalElement(parsePositiveInt(xpp)); 3593 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3594 return false; 3595 } 3596 return true; 3597 } 3598 3599 protected AppointmentResponse parseAppointmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3600 AppointmentResponse res = new AppointmentResponse(); 3601 parseResourceAttributes(xpp, res); 3602 next(xpp); 3603 int eventType = nextNoWhitespace(xpp); 3604 while (eventType != XmlPullParser.END_TAG) { 3605 if (!parseAppointmentResponseContent(eventType, xpp, res)) 3606 unknownContent(xpp); 3607 eventType = nextNoWhitespace(xpp); 3608 } 3609 next(xpp); 3610 parseElementClose(res); 3611 return res; 3612 } 3613 3614 protected boolean parseAppointmentResponseContent(int eventType, XmlPullParser xpp, AppointmentResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 3615 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3616 res.getIdentifier().add(parseIdentifier(xpp)); 3617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 3618 res.setAppointment(parseReference(xpp)); 3619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("proposedNewTime")) { 3620 res.setProposedNewTimeElement(parseBoolean(xpp)); 3621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 3622 res.setStartElement(parseInstant(xpp)); 3623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 3624 res.setEndElement(parseInstant(xpp)); 3625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantType")) { 3626 res.getParticipantType().add(parseCodeableConcept(xpp)); 3627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 3628 res.setActor(parseReference(xpp)); 3629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantStatus")) { 3630 res.setParticipantStatusElement(parseEnumeration(xpp, AppointmentResponse.AppointmentResponseStatus.NULL, new AppointmentResponse.AppointmentResponseStatusEnumFactory())); 3631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 3632 res.setCommentElement(parseMarkdown(xpp)); 3633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recurring")) { 3634 res.setRecurringElement(parseBoolean(xpp)); 3635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceDate")) { 3636 res.setOccurrenceDateElement(parseDate(xpp)); 3637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recurrenceId")) { 3638 res.setRecurrenceIdElement(parsePositiveInt(xpp)); 3639 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 3640 return false; 3641 } 3642 return true; 3643 } 3644 3645 protected ArtifactAssessment parseArtifactAssessment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3646 ArtifactAssessment res = new ArtifactAssessment(); 3647 parseResourceAttributes(xpp, res); 3648 next(xpp); 3649 int eventType = nextNoWhitespace(xpp); 3650 while (eventType != XmlPullParser.END_TAG) { 3651 if (!parseArtifactAssessmentContent(eventType, xpp, res)) 3652 unknownContent(xpp); 3653 eventType = nextNoWhitespace(xpp); 3654 } 3655 next(xpp); 3656 parseElementClose(res); 3657 return res; 3658 } 3659 3660 protected boolean parseArtifactAssessmentContent(int eventType, XmlPullParser xpp, ArtifactAssessment res) throws XmlPullParserException, IOException, FHIRFormatError { 3661 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3662 res.getIdentifier().add(parseIdentifier(xpp)); 3663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 3664 res.setTitleElement(parseString(xpp)); 3665 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "citeAs")) { 3666 res.setCiteAs(parseType("citeAs", xpp)); 3667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3668 res.setDateElement(parseDateTime(xpp)); 3669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 3670 res.setCopyrightElement(parseMarkdown(xpp)); 3671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 3672 res.setApprovalDateElement(parseDate(xpp)); 3673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 3674 res.setLastReviewDateElement(parseDate(xpp)); 3675 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "artifact")) { 3676 res.setArtifact(parseType("artifact", xpp)); 3677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 3678 res.getContent().add(parseArtifactAssessmentContentComponent(xpp)); 3679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("workflowStatus")) { 3680 res.setWorkflowStatusElement(parseEnumeration(xpp, ArtifactAssessment.ArtifactAssessmentWorkflowStatus.NULL, new ArtifactAssessment.ArtifactAssessmentWorkflowStatusEnumFactory())); 3681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 3682 res.setDispositionElement(parseEnumeration(xpp, ArtifactAssessment.ArtifactAssessmentDisposition.NULL, new ArtifactAssessment.ArtifactAssessmentDispositionEnumFactory())); 3683 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 3684 return false; 3685 } 3686 return true; 3687 } 3688 3689 protected ArtifactAssessment.ArtifactAssessmentContentComponent parseArtifactAssessmentContentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3690 ArtifactAssessment.ArtifactAssessmentContentComponent res = new ArtifactAssessment.ArtifactAssessmentContentComponent(); 3691 parseElementAttributes(xpp, res); 3692 next(xpp); 3693 int eventType = nextNoWhitespace(xpp); 3694 while (eventType != XmlPullParser.END_TAG) { 3695 if (!parseArtifactAssessmentContentComponentContent(eventType, xpp, res)) 3696 unknownContent(xpp); 3697 eventType = nextNoWhitespace(xpp); 3698 } 3699 next(xpp); 3700 parseElementClose(res); 3701 return res; 3702 } 3703 3704 protected boolean parseArtifactAssessmentContentComponentContent(int eventType, XmlPullParser xpp, ArtifactAssessment.ArtifactAssessmentContentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3705 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationType")) { 3706 res.setInformationTypeElement(parseEnumeration(xpp, ArtifactAssessment.ArtifactAssessmentInformationType.NULL, new ArtifactAssessment.ArtifactAssessmentInformationTypeEnumFactory())); 3707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 3708 res.setSummaryElement(parseMarkdown(xpp)); 3709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3710 res.setType(parseCodeableConcept(xpp)); 3711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { 3712 res.getClassifier().add(parseCodeableConcept(xpp)); 3713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 3714 res.setQuantity(parseQuantity(xpp)); 3715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 3716 res.setAuthor(parseReference(xpp)); 3717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 3718 res.getPath().add(parseUri(xpp)); 3719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 3720 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 3721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("freeToShare")) { 3722 res.setFreeToShareElement(parseBoolean(xpp)); 3723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 3724 res.getComponent().add(parseArtifactAssessmentContentComponent(xpp)); 3725 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3726 return false; 3727 } 3728 return true; 3729 } 3730 3731 protected AuditEvent parseAuditEvent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3732 AuditEvent res = new AuditEvent(); 3733 parseResourceAttributes(xpp, res); 3734 next(xpp); 3735 int eventType = nextNoWhitespace(xpp); 3736 while (eventType != XmlPullParser.END_TAG) { 3737 if (!parseAuditEventContent(eventType, xpp, res)) 3738 unknownContent(xpp); 3739 eventType = nextNoWhitespace(xpp); 3740 } 3741 next(xpp); 3742 parseElementClose(res); 3743 return res; 3744 } 3745 3746 protected boolean parseAuditEventContent(int eventType, XmlPullParser xpp, AuditEvent res) throws XmlPullParserException, IOException, FHIRFormatError { 3747 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3748 res.getCategory().add(parseCodeableConcept(xpp)); 3749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3750 res.setCode(parseCodeableConcept(xpp)); 3751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 3752 res.setActionElement(parseEnumeration(xpp, AuditEvent.AuditEventAction.NULL, new AuditEvent.AuditEventActionEnumFactory())); 3753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 3754 res.setSeverityElement(parseEnumeration(xpp, AuditEvent.AuditEventSeverity.NULL, new AuditEvent.AuditEventSeverityEnumFactory())); 3755 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurred")) { 3756 res.setOccurred(parseType("occurred", xpp)); 3757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 3758 res.setRecordedElement(parseInstant(xpp)); 3759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 3760 res.setOutcome(parseAuditEventOutcomeComponent(xpp)); 3761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorization")) { 3762 res.getAuthorization().add(parseCodeableConcept(xpp)); 3763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 3764 res.getBasedOn().add(parseReference(xpp)); 3765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 3766 res.setPatient(parseReference(xpp)); 3767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 3768 res.setEncounter(parseReference(xpp)); 3769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 3770 res.getAgent().add(parseAuditEventAgentComponent(xpp)); 3771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 3772 res.setSource(parseAuditEventSourceComponent(xpp)); 3773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 3774 res.getEntity().add(parseAuditEventEntityComponent(xpp)); 3775 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 3776 return false; 3777 } 3778 return true; 3779 } 3780 3781 protected AuditEvent.AuditEventOutcomeComponent parseAuditEventOutcomeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3782 AuditEvent.AuditEventOutcomeComponent res = new AuditEvent.AuditEventOutcomeComponent(); 3783 parseElementAttributes(xpp, res); 3784 next(xpp); 3785 int eventType = nextNoWhitespace(xpp); 3786 while (eventType != XmlPullParser.END_TAG) { 3787 if (!parseAuditEventOutcomeComponentContent(eventType, xpp, res)) 3788 unknownContent(xpp); 3789 eventType = nextNoWhitespace(xpp); 3790 } 3791 next(xpp); 3792 parseElementClose(res); 3793 return res; 3794 } 3795 3796 protected boolean parseAuditEventOutcomeComponentContent(int eventType, XmlPullParser xpp, AuditEvent.AuditEventOutcomeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3797 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3798 res.setCode(parseCoding(xpp)); 3799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 3800 res.getDetail().add(parseCodeableConcept(xpp)); 3801 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3802 return false; 3803 } 3804 return true; 3805 } 3806 3807 protected AuditEvent.AuditEventAgentComponent parseAuditEventAgentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3808 AuditEvent.AuditEventAgentComponent res = new AuditEvent.AuditEventAgentComponent(); 3809 parseElementAttributes(xpp, res); 3810 next(xpp); 3811 int eventType = nextNoWhitespace(xpp); 3812 while (eventType != XmlPullParser.END_TAG) { 3813 if (!parseAuditEventAgentComponentContent(eventType, xpp, res)) 3814 unknownContent(xpp); 3815 eventType = nextNoWhitespace(xpp); 3816 } 3817 next(xpp); 3818 parseElementClose(res); 3819 return res; 3820 } 3821 3822 protected boolean parseAuditEventAgentComponentContent(int eventType, XmlPullParser xpp, AuditEvent.AuditEventAgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3823 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3824 res.setType(parseCodeableConcept(xpp)); 3825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3826 res.getRole().add(parseCodeableConcept(xpp)); 3827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("who")) { 3828 res.setWho(parseReference(xpp)); 3829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestor")) { 3830 res.setRequestorElement(parseBoolean(xpp)); 3831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 3832 res.setLocation(parseReference(xpp)); 3833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 3834 res.getPolicy().add(parseUri(xpp)); 3835 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "network")) { 3836 res.setNetwork(parseType("network", xpp)); 3837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorization")) { 3838 res.getAuthorization().add(parseCodeableConcept(xpp)); 3839 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3840 return false; 3841 } 3842 return true; 3843 } 3844 3845 protected AuditEvent.AuditEventSourceComponent parseAuditEventSourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3846 AuditEvent.AuditEventSourceComponent res = new AuditEvent.AuditEventSourceComponent(); 3847 parseElementAttributes(xpp, res); 3848 next(xpp); 3849 int eventType = nextNoWhitespace(xpp); 3850 while (eventType != XmlPullParser.END_TAG) { 3851 if (!parseAuditEventSourceComponentContent(eventType, xpp, res)) 3852 unknownContent(xpp); 3853 eventType = nextNoWhitespace(xpp); 3854 } 3855 next(xpp); 3856 parseElementClose(res); 3857 return res; 3858 } 3859 3860 protected boolean parseAuditEventSourceComponentContent(int eventType, XmlPullParser xpp, AuditEvent.AuditEventSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3861 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 3862 res.setSite(parseReference(xpp)); 3863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observer")) { 3864 res.setObserver(parseReference(xpp)); 3865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3866 res.getType().add(parseCodeableConcept(xpp)); 3867 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3868 return false; 3869 } 3870 return true; 3871 } 3872 3873 protected AuditEvent.AuditEventEntityComponent parseAuditEventEntityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3874 AuditEvent.AuditEventEntityComponent res = new AuditEvent.AuditEventEntityComponent(); 3875 parseElementAttributes(xpp, res); 3876 next(xpp); 3877 int eventType = nextNoWhitespace(xpp); 3878 while (eventType != XmlPullParser.END_TAG) { 3879 if (!parseAuditEventEntityComponentContent(eventType, xpp, res)) 3880 unknownContent(xpp); 3881 eventType = nextNoWhitespace(xpp); 3882 } 3883 next(xpp); 3884 parseElementClose(res); 3885 return res; 3886 } 3887 3888 protected boolean parseAuditEventEntityComponentContent(int eventType, XmlPullParser xpp, AuditEvent.AuditEventEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3889 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("what")) { 3890 res.setWhat(parseReference(xpp)); 3891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3892 res.setRole(parseCodeableConcept(xpp)); 3893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 3894 res.getSecurityLabel().add(parseCodeableConcept(xpp)); 3895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("query")) { 3896 res.setQueryElement(parseBase64Binary(xpp)); 3897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 3898 res.getDetail().add(parseAuditEventEntityDetailComponent(xpp)); 3899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 3900 res.getAgent().add(parseAuditEventAgentComponent(xpp)); 3901 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3902 return false; 3903 } 3904 return true; 3905 } 3906 3907 protected AuditEvent.AuditEventEntityDetailComponent parseAuditEventEntityDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3908 AuditEvent.AuditEventEntityDetailComponent res = new AuditEvent.AuditEventEntityDetailComponent(); 3909 parseElementAttributes(xpp, res); 3910 next(xpp); 3911 int eventType = nextNoWhitespace(xpp); 3912 while (eventType != XmlPullParser.END_TAG) { 3913 if (!parseAuditEventEntityDetailComponentContent(eventType, xpp, res)) 3914 unknownContent(xpp); 3915 eventType = nextNoWhitespace(xpp); 3916 } 3917 next(xpp); 3918 parseElementClose(res); 3919 return res; 3920 } 3921 3922 protected boolean parseAuditEventEntityDetailComponentContent(int eventType, XmlPullParser xpp, AuditEvent.AuditEventEntityDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3923 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3924 res.setType(parseCodeableConcept(xpp)); 3925 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 3926 res.setValue(parseType("value", xpp)); 3927 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 3928 return false; 3929 } 3930 return true; 3931 } 3932 3933 protected Basic parseBasic(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3934 Basic res = new Basic(); 3935 parseResourceAttributes(xpp, res); 3936 next(xpp); 3937 int eventType = nextNoWhitespace(xpp); 3938 while (eventType != XmlPullParser.END_TAG) { 3939 if (!parseBasicContent(eventType, xpp, res)) 3940 unknownContent(xpp); 3941 eventType = nextNoWhitespace(xpp); 3942 } 3943 next(xpp); 3944 parseElementClose(res); 3945 return res; 3946 } 3947 3948 protected boolean parseBasicContent(int eventType, XmlPullParser xpp, Basic res) throws XmlPullParserException, IOException, FHIRFormatError { 3949 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3950 res.getIdentifier().add(parseIdentifier(xpp)); 3951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3952 res.setCode(parseCodeableConcept(xpp)); 3953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3954 res.setSubject(parseReference(xpp)); 3955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 3956 res.setCreatedElement(parseDateTime(xpp)); 3957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 3958 res.setAuthor(parseReference(xpp)); 3959 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 3960 return false; 3961 } 3962 return true; 3963 } 3964 3965 protected Binary parseBinary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3966 Binary res = new Binary(); 3967 parseResourceAttributes(xpp, res); 3968 next(xpp); 3969 int eventType = nextNoWhitespace(xpp); 3970 while (eventType != XmlPullParser.END_TAG) { 3971 if (!parseBinaryContent(eventType, xpp, res)) 3972 unknownContent(xpp); 3973 eventType = nextNoWhitespace(xpp); 3974 } 3975 next(xpp); 3976 parseElementClose(res); 3977 return res; 3978 } 3979 3980 protected boolean parseBinaryContent(int eventType, XmlPullParser xpp, Binary res) throws XmlPullParserException, IOException, FHIRFormatError { 3981 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 3982 res.setContentTypeElement(parseCode(xpp)); 3983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityContext")) { 3984 res.setSecurityContext(parseReference(xpp)); 3985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 3986 res.setDataElement(parseBase64Binary(xpp)); 3987 } else if (!parseResourceContent(eventType, xpp, res)){ 3988 return false; 3989 } 3990 return true; 3991 } 3992 3993 protected BiologicallyDerivedProduct parseBiologicallyDerivedProduct(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3994 BiologicallyDerivedProduct res = new BiologicallyDerivedProduct(); 3995 parseResourceAttributes(xpp, res); 3996 next(xpp); 3997 int eventType = nextNoWhitespace(xpp); 3998 while (eventType != XmlPullParser.END_TAG) { 3999 if (!parseBiologicallyDerivedProductContent(eventType, xpp, res)) 4000 unknownContent(xpp); 4001 eventType = nextNoWhitespace(xpp); 4002 } 4003 next(xpp); 4004 parseElementClose(res); 4005 return res; 4006 } 4007 4008 protected boolean parseBiologicallyDerivedProductContent(int eventType, XmlPullParser xpp, BiologicallyDerivedProduct res) throws XmlPullParserException, IOException, FHIRFormatError { 4009 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productCategory")) { 4010 res.setProductCategory(parseCoding(xpp)); 4011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productCode")) { 4012 res.setProductCode(parseCodeableConcept(xpp)); 4013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 4014 res.getParent().add(parseReference(xpp)); 4015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 4016 res.getRequest().add(parseReference(xpp)); 4017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4018 res.getIdentifier().add(parseIdentifier(xpp)); 4019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("biologicalSourceEvent")) { 4020 res.setBiologicalSourceEvent(parseIdentifier(xpp)); 4021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processingFacility")) { 4022 res.getProcessingFacility().add(parseReference(xpp)); 4023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("division")) { 4024 res.setDivisionElement(parseString(xpp)); 4025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productStatus")) { 4026 res.setProductStatus(parseCoding(xpp)); 4027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 4028 res.setExpirationDateElement(parseDateTime(xpp)); 4029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collection")) { 4030 res.setCollection(parseBiologicallyDerivedProductCollectionComponent(xpp)); 4031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("storageTempRequirements")) { 4032 res.setStorageTempRequirements(parseRange(xpp)); 4033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 4034 res.getProperty().add(parseBiologicallyDerivedProductPropertyComponent(xpp)); 4035 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 4036 return false; 4037 } 4038 return true; 4039 } 4040 4041 protected BiologicallyDerivedProduct.BiologicallyDerivedProductCollectionComponent parseBiologicallyDerivedProductCollectionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4042 BiologicallyDerivedProduct.BiologicallyDerivedProductCollectionComponent res = new BiologicallyDerivedProduct.BiologicallyDerivedProductCollectionComponent(); 4043 parseElementAttributes(xpp, res); 4044 next(xpp); 4045 int eventType = nextNoWhitespace(xpp); 4046 while (eventType != XmlPullParser.END_TAG) { 4047 if (!parseBiologicallyDerivedProductCollectionComponentContent(eventType, xpp, res)) 4048 unknownContent(xpp); 4049 eventType = nextNoWhitespace(xpp); 4050 } 4051 next(xpp); 4052 parseElementClose(res); 4053 return res; 4054 } 4055 4056 protected boolean parseBiologicallyDerivedProductCollectionComponentContent(int eventType, XmlPullParser xpp, BiologicallyDerivedProduct.BiologicallyDerivedProductCollectionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4057 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collector")) { 4058 res.setCollector(parseReference(xpp)); 4059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 4060 res.setSource(parseReference(xpp)); 4061 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "collected")) { 4062 res.setCollected(parseType("collected", xpp)); 4063 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4064 return false; 4065 } 4066 return true; 4067 } 4068 4069 protected BiologicallyDerivedProduct.BiologicallyDerivedProductPropertyComponent parseBiologicallyDerivedProductPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4070 BiologicallyDerivedProduct.BiologicallyDerivedProductPropertyComponent res = new BiologicallyDerivedProduct.BiologicallyDerivedProductPropertyComponent(); 4071 parseElementAttributes(xpp, res); 4072 next(xpp); 4073 int eventType = nextNoWhitespace(xpp); 4074 while (eventType != XmlPullParser.END_TAG) { 4075 if (!parseBiologicallyDerivedProductPropertyComponentContent(eventType, xpp, res)) 4076 unknownContent(xpp); 4077 eventType = nextNoWhitespace(xpp); 4078 } 4079 next(xpp); 4080 parseElementClose(res); 4081 return res; 4082 } 4083 4084 protected boolean parseBiologicallyDerivedProductPropertyComponentContent(int eventType, XmlPullParser xpp, BiologicallyDerivedProduct.BiologicallyDerivedProductPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4085 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4086 res.setType(parseCodeableConcept(xpp)); 4087 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 4088 res.setValue(parseType("value", xpp)); 4089 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4090 return false; 4091 } 4092 return true; 4093 } 4094 4095 protected BiologicallyDerivedProductDispense parseBiologicallyDerivedProductDispense(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4096 BiologicallyDerivedProductDispense res = new BiologicallyDerivedProductDispense(); 4097 parseResourceAttributes(xpp, res); 4098 next(xpp); 4099 int eventType = nextNoWhitespace(xpp); 4100 while (eventType != XmlPullParser.END_TAG) { 4101 if (!parseBiologicallyDerivedProductDispenseContent(eventType, xpp, res)) 4102 unknownContent(xpp); 4103 eventType = nextNoWhitespace(xpp); 4104 } 4105 next(xpp); 4106 parseElementClose(res); 4107 return res; 4108 } 4109 4110 protected boolean parseBiologicallyDerivedProductDispenseContent(int eventType, XmlPullParser xpp, BiologicallyDerivedProductDispense res) throws XmlPullParserException, IOException, FHIRFormatError { 4111 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4112 res.getIdentifier().add(parseIdentifier(xpp)); 4113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 4114 res.getBasedOn().add(parseReference(xpp)); 4115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 4116 res.getPartOf().add(parseReference(xpp)); 4117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4118 res.setStatusElement(parseEnumeration(xpp, BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispenseCodes.NULL, new BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispenseCodesEnumFactory())); 4119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originRelationshipType")) { 4120 res.setOriginRelationshipType(parseCodeableConcept(xpp)); 4121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 4122 res.setProduct(parseReference(xpp)); 4123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4124 res.setPatient(parseReference(xpp)); 4125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("matchStatus")) { 4126 res.setMatchStatus(parseCodeableConcept(xpp)); 4127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 4128 res.getPerformer().add(parseBiologicallyDerivedProductDispensePerformerComponent(xpp)); 4129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 4130 res.setLocation(parseReference(xpp)); 4131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4132 res.setQuantity(parseQuantity(xpp)); 4133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preparedDate")) { 4134 res.setPreparedDateElement(parseDateTime(xpp)); 4135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenHandedOver")) { 4136 res.setWhenHandedOverElement(parseDateTime(xpp)); 4137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 4138 res.setDestination(parseReference(xpp)); 4139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4140 res.getNote().add(parseAnnotation(xpp)); 4141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usageInstruction")) { 4142 res.setUsageInstructionElement(parseString(xpp)); 4143 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 4144 return false; 4145 } 4146 return true; 4147 } 4148 4149 protected BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispensePerformerComponent parseBiologicallyDerivedProductDispensePerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4150 BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispensePerformerComponent res = new BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispensePerformerComponent(); 4151 parseElementAttributes(xpp, res); 4152 next(xpp); 4153 int eventType = nextNoWhitespace(xpp); 4154 while (eventType != XmlPullParser.END_TAG) { 4155 if (!parseBiologicallyDerivedProductDispensePerformerComponentContent(eventType, xpp, res)) 4156 unknownContent(xpp); 4157 eventType = nextNoWhitespace(xpp); 4158 } 4159 next(xpp); 4160 parseElementClose(res); 4161 return res; 4162 } 4163 4164 protected boolean parseBiologicallyDerivedProductDispensePerformerComponentContent(int eventType, XmlPullParser xpp, BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispensePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4165 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 4166 res.setFunction(parseCodeableConcept(xpp)); 4167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 4168 res.setActor(parseReference(xpp)); 4169 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4170 return false; 4171 } 4172 return true; 4173 } 4174 4175 protected BodyStructure parseBodyStructure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4176 BodyStructure res = new BodyStructure(); 4177 parseResourceAttributes(xpp, res); 4178 next(xpp); 4179 int eventType = nextNoWhitespace(xpp); 4180 while (eventType != XmlPullParser.END_TAG) { 4181 if (!parseBodyStructureContent(eventType, xpp, res)) 4182 unknownContent(xpp); 4183 eventType = nextNoWhitespace(xpp); 4184 } 4185 next(xpp); 4186 parseElementClose(res); 4187 return res; 4188 } 4189 4190 protected boolean parseBodyStructureContent(int eventType, XmlPullParser xpp, BodyStructure res) throws XmlPullParserException, IOException, FHIRFormatError { 4191 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4192 res.getIdentifier().add(parseIdentifier(xpp)); 4193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 4194 res.setActiveElement(parseBoolean(xpp)); 4195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("morphology")) { 4196 res.setMorphology(parseCodeableConcept(xpp)); 4197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("includedStructure")) { 4198 res.getIncludedStructure().add(parseBodyStructureIncludedStructureComponent(xpp)); 4199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludedStructure")) { 4200 res.getExcludedStructure().add(parseBodyStructureIncludedStructureComponent(xpp)); 4201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4202 res.setDescriptionElement(parseMarkdown(xpp)); 4203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 4204 res.getImage().add(parseAttachment(xpp)); 4205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4206 res.setPatient(parseReference(xpp)); 4207 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 4208 return false; 4209 } 4210 return true; 4211 } 4212 4213 protected BodyStructure.BodyStructureIncludedStructureComponent parseBodyStructureIncludedStructureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4214 BodyStructure.BodyStructureIncludedStructureComponent res = new BodyStructure.BodyStructureIncludedStructureComponent(); 4215 parseElementAttributes(xpp, res); 4216 next(xpp); 4217 int eventType = nextNoWhitespace(xpp); 4218 while (eventType != XmlPullParser.END_TAG) { 4219 if (!parseBodyStructureIncludedStructureComponentContent(eventType, xpp, res)) 4220 unknownContent(xpp); 4221 eventType = nextNoWhitespace(xpp); 4222 } 4223 next(xpp); 4224 parseElementClose(res); 4225 return res; 4226 } 4227 4228 protected boolean parseBodyStructureIncludedStructureComponentContent(int eventType, XmlPullParser xpp, BodyStructure.BodyStructureIncludedStructureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4229 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structure")) { 4230 res.setStructure(parseCodeableConcept(xpp)); 4231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("laterality")) { 4232 res.setLaterality(parseCodeableConcept(xpp)); 4233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodyLandmarkOrientation")) { 4234 res.getBodyLandmarkOrientation().add(parseBodyStructureIncludedStructureBodyLandmarkOrientationComponent(xpp)); 4235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("spatialReference")) { 4236 res.getSpatialReference().add(parseReference(xpp)); 4237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualifier")) { 4238 res.getQualifier().add(parseCodeableConcept(xpp)); 4239 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4240 return false; 4241 } 4242 return true; 4243 } 4244 4245 protected BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationComponent parseBodyStructureIncludedStructureBodyLandmarkOrientationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4246 BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationComponent res = new BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationComponent(); 4247 parseElementAttributes(xpp, res); 4248 next(xpp); 4249 int eventType = nextNoWhitespace(xpp); 4250 while (eventType != XmlPullParser.END_TAG) { 4251 if (!parseBodyStructureIncludedStructureBodyLandmarkOrientationComponentContent(eventType, xpp, res)) 4252 unknownContent(xpp); 4253 eventType = nextNoWhitespace(xpp); 4254 } 4255 next(xpp); 4256 parseElementClose(res); 4257 return res; 4258 } 4259 4260 protected boolean parseBodyStructureIncludedStructureBodyLandmarkOrientationComponentContent(int eventType, XmlPullParser xpp, BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4261 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("landmarkDescription")) { 4262 res.getLandmarkDescription().add(parseCodeableConcept(xpp)); 4263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clockFacePosition")) { 4264 res.getClockFacePosition().add(parseCodeableConcept(xpp)); 4265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("distanceFromLandmark")) { 4266 res.getDistanceFromLandmark().add(parseBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent(xpp)); 4267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("surfaceOrientation")) { 4268 res.getSurfaceOrientation().add(parseCodeableConcept(xpp)); 4269 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4270 return false; 4271 } 4272 return true; 4273 } 4274 4275 protected BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent parseBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4276 BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent res = new BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent(); 4277 parseElementAttributes(xpp, res); 4278 next(xpp); 4279 int eventType = nextNoWhitespace(xpp); 4280 while (eventType != XmlPullParser.END_TAG) { 4281 if (!parseBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponentContent(eventType, xpp, res)) 4282 unknownContent(xpp); 4283 eventType = nextNoWhitespace(xpp); 4284 } 4285 next(xpp); 4286 parseElementClose(res); 4287 return res; 4288 } 4289 4290 protected boolean parseBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponentContent(int eventType, XmlPullParser xpp, BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4291 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 4292 res.getDevice().add(parseCodeableReference(xpp)); 4293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 4294 res.getValue().add(parseQuantity(xpp)); 4295 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4296 return false; 4297 } 4298 return true; 4299 } 4300 4301 protected Bundle parseBundle(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4302 Bundle res = new Bundle(); 4303 parseResourceAttributes(xpp, res); 4304 next(xpp); 4305 int eventType = nextNoWhitespace(xpp); 4306 while (eventType != XmlPullParser.END_TAG) { 4307 if (!parseBundleContent(eventType, xpp, res)) 4308 unknownContent(xpp); 4309 eventType = nextNoWhitespace(xpp); 4310 } 4311 next(xpp); 4312 parseElementClose(res); 4313 return res; 4314 } 4315 4316 protected boolean parseBundleContent(int eventType, XmlPullParser xpp, Bundle res) throws XmlPullParserException, IOException, FHIRFormatError { 4317 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4318 res.setIdentifier(parseIdentifier(xpp)); 4319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4320 res.setTypeElement(parseEnumeration(xpp, Bundle.BundleType.NULL, new Bundle.BundleTypeEnumFactory())); 4321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 4322 res.setTimestampElement(parseInstant(xpp)); 4323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 4324 res.setTotalElement(parseUnsignedInt(xpp)); 4325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 4326 res.getLink().add(parseBundleLinkComponent(xpp)); 4327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 4328 res.getEntry().add(parseBundleEntryComponent(xpp)); 4329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 4330 res.setSignature(parseSignature(xpp)); 4331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issues")) { 4332 res.setIssues(parseResourceContained(xpp)); 4333 } else if (!parseResourceContent(eventType, xpp, res)){ 4334 return false; 4335 } 4336 return true; 4337 } 4338 4339 protected Bundle.BundleLinkComponent parseBundleLinkComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4340 Bundle.BundleLinkComponent res = new Bundle.BundleLinkComponent(); 4341 parseElementAttributes(xpp, res); 4342 next(xpp); 4343 int eventType = nextNoWhitespace(xpp); 4344 while (eventType != XmlPullParser.END_TAG) { 4345 if (!parseBundleLinkComponentContent(eventType, xpp, res)) 4346 unknownContent(xpp); 4347 eventType = nextNoWhitespace(xpp); 4348 } 4349 next(xpp); 4350 parseElementClose(res); 4351 return res; 4352 } 4353 4354 protected boolean parseBundleLinkComponentContent(int eventType, XmlPullParser xpp, Bundle.BundleLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4355 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relation")) { 4356 res.setRelationElement(parseEnumeration(xpp, Bundle.LinkRelationTypes.NULL, new Bundle.LinkRelationTypesEnumFactory())); 4357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4358 res.setUrlElement(parseUri(xpp)); 4359 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4360 return false; 4361 } 4362 return true; 4363 } 4364 4365 protected Bundle.BundleEntryComponent parseBundleEntryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4366 Bundle.BundleEntryComponent res = new Bundle.BundleEntryComponent(); 4367 parseElementAttributes(xpp, res); 4368 next(xpp); 4369 int eventType = nextNoWhitespace(xpp); 4370 while (eventType != XmlPullParser.END_TAG) { 4371 if (!parseBundleEntryComponentContent(eventType, xpp, res)) 4372 unknownContent(xpp); 4373 eventType = nextNoWhitespace(xpp); 4374 } 4375 next(xpp); 4376 parseElementClose(res); 4377 return res; 4378 } 4379 4380 protected boolean parseBundleEntryComponentContent(int eventType, XmlPullParser xpp, Bundle.BundleEntryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4381 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 4382 res.getLink().add(parseBundleLinkComponent(xpp)); 4383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fullUrl")) { 4384 res.setFullUrlElement(parseUri(xpp)); 4385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 4386 res.setResource(parseResourceContained(xpp)); 4387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 4388 res.setSearch(parseBundleEntrySearchComponent(xpp)); 4389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 4390 res.setRequest(parseBundleEntryRequestComponent(xpp)); 4391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 4392 res.setResponse(parseBundleEntryResponseComponent(xpp)); 4393 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4394 return false; 4395 } 4396 return true; 4397 } 4398 4399 protected Bundle.BundleEntrySearchComponent parseBundleEntrySearchComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4400 Bundle.BundleEntrySearchComponent res = new Bundle.BundleEntrySearchComponent(); 4401 parseElementAttributes(xpp, res); 4402 next(xpp); 4403 int eventType = nextNoWhitespace(xpp); 4404 while (eventType != XmlPullParser.END_TAG) { 4405 if (!parseBundleEntrySearchComponentContent(eventType, xpp, res)) 4406 unknownContent(xpp); 4407 eventType = nextNoWhitespace(xpp); 4408 } 4409 next(xpp); 4410 parseElementClose(res); 4411 return res; 4412 } 4413 4414 protected boolean parseBundleEntrySearchComponentContent(int eventType, XmlPullParser xpp, Bundle.BundleEntrySearchComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4415 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 4416 res.setModeElement(parseEnumeration(xpp, Bundle.SearchEntryMode.NULL, new Bundle.SearchEntryModeEnumFactory())); 4417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 4418 res.setScoreElement(parseDecimal(xpp)); 4419 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4420 return false; 4421 } 4422 return true; 4423 } 4424 4425 protected Bundle.BundleEntryRequestComponent parseBundleEntryRequestComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4426 Bundle.BundleEntryRequestComponent res = new Bundle.BundleEntryRequestComponent(); 4427 parseElementAttributes(xpp, res); 4428 next(xpp); 4429 int eventType = nextNoWhitespace(xpp); 4430 while (eventType != XmlPullParser.END_TAG) { 4431 if (!parseBundleEntryRequestComponentContent(eventType, xpp, res)) 4432 unknownContent(xpp); 4433 eventType = nextNoWhitespace(xpp); 4434 } 4435 next(xpp); 4436 parseElementClose(res); 4437 return res; 4438 } 4439 4440 protected boolean parseBundleEntryRequestComponentContent(int eventType, XmlPullParser xpp, Bundle.BundleEntryRequestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4441 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 4442 res.setMethodElement(parseEnumeration(xpp, Bundle.HTTPVerb.NULL, new Bundle.HTTPVerbEnumFactory())); 4443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4444 res.setUrlElement(parseUri(xpp)); 4445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneMatch")) { 4446 res.setIfNoneMatchElement(parseString(xpp)); 4447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifModifiedSince")) { 4448 res.setIfModifiedSinceElement(parseInstant(xpp)); 4449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifMatch")) { 4450 res.setIfMatchElement(parseString(xpp)); 4451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneExist")) { 4452 res.setIfNoneExistElement(parseString(xpp)); 4453 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4454 return false; 4455 } 4456 return true; 4457 } 4458 4459 protected Bundle.BundleEntryResponseComponent parseBundleEntryResponseComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4460 Bundle.BundleEntryResponseComponent res = new Bundle.BundleEntryResponseComponent(); 4461 parseElementAttributes(xpp, res); 4462 next(xpp); 4463 int eventType = nextNoWhitespace(xpp); 4464 while (eventType != XmlPullParser.END_TAG) { 4465 if (!parseBundleEntryResponseComponentContent(eventType, xpp, res)) 4466 unknownContent(xpp); 4467 eventType = nextNoWhitespace(xpp); 4468 } 4469 next(xpp); 4470 parseElementClose(res); 4471 return res; 4472 } 4473 4474 protected boolean parseBundleEntryResponseComponentContent(int eventType, XmlPullParser xpp, Bundle.BundleEntryResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4475 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4476 res.setStatusElement(parseString(xpp)); 4477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 4478 res.setLocationElement(parseUri(xpp)); 4479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("etag")) { 4480 res.setEtagElement(parseString(xpp)); 4481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 4482 res.setLastModifiedElement(parseInstant(xpp)); 4483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 4484 res.setOutcome(parseResourceContained(xpp)); 4485 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4486 return false; 4487 } 4488 return true; 4489 } 4490 4491 protected CapabilityStatement parseCapabilityStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4492 CapabilityStatement res = new CapabilityStatement(); 4493 parseResourceAttributes(xpp, res); 4494 next(xpp); 4495 int eventType = nextNoWhitespace(xpp); 4496 while (eventType != XmlPullParser.END_TAG) { 4497 if (!parseCapabilityStatementContent(eventType, xpp, res)) 4498 unknownContent(xpp); 4499 eventType = nextNoWhitespace(xpp); 4500 } 4501 next(xpp); 4502 parseElementClose(res); 4503 return res; 4504 } 4505 4506 protected boolean parseCapabilityStatementContent(int eventType, XmlPullParser xpp, CapabilityStatement res) throws XmlPullParserException, IOException, FHIRFormatError { 4507 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4508 res.setUrlElement(parseUri(xpp)); 4509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4510 res.getIdentifier().add(parseIdentifier(xpp)); 4511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4512 res.setVersionElement(parseString(xpp)); 4513 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 4514 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 4515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4516 res.setNameElement(parseString(xpp)); 4517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 4518 res.setTitleElement(parseString(xpp)); 4519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4520 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 4521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 4522 res.setExperimentalElement(parseBoolean(xpp)); 4523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4524 res.setDateElement(parseDateTime(xpp)); 4525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 4526 res.setPublisherElement(parseString(xpp)); 4527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 4528 res.getContact().add(parseContactDetail(xpp)); 4529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4530 res.setDescriptionElement(parseMarkdown(xpp)); 4531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 4532 res.getUseContext().add(parseUsageContext(xpp)); 4533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 4534 res.getJurisdiction().add(parseCodeableConcept(xpp)); 4535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 4536 res.setPurposeElement(parseMarkdown(xpp)); 4537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 4538 res.setCopyrightElement(parseMarkdown(xpp)); 4539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 4540 res.setCopyrightLabelElement(parseString(xpp)); 4541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 4542 res.setKindElement(parseEnumeration(xpp, Enumerations.CapabilityStatementKind.NULL, new Enumerations.CapabilityStatementKindEnumFactory())); 4543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiates")) { 4544 res.getInstantiates().add(parseCanonical(xpp)); 4545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imports")) { 4546 res.getImports().add(parseCanonical(xpp)); 4547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 4548 res.setSoftware(parseCapabilityStatementSoftwareComponent(xpp)); 4549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementation")) { 4550 res.setImplementation(parseCapabilityStatementImplementationComponent(xpp)); 4551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 4552 res.setFhirVersionElement(parseEnumeration(xpp, Enumerations.FHIRVersion.NULL, new Enumerations.FHIRVersionEnumFactory())); 4553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 4554 res.getFormat().add(parseCode(xpp)); 4555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patchFormat")) { 4556 res.getPatchFormat().add(parseCode(xpp)); 4557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acceptLanguage")) { 4558 res.getAcceptLanguage().add(parseCode(xpp)); 4559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementationGuide")) { 4560 res.getImplementationGuide().add(parseCanonical(xpp)); 4561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rest")) { 4562 res.getRest().add(parseCapabilityStatementRestComponent(xpp)); 4563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("messaging")) { 4564 res.getMessaging().add(parseCapabilityStatementMessagingComponent(xpp)); 4565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 4566 res.getDocument().add(parseCapabilityStatementDocumentComponent(xpp)); 4567 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 4568 return false; 4569 } 4570 return true; 4571 } 4572 4573 protected CapabilityStatement.CapabilityStatementSoftwareComponent parseCapabilityStatementSoftwareComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4574 CapabilityStatement.CapabilityStatementSoftwareComponent res = new CapabilityStatement.CapabilityStatementSoftwareComponent(); 4575 parseElementAttributes(xpp, res); 4576 next(xpp); 4577 int eventType = nextNoWhitespace(xpp); 4578 while (eventType != XmlPullParser.END_TAG) { 4579 if (!parseCapabilityStatementSoftwareComponentContent(eventType, xpp, res)) 4580 unknownContent(xpp); 4581 eventType = nextNoWhitespace(xpp); 4582 } 4583 next(xpp); 4584 parseElementClose(res); 4585 return res; 4586 } 4587 4588 protected boolean parseCapabilityStatementSoftwareComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementSoftwareComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4589 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4590 res.setNameElement(parseString(xpp)); 4591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4592 res.setVersionElement(parseString(xpp)); 4593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("releaseDate")) { 4594 res.setReleaseDateElement(parseDateTime(xpp)); 4595 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4596 return false; 4597 } 4598 return true; 4599 } 4600 4601 protected CapabilityStatement.CapabilityStatementImplementationComponent parseCapabilityStatementImplementationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4602 CapabilityStatement.CapabilityStatementImplementationComponent res = new CapabilityStatement.CapabilityStatementImplementationComponent(); 4603 parseElementAttributes(xpp, res); 4604 next(xpp); 4605 int eventType = nextNoWhitespace(xpp); 4606 while (eventType != XmlPullParser.END_TAG) { 4607 if (!parseCapabilityStatementImplementationComponentContent(eventType, xpp, res)) 4608 unknownContent(xpp); 4609 eventType = nextNoWhitespace(xpp); 4610 } 4611 next(xpp); 4612 parseElementClose(res); 4613 return res; 4614 } 4615 4616 protected boolean parseCapabilityStatementImplementationComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementImplementationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4617 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4618 res.setDescriptionElement(parseMarkdown(xpp)); 4619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4620 res.setUrlElement(parseUrl(xpp)); 4621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 4622 res.setCustodian(parseReference(xpp)); 4623 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4624 return false; 4625 } 4626 return true; 4627 } 4628 4629 protected CapabilityStatement.CapabilityStatementRestComponent parseCapabilityStatementRestComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4630 CapabilityStatement.CapabilityStatementRestComponent res = new CapabilityStatement.CapabilityStatementRestComponent(); 4631 parseElementAttributes(xpp, res); 4632 next(xpp); 4633 int eventType = nextNoWhitespace(xpp); 4634 while (eventType != XmlPullParser.END_TAG) { 4635 if (!parseCapabilityStatementRestComponentContent(eventType, xpp, res)) 4636 unknownContent(xpp); 4637 eventType = nextNoWhitespace(xpp); 4638 } 4639 next(xpp); 4640 parseElementClose(res); 4641 return res; 4642 } 4643 4644 protected boolean parseCapabilityStatementRestComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementRestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4645 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 4646 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.RestfulCapabilityMode.NULL, new CapabilityStatement.RestfulCapabilityModeEnumFactory())); 4647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4648 res.setDocumentationElement(parseMarkdown(xpp)); 4649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 4650 res.setSecurity(parseCapabilityStatementRestSecurityComponent(xpp)); 4651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 4652 res.getResource().add(parseCapabilityStatementRestResourceComponent(xpp)); 4653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 4654 res.getInteraction().add(parseCapabilityStatementSystemInteractionComponent(xpp)); 4655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 4656 res.getSearchParam().add(parseCapabilityStatementRestResourceSearchParamComponent(xpp)); 4657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 4658 res.getOperation().add(parseCapabilityStatementRestResourceOperationComponent(xpp)); 4659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compartment")) { 4660 res.getCompartment().add(parseCanonical(xpp)); 4661 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4662 return false; 4663 } 4664 return true; 4665 } 4666 4667 protected CapabilityStatement.CapabilityStatementRestSecurityComponent parseCapabilityStatementRestSecurityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4668 CapabilityStatement.CapabilityStatementRestSecurityComponent res = new CapabilityStatement.CapabilityStatementRestSecurityComponent(); 4669 parseElementAttributes(xpp, res); 4670 next(xpp); 4671 int eventType = nextNoWhitespace(xpp); 4672 while (eventType != XmlPullParser.END_TAG) { 4673 if (!parseCapabilityStatementRestSecurityComponentContent(eventType, xpp, res)) 4674 unknownContent(xpp); 4675 eventType = nextNoWhitespace(xpp); 4676 } 4677 next(xpp); 4678 parseElementClose(res); 4679 return res; 4680 } 4681 4682 protected boolean parseCapabilityStatementRestSecurityComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementRestSecurityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4683 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cors")) { 4684 res.setCorsElement(parseBoolean(xpp)); 4685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4686 res.getService().add(parseCodeableConcept(xpp)); 4687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4688 res.setDescriptionElement(parseMarkdown(xpp)); 4689 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4690 return false; 4691 } 4692 return true; 4693 } 4694 4695 protected CapabilityStatement.CapabilityStatementRestResourceComponent parseCapabilityStatementRestResourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4696 CapabilityStatement.CapabilityStatementRestResourceComponent res = new CapabilityStatement.CapabilityStatementRestResourceComponent(); 4697 parseElementAttributes(xpp, res); 4698 next(xpp); 4699 int eventType = nextNoWhitespace(xpp); 4700 while (eventType != XmlPullParser.END_TAG) { 4701 if (!parseCapabilityStatementRestResourceComponentContent(eventType, xpp, res)) 4702 unknownContent(xpp); 4703 eventType = nextNoWhitespace(xpp); 4704 } 4705 next(xpp); 4706 parseElementClose(res); 4707 return res; 4708 } 4709 4710 protected boolean parseCapabilityStatementRestResourceComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementRestResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4711 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4712 res.setTypeElement(parseCode(xpp)); 4713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 4714 res.setProfileElement(parseCanonical(xpp)); 4715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportedProfile")) { 4716 res.getSupportedProfile().add(parseCanonical(xpp)); 4717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4718 res.setDocumentationElement(parseMarkdown(xpp)); 4719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 4720 res.getInteraction().add(parseCapabilityStatementResourceInteractionComponent(xpp)); 4721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 4722 res.setVersioningElement(parseEnumeration(xpp, CapabilityStatement.ResourceVersionPolicy.NULL, new CapabilityStatement.ResourceVersionPolicyEnumFactory())); 4723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readHistory")) { 4724 res.setReadHistoryElement(parseBoolean(xpp)); 4725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("updateCreate")) { 4726 res.setUpdateCreateElement(parseBoolean(xpp)); 4727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalCreate")) { 4728 res.setConditionalCreateElement(parseBoolean(xpp)); 4729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalRead")) { 4730 res.setConditionalReadElement(parseEnumeration(xpp, CapabilityStatement.ConditionalReadStatus.NULL, new CapabilityStatement.ConditionalReadStatusEnumFactory())); 4731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalUpdate")) { 4732 res.setConditionalUpdateElement(parseBoolean(xpp)); 4733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalPatch")) { 4734 res.setConditionalPatchElement(parseBoolean(xpp)); 4735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalDelete")) { 4736 res.setConditionalDeleteElement(parseEnumeration(xpp, CapabilityStatement.ConditionalDeleteStatus.NULL, new CapabilityStatement.ConditionalDeleteStatusEnumFactory())); 4737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referencePolicy")) { 4738 res.getReferencePolicy().add(parseEnumeration(xpp, CapabilityStatement.ReferenceHandlingPolicy.NULL, new CapabilityStatement.ReferenceHandlingPolicyEnumFactory())); 4739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchInclude")) { 4740 res.getSearchInclude().add(parseString(xpp)); 4741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchRevInclude")) { 4742 res.getSearchRevInclude().add(parseString(xpp)); 4743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 4744 res.getSearchParam().add(parseCapabilityStatementRestResourceSearchParamComponent(xpp)); 4745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 4746 res.getOperation().add(parseCapabilityStatementRestResourceOperationComponent(xpp)); 4747 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4748 return false; 4749 } 4750 return true; 4751 } 4752 4753 protected CapabilityStatement.ResourceInteractionComponent parseCapabilityStatementResourceInteractionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4754 CapabilityStatement.ResourceInteractionComponent res = new CapabilityStatement.ResourceInteractionComponent(); 4755 parseElementAttributes(xpp, res); 4756 next(xpp); 4757 int eventType = nextNoWhitespace(xpp); 4758 while (eventType != XmlPullParser.END_TAG) { 4759 if (!parseCapabilityStatementResourceInteractionComponentContent(eventType, xpp, res)) 4760 unknownContent(xpp); 4761 eventType = nextNoWhitespace(xpp); 4762 } 4763 next(xpp); 4764 parseElementClose(res); 4765 return res; 4766 } 4767 4768 protected boolean parseCapabilityStatementResourceInteractionComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.ResourceInteractionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4769 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4770 res.setCodeElement(parseEnumeration(xpp, CapabilityStatement.TypeRestfulInteraction.NULL, new CapabilityStatement.TypeRestfulInteractionEnumFactory())); 4771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4772 res.setDocumentationElement(parseMarkdown(xpp)); 4773 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4774 return false; 4775 } 4776 return true; 4777 } 4778 4779 protected CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent parseCapabilityStatementRestResourceSearchParamComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4780 CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent res = new CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); 4781 parseElementAttributes(xpp, res); 4782 next(xpp); 4783 int eventType = nextNoWhitespace(xpp); 4784 while (eventType != XmlPullParser.END_TAG) { 4785 if (!parseCapabilityStatementRestResourceSearchParamComponentContent(eventType, xpp, res)) 4786 unknownContent(xpp); 4787 eventType = nextNoWhitespace(xpp); 4788 } 4789 next(xpp); 4790 parseElementClose(res); 4791 return res; 4792 } 4793 4794 protected boolean parseCapabilityStatementRestResourceSearchParamComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4795 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4796 res.setNameElement(parseString(xpp)); 4797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4798 res.setDefinitionElement(parseCanonical(xpp)); 4799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4800 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 4801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4802 res.setDocumentationElement(parseMarkdown(xpp)); 4803 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4804 return false; 4805 } 4806 return true; 4807 } 4808 4809 protected CapabilityStatement.CapabilityStatementRestResourceOperationComponent parseCapabilityStatementRestResourceOperationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4810 CapabilityStatement.CapabilityStatementRestResourceOperationComponent res = new CapabilityStatement.CapabilityStatementRestResourceOperationComponent(); 4811 parseElementAttributes(xpp, res); 4812 next(xpp); 4813 int eventType = nextNoWhitespace(xpp); 4814 while (eventType != XmlPullParser.END_TAG) { 4815 if (!parseCapabilityStatementRestResourceOperationComponentContent(eventType, xpp, res)) 4816 unknownContent(xpp); 4817 eventType = nextNoWhitespace(xpp); 4818 } 4819 next(xpp); 4820 parseElementClose(res); 4821 return res; 4822 } 4823 4824 protected boolean parseCapabilityStatementRestResourceOperationComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementRestResourceOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4825 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4826 res.setNameElement(parseString(xpp)); 4827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4828 res.setDefinitionElement(parseCanonical(xpp)); 4829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4830 res.setDocumentationElement(parseMarkdown(xpp)); 4831 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4832 return false; 4833 } 4834 return true; 4835 } 4836 4837 protected CapabilityStatement.SystemInteractionComponent parseCapabilityStatementSystemInteractionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4838 CapabilityStatement.SystemInteractionComponent res = new CapabilityStatement.SystemInteractionComponent(); 4839 parseElementAttributes(xpp, res); 4840 next(xpp); 4841 int eventType = nextNoWhitespace(xpp); 4842 while (eventType != XmlPullParser.END_TAG) { 4843 if (!parseCapabilityStatementSystemInteractionComponentContent(eventType, xpp, res)) 4844 unknownContent(xpp); 4845 eventType = nextNoWhitespace(xpp); 4846 } 4847 next(xpp); 4848 parseElementClose(res); 4849 return res; 4850 } 4851 4852 protected boolean parseCapabilityStatementSystemInteractionComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.SystemInteractionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4853 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4854 res.setCodeElement(parseEnumeration(xpp, CapabilityStatement.SystemRestfulInteraction.NULL, new CapabilityStatement.SystemRestfulInteractionEnumFactory())); 4855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4856 res.setDocumentationElement(parseMarkdown(xpp)); 4857 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4858 return false; 4859 } 4860 return true; 4861 } 4862 4863 protected CapabilityStatement.CapabilityStatementMessagingComponent parseCapabilityStatementMessagingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4864 CapabilityStatement.CapabilityStatementMessagingComponent res = new CapabilityStatement.CapabilityStatementMessagingComponent(); 4865 parseElementAttributes(xpp, res); 4866 next(xpp); 4867 int eventType = nextNoWhitespace(xpp); 4868 while (eventType != XmlPullParser.END_TAG) { 4869 if (!parseCapabilityStatementMessagingComponentContent(eventType, xpp, res)) 4870 unknownContent(xpp); 4871 eventType = nextNoWhitespace(xpp); 4872 } 4873 next(xpp); 4874 parseElementClose(res); 4875 return res; 4876 } 4877 4878 protected boolean parseCapabilityStatementMessagingComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementMessagingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4879 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 4880 res.getEndpoint().add(parseCapabilityStatementMessagingEndpointComponent(xpp)); 4881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reliableCache")) { 4882 res.setReliableCacheElement(parseUnsignedInt(xpp)); 4883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4884 res.setDocumentationElement(parseMarkdown(xpp)); 4885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportedMessage")) { 4886 res.getSupportedMessage().add(parseCapabilityStatementMessagingSupportedMessageComponent(xpp)); 4887 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4888 return false; 4889 } 4890 return true; 4891 } 4892 4893 protected CapabilityStatement.CapabilityStatementMessagingEndpointComponent parseCapabilityStatementMessagingEndpointComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4894 CapabilityStatement.CapabilityStatementMessagingEndpointComponent res = new CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); 4895 parseElementAttributes(xpp, res); 4896 next(xpp); 4897 int eventType = nextNoWhitespace(xpp); 4898 while (eventType != XmlPullParser.END_TAG) { 4899 if (!parseCapabilityStatementMessagingEndpointComponentContent(eventType, xpp, res)) 4900 unknownContent(xpp); 4901 eventType = nextNoWhitespace(xpp); 4902 } 4903 next(xpp); 4904 parseElementClose(res); 4905 return res; 4906 } 4907 4908 protected boolean parseCapabilityStatementMessagingEndpointComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementMessagingEndpointComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4909 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 4910 res.setProtocol(parseCoding(xpp)); 4911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 4912 res.setAddressElement(parseUrl(xpp)); 4913 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4914 return false; 4915 } 4916 return true; 4917 } 4918 4919 protected CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent parseCapabilityStatementMessagingSupportedMessageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4920 CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent res = new CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent(); 4921 parseElementAttributes(xpp, res); 4922 next(xpp); 4923 int eventType = nextNoWhitespace(xpp); 4924 while (eventType != XmlPullParser.END_TAG) { 4925 if (!parseCapabilityStatementMessagingSupportedMessageComponentContent(eventType, xpp, res)) 4926 unknownContent(xpp); 4927 eventType = nextNoWhitespace(xpp); 4928 } 4929 next(xpp); 4930 parseElementClose(res); 4931 return res; 4932 } 4933 4934 protected boolean parseCapabilityStatementMessagingSupportedMessageComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4935 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 4936 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.EventCapabilityMode.NULL, new CapabilityStatement.EventCapabilityModeEnumFactory())); 4937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4938 res.setDefinitionElement(parseCanonical(xpp)); 4939 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4940 return false; 4941 } 4942 return true; 4943 } 4944 4945 protected CapabilityStatement.CapabilityStatementDocumentComponent parseCapabilityStatementDocumentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4946 CapabilityStatement.CapabilityStatementDocumentComponent res = new CapabilityStatement.CapabilityStatementDocumentComponent(); 4947 parseElementAttributes(xpp, res); 4948 next(xpp); 4949 int eventType = nextNoWhitespace(xpp); 4950 while (eventType != XmlPullParser.END_TAG) { 4951 if (!parseCapabilityStatementDocumentComponentContent(eventType, xpp, res)) 4952 unknownContent(xpp); 4953 eventType = nextNoWhitespace(xpp); 4954 } 4955 next(xpp); 4956 parseElementClose(res); 4957 return res; 4958 } 4959 4960 protected boolean parseCapabilityStatementDocumentComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement.CapabilityStatementDocumentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4961 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 4962 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.DocumentMode.NULL, new CapabilityStatement.DocumentModeEnumFactory())); 4963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 4964 res.setDocumentationElement(parseMarkdown(xpp)); 4965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 4966 res.setProfileElement(parseCanonical(xpp)); 4967 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 4968 return false; 4969 } 4970 return true; 4971 } 4972 4973 protected CarePlan parseCarePlan(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4974 CarePlan res = new CarePlan(); 4975 parseResourceAttributes(xpp, res); 4976 next(xpp); 4977 int eventType = nextNoWhitespace(xpp); 4978 while (eventType != XmlPullParser.END_TAG) { 4979 if (!parseCarePlanContent(eventType, xpp, res)) 4980 unknownContent(xpp); 4981 eventType = nextNoWhitespace(xpp); 4982 } 4983 next(xpp); 4984 parseElementClose(res); 4985 return res; 4986 } 4987 4988 protected boolean parseCarePlanContent(int eventType, XmlPullParser xpp, CarePlan res) throws XmlPullParserException, IOException, FHIRFormatError { 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("instantiatesCanonical")) { 4992 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 4993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 4994 res.getInstantiatesUri().add(parseUri(xpp)); 4995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 4996 res.getBasedOn().add(parseReference(xpp)); 4997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 4998 res.getReplaces().add(parseReference(xpp)); 4999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 5000 res.getPartOf().add(parseReference(xpp)); 5001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5002 res.setStatusElement(parseEnumeration(xpp, Enumerations.RequestStatus.NULL, new Enumerations.RequestStatusEnumFactory())); 5003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 5004 res.setIntentElement(parseEnumeration(xpp, CarePlan.CarePlanIntent.NULL, new CarePlan.CarePlanIntentEnumFactory())); 5005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5006 res.getCategory().add(parseCodeableConcept(xpp)); 5007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5008 res.setTitleElement(parseString(xpp)); 5009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5010 res.setDescriptionElement(parseString(xpp)); 5011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5012 res.setSubject(parseReference(xpp)); 5013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5014 res.setEncounter(parseReference(xpp)); 5015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5016 res.setPeriod(parsePeriod(xpp)); 5017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 5018 res.setCreatedElement(parseDateTime(xpp)); 5019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 5020 res.setCustodian(parseReference(xpp)); 5021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 5022 res.getContributor().add(parseReference(xpp)); 5023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 5024 res.getCareTeam().add(parseReference(xpp)); 5025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 5026 res.getAddresses().add(parseCodeableReference(xpp)); 5027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 5028 res.getSupportingInfo().add(parseReference(xpp)); 5029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 5030 res.getGoal().add(parseReference(xpp)); 5031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 5032 res.getActivity().add(parseCarePlanActivityComponent(xpp)); 5033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5034 res.getNote().add(parseAnnotation(xpp)); 5035 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 5036 return false; 5037 } 5038 return true; 5039 } 5040 5041 protected CarePlan.CarePlanActivityComponent parseCarePlanActivityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5042 CarePlan.CarePlanActivityComponent res = new CarePlan.CarePlanActivityComponent(); 5043 parseElementAttributes(xpp, res); 5044 next(xpp); 5045 int eventType = nextNoWhitespace(xpp); 5046 while (eventType != XmlPullParser.END_TAG) { 5047 if (!parseCarePlanActivityComponentContent(eventType, xpp, res)) 5048 unknownContent(xpp); 5049 eventType = nextNoWhitespace(xpp); 5050 } 5051 next(xpp); 5052 parseElementClose(res); 5053 return res; 5054 } 5055 5056 protected boolean parseCarePlanActivityComponentContent(int eventType, XmlPullParser xpp, CarePlan.CarePlanActivityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5057 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performedActivity")) { 5058 res.getPerformedActivity().add(parseCodeableReference(xpp)); 5059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("progress")) { 5060 res.getProgress().add(parseAnnotation(xpp)); 5061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plannedActivityReference")) { 5062 res.setPlannedActivityReference(parseReference(xpp)); 5063 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5064 return false; 5065 } 5066 return true; 5067 } 5068 5069 protected CareTeam parseCareTeam(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5070 CareTeam res = new CareTeam(); 5071 parseResourceAttributes(xpp, res); 5072 next(xpp); 5073 int eventType = nextNoWhitespace(xpp); 5074 while (eventType != XmlPullParser.END_TAG) { 5075 if (!parseCareTeamContent(eventType, xpp, res)) 5076 unknownContent(xpp); 5077 eventType = nextNoWhitespace(xpp); 5078 } 5079 next(xpp); 5080 parseElementClose(res); 5081 return res; 5082 } 5083 5084 protected boolean parseCareTeamContent(int eventType, XmlPullParser xpp, CareTeam res) throws XmlPullParserException, IOException, FHIRFormatError { 5085 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5086 res.getIdentifier().add(parseIdentifier(xpp)); 5087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5088 res.setStatusElement(parseEnumeration(xpp, CareTeam.CareTeamStatus.NULL, new CareTeam.CareTeamStatusEnumFactory())); 5089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5090 res.getCategory().add(parseCodeableConcept(xpp)); 5091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5092 res.setNameElement(parseString(xpp)); 5093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5094 res.setSubject(parseReference(xpp)); 5095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5096 res.setPeriod(parsePeriod(xpp)); 5097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 5098 res.getParticipant().add(parseCareTeamParticipantComponent(xpp)); 5099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 5100 res.getReason().add(parseCodeableReference(xpp)); 5101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 5102 res.getManagingOrganization().add(parseReference(xpp)); 5103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 5104 res.getTelecom().add(parseContactPoint(xpp)); 5105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5106 res.getNote().add(parseAnnotation(xpp)); 5107 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 5108 return false; 5109 } 5110 return true; 5111 } 5112 5113 protected CareTeam.CareTeamParticipantComponent parseCareTeamParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5114 CareTeam.CareTeamParticipantComponent res = new CareTeam.CareTeamParticipantComponent(); 5115 parseElementAttributes(xpp, res); 5116 next(xpp); 5117 int eventType = nextNoWhitespace(xpp); 5118 while (eventType != XmlPullParser.END_TAG) { 5119 if (!parseCareTeamParticipantComponentContent(eventType, xpp, res)) 5120 unknownContent(xpp); 5121 eventType = nextNoWhitespace(xpp); 5122 } 5123 next(xpp); 5124 parseElementClose(res); 5125 return res; 5126 } 5127 5128 protected boolean parseCareTeamParticipantComponentContent(int eventType, XmlPullParser xpp, CareTeam.CareTeamParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5129 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5130 res.setRole(parseCodeableConcept(xpp)); 5131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 5132 res.setMember(parseReference(xpp)); 5133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 5134 res.setOnBehalfOf(parseReference(xpp)); 5135 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "coverage")) { 5136 res.setCoverage(parseType("coverage", xpp)); 5137 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5138 return false; 5139 } 5140 return true; 5141 } 5142 5143 protected ChargeItem parseChargeItem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5144 ChargeItem res = new ChargeItem(); 5145 parseResourceAttributes(xpp, res); 5146 next(xpp); 5147 int eventType = nextNoWhitespace(xpp); 5148 while (eventType != XmlPullParser.END_TAG) { 5149 if (!parseChargeItemContent(eventType, xpp, res)) 5150 unknownContent(xpp); 5151 eventType = nextNoWhitespace(xpp); 5152 } 5153 next(xpp); 5154 parseElementClose(res); 5155 return res; 5156 } 5157 5158 protected boolean parseChargeItemContent(int eventType, XmlPullParser xpp, ChargeItem res) throws XmlPullParserException, IOException, FHIRFormatError { 5159 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5160 res.getIdentifier().add(parseIdentifier(xpp)); 5161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionUri")) { 5162 res.getDefinitionUri().add(parseUri(xpp)); 5163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionCanonical")) { 5164 res.getDefinitionCanonical().add(parseCanonical(xpp)); 5165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5166 res.setStatusElement(parseEnumeration(xpp, ChargeItem.ChargeItemStatus.NULL, new ChargeItem.ChargeItemStatusEnumFactory())); 5167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 5168 res.getPartOf().add(parseReference(xpp)); 5169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5170 res.setCode(parseCodeableConcept(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 && nameIsTypeName(xpp, "occurrence")) { 5176 res.setOccurrence(parseType("occurrence", xpp)); 5177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 5178 res.getPerformer().add(parseChargeItemPerformerComponent(xpp)); 5179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performingOrganization")) { 5180 res.setPerformingOrganization(parseReference(xpp)); 5181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestingOrganization")) { 5182 res.setRequestingOrganization(parseReference(xpp)); 5183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("costCenter")) { 5184 res.setCostCenter(parseReference(xpp)); 5185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 5186 res.setQuantity(parseQuantity(xpp)); 5187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodysite")) { 5188 res.getBodysite().add(parseCodeableConcept(xpp)); 5189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPriceComponent")) { 5190 res.setUnitPriceComponent(parseMonetaryComponent(xpp)); 5191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalPriceComponent")) { 5192 res.setTotalPriceComponent(parseMonetaryComponent(xpp)); 5193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overrideReason")) { 5194 res.setOverrideReason(parseCodeableConcept(xpp)); 5195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 5196 res.setEnterer(parseReference(xpp)); 5197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enteredDate")) { 5198 res.setEnteredDateElement(parseDateTime(xpp)); 5199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 5200 res.getReason().add(parseCodeableConcept(xpp)); 5201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 5202 res.getService().add(parseCodeableReference(xpp)); 5203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 5204 res.getProduct().add(parseCodeableReference(xpp)); 5205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 5206 res.getAccount().add(parseReference(xpp)); 5207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5208 res.getNote().add(parseAnnotation(xpp)); 5209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 5210 res.getSupportingInformation().add(parseReference(xpp)); 5211 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 5212 return false; 5213 } 5214 return true; 5215 } 5216 5217 protected ChargeItem.ChargeItemPerformerComponent parseChargeItemPerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5218 ChargeItem.ChargeItemPerformerComponent res = new ChargeItem.ChargeItemPerformerComponent(); 5219 parseElementAttributes(xpp, res); 5220 next(xpp); 5221 int eventType = nextNoWhitespace(xpp); 5222 while (eventType != XmlPullParser.END_TAG) { 5223 if (!parseChargeItemPerformerComponentContent(eventType, xpp, res)) 5224 unknownContent(xpp); 5225 eventType = nextNoWhitespace(xpp); 5226 } 5227 next(xpp); 5228 parseElementClose(res); 5229 return res; 5230 } 5231 5232 protected boolean parseChargeItemPerformerComponentContent(int eventType, XmlPullParser xpp, ChargeItem.ChargeItemPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5233 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 5234 res.setFunction(parseCodeableConcept(xpp)); 5235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 5236 res.setActor(parseReference(xpp)); 5237 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5238 return false; 5239 } 5240 return true; 5241 } 5242 5243 protected ChargeItemDefinition parseChargeItemDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5244 ChargeItemDefinition res = new ChargeItemDefinition(); 5245 parseResourceAttributes(xpp, res); 5246 next(xpp); 5247 int eventType = nextNoWhitespace(xpp); 5248 while (eventType != XmlPullParser.END_TAG) { 5249 if (!parseChargeItemDefinitionContent(eventType, xpp, res)) 5250 unknownContent(xpp); 5251 eventType = nextNoWhitespace(xpp); 5252 } 5253 next(xpp); 5254 parseElementClose(res); 5255 return res; 5256 } 5257 5258 protected boolean parseChargeItemDefinitionContent(int eventType, XmlPullParser xpp, ChargeItemDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 5259 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5260 res.setUrlElement(parseUri(xpp)); 5261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5262 res.getIdentifier().add(parseIdentifier(xpp)); 5263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 5264 res.setVersionElement(parseString(xpp)); 5265 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 5266 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 5267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5268 res.setNameElement(parseString(xpp)); 5269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5270 res.setTitleElement(parseString(xpp)); 5271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromUri")) { 5272 res.getDerivedFromUri().add(parseUri(xpp)); 5273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 5274 res.getPartOf().add(parseCanonical(xpp)); 5275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 5276 res.getReplaces().add(parseCanonical(xpp)); 5277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5278 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 5279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 5280 res.setExperimentalElement(parseBoolean(xpp)); 5281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5282 res.setDateElement(parseDateTime(xpp)); 5283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 5284 res.setPublisherElement(parseString(xpp)); 5285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 5286 res.getContact().add(parseContactDetail(xpp)); 5287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5288 res.setDescriptionElement(parseMarkdown(xpp)); 5289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 5290 res.getUseContext().add(parseUsageContext(xpp)); 5291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 5292 res.getJurisdiction().add(parseCodeableConcept(xpp)); 5293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5294 res.setPurposeElement(parseMarkdown(xpp)); 5295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 5296 res.setCopyrightElement(parseMarkdown(xpp)); 5297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 5298 res.setCopyrightLabelElement(parseString(xpp)); 5299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 5300 res.setApprovalDateElement(parseDate(xpp)); 5301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 5302 res.setLastReviewDateElement(parseDate(xpp)); 5303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5304 res.setCode(parseCodeableConcept(xpp)); 5305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 5306 res.getInstance().add(parseReference(xpp)); 5307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applicability")) { 5308 res.getApplicability().add(parseChargeItemDefinitionApplicabilityComponent(xpp)); 5309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("propertyGroup")) { 5310 res.getPropertyGroup().add(parseChargeItemDefinitionPropertyGroupComponent(xpp)); 5311 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 5312 return false; 5313 } 5314 return true; 5315 } 5316 5317 protected ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent parseChargeItemDefinitionApplicabilityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5318 ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent res = new ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent(); 5319 parseElementAttributes(xpp, res); 5320 next(xpp); 5321 int eventType = nextNoWhitespace(xpp); 5322 while (eventType != XmlPullParser.END_TAG) { 5323 if (!parseChargeItemDefinitionApplicabilityComponentContent(eventType, xpp, res)) 5324 unknownContent(xpp); 5325 eventType = nextNoWhitespace(xpp); 5326 } 5327 next(xpp); 5328 parseElementClose(res); 5329 return res; 5330 } 5331 5332 protected boolean parseChargeItemDefinitionApplicabilityComponentContent(int eventType, XmlPullParser xpp, ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5333 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 5334 res.setCondition(parseExpression(xpp)); 5335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 5336 res.setEffectivePeriod(parsePeriod(xpp)); 5337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 5338 res.setRelatedArtifact(parseRelatedArtifact(xpp)); 5339 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5340 return false; 5341 } 5342 return true; 5343 } 5344 5345 protected ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent parseChargeItemDefinitionPropertyGroupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5346 ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent res = new ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent(); 5347 parseElementAttributes(xpp, res); 5348 next(xpp); 5349 int eventType = nextNoWhitespace(xpp); 5350 while (eventType != XmlPullParser.END_TAG) { 5351 if (!parseChargeItemDefinitionPropertyGroupComponentContent(eventType, xpp, res)) 5352 unknownContent(xpp); 5353 eventType = nextNoWhitespace(xpp); 5354 } 5355 next(xpp); 5356 parseElementClose(res); 5357 return res; 5358 } 5359 5360 protected boolean parseChargeItemDefinitionPropertyGroupComponentContent(int eventType, XmlPullParser xpp, ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5361 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applicability")) { 5362 res.getApplicability().add(parseChargeItemDefinitionApplicabilityComponent(xpp)); 5363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priceComponent")) { 5364 res.getPriceComponent().add(parseMonetaryComponent(xpp)); 5365 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5366 return false; 5367 } 5368 return true; 5369 } 5370 5371 protected Citation parseCitation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5372 Citation res = new Citation(); 5373 parseResourceAttributes(xpp, res); 5374 next(xpp); 5375 int eventType = nextNoWhitespace(xpp); 5376 while (eventType != XmlPullParser.END_TAG) { 5377 if (!parseCitationContent(eventType, xpp, res)) 5378 unknownContent(xpp); 5379 eventType = nextNoWhitespace(xpp); 5380 } 5381 next(xpp); 5382 parseElementClose(res); 5383 return res; 5384 } 5385 5386 protected boolean parseCitationContent(int eventType, XmlPullParser xpp, Citation res) throws XmlPullParserException, IOException, FHIRFormatError { 5387 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5388 res.setUrlElement(parseUri(xpp)); 5389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5390 res.getIdentifier().add(parseIdentifier(xpp)); 5391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 5392 res.setVersionElement(parseString(xpp)); 5393 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 5394 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 5395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5396 res.setNameElement(parseString(xpp)); 5397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5398 res.setTitleElement(parseString(xpp)); 5399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5400 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 5401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 5402 res.setExperimentalElement(parseBoolean(xpp)); 5403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5404 res.setDateElement(parseDateTime(xpp)); 5405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 5406 res.setPublisherElement(parseString(xpp)); 5407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 5408 res.getContact().add(parseContactDetail(xpp)); 5409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5410 res.setDescriptionElement(parseMarkdown(xpp)); 5411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 5412 res.getUseContext().add(parseUsageContext(xpp)); 5413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 5414 res.getJurisdiction().add(parseCodeableConcept(xpp)); 5415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5416 res.setPurposeElement(parseMarkdown(xpp)); 5417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 5418 res.setCopyrightElement(parseMarkdown(xpp)); 5419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 5420 res.setCopyrightLabelElement(parseString(xpp)); 5421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 5422 res.setApprovalDateElement(parseDate(xpp)); 5423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 5424 res.setLastReviewDateElement(parseDate(xpp)); 5425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 5426 res.setEffectivePeriod(parsePeriod(xpp)); 5427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 5428 res.getAuthor().add(parseContactDetail(xpp)); 5429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 5430 res.getEditor().add(parseContactDetail(xpp)); 5431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 5432 res.getReviewer().add(parseContactDetail(xpp)); 5433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 5434 res.getEndorser().add(parseContactDetail(xpp)); 5435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 5436 res.getSummary().add(parseCitationSummaryComponent(xpp)); 5437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classification")) { 5438 res.getClassification().add(parseCitationClassificationComponent(xpp)); 5439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5440 res.getNote().add(parseAnnotation(xpp)); 5441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("currentState")) { 5442 res.getCurrentState().add(parseCodeableConcept(xpp)); 5443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 5444 res.getStatusDate().add(parseCitationStatusDateComponent(xpp)); 5445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 5446 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 5447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citedArtifact")) { 5448 res.setCitedArtifact(parseCitationCitedArtifactComponent(xpp)); 5449 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 5450 return false; 5451 } 5452 return true; 5453 } 5454 5455 protected Citation.CitationSummaryComponent parseCitationSummaryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5456 Citation.CitationSummaryComponent res = new Citation.CitationSummaryComponent(); 5457 parseElementAttributes(xpp, res); 5458 next(xpp); 5459 int eventType = nextNoWhitespace(xpp); 5460 while (eventType != XmlPullParser.END_TAG) { 5461 if (!parseCitationSummaryComponentContent(eventType, xpp, res)) 5462 unknownContent(xpp); 5463 eventType = nextNoWhitespace(xpp); 5464 } 5465 next(xpp); 5466 parseElementClose(res); 5467 return res; 5468 } 5469 5470 protected boolean parseCitationSummaryComponentContent(int eventType, XmlPullParser xpp, Citation.CitationSummaryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5471 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("style")) { 5472 res.setStyle(parseCodeableConcept(xpp)); 5473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 5474 res.setTextElement(parseMarkdown(xpp)); 5475 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5476 return false; 5477 } 5478 return true; 5479 } 5480 5481 protected Citation.CitationClassificationComponent parseCitationClassificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5482 Citation.CitationClassificationComponent res = new Citation.CitationClassificationComponent(); 5483 parseElementAttributes(xpp, res); 5484 next(xpp); 5485 int eventType = nextNoWhitespace(xpp); 5486 while (eventType != XmlPullParser.END_TAG) { 5487 if (!parseCitationClassificationComponentContent(eventType, xpp, res)) 5488 unknownContent(xpp); 5489 eventType = nextNoWhitespace(xpp); 5490 } 5491 next(xpp); 5492 parseElementClose(res); 5493 return res; 5494 } 5495 5496 protected boolean parseCitationClassificationComponentContent(int eventType, XmlPullParser xpp, Citation.CitationClassificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5497 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5498 res.setType(parseCodeableConcept(xpp)); 5499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { 5500 res.getClassifier().add(parseCodeableConcept(xpp)); 5501 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5502 return false; 5503 } 5504 return true; 5505 } 5506 5507 protected Citation.CitationStatusDateComponent parseCitationStatusDateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5508 Citation.CitationStatusDateComponent res = new Citation.CitationStatusDateComponent(); 5509 parseElementAttributes(xpp, res); 5510 next(xpp); 5511 int eventType = nextNoWhitespace(xpp); 5512 while (eventType != XmlPullParser.END_TAG) { 5513 if (!parseCitationStatusDateComponentContent(eventType, xpp, res)) 5514 unknownContent(xpp); 5515 eventType = nextNoWhitespace(xpp); 5516 } 5517 next(xpp); 5518 parseElementClose(res); 5519 return res; 5520 } 5521 5522 protected boolean parseCitationStatusDateComponentContent(int eventType, XmlPullParser xpp, Citation.CitationStatusDateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5523 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 5524 res.setActivity(parseCodeableConcept(xpp)); 5525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { 5526 res.setActualElement(parseBoolean(xpp)); 5527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5528 res.setPeriod(parsePeriod(xpp)); 5529 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5530 return false; 5531 } 5532 return true; 5533 } 5534 5535 protected Citation.CitationCitedArtifactComponent parseCitationCitedArtifactComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5536 Citation.CitationCitedArtifactComponent res = new Citation.CitationCitedArtifactComponent(); 5537 parseElementAttributes(xpp, res); 5538 next(xpp); 5539 int eventType = nextNoWhitespace(xpp); 5540 while (eventType != XmlPullParser.END_TAG) { 5541 if (!parseCitationCitedArtifactComponentContent(eventType, xpp, res)) 5542 unknownContent(xpp); 5543 eventType = nextNoWhitespace(xpp); 5544 } 5545 next(xpp); 5546 parseElementClose(res); 5547 return res; 5548 } 5549 5550 protected boolean parseCitationCitedArtifactComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5551 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5552 res.getIdentifier().add(parseIdentifier(xpp)); 5553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedIdentifier")) { 5554 res.getRelatedIdentifier().add(parseIdentifier(xpp)); 5555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAccessed")) { 5556 res.setDateAccessedElement(parseDateTime(xpp)); 5557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 5558 res.setVersion(parseCitationCitedArtifactVersionComponent(xpp)); 5559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("currentState")) { 5560 res.getCurrentState().add(parseCodeableConcept(xpp)); 5561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 5562 res.getStatusDate().add(parseCitationCitedArtifactStatusDateComponent(xpp)); 5563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5564 res.getTitle().add(parseCitationCitedArtifactTitleComponent(xpp)); 5565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 5566 res.getAbstract().add(parseCitationCitedArtifactAbstractComponent(xpp)); 5567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 5568 res.setPart(parseCitationCitedArtifactPartComponent(xpp)); 5569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 5570 res.getRelatesTo().add(parseCitationCitedArtifactRelatesToComponent(xpp)); 5571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationForm")) { 5572 res.getPublicationForm().add(parseCitationCitedArtifactPublicationFormComponent(xpp)); 5573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("webLocation")) { 5574 res.getWebLocation().add(parseCitationCitedArtifactWebLocationComponent(xpp)); 5575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classification")) { 5576 res.getClassification().add(parseCitationCitedArtifactClassificationComponent(xpp)); 5577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributorship")) { 5578 res.setContributorship(parseCitationCitedArtifactContributorshipComponent(xpp)); 5579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5580 res.getNote().add(parseAnnotation(xpp)); 5581 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5582 return false; 5583 } 5584 return true; 5585 } 5586 5587 protected Citation.CitationCitedArtifactVersionComponent parseCitationCitedArtifactVersionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5588 Citation.CitationCitedArtifactVersionComponent res = new Citation.CitationCitedArtifactVersionComponent(); 5589 parseElementAttributes(xpp, res); 5590 next(xpp); 5591 int eventType = nextNoWhitespace(xpp); 5592 while (eventType != XmlPullParser.END_TAG) { 5593 if (!parseCitationCitedArtifactVersionComponentContent(eventType, xpp, res)) 5594 unknownContent(xpp); 5595 eventType = nextNoWhitespace(xpp); 5596 } 5597 next(xpp); 5598 parseElementClose(res); 5599 return res; 5600 } 5601 5602 protected boolean parseCitationCitedArtifactVersionComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactVersionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5603 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 5604 res.setValueElement(parseString(xpp)); 5605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseCitation")) { 5606 res.setBaseCitation(parseReference(xpp)); 5607 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5608 return false; 5609 } 5610 return true; 5611 } 5612 5613 protected Citation.CitationCitedArtifactStatusDateComponent parseCitationCitedArtifactStatusDateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5614 Citation.CitationCitedArtifactStatusDateComponent res = new Citation.CitationCitedArtifactStatusDateComponent(); 5615 parseElementAttributes(xpp, res); 5616 next(xpp); 5617 int eventType = nextNoWhitespace(xpp); 5618 while (eventType != XmlPullParser.END_TAG) { 5619 if (!parseCitationCitedArtifactStatusDateComponentContent(eventType, xpp, res)) 5620 unknownContent(xpp); 5621 eventType = nextNoWhitespace(xpp); 5622 } 5623 next(xpp); 5624 parseElementClose(res); 5625 return res; 5626 } 5627 5628 protected boolean parseCitationCitedArtifactStatusDateComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactStatusDateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5629 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 5630 res.setActivity(parseCodeableConcept(xpp)); 5631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { 5632 res.setActualElement(parseBoolean(xpp)); 5633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5634 res.setPeriod(parsePeriod(xpp)); 5635 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5636 return false; 5637 } 5638 return true; 5639 } 5640 5641 protected Citation.CitationCitedArtifactTitleComponent parseCitationCitedArtifactTitleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5642 Citation.CitationCitedArtifactTitleComponent res = new Citation.CitationCitedArtifactTitleComponent(); 5643 parseElementAttributes(xpp, res); 5644 next(xpp); 5645 int eventType = nextNoWhitespace(xpp); 5646 while (eventType != XmlPullParser.END_TAG) { 5647 if (!parseCitationCitedArtifactTitleComponentContent(eventType, xpp, res)) 5648 unknownContent(xpp); 5649 eventType = nextNoWhitespace(xpp); 5650 } 5651 next(xpp); 5652 parseElementClose(res); 5653 return res; 5654 } 5655 5656 protected boolean parseCitationCitedArtifactTitleComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactTitleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5657 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5658 res.getType().add(parseCodeableConcept(xpp)); 5659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 5660 res.setLanguage(parseCodeableConcept(xpp)); 5661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 5662 res.setTextElement(parseMarkdown(xpp)); 5663 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5664 return false; 5665 } 5666 return true; 5667 } 5668 5669 protected Citation.CitationCitedArtifactAbstractComponent parseCitationCitedArtifactAbstractComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5670 Citation.CitationCitedArtifactAbstractComponent res = new Citation.CitationCitedArtifactAbstractComponent(); 5671 parseElementAttributes(xpp, res); 5672 next(xpp); 5673 int eventType = nextNoWhitespace(xpp); 5674 while (eventType != XmlPullParser.END_TAG) { 5675 if (!parseCitationCitedArtifactAbstractComponentContent(eventType, xpp, res)) 5676 unknownContent(xpp); 5677 eventType = nextNoWhitespace(xpp); 5678 } 5679 next(xpp); 5680 parseElementClose(res); 5681 return res; 5682 } 5683 5684 protected boolean parseCitationCitedArtifactAbstractComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactAbstractComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5685 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5686 res.setType(parseCodeableConcept(xpp)); 5687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 5688 res.setLanguage(parseCodeableConcept(xpp)); 5689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 5690 res.setTextElement(parseMarkdown(xpp)); 5691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 5692 res.setCopyrightElement(parseMarkdown(xpp)); 5693 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5694 return false; 5695 } 5696 return true; 5697 } 5698 5699 protected Citation.CitationCitedArtifactPartComponent parseCitationCitedArtifactPartComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5700 Citation.CitationCitedArtifactPartComponent res = new Citation.CitationCitedArtifactPartComponent(); 5701 parseElementAttributes(xpp, res); 5702 next(xpp); 5703 int eventType = nextNoWhitespace(xpp); 5704 while (eventType != XmlPullParser.END_TAG) { 5705 if (!parseCitationCitedArtifactPartComponentContent(eventType, xpp, res)) 5706 unknownContent(xpp); 5707 eventType = nextNoWhitespace(xpp); 5708 } 5709 next(xpp); 5710 parseElementClose(res); 5711 return res; 5712 } 5713 5714 protected boolean parseCitationCitedArtifactPartComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactPartComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5715 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5716 res.setType(parseCodeableConcept(xpp)); 5717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 5718 res.setValueElement(parseString(xpp)); 5719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseCitation")) { 5720 res.setBaseCitation(parseReference(xpp)); 5721 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5722 return false; 5723 } 5724 return true; 5725 } 5726 5727 protected Citation.CitationCitedArtifactRelatesToComponent parseCitationCitedArtifactRelatesToComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5728 Citation.CitationCitedArtifactRelatesToComponent res = new Citation.CitationCitedArtifactRelatesToComponent(); 5729 parseElementAttributes(xpp, res); 5730 next(xpp); 5731 int eventType = nextNoWhitespace(xpp); 5732 while (eventType != XmlPullParser.END_TAG) { 5733 if (!parseCitationCitedArtifactRelatesToComponentContent(eventType, xpp, res)) 5734 unknownContent(xpp); 5735 eventType = nextNoWhitespace(xpp); 5736 } 5737 next(xpp); 5738 parseElementClose(res); 5739 return res; 5740 } 5741 5742 protected boolean parseCitationCitedArtifactRelatesToComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactRelatesToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5743 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5744 res.setTypeElement(parseEnumeration(xpp, Citation.RelatedArtifactTypeExpanded.NULL, new Citation.RelatedArtifactTypeExpandedEnumFactory())); 5745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { 5746 res.getClassifier().add(parseCodeableConcept(xpp)); 5747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 5748 res.setLabelElement(parseString(xpp)); 5749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5750 res.setDisplayElement(parseString(xpp)); 5751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citation")) { 5752 res.setCitationElement(parseMarkdown(xpp)); 5753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 5754 res.setDocument(parseAttachment(xpp)); 5755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 5756 res.setResourceElement(parseCanonical(xpp)); 5757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceReference")) { 5758 res.setResourceReference(parseReference(xpp)); 5759 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5760 return false; 5761 } 5762 return true; 5763 } 5764 5765 protected Citation.CitationCitedArtifactPublicationFormComponent parseCitationCitedArtifactPublicationFormComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5766 Citation.CitationCitedArtifactPublicationFormComponent res = new Citation.CitationCitedArtifactPublicationFormComponent(); 5767 parseElementAttributes(xpp, res); 5768 next(xpp); 5769 int eventType = nextNoWhitespace(xpp); 5770 while (eventType != XmlPullParser.END_TAG) { 5771 if (!parseCitationCitedArtifactPublicationFormComponentContent(eventType, xpp, res)) 5772 unknownContent(xpp); 5773 eventType = nextNoWhitespace(xpp); 5774 } 5775 next(xpp); 5776 parseElementClose(res); 5777 return res; 5778 } 5779 5780 protected boolean parseCitationCitedArtifactPublicationFormComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactPublicationFormComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5781 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publishedIn")) { 5782 res.setPublishedIn(parseCitationCitedArtifactPublicationFormPublishedInComponent(xpp)); 5783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citedMedium")) { 5784 res.setCitedMedium(parseCodeableConcept(xpp)); 5785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("volume")) { 5786 res.setVolumeElement(parseString(xpp)); 5787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issue")) { 5788 res.setIssueElement(parseString(xpp)); 5789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("articleDate")) { 5790 res.setArticleDateElement(parseDateTime(xpp)); 5791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationDateText")) { 5792 res.setPublicationDateTextElement(parseString(xpp)); 5793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationDateSeason")) { 5794 res.setPublicationDateSeasonElement(parseString(xpp)); 5795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastRevisionDate")) { 5796 res.setLastRevisionDateElement(parseDateTime(xpp)); 5797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 5798 res.getLanguage().add(parseCodeableConcept(xpp)); 5799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accessionNumber")) { 5800 res.setAccessionNumberElement(parseString(xpp)); 5801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pageString")) { 5802 res.setPageStringElement(parseString(xpp)); 5803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("firstPage")) { 5804 res.setFirstPageElement(parseString(xpp)); 5805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastPage")) { 5806 res.setLastPageElement(parseString(xpp)); 5807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pageCount")) { 5808 res.setPageCountElement(parseString(xpp)); 5809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 5810 res.setCopyrightElement(parseMarkdown(xpp)); 5811 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5812 return false; 5813 } 5814 return true; 5815 } 5816 5817 protected Citation.CitationCitedArtifactPublicationFormPublishedInComponent parseCitationCitedArtifactPublicationFormPublishedInComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5818 Citation.CitationCitedArtifactPublicationFormPublishedInComponent res = new Citation.CitationCitedArtifactPublicationFormPublishedInComponent(); 5819 parseElementAttributes(xpp, res); 5820 next(xpp); 5821 int eventType = nextNoWhitespace(xpp); 5822 while (eventType != XmlPullParser.END_TAG) { 5823 if (!parseCitationCitedArtifactPublicationFormPublishedInComponentContent(eventType, xpp, res)) 5824 unknownContent(xpp); 5825 eventType = nextNoWhitespace(xpp); 5826 } 5827 next(xpp); 5828 parseElementClose(res); 5829 return res; 5830 } 5831 5832 protected boolean parseCitationCitedArtifactPublicationFormPublishedInComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactPublicationFormPublishedInComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5833 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5834 res.setType(parseCodeableConcept(xpp)); 5835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5836 res.getIdentifier().add(parseIdentifier(xpp)); 5837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5838 res.setTitleElement(parseString(xpp)); 5839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 5840 res.setPublisher(parseReference(xpp)); 5841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisherLocation")) { 5842 res.setPublisherLocationElement(parseString(xpp)); 5843 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5844 return false; 5845 } 5846 return true; 5847 } 5848 5849 protected Citation.CitationCitedArtifactWebLocationComponent parseCitationCitedArtifactWebLocationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5850 Citation.CitationCitedArtifactWebLocationComponent res = new Citation.CitationCitedArtifactWebLocationComponent(); 5851 parseElementAttributes(xpp, res); 5852 next(xpp); 5853 int eventType = nextNoWhitespace(xpp); 5854 while (eventType != XmlPullParser.END_TAG) { 5855 if (!parseCitationCitedArtifactWebLocationComponentContent(eventType, xpp, res)) 5856 unknownContent(xpp); 5857 eventType = nextNoWhitespace(xpp); 5858 } 5859 next(xpp); 5860 parseElementClose(res); 5861 return res; 5862 } 5863 5864 protected boolean parseCitationCitedArtifactWebLocationComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactWebLocationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5865 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { 5866 res.getClassifier().add(parseCodeableConcept(xpp)); 5867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5868 res.setUrlElement(parseUri(xpp)); 5869 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5870 return false; 5871 } 5872 return true; 5873 } 5874 5875 protected Citation.CitationCitedArtifactClassificationComponent parseCitationCitedArtifactClassificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5876 Citation.CitationCitedArtifactClassificationComponent res = new Citation.CitationCitedArtifactClassificationComponent(); 5877 parseElementAttributes(xpp, res); 5878 next(xpp); 5879 int eventType = nextNoWhitespace(xpp); 5880 while (eventType != XmlPullParser.END_TAG) { 5881 if (!parseCitationCitedArtifactClassificationComponentContent(eventType, xpp, res)) 5882 unknownContent(xpp); 5883 eventType = nextNoWhitespace(xpp); 5884 } 5885 next(xpp); 5886 parseElementClose(res); 5887 return res; 5888 } 5889 5890 protected boolean parseCitationCitedArtifactClassificationComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactClassificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5891 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5892 res.setType(parseCodeableConcept(xpp)); 5893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { 5894 res.getClassifier().add(parseCodeableConcept(xpp)); 5895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("artifactAssessment")) { 5896 res.getArtifactAssessment().add(parseReference(xpp)); 5897 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5898 return false; 5899 } 5900 return true; 5901 } 5902 5903 protected Citation.CitationCitedArtifactContributorshipComponent parseCitationCitedArtifactContributorshipComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5904 Citation.CitationCitedArtifactContributorshipComponent res = new Citation.CitationCitedArtifactContributorshipComponent(); 5905 parseElementAttributes(xpp, res); 5906 next(xpp); 5907 int eventType = nextNoWhitespace(xpp); 5908 while (eventType != XmlPullParser.END_TAG) { 5909 if (!parseCitationCitedArtifactContributorshipComponentContent(eventType, xpp, res)) 5910 unknownContent(xpp); 5911 eventType = nextNoWhitespace(xpp); 5912 } 5913 next(xpp); 5914 parseElementClose(res); 5915 return res; 5916 } 5917 5918 protected boolean parseCitationCitedArtifactContributorshipComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactContributorshipComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5919 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complete")) { 5920 res.setCompleteElement(parseBoolean(xpp)); 5921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 5922 res.getEntry().add(parseCitationCitedArtifactContributorshipEntryComponent(xpp)); 5923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 5924 res.getSummary().add(parseCitationContributorshipSummaryComponent(xpp)); 5925 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5926 return false; 5927 } 5928 return true; 5929 } 5930 5931 protected Citation.CitationCitedArtifactContributorshipEntryComponent parseCitationCitedArtifactContributorshipEntryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5932 Citation.CitationCitedArtifactContributorshipEntryComponent res = new Citation.CitationCitedArtifactContributorshipEntryComponent(); 5933 parseElementAttributes(xpp, res); 5934 next(xpp); 5935 int eventType = nextNoWhitespace(xpp); 5936 while (eventType != XmlPullParser.END_TAG) { 5937 if (!parseCitationCitedArtifactContributorshipEntryComponentContent(eventType, xpp, res)) 5938 unknownContent(xpp); 5939 eventType = nextNoWhitespace(xpp); 5940 } 5941 next(xpp); 5942 parseElementClose(res); 5943 return res; 5944 } 5945 5946 protected boolean parseCitationCitedArtifactContributorshipEntryComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactContributorshipEntryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5947 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 5948 res.setContributor(parseReference(xpp)); 5949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("forenameInitials")) { 5950 res.setForenameInitialsElement(parseString(xpp)); 5951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("affiliation")) { 5952 res.getAffiliation().add(parseReference(xpp)); 5953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributionType")) { 5954 res.getContributionType().add(parseCodeableConcept(xpp)); 5955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5956 res.setRole(parseCodeableConcept(xpp)); 5957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributionInstance")) { 5958 res.getContributionInstance().add(parseCitationCitedArtifactContributorshipEntryContributionInstanceComponent(xpp)); 5959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("correspondingContact")) { 5960 res.setCorrespondingContactElement(parseBoolean(xpp)); 5961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rankingOrder")) { 5962 res.setRankingOrderElement(parsePositiveInt(xpp)); 5963 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5964 return false; 5965 } 5966 return true; 5967 } 5968 5969 protected Citation.CitationCitedArtifactContributorshipEntryContributionInstanceComponent parseCitationCitedArtifactContributorshipEntryContributionInstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5970 Citation.CitationCitedArtifactContributorshipEntryContributionInstanceComponent res = new Citation.CitationCitedArtifactContributorshipEntryContributionInstanceComponent(); 5971 parseElementAttributes(xpp, res); 5972 next(xpp); 5973 int eventType = nextNoWhitespace(xpp); 5974 while (eventType != XmlPullParser.END_TAG) { 5975 if (!parseCitationCitedArtifactContributorshipEntryContributionInstanceComponentContent(eventType, xpp, res)) 5976 unknownContent(xpp); 5977 eventType = nextNoWhitespace(xpp); 5978 } 5979 next(xpp); 5980 parseElementClose(res); 5981 return res; 5982 } 5983 5984 protected boolean parseCitationCitedArtifactContributorshipEntryContributionInstanceComponentContent(int eventType, XmlPullParser xpp, Citation.CitationCitedArtifactContributorshipEntryContributionInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5985 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5986 res.setType(parseCodeableConcept(xpp)); 5987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 5988 res.setTimeElement(parseDateTime(xpp)); 5989 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 5990 return false; 5991 } 5992 return true; 5993 } 5994 5995 protected Citation.ContributorshipSummaryComponent parseCitationContributorshipSummaryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5996 Citation.ContributorshipSummaryComponent res = new Citation.ContributorshipSummaryComponent(); 5997 parseElementAttributes(xpp, res); 5998 next(xpp); 5999 int eventType = nextNoWhitespace(xpp); 6000 while (eventType != XmlPullParser.END_TAG) { 6001 if (!parseCitationContributorshipSummaryComponentContent(eventType, xpp, res)) 6002 unknownContent(xpp); 6003 eventType = nextNoWhitespace(xpp); 6004 } 6005 next(xpp); 6006 parseElementClose(res); 6007 return res; 6008 } 6009 6010 protected boolean parseCitationContributorshipSummaryComponentContent(int eventType, XmlPullParser xpp, Citation.ContributorshipSummaryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6011 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6012 res.setType(parseCodeableConcept(xpp)); 6013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("style")) { 6014 res.setStyle(parseCodeableConcept(xpp)); 6015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6016 res.setSource(parseCodeableConcept(xpp)); 6017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 6018 res.setValueElement(parseMarkdown(xpp)); 6019 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6020 return false; 6021 } 6022 return true; 6023 } 6024 6025 protected Claim parseClaim(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6026 Claim res = new Claim(); 6027 parseResourceAttributes(xpp, res); 6028 next(xpp); 6029 int eventType = nextNoWhitespace(xpp); 6030 while (eventType != XmlPullParser.END_TAG) { 6031 if (!parseClaimContent(eventType, xpp, res)) 6032 unknownContent(xpp); 6033 eventType = nextNoWhitespace(xpp); 6034 } 6035 next(xpp); 6036 parseElementClose(res); 6037 return res; 6038 } 6039 6040 protected boolean parseClaimContent(int eventType, XmlPullParser xpp, Claim res) throws XmlPullParserException, IOException, FHIRFormatError { 6041 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6042 res.getIdentifier().add(parseIdentifier(xpp)); 6043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6044 res.getTraceNumber().add(parseIdentifier(xpp)); 6045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6046 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 6047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6048 res.setType(parseCodeableConcept(xpp)); 6049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 6050 res.setSubType(parseCodeableConcept(xpp)); 6051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 6052 res.setUseElement(parseEnumeration(xpp, Enumerations.Use.NULL, new Enumerations.UseEnumFactory())); 6053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6054 res.setPatient(parseReference(xpp)); 6055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billablePeriod")) { 6056 res.setBillablePeriod(parsePeriod(xpp)); 6057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 6058 res.setCreatedElement(parseDateTime(xpp)); 6059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 6060 res.setEnterer(parseReference(xpp)); 6061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 6062 res.setInsurer(parseReference(xpp)); 6063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 6064 res.setProvider(parseReference(xpp)); 6065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 6066 res.setPriority(parseCodeableConcept(xpp)); 6067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundsReserve")) { 6068 res.setFundsReserve(parseCodeableConcept(xpp)); 6069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 6070 res.getRelated().add(parseClaimRelatedClaimComponent(xpp)); 6071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 6072 res.setPrescription(parseReference(xpp)); 6073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalPrescription")) { 6074 res.setOriginalPrescription(parseReference(xpp)); 6075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 6076 res.setPayee(parseClaimPayeeComponent(xpp)); 6077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referral")) { 6078 res.setReferral(parseReference(xpp)); 6079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 6080 res.getEncounter().add(parseReference(xpp)); 6081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 6082 res.setFacility(parseReference(xpp)); 6083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisRelatedGroup")) { 6084 res.setDiagnosisRelatedGroup(parseCodeableConcept(xpp)); 6085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 6086 res.getEvent().add(parseClaimEventComponent(xpp)); 6087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 6088 res.getCareTeam().add(parseClaimCareTeamComponent(xpp)); 6089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 6090 res.getSupportingInfo().add(parseClaimSupportingInformationComponent(xpp)); 6091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 6092 res.getDiagnosis().add(parseClaimDiagnosisComponent(xpp)); 6093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 6094 res.getProcedure().add(parseClaimProcedureComponent(xpp)); 6095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 6096 res.getInsurance().add(parseClaimInsuranceComponent(xpp)); 6097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accident")) { 6098 res.setAccident(parseClaimAccidentComponent(xpp)); 6099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 6100 res.setPatientPaid(parseMoney(xpp)); 6101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 6102 res.getItem().add(parseClaimItemComponent(xpp)); 6103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 6104 res.setTotal(parseMoney(xpp)); 6105 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 6106 return false; 6107 } 6108 return true; 6109 } 6110 6111 protected Claim.RelatedClaimComponent parseClaimRelatedClaimComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6112 Claim.RelatedClaimComponent res = new Claim.RelatedClaimComponent(); 6113 parseElementAttributes(xpp, res); 6114 next(xpp); 6115 int eventType = nextNoWhitespace(xpp); 6116 while (eventType != XmlPullParser.END_TAG) { 6117 if (!parseClaimRelatedClaimComponentContent(eventType, xpp, res)) 6118 unknownContent(xpp); 6119 eventType = nextNoWhitespace(xpp); 6120 } 6121 next(xpp); 6122 parseElementClose(res); 6123 return res; 6124 } 6125 6126 protected boolean parseClaimRelatedClaimComponentContent(int eventType, XmlPullParser xpp, Claim.RelatedClaimComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6127 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 6128 res.setClaim(parseReference(xpp)); 6129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 6130 res.setRelationship(parseCodeableConcept(xpp)); 6131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 6132 res.setReference(parseIdentifier(xpp)); 6133 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6134 return false; 6135 } 6136 return true; 6137 } 6138 6139 protected Claim.PayeeComponent parseClaimPayeeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6140 Claim.PayeeComponent res = new Claim.PayeeComponent(); 6141 parseElementAttributes(xpp, res); 6142 next(xpp); 6143 int eventType = nextNoWhitespace(xpp); 6144 while (eventType != XmlPullParser.END_TAG) { 6145 if (!parseClaimPayeeComponentContent(eventType, xpp, res)) 6146 unknownContent(xpp); 6147 eventType = nextNoWhitespace(xpp); 6148 } 6149 next(xpp); 6150 parseElementClose(res); 6151 return res; 6152 } 6153 6154 protected boolean parseClaimPayeeComponentContent(int eventType, XmlPullParser xpp, Claim.PayeeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6155 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6156 res.setType(parseCodeableConcept(xpp)); 6157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 6158 res.setParty(parseReference(xpp)); 6159 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6160 return false; 6161 } 6162 return true; 6163 } 6164 6165 protected Claim.ClaimEventComponent parseClaimEventComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6166 Claim.ClaimEventComponent res = new Claim.ClaimEventComponent(); 6167 parseElementAttributes(xpp, res); 6168 next(xpp); 6169 int eventType = nextNoWhitespace(xpp); 6170 while (eventType != XmlPullParser.END_TAG) { 6171 if (!parseClaimEventComponentContent(eventType, xpp, res)) 6172 unknownContent(xpp); 6173 eventType = nextNoWhitespace(xpp); 6174 } 6175 next(xpp); 6176 parseElementClose(res); 6177 return res; 6178 } 6179 6180 protected boolean parseClaimEventComponentContent(int eventType, XmlPullParser xpp, Claim.ClaimEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6181 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6182 res.setType(parseCodeableConcept(xpp)); 6183 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 6184 res.setWhen(parseType("when", xpp)); 6185 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6186 return false; 6187 } 6188 return true; 6189 } 6190 6191 protected Claim.CareTeamComponent parseClaimCareTeamComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6192 Claim.CareTeamComponent res = new Claim.CareTeamComponent(); 6193 parseElementAttributes(xpp, res); 6194 next(xpp); 6195 int eventType = nextNoWhitespace(xpp); 6196 while (eventType != XmlPullParser.END_TAG) { 6197 if (!parseClaimCareTeamComponentContent(eventType, xpp, res)) 6198 unknownContent(xpp); 6199 eventType = nextNoWhitespace(xpp); 6200 } 6201 next(xpp); 6202 parseElementClose(res); 6203 return res; 6204 } 6205 6206 protected boolean parseClaimCareTeamComponentContent(int eventType, XmlPullParser xpp, Claim.CareTeamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6207 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6208 res.setSequenceElement(parsePositiveInt(xpp)); 6209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 6210 res.setProvider(parseReference(xpp)); 6211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 6212 res.setResponsibleElement(parseBoolean(xpp)); 6213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 6214 res.setRole(parseCodeableConcept(xpp)); 6215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 6216 res.setSpecialty(parseCodeableConcept(xpp)); 6217 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6218 return false; 6219 } 6220 return true; 6221 } 6222 6223 protected Claim.SupportingInformationComponent parseClaimSupportingInformationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6224 Claim.SupportingInformationComponent res = new Claim.SupportingInformationComponent(); 6225 parseElementAttributes(xpp, res); 6226 next(xpp); 6227 int eventType = nextNoWhitespace(xpp); 6228 while (eventType != XmlPullParser.END_TAG) { 6229 if (!parseClaimSupportingInformationComponentContent(eventType, xpp, res)) 6230 unknownContent(xpp); 6231 eventType = nextNoWhitespace(xpp); 6232 } 6233 next(xpp); 6234 parseElementClose(res); 6235 return res; 6236 } 6237 6238 protected boolean parseClaimSupportingInformationComponentContent(int eventType, XmlPullParser xpp, Claim.SupportingInformationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6239 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6240 res.setSequenceElement(parsePositiveInt(xpp)); 6241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6242 res.setCategory(parseCodeableConcept(xpp)); 6243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 6244 res.setCode(parseCodeableConcept(xpp)); 6245 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 6246 res.setTiming(parseType("timing", xpp)); 6247 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 6248 res.setValue(parseType("value", xpp)); 6249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6250 res.setReason(parseCodeableConcept(xpp)); 6251 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6252 return false; 6253 } 6254 return true; 6255 } 6256 6257 protected Claim.DiagnosisComponent parseClaimDiagnosisComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6258 Claim.DiagnosisComponent res = new Claim.DiagnosisComponent(); 6259 parseElementAttributes(xpp, res); 6260 next(xpp); 6261 int eventType = nextNoWhitespace(xpp); 6262 while (eventType != XmlPullParser.END_TAG) { 6263 if (!parseClaimDiagnosisComponentContent(eventType, xpp, res)) 6264 unknownContent(xpp); 6265 eventType = nextNoWhitespace(xpp); 6266 } 6267 next(xpp); 6268 parseElementClose(res); 6269 return res; 6270 } 6271 6272 protected boolean parseClaimDiagnosisComponentContent(int eventType, XmlPullParser xpp, Claim.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6273 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6274 res.setSequenceElement(parsePositiveInt(xpp)); 6275 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "diagnosis")) { 6276 res.setDiagnosis(parseType("diagnosis", xpp)); 6277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6278 res.getType().add(parseCodeableConcept(xpp)); 6279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onAdmission")) { 6280 res.setOnAdmission(parseCodeableConcept(xpp)); 6281 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6282 return false; 6283 } 6284 return true; 6285 } 6286 6287 protected Claim.ProcedureComponent parseClaimProcedureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6288 Claim.ProcedureComponent res = new Claim.ProcedureComponent(); 6289 parseElementAttributes(xpp, res); 6290 next(xpp); 6291 int eventType = nextNoWhitespace(xpp); 6292 while (eventType != XmlPullParser.END_TAG) { 6293 if (!parseClaimProcedureComponentContent(eventType, xpp, res)) 6294 unknownContent(xpp); 6295 eventType = nextNoWhitespace(xpp); 6296 } 6297 next(xpp); 6298 parseElementClose(res); 6299 return res; 6300 } 6301 6302 protected boolean parseClaimProcedureComponentContent(int eventType, XmlPullParser xpp, Claim.ProcedureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6303 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6304 res.setSequenceElement(parsePositiveInt(xpp)); 6305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6306 res.getType().add(parseCodeableConcept(xpp)); 6307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6308 res.setDateElement(parseDateTime(xpp)); 6309 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "procedure")) { 6310 res.setProcedure(parseType("procedure", xpp)); 6311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6312 res.getUdi().add(parseReference(xpp)); 6313 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6314 return false; 6315 } 6316 return true; 6317 } 6318 6319 protected Claim.InsuranceComponent parseClaimInsuranceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6320 Claim.InsuranceComponent res = new Claim.InsuranceComponent(); 6321 parseElementAttributes(xpp, res); 6322 next(xpp); 6323 int eventType = nextNoWhitespace(xpp); 6324 while (eventType != XmlPullParser.END_TAG) { 6325 if (!parseClaimInsuranceComponentContent(eventType, xpp, res)) 6326 unknownContent(xpp); 6327 eventType = nextNoWhitespace(xpp); 6328 } 6329 next(xpp); 6330 parseElementClose(res); 6331 return res; 6332 } 6333 6334 protected boolean parseClaimInsuranceComponentContent(int eventType, XmlPullParser xpp, Claim.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6335 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6336 res.setSequenceElement(parsePositiveInt(xpp)); 6337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 6338 res.setFocalElement(parseBoolean(xpp)); 6339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6340 res.setIdentifier(parseIdentifier(xpp)); 6341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 6342 res.setCoverage(parseReference(xpp)); 6343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 6344 res.setBusinessArrangementElement(parseString(xpp)); 6345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 6346 res.getPreAuthRef().add(parseString(xpp)); 6347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 6348 res.setClaimResponse(parseReference(xpp)); 6349 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6350 return false; 6351 } 6352 return true; 6353 } 6354 6355 protected Claim.AccidentComponent parseClaimAccidentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6356 Claim.AccidentComponent res = new Claim.AccidentComponent(); 6357 parseElementAttributes(xpp, res); 6358 next(xpp); 6359 int eventType = nextNoWhitespace(xpp); 6360 while (eventType != XmlPullParser.END_TAG) { 6361 if (!parseClaimAccidentComponentContent(eventType, xpp, res)) 6362 unknownContent(xpp); 6363 eventType = nextNoWhitespace(xpp); 6364 } 6365 next(xpp); 6366 parseElementClose(res); 6367 return res; 6368 } 6369 6370 protected boolean parseClaimAccidentComponentContent(int eventType, XmlPullParser xpp, Claim.AccidentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6371 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6372 res.setDateElement(parseDate(xpp)); 6373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6374 res.setType(parseCodeableConcept(xpp)); 6375 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 6376 res.setLocation(parseType("location", xpp)); 6377 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6378 return false; 6379 } 6380 return true; 6381 } 6382 6383 protected Claim.ItemComponent parseClaimItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6384 Claim.ItemComponent res = new Claim.ItemComponent(); 6385 parseElementAttributes(xpp, res); 6386 next(xpp); 6387 int eventType = nextNoWhitespace(xpp); 6388 while (eventType != XmlPullParser.END_TAG) { 6389 if (!parseClaimItemComponentContent(eventType, xpp, res)) 6390 unknownContent(xpp); 6391 eventType = nextNoWhitespace(xpp); 6392 } 6393 next(xpp); 6394 parseElementClose(res); 6395 return res; 6396 } 6397 6398 protected boolean parseClaimItemComponentContent(int eventType, XmlPullParser xpp, Claim.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6399 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6400 res.setSequenceElement(parsePositiveInt(xpp)); 6401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6402 res.getTraceNumber().add(parseIdentifier(xpp)); 6403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeamSequence")) { 6404 res.getCareTeamSequence().add(parsePositiveInt(xpp)); 6405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisSequence")) { 6406 res.getDiagnosisSequence().add(parsePositiveInt(xpp)); 6407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureSequence")) { 6408 res.getProcedureSequence().add(parsePositiveInt(xpp)); 6409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSequence")) { 6410 res.getInformationSequence().add(parsePositiveInt(xpp)); 6411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 6412 res.setRevenue(parseCodeableConcept(xpp)); 6413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6414 res.setCategory(parseCodeableConcept(xpp)); 6415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 6416 res.setProductOrService(parseCodeableConcept(xpp)); 6417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 6418 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 6419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 6420 res.getRequest().add(parseReference(xpp)); 6421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 6422 res.getModifier().add(parseCodeableConcept(xpp)); 6423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 6424 res.getProgramCode().add(parseCodeableConcept(xpp)); 6425 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 6426 res.setServiced(parseType("serviced", xpp)); 6427 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 6428 res.setLocation(parseType("location", xpp)); 6429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 6430 res.setPatientPaid(parseMoney(xpp)); 6431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6432 res.setQuantity(parseQuantity(xpp)); 6433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6434 res.setUnitPrice(parseMoney(xpp)); 6435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6436 res.setFactorElement(parseDecimal(xpp)); 6437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 6438 res.setTax(parseMoney(xpp)); 6439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6440 res.setNet(parseMoney(xpp)); 6441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6442 res.getUdi().add(parseReference(xpp)); 6443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 6444 res.getBodySite().add(parseClaimBodySiteComponent(xpp)); 6445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 6446 res.getEncounter().add(parseReference(xpp)); 6447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 6448 res.getDetail().add(parseClaimDetailComponent(xpp)); 6449 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6450 return false; 6451 } 6452 return true; 6453 } 6454 6455 protected Claim.BodySiteComponent parseClaimBodySiteComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6456 Claim.BodySiteComponent res = new Claim.BodySiteComponent(); 6457 parseElementAttributes(xpp, res); 6458 next(xpp); 6459 int eventType = nextNoWhitespace(xpp); 6460 while (eventType != XmlPullParser.END_TAG) { 6461 if (!parseClaimBodySiteComponentContent(eventType, xpp, res)) 6462 unknownContent(xpp); 6463 eventType = nextNoWhitespace(xpp); 6464 } 6465 next(xpp); 6466 parseElementClose(res); 6467 return res; 6468 } 6469 6470 protected boolean parseClaimBodySiteComponentContent(int eventType, XmlPullParser xpp, Claim.BodySiteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6471 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 6472 res.getSite().add(parseCodeableReference(xpp)); 6473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 6474 res.getSubSite().add(parseCodeableConcept(xpp)); 6475 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6476 return false; 6477 } 6478 return true; 6479 } 6480 6481 protected Claim.DetailComponent parseClaimDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6482 Claim.DetailComponent res = new Claim.DetailComponent(); 6483 parseElementAttributes(xpp, res); 6484 next(xpp); 6485 int eventType = nextNoWhitespace(xpp); 6486 while (eventType != XmlPullParser.END_TAG) { 6487 if (!parseClaimDetailComponentContent(eventType, xpp, res)) 6488 unknownContent(xpp); 6489 eventType = nextNoWhitespace(xpp); 6490 } 6491 next(xpp); 6492 parseElementClose(res); 6493 return res; 6494 } 6495 6496 protected boolean parseClaimDetailComponentContent(int eventType, XmlPullParser xpp, Claim.DetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6497 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6498 res.setSequenceElement(parsePositiveInt(xpp)); 6499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6500 res.getTraceNumber().add(parseIdentifier(xpp)); 6501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 6502 res.setRevenue(parseCodeableConcept(xpp)); 6503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6504 res.setCategory(parseCodeableConcept(xpp)); 6505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 6506 res.setProductOrService(parseCodeableConcept(xpp)); 6507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 6508 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 6509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 6510 res.getModifier().add(parseCodeableConcept(xpp)); 6511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 6512 res.getProgramCode().add(parseCodeableConcept(xpp)); 6513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 6514 res.setPatientPaid(parseMoney(xpp)); 6515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6516 res.setQuantity(parseQuantity(xpp)); 6517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6518 res.setUnitPrice(parseMoney(xpp)); 6519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6520 res.setFactorElement(parseDecimal(xpp)); 6521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 6522 res.setTax(parseMoney(xpp)); 6523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6524 res.setNet(parseMoney(xpp)); 6525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6526 res.getUdi().add(parseReference(xpp)); 6527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 6528 res.getSubDetail().add(parseClaimSubDetailComponent(xpp)); 6529 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6530 return false; 6531 } 6532 return true; 6533 } 6534 6535 protected Claim.SubDetailComponent parseClaimSubDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6536 Claim.SubDetailComponent res = new Claim.SubDetailComponent(); 6537 parseElementAttributes(xpp, res); 6538 next(xpp); 6539 int eventType = nextNoWhitespace(xpp); 6540 while (eventType != XmlPullParser.END_TAG) { 6541 if (!parseClaimSubDetailComponentContent(eventType, xpp, res)) 6542 unknownContent(xpp); 6543 eventType = nextNoWhitespace(xpp); 6544 } 6545 next(xpp); 6546 parseElementClose(res); 6547 return res; 6548 } 6549 6550 protected boolean parseClaimSubDetailComponentContent(int eventType, XmlPullParser xpp, Claim.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6551 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6552 res.setSequenceElement(parsePositiveInt(xpp)); 6553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6554 res.getTraceNumber().add(parseIdentifier(xpp)); 6555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 6556 res.setRevenue(parseCodeableConcept(xpp)); 6557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6558 res.setCategory(parseCodeableConcept(xpp)); 6559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 6560 res.setProductOrService(parseCodeableConcept(xpp)); 6561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 6562 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 6563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 6564 res.getModifier().add(parseCodeableConcept(xpp)); 6565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 6566 res.getProgramCode().add(parseCodeableConcept(xpp)); 6567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 6568 res.setPatientPaid(parseMoney(xpp)); 6569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6570 res.setQuantity(parseQuantity(xpp)); 6571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6572 res.setUnitPrice(parseMoney(xpp)); 6573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6574 res.setFactorElement(parseDecimal(xpp)); 6575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 6576 res.setTax(parseMoney(xpp)); 6577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6578 res.setNet(parseMoney(xpp)); 6579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6580 res.getUdi().add(parseReference(xpp)); 6581 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6582 return false; 6583 } 6584 return true; 6585 } 6586 6587 protected ClaimResponse parseClaimResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6588 ClaimResponse res = new ClaimResponse(); 6589 parseResourceAttributes(xpp, res); 6590 next(xpp); 6591 int eventType = nextNoWhitespace(xpp); 6592 while (eventType != XmlPullParser.END_TAG) { 6593 if (!parseClaimResponseContent(eventType, xpp, res)) 6594 unknownContent(xpp); 6595 eventType = nextNoWhitespace(xpp); 6596 } 6597 next(xpp); 6598 parseElementClose(res); 6599 return res; 6600 } 6601 6602 protected boolean parseClaimResponseContent(int eventType, XmlPullParser xpp, ClaimResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 6603 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6604 res.getIdentifier().add(parseIdentifier(xpp)); 6605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6606 res.getTraceNumber().add(parseIdentifier(xpp)); 6607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6608 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 6609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6610 res.setType(parseCodeableConcept(xpp)); 6611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 6612 res.setSubType(parseCodeableConcept(xpp)); 6613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 6614 res.setUseElement(parseEnumeration(xpp, Enumerations.Use.NULL, new Enumerations.UseEnumFactory())); 6615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6616 res.setPatient(parseReference(xpp)); 6617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 6618 res.setCreatedElement(parseDateTime(xpp)); 6619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 6620 res.setInsurer(parseReference(xpp)); 6621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestor")) { 6622 res.setRequestor(parseReference(xpp)); 6623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 6624 res.setRequest(parseReference(xpp)); 6625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 6626 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.ClaimProcessingCodes.NULL, new Enumerations.ClaimProcessingCodesEnumFactory())); 6627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decision")) { 6628 res.setDecision(parseCodeableConcept(xpp)); 6629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 6630 res.setDispositionElement(parseString(xpp)); 6631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 6632 res.setPreAuthRefElement(parseString(xpp)); 6633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthPeriod")) { 6634 res.setPreAuthPeriod(parsePeriod(xpp)); 6635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 6636 res.getEvent().add(parseClaimResponseEventComponent(xpp)); 6637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payeeType")) { 6638 res.setPayeeType(parseCodeableConcept(xpp)); 6639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 6640 res.getEncounter().add(parseReference(xpp)); 6641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisRelatedGroup")) { 6642 res.setDiagnosisRelatedGroup(parseCodeableConcept(xpp)); 6643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 6644 res.getItem().add(parseClaimResponseItemComponent(xpp)); 6645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 6646 res.getAddItem().add(parseClaimResponseAddedItemComponent(xpp)); 6647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6648 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp)); 6649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 6650 res.getTotal().add(parseClaimResponseTotalComponent(xpp)); 6651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payment")) { 6652 res.setPayment(parseClaimResponsePaymentComponent(xpp)); 6653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundsReserve")) { 6654 res.setFundsReserve(parseCodeableConcept(xpp)); 6655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("formCode")) { 6656 res.setFormCode(parseCodeableConcept(xpp)); 6657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 6658 res.setForm(parseAttachment(xpp)); 6659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 6660 res.getProcessNote().add(parseClaimResponseNoteComponent(xpp)); 6661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communicationRequest")) { 6662 res.getCommunicationRequest().add(parseReference(xpp)); 6663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 6664 res.getInsurance().add(parseClaimResponseInsuranceComponent(xpp)); 6665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 6666 res.getError().add(parseClaimResponseErrorComponent(xpp)); 6667 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 6668 return false; 6669 } 6670 return true; 6671 } 6672 6673 protected ClaimResponse.ClaimResponseEventComponent parseClaimResponseEventComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6674 ClaimResponse.ClaimResponseEventComponent res = new ClaimResponse.ClaimResponseEventComponent(); 6675 parseElementAttributes(xpp, res); 6676 next(xpp); 6677 int eventType = nextNoWhitespace(xpp); 6678 while (eventType != XmlPullParser.END_TAG) { 6679 if (!parseClaimResponseEventComponentContent(eventType, xpp, res)) 6680 unknownContent(xpp); 6681 eventType = nextNoWhitespace(xpp); 6682 } 6683 next(xpp); 6684 parseElementClose(res); 6685 return res; 6686 } 6687 6688 protected boolean parseClaimResponseEventComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.ClaimResponseEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6689 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6690 res.setType(parseCodeableConcept(xpp)); 6691 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 6692 res.setWhen(parseType("when", xpp)); 6693 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6694 return false; 6695 } 6696 return true; 6697 } 6698 6699 protected ClaimResponse.ItemComponent parseClaimResponseItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6700 ClaimResponse.ItemComponent res = new ClaimResponse.ItemComponent(); 6701 parseElementAttributes(xpp, res); 6702 next(xpp); 6703 int eventType = nextNoWhitespace(xpp); 6704 while (eventType != XmlPullParser.END_TAG) { 6705 if (!parseClaimResponseItemComponentContent(eventType, xpp, res)) 6706 unknownContent(xpp); 6707 eventType = nextNoWhitespace(xpp); 6708 } 6709 next(xpp); 6710 parseElementClose(res); 6711 return res; 6712 } 6713 6714 protected boolean parseClaimResponseItemComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6715 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("itemSequence")) { 6716 res.setItemSequenceElement(parsePositiveInt(xpp)); 6717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6718 res.getTraceNumber().add(parseIdentifier(xpp)); 6719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 6720 res.getNoteNumber().add(parsePositiveInt(xpp)); 6721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 6722 res.setReviewOutcome(parseClaimResponseReviewOutcomeComponent(xpp)); 6723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6724 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp)); 6725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 6726 res.getDetail().add(parseClaimResponseItemDetailComponent(xpp)); 6727 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6728 return false; 6729 } 6730 return true; 6731 } 6732 6733 protected ClaimResponse.ReviewOutcomeComponent parseClaimResponseReviewOutcomeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6734 ClaimResponse.ReviewOutcomeComponent res = new ClaimResponse.ReviewOutcomeComponent(); 6735 parseElementAttributes(xpp, res); 6736 next(xpp); 6737 int eventType = nextNoWhitespace(xpp); 6738 while (eventType != XmlPullParser.END_TAG) { 6739 if (!parseClaimResponseReviewOutcomeComponentContent(eventType, xpp, res)) 6740 unknownContent(xpp); 6741 eventType = nextNoWhitespace(xpp); 6742 } 6743 next(xpp); 6744 parseElementClose(res); 6745 return res; 6746 } 6747 6748 protected boolean parseClaimResponseReviewOutcomeComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.ReviewOutcomeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6749 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decision")) { 6750 res.setDecision(parseCodeableConcept(xpp)); 6751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6752 res.getReason().add(parseCodeableConcept(xpp)); 6753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 6754 res.setPreAuthRefElement(parseString(xpp)); 6755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthPeriod")) { 6756 res.setPreAuthPeriod(parsePeriod(xpp)); 6757 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6758 return false; 6759 } 6760 return true; 6761 } 6762 6763 protected ClaimResponse.AdjudicationComponent parseClaimResponseAdjudicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6764 ClaimResponse.AdjudicationComponent res = new ClaimResponse.AdjudicationComponent(); 6765 parseElementAttributes(xpp, res); 6766 next(xpp); 6767 int eventType = nextNoWhitespace(xpp); 6768 while (eventType != XmlPullParser.END_TAG) { 6769 if (!parseClaimResponseAdjudicationComponentContent(eventType, xpp, res)) 6770 unknownContent(xpp); 6771 eventType = nextNoWhitespace(xpp); 6772 } 6773 next(xpp); 6774 parseElementClose(res); 6775 return res; 6776 } 6777 6778 protected boolean parseClaimResponseAdjudicationComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.AdjudicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6779 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6780 res.setCategory(parseCodeableConcept(xpp)); 6781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 6782 res.setReason(parseCodeableConcept(xpp)); 6783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 6784 res.setAmount(parseMoney(xpp)); 6785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6786 res.setQuantity(parseQuantity(xpp)); 6787 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6788 return false; 6789 } 6790 return true; 6791 } 6792 6793 protected ClaimResponse.ItemDetailComponent parseClaimResponseItemDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6794 ClaimResponse.ItemDetailComponent res = new ClaimResponse.ItemDetailComponent(); 6795 parseElementAttributes(xpp, res); 6796 next(xpp); 6797 int eventType = nextNoWhitespace(xpp); 6798 while (eventType != XmlPullParser.END_TAG) { 6799 if (!parseClaimResponseItemDetailComponentContent(eventType, xpp, res)) 6800 unknownContent(xpp); 6801 eventType = nextNoWhitespace(xpp); 6802 } 6803 next(xpp); 6804 parseElementClose(res); 6805 return res; 6806 } 6807 6808 protected boolean parseClaimResponseItemDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.ItemDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6809 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detailSequence")) { 6810 res.setDetailSequenceElement(parsePositiveInt(xpp)); 6811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6812 res.getTraceNumber().add(parseIdentifier(xpp)); 6813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 6814 res.getNoteNumber().add(parsePositiveInt(xpp)); 6815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 6816 res.setReviewOutcome(parseClaimResponseReviewOutcomeComponent(xpp)); 6817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6818 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp)); 6819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 6820 res.getSubDetail().add(parseClaimResponseSubDetailComponent(xpp)); 6821 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6822 return false; 6823 } 6824 return true; 6825 } 6826 6827 protected ClaimResponse.SubDetailComponent parseClaimResponseSubDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6828 ClaimResponse.SubDetailComponent res = new ClaimResponse.SubDetailComponent(); 6829 parseElementAttributes(xpp, res); 6830 next(xpp); 6831 int eventType = nextNoWhitespace(xpp); 6832 while (eventType != XmlPullParser.END_TAG) { 6833 if (!parseClaimResponseSubDetailComponentContent(eventType, xpp, res)) 6834 unknownContent(xpp); 6835 eventType = nextNoWhitespace(xpp); 6836 } 6837 next(xpp); 6838 parseElementClose(res); 6839 return res; 6840 } 6841 6842 protected boolean parseClaimResponseSubDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6843 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetailSequence")) { 6844 res.setSubDetailSequenceElement(parsePositiveInt(xpp)); 6845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6846 res.getTraceNumber().add(parseIdentifier(xpp)); 6847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 6848 res.getNoteNumber().add(parsePositiveInt(xpp)); 6849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 6850 res.setReviewOutcome(parseClaimResponseReviewOutcomeComponent(xpp)); 6851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6852 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp)); 6853 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6854 return false; 6855 } 6856 return true; 6857 } 6858 6859 protected ClaimResponse.AddedItemComponent parseClaimResponseAddedItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6860 ClaimResponse.AddedItemComponent res = new ClaimResponse.AddedItemComponent(); 6861 parseElementAttributes(xpp, res); 6862 next(xpp); 6863 int eventType = nextNoWhitespace(xpp); 6864 while (eventType != XmlPullParser.END_TAG) { 6865 if (!parseClaimResponseAddedItemComponentContent(eventType, xpp, res)) 6866 unknownContent(xpp); 6867 eventType = nextNoWhitespace(xpp); 6868 } 6869 next(xpp); 6870 parseElementClose(res); 6871 return res; 6872 } 6873 6874 protected boolean parseClaimResponseAddedItemComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.AddedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6875 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("itemSequence")) { 6876 res.getItemSequence().add(parsePositiveInt(xpp)); 6877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detailSequence")) { 6878 res.getDetailSequence().add(parsePositiveInt(xpp)); 6879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subdetailSequence")) { 6880 res.getSubdetailSequence().add(parsePositiveInt(xpp)); 6881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6882 res.getTraceNumber().add(parseIdentifier(xpp)); 6883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 6884 res.getProvider().add(parseReference(xpp)); 6885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 6886 res.setRevenue(parseCodeableConcept(xpp)); 6887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 6888 res.setProductOrService(parseCodeableConcept(xpp)); 6889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 6890 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 6891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 6892 res.getRequest().add(parseReference(xpp)); 6893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 6894 res.getModifier().add(parseCodeableConcept(xpp)); 6895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 6896 res.getProgramCode().add(parseCodeableConcept(xpp)); 6897 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 6898 res.setServiced(parseType("serviced", xpp)); 6899 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 6900 res.setLocation(parseType("location", xpp)); 6901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6902 res.setQuantity(parseQuantity(xpp)); 6903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6904 res.setUnitPrice(parseMoney(xpp)); 6905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6906 res.setFactorElement(parseDecimal(xpp)); 6907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 6908 res.setTax(parseMoney(xpp)); 6909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6910 res.setNet(parseMoney(xpp)); 6911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 6912 res.getBodySite().add(parseClaimResponseBodySiteComponent(xpp)); 6913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 6914 res.getNoteNumber().add(parsePositiveInt(xpp)); 6915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 6916 res.setReviewOutcome(parseClaimResponseReviewOutcomeComponent(xpp)); 6917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6918 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp)); 6919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 6920 res.getDetail().add(parseClaimResponseAddedItemDetailComponent(xpp)); 6921 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6922 return false; 6923 } 6924 return true; 6925 } 6926 6927 protected ClaimResponse.BodySiteComponent parseClaimResponseBodySiteComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6928 ClaimResponse.BodySiteComponent res = new ClaimResponse.BodySiteComponent(); 6929 parseElementAttributes(xpp, res); 6930 next(xpp); 6931 int eventType = nextNoWhitespace(xpp); 6932 while (eventType != XmlPullParser.END_TAG) { 6933 if (!parseClaimResponseBodySiteComponentContent(eventType, xpp, res)) 6934 unknownContent(xpp); 6935 eventType = nextNoWhitespace(xpp); 6936 } 6937 next(xpp); 6938 parseElementClose(res); 6939 return res; 6940 } 6941 6942 protected boolean parseClaimResponseBodySiteComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.BodySiteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6943 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 6944 res.getSite().add(parseCodeableReference(xpp)); 6945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 6946 res.getSubSite().add(parseCodeableConcept(xpp)); 6947 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6948 return false; 6949 } 6950 return true; 6951 } 6952 6953 protected ClaimResponse.AddedItemDetailComponent parseClaimResponseAddedItemDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6954 ClaimResponse.AddedItemDetailComponent res = new ClaimResponse.AddedItemDetailComponent(); 6955 parseElementAttributes(xpp, res); 6956 next(xpp); 6957 int eventType = nextNoWhitespace(xpp); 6958 while (eventType != XmlPullParser.END_TAG) { 6959 if (!parseClaimResponseAddedItemDetailComponentContent(eventType, xpp, res)) 6960 unknownContent(xpp); 6961 eventType = nextNoWhitespace(xpp); 6962 } 6963 next(xpp); 6964 parseElementClose(res); 6965 return res; 6966 } 6967 6968 protected boolean parseClaimResponseAddedItemDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.AddedItemDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6969 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 6970 res.getTraceNumber().add(parseIdentifier(xpp)); 6971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 6972 res.setRevenue(parseCodeableConcept(xpp)); 6973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 6974 res.setProductOrService(parseCodeableConcept(xpp)); 6975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 6976 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 6977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 6978 res.getModifier().add(parseCodeableConcept(xpp)); 6979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6980 res.setQuantity(parseQuantity(xpp)); 6981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6982 res.setUnitPrice(parseMoney(xpp)); 6983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6984 res.setFactorElement(parseDecimal(xpp)); 6985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 6986 res.setTax(parseMoney(xpp)); 6987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6988 res.setNet(parseMoney(xpp)); 6989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 6990 res.getNoteNumber().add(parsePositiveInt(xpp)); 6991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 6992 res.setReviewOutcome(parseClaimResponseReviewOutcomeComponent(xpp)); 6993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 6994 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp)); 6995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 6996 res.getSubDetail().add(parseClaimResponseAddedItemSubDetailComponent(xpp)); 6997 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 6998 return false; 6999 } 7000 return true; 7001 } 7002 7003 protected ClaimResponse.AddedItemSubDetailComponent parseClaimResponseAddedItemSubDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7004 ClaimResponse.AddedItemSubDetailComponent res = new ClaimResponse.AddedItemSubDetailComponent(); 7005 parseElementAttributes(xpp, res); 7006 next(xpp); 7007 int eventType = nextNoWhitespace(xpp); 7008 while (eventType != XmlPullParser.END_TAG) { 7009 if (!parseClaimResponseAddedItemSubDetailComponentContent(eventType, xpp, res)) 7010 unknownContent(xpp); 7011 eventType = nextNoWhitespace(xpp); 7012 } 7013 next(xpp); 7014 parseElementClose(res); 7015 return res; 7016 } 7017 7018 protected boolean parseClaimResponseAddedItemSubDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.AddedItemSubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7019 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 7020 res.getTraceNumber().add(parseIdentifier(xpp)); 7021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 7022 res.setRevenue(parseCodeableConcept(xpp)); 7023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 7024 res.setProductOrService(parseCodeableConcept(xpp)); 7025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 7026 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 7027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 7028 res.getModifier().add(parseCodeableConcept(xpp)); 7029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 7030 res.setQuantity(parseQuantity(xpp)); 7031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 7032 res.setUnitPrice(parseMoney(xpp)); 7033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 7034 res.setFactorElement(parseDecimal(xpp)); 7035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 7036 res.setTax(parseMoney(xpp)); 7037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 7038 res.setNet(parseMoney(xpp)); 7039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 7040 res.getNoteNumber().add(parsePositiveInt(xpp)); 7041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 7042 res.setReviewOutcome(parseClaimResponseReviewOutcomeComponent(xpp)); 7043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 7044 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp)); 7045 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7046 return false; 7047 } 7048 return true; 7049 } 7050 7051 protected ClaimResponse.TotalComponent parseClaimResponseTotalComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7052 ClaimResponse.TotalComponent res = new ClaimResponse.TotalComponent(); 7053 parseElementAttributes(xpp, res); 7054 next(xpp); 7055 int eventType = nextNoWhitespace(xpp); 7056 while (eventType != XmlPullParser.END_TAG) { 7057 if (!parseClaimResponseTotalComponentContent(eventType, xpp, res)) 7058 unknownContent(xpp); 7059 eventType = nextNoWhitespace(xpp); 7060 } 7061 next(xpp); 7062 parseElementClose(res); 7063 return res; 7064 } 7065 7066 protected boolean parseClaimResponseTotalComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.TotalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7067 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 7068 res.setCategory(parseCodeableConcept(xpp)); 7069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 7070 res.setAmount(parseMoney(xpp)); 7071 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7072 return false; 7073 } 7074 return true; 7075 } 7076 7077 protected ClaimResponse.PaymentComponent parseClaimResponsePaymentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7078 ClaimResponse.PaymentComponent res = new ClaimResponse.PaymentComponent(); 7079 parseElementAttributes(xpp, res); 7080 next(xpp); 7081 int eventType = nextNoWhitespace(xpp); 7082 while (eventType != XmlPullParser.END_TAG) { 7083 if (!parseClaimResponsePaymentComponentContent(eventType, xpp, res)) 7084 unknownContent(xpp); 7085 eventType = nextNoWhitespace(xpp); 7086 } 7087 next(xpp); 7088 parseElementClose(res); 7089 return res; 7090 } 7091 7092 protected boolean parseClaimResponsePaymentComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.PaymentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7093 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7094 res.setType(parseCodeableConcept(xpp)); 7095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustment")) { 7096 res.setAdjustment(parseMoney(xpp)); 7097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustmentReason")) { 7098 res.setAdjustmentReason(parseCodeableConcept(xpp)); 7099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7100 res.setDateElement(parseDate(xpp)); 7101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 7102 res.setAmount(parseMoney(xpp)); 7103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7104 res.setIdentifier(parseIdentifier(xpp)); 7105 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7106 return false; 7107 } 7108 return true; 7109 } 7110 7111 protected ClaimResponse.NoteComponent parseClaimResponseNoteComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7112 ClaimResponse.NoteComponent res = new ClaimResponse.NoteComponent(); 7113 parseElementAttributes(xpp, res); 7114 next(xpp); 7115 int eventType = nextNoWhitespace(xpp); 7116 while (eventType != XmlPullParser.END_TAG) { 7117 if (!parseClaimResponseNoteComponentContent(eventType, xpp, res)) 7118 unknownContent(xpp); 7119 eventType = nextNoWhitespace(xpp); 7120 } 7121 next(xpp); 7122 parseElementClose(res); 7123 return res; 7124 } 7125 7126 protected boolean parseClaimResponseNoteComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.NoteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7127 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 7128 res.setNumberElement(parsePositiveInt(xpp)); 7129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7130 res.setType(parseCodeableConcept(xpp)); 7131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 7132 res.setTextElement(parseString(xpp)); 7133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 7134 res.setLanguage(parseCodeableConcept(xpp)); 7135 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7136 return false; 7137 } 7138 return true; 7139 } 7140 7141 protected ClaimResponse.InsuranceComponent parseClaimResponseInsuranceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7142 ClaimResponse.InsuranceComponent res = new ClaimResponse.InsuranceComponent(); 7143 parseElementAttributes(xpp, res); 7144 next(xpp); 7145 int eventType = nextNoWhitespace(xpp); 7146 while (eventType != XmlPullParser.END_TAG) { 7147 if (!parseClaimResponseInsuranceComponentContent(eventType, xpp, res)) 7148 unknownContent(xpp); 7149 eventType = nextNoWhitespace(xpp); 7150 } 7151 next(xpp); 7152 parseElementClose(res); 7153 return res; 7154 } 7155 7156 protected boolean parseClaimResponseInsuranceComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7157 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 7158 res.setSequenceElement(parsePositiveInt(xpp)); 7159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 7160 res.setFocalElement(parseBoolean(xpp)); 7161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 7162 res.setCoverage(parseReference(xpp)); 7163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 7164 res.setBusinessArrangementElement(parseString(xpp)); 7165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 7166 res.setClaimResponse(parseReference(xpp)); 7167 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7168 return false; 7169 } 7170 return true; 7171 } 7172 7173 protected ClaimResponse.ErrorComponent parseClaimResponseErrorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7174 ClaimResponse.ErrorComponent res = new ClaimResponse.ErrorComponent(); 7175 parseElementAttributes(xpp, res); 7176 next(xpp); 7177 int eventType = nextNoWhitespace(xpp); 7178 while (eventType != XmlPullParser.END_TAG) { 7179 if (!parseClaimResponseErrorComponentContent(eventType, xpp, res)) 7180 unknownContent(xpp); 7181 eventType = nextNoWhitespace(xpp); 7182 } 7183 next(xpp); 7184 parseElementClose(res); 7185 return res; 7186 } 7187 7188 protected boolean parseClaimResponseErrorComponentContent(int eventType, XmlPullParser xpp, ClaimResponse.ErrorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7189 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("itemSequence")) { 7190 res.setItemSequenceElement(parsePositiveInt(xpp)); 7191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detailSequence")) { 7192 res.setDetailSequenceElement(parsePositiveInt(xpp)); 7193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetailSequence")) { 7194 res.setSubDetailSequenceElement(parsePositiveInt(xpp)); 7195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7196 res.setCode(parseCodeableConcept(xpp)); 7197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 7198 res.getExpression().add(parseString(xpp)); 7199 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7200 return false; 7201 } 7202 return true; 7203 } 7204 7205 protected ClinicalImpression parseClinicalImpression(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7206 ClinicalImpression res = new ClinicalImpression(); 7207 parseResourceAttributes(xpp, res); 7208 next(xpp); 7209 int eventType = nextNoWhitespace(xpp); 7210 while (eventType != XmlPullParser.END_TAG) { 7211 if (!parseClinicalImpressionContent(eventType, xpp, res)) 7212 unknownContent(xpp); 7213 eventType = nextNoWhitespace(xpp); 7214 } 7215 next(xpp); 7216 parseElementClose(res); 7217 return res; 7218 } 7219 7220 protected boolean parseClinicalImpressionContent(int eventType, XmlPullParser xpp, ClinicalImpression res) throws XmlPullParserException, IOException, FHIRFormatError { 7221 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7222 res.getIdentifier().add(parseIdentifier(xpp)); 7223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7224 res.setStatusElement(parseEnumeration(xpp, Enumerations.EventStatus.NULL, new Enumerations.EventStatusEnumFactory())); 7225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 7226 res.setStatusReason(parseCodeableConcept(xpp)); 7227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7228 res.setDescriptionElement(parseString(xpp)); 7229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7230 res.setSubject(parseReference(xpp)); 7231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 7232 res.setEncounter(parseReference(xpp)); 7233 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 7234 res.setEffective(parseType("effective", xpp)); 7235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7236 res.setDateElement(parseDateTime(xpp)); 7237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 7238 res.setPerformer(parseReference(xpp)); 7239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previous")) { 7240 res.setPrevious(parseReference(xpp)); 7241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("problem")) { 7242 res.getProblem().add(parseReference(xpp)); 7243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("changePattern")) { 7244 res.setChangePattern(parseCodeableConcept(xpp)); 7245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 7246 res.getProtocol().add(parseUri(xpp)); 7247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 7248 res.setSummaryElement(parseString(xpp)); 7249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("finding")) { 7250 res.getFinding().add(parseClinicalImpressionFindingComponent(xpp)); 7251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prognosisCodeableConcept")) { 7252 res.getPrognosisCodeableConcept().add(parseCodeableConcept(xpp)); 7253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prognosisReference")) { 7254 res.getPrognosisReference().add(parseReference(xpp)); 7255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 7256 res.getSupportingInfo().add(parseReference(xpp)); 7257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 7258 res.getNote().add(parseAnnotation(xpp)); 7259 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 7260 return false; 7261 } 7262 return true; 7263 } 7264 7265 protected ClinicalImpression.ClinicalImpressionFindingComponent parseClinicalImpressionFindingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7266 ClinicalImpression.ClinicalImpressionFindingComponent res = new ClinicalImpression.ClinicalImpressionFindingComponent(); 7267 parseElementAttributes(xpp, res); 7268 next(xpp); 7269 int eventType = nextNoWhitespace(xpp); 7270 while (eventType != XmlPullParser.END_TAG) { 7271 if (!parseClinicalImpressionFindingComponentContent(eventType, xpp, res)) 7272 unknownContent(xpp); 7273 eventType = nextNoWhitespace(xpp); 7274 } 7275 next(xpp); 7276 parseElementClose(res); 7277 return res; 7278 } 7279 7280 protected boolean parseClinicalImpressionFindingComponentContent(int eventType, XmlPullParser xpp, ClinicalImpression.ClinicalImpressionFindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7281 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 7282 res.setItem(parseCodeableReference(xpp)); 7283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 7284 res.setBasisElement(parseString(xpp)); 7285 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7286 return false; 7287 } 7288 return true; 7289 } 7290 7291 protected ClinicalUseDefinition parseClinicalUseDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7292 ClinicalUseDefinition res = new ClinicalUseDefinition(); 7293 parseResourceAttributes(xpp, res); 7294 next(xpp); 7295 int eventType = nextNoWhitespace(xpp); 7296 while (eventType != XmlPullParser.END_TAG) { 7297 if (!parseClinicalUseDefinitionContent(eventType, xpp, res)) 7298 unknownContent(xpp); 7299 eventType = nextNoWhitespace(xpp); 7300 } 7301 next(xpp); 7302 parseElementClose(res); 7303 return res; 7304 } 7305 7306 protected boolean parseClinicalUseDefinitionContent(int eventType, XmlPullParser xpp, ClinicalUseDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 7307 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7308 res.getIdentifier().add(parseIdentifier(xpp)); 7309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7310 res.setTypeElement(parseEnumeration(xpp, ClinicalUseDefinition.ClinicalUseDefinitionType.NULL, new ClinicalUseDefinition.ClinicalUseDefinitionTypeEnumFactory())); 7311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 7312 res.getCategory().add(parseCodeableConcept(xpp)); 7313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7314 res.getSubject().add(parseReference(xpp)); 7315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7316 res.setStatus(parseCodeableConcept(xpp)); 7317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contraindication")) { 7318 res.setContraindication(parseClinicalUseDefinitionContraindicationComponent(xpp)); 7319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 7320 res.setIndication(parseClinicalUseDefinitionIndicationComponent(xpp)); 7321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 7322 res.setInteraction(parseClinicalUseDefinitionInteractionComponent(xpp)); 7323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 7324 res.getPopulation().add(parseReference(xpp)); 7325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 7326 res.getLibrary().add(parseCanonical(xpp)); 7327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("undesirableEffect")) { 7328 res.setUndesirableEffect(parseClinicalUseDefinitionUndesirableEffectComponent(xpp)); 7329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("warning")) { 7330 res.setWarning(parseClinicalUseDefinitionWarningComponent(xpp)); 7331 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 7332 return false; 7333 } 7334 return true; 7335 } 7336 7337 protected ClinicalUseDefinition.ClinicalUseDefinitionContraindicationComponent parseClinicalUseDefinitionContraindicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7338 ClinicalUseDefinition.ClinicalUseDefinitionContraindicationComponent res = new ClinicalUseDefinition.ClinicalUseDefinitionContraindicationComponent(); 7339 parseElementAttributes(xpp, res); 7340 next(xpp); 7341 int eventType = nextNoWhitespace(xpp); 7342 while (eventType != XmlPullParser.END_TAG) { 7343 if (!parseClinicalUseDefinitionContraindicationComponentContent(eventType, xpp, res)) 7344 unknownContent(xpp); 7345 eventType = nextNoWhitespace(xpp); 7346 } 7347 next(xpp); 7348 parseElementClose(res); 7349 return res; 7350 } 7351 7352 protected boolean parseClinicalUseDefinitionContraindicationComponentContent(int eventType, XmlPullParser xpp, ClinicalUseDefinition.ClinicalUseDefinitionContraindicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7353 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diseaseSymptomProcedure")) { 7354 res.setDiseaseSymptomProcedure(parseCodeableReference(xpp)); 7355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diseaseStatus")) { 7356 res.setDiseaseStatus(parseCodeableReference(xpp)); 7357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comorbidity")) { 7358 res.getComorbidity().add(parseCodeableReference(xpp)); 7359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 7360 res.getIndication().add(parseReference(xpp)); 7361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applicability")) { 7362 res.setApplicability(parseExpression(xpp)); 7363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("otherTherapy")) { 7364 res.getOtherTherapy().add(parseClinicalUseDefinitionContraindicationOtherTherapyComponent(xpp)); 7365 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7366 return false; 7367 } 7368 return true; 7369 } 7370 7371 protected ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent parseClinicalUseDefinitionContraindicationOtherTherapyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7372 ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent res = new ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent(); 7373 parseElementAttributes(xpp, res); 7374 next(xpp); 7375 int eventType = nextNoWhitespace(xpp); 7376 while (eventType != XmlPullParser.END_TAG) { 7377 if (!parseClinicalUseDefinitionContraindicationOtherTherapyComponentContent(eventType, xpp, res)) 7378 unknownContent(xpp); 7379 eventType = nextNoWhitespace(xpp); 7380 } 7381 next(xpp); 7382 parseElementClose(res); 7383 return res; 7384 } 7385 7386 protected boolean parseClinicalUseDefinitionContraindicationOtherTherapyComponentContent(int eventType, XmlPullParser xpp, ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7387 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationshipType")) { 7388 res.setRelationshipType(parseCodeableConcept(xpp)); 7389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("treatment")) { 7390 res.setTreatment(parseCodeableReference(xpp)); 7391 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7392 return false; 7393 } 7394 return true; 7395 } 7396 7397 protected ClinicalUseDefinition.ClinicalUseDefinitionIndicationComponent parseClinicalUseDefinitionIndicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7398 ClinicalUseDefinition.ClinicalUseDefinitionIndicationComponent res = new ClinicalUseDefinition.ClinicalUseDefinitionIndicationComponent(); 7399 parseElementAttributes(xpp, res); 7400 next(xpp); 7401 int eventType = nextNoWhitespace(xpp); 7402 while (eventType != XmlPullParser.END_TAG) { 7403 if (!parseClinicalUseDefinitionIndicationComponentContent(eventType, xpp, res)) 7404 unknownContent(xpp); 7405 eventType = nextNoWhitespace(xpp); 7406 } 7407 next(xpp); 7408 parseElementClose(res); 7409 return res; 7410 } 7411 7412 protected boolean parseClinicalUseDefinitionIndicationComponentContent(int eventType, XmlPullParser xpp, ClinicalUseDefinition.ClinicalUseDefinitionIndicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7413 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diseaseSymptomProcedure")) { 7414 res.setDiseaseSymptomProcedure(parseCodeableReference(xpp)); 7415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diseaseStatus")) { 7416 res.setDiseaseStatus(parseCodeableReference(xpp)); 7417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comorbidity")) { 7418 res.getComorbidity().add(parseCodeableReference(xpp)); 7419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedEffect")) { 7420 res.setIntendedEffect(parseCodeableReference(xpp)); 7421 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "duration")) { 7422 res.setDuration(parseType("duration", xpp)); 7423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("undesirableEffect")) { 7424 res.getUndesirableEffect().add(parseReference(xpp)); 7425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applicability")) { 7426 res.setApplicability(parseExpression(xpp)); 7427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("otherTherapy")) { 7428 res.getOtherTherapy().add(parseClinicalUseDefinitionContraindicationOtherTherapyComponent(xpp)); 7429 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7430 return false; 7431 } 7432 return true; 7433 } 7434 7435 protected ClinicalUseDefinition.ClinicalUseDefinitionInteractionComponent parseClinicalUseDefinitionInteractionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7436 ClinicalUseDefinition.ClinicalUseDefinitionInteractionComponent res = new ClinicalUseDefinition.ClinicalUseDefinitionInteractionComponent(); 7437 parseElementAttributes(xpp, res); 7438 next(xpp); 7439 int eventType = nextNoWhitespace(xpp); 7440 while (eventType != XmlPullParser.END_TAG) { 7441 if (!parseClinicalUseDefinitionInteractionComponentContent(eventType, xpp, res)) 7442 unknownContent(xpp); 7443 eventType = nextNoWhitespace(xpp); 7444 } 7445 next(xpp); 7446 parseElementClose(res); 7447 return res; 7448 } 7449 7450 protected boolean parseClinicalUseDefinitionInteractionComponentContent(int eventType, XmlPullParser xpp, ClinicalUseDefinition.ClinicalUseDefinitionInteractionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7451 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interactant")) { 7452 res.getInteractant().add(parseClinicalUseDefinitionInteractionInteractantComponent(xpp)); 7453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7454 res.setType(parseCodeableConcept(xpp)); 7455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effect")) { 7456 res.setEffect(parseCodeableReference(xpp)); 7457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("incidence")) { 7458 res.setIncidence(parseCodeableConcept(xpp)); 7459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("management")) { 7460 res.getManagement().add(parseCodeableConcept(xpp)); 7461 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7462 return false; 7463 } 7464 return true; 7465 } 7466 7467 protected ClinicalUseDefinition.ClinicalUseDefinitionInteractionInteractantComponent parseClinicalUseDefinitionInteractionInteractantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7468 ClinicalUseDefinition.ClinicalUseDefinitionInteractionInteractantComponent res = new ClinicalUseDefinition.ClinicalUseDefinitionInteractionInteractantComponent(); 7469 parseElementAttributes(xpp, res); 7470 next(xpp); 7471 int eventType = nextNoWhitespace(xpp); 7472 while (eventType != XmlPullParser.END_TAG) { 7473 if (!parseClinicalUseDefinitionInteractionInteractantComponentContent(eventType, xpp, res)) 7474 unknownContent(xpp); 7475 eventType = nextNoWhitespace(xpp); 7476 } 7477 next(xpp); 7478 parseElementClose(res); 7479 return res; 7480 } 7481 7482 protected boolean parseClinicalUseDefinitionInteractionInteractantComponentContent(int eventType, XmlPullParser xpp, ClinicalUseDefinition.ClinicalUseDefinitionInteractionInteractantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7483 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 7484 res.setItem(parseType("item", xpp)); 7485 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7486 return false; 7487 } 7488 return true; 7489 } 7490 7491 protected ClinicalUseDefinition.ClinicalUseDefinitionUndesirableEffectComponent parseClinicalUseDefinitionUndesirableEffectComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7492 ClinicalUseDefinition.ClinicalUseDefinitionUndesirableEffectComponent res = new ClinicalUseDefinition.ClinicalUseDefinitionUndesirableEffectComponent(); 7493 parseElementAttributes(xpp, res); 7494 next(xpp); 7495 int eventType = nextNoWhitespace(xpp); 7496 while (eventType != XmlPullParser.END_TAG) { 7497 if (!parseClinicalUseDefinitionUndesirableEffectComponentContent(eventType, xpp, res)) 7498 unknownContent(xpp); 7499 eventType = nextNoWhitespace(xpp); 7500 } 7501 next(xpp); 7502 parseElementClose(res); 7503 return res; 7504 } 7505 7506 protected boolean parseClinicalUseDefinitionUndesirableEffectComponentContent(int eventType, XmlPullParser xpp, ClinicalUseDefinition.ClinicalUseDefinitionUndesirableEffectComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7507 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("symptomConditionEffect")) { 7508 res.setSymptomConditionEffect(parseCodeableReference(xpp)); 7509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classification")) { 7510 res.setClassification(parseCodeableConcept(xpp)); 7511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequencyOfOccurrence")) { 7512 res.setFrequencyOfOccurrence(parseCodeableConcept(xpp)); 7513 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7514 return false; 7515 } 7516 return true; 7517 } 7518 7519 protected ClinicalUseDefinition.ClinicalUseDefinitionWarningComponent parseClinicalUseDefinitionWarningComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7520 ClinicalUseDefinition.ClinicalUseDefinitionWarningComponent res = new ClinicalUseDefinition.ClinicalUseDefinitionWarningComponent(); 7521 parseElementAttributes(xpp, res); 7522 next(xpp); 7523 int eventType = nextNoWhitespace(xpp); 7524 while (eventType != XmlPullParser.END_TAG) { 7525 if (!parseClinicalUseDefinitionWarningComponentContent(eventType, xpp, res)) 7526 unknownContent(xpp); 7527 eventType = nextNoWhitespace(xpp); 7528 } 7529 next(xpp); 7530 parseElementClose(res); 7531 return res; 7532 } 7533 7534 protected boolean parseClinicalUseDefinitionWarningComponentContent(int eventType, XmlPullParser xpp, ClinicalUseDefinition.ClinicalUseDefinitionWarningComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7535 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7536 res.setDescriptionElement(parseMarkdown(xpp)); 7537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7538 res.setCode(parseCodeableConcept(xpp)); 7539 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7540 return false; 7541 } 7542 return true; 7543 } 7544 7545 protected CodeSystem parseCodeSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7546 CodeSystem res = new CodeSystem(); 7547 parseResourceAttributes(xpp, res); 7548 next(xpp); 7549 int eventType = nextNoWhitespace(xpp); 7550 while (eventType != XmlPullParser.END_TAG) { 7551 if (!parseCodeSystemContent(eventType, xpp, res)) 7552 unknownContent(xpp); 7553 eventType = nextNoWhitespace(xpp); 7554 } 7555 next(xpp); 7556 parseElementClose(res); 7557 return res; 7558 } 7559 7560 protected boolean parseCodeSystemContent(int eventType, XmlPullParser xpp, CodeSystem res) throws XmlPullParserException, IOException, FHIRFormatError { 7561 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7562 res.setUrlElement(parseUri(xpp)); 7563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7564 res.getIdentifier().add(parseIdentifier(xpp)); 7565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7566 res.setVersionElement(parseString(xpp)); 7567 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 7568 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 7569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7570 res.setNameElement(parseString(xpp)); 7571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 7572 res.setTitleElement(parseString(xpp)); 7573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7574 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 7575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 7576 res.setExperimentalElement(parseBoolean(xpp)); 7577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7578 res.setDateElement(parseDateTime(xpp)); 7579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 7580 res.setPublisherElement(parseString(xpp)); 7581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7582 res.getContact().add(parseContactDetail(xpp)); 7583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7584 res.setDescriptionElement(parseMarkdown(xpp)); 7585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 7586 res.getUseContext().add(parseUsageContext(xpp)); 7587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 7588 res.getJurisdiction().add(parseCodeableConcept(xpp)); 7589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 7590 res.setPurposeElement(parseMarkdown(xpp)); 7591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 7592 res.setCopyrightElement(parseMarkdown(xpp)); 7593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 7594 res.setCopyrightLabelElement(parseString(xpp)); 7595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 7596 res.setApprovalDateElement(parseDate(xpp)); 7597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 7598 res.setLastReviewDateElement(parseDate(xpp)); 7599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 7600 res.setEffectivePeriod(parsePeriod(xpp)); 7601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 7602 res.getTopic().add(parseCodeableConcept(xpp)); 7603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 7604 res.getAuthor().add(parseContactDetail(xpp)); 7605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 7606 res.getEditor().add(parseContactDetail(xpp)); 7607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 7608 res.getReviewer().add(parseContactDetail(xpp)); 7609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 7610 res.getEndorser().add(parseContactDetail(xpp)); 7611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 7612 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 7613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caseSensitive")) { 7614 res.setCaseSensitiveElement(parseBoolean(xpp)); 7615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 7616 res.setValueSetElement(parseCanonical(xpp)); 7617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hierarchyMeaning")) { 7618 res.setHierarchyMeaningElement(parseEnumeration(xpp, CodeSystem.CodeSystemHierarchyMeaning.NULL, new CodeSystem.CodeSystemHierarchyMeaningEnumFactory())); 7619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compositional")) { 7620 res.setCompositionalElement(parseBoolean(xpp)); 7621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionNeeded")) { 7622 res.setVersionNeededElement(parseBoolean(xpp)); 7623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 7624 res.setContentElement(parseEnumeration(xpp, Enumerations.CodeSystemContentMode.NULL, new Enumerations.CodeSystemContentModeEnumFactory())); 7625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplements")) { 7626 res.setSupplementsElement(parseCanonical(xpp)); 7627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 7628 res.setCountElement(parseUnsignedInt(xpp)); 7629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 7630 res.getFilter().add(parseCodeSystemFilterComponent(xpp)); 7631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 7632 res.getProperty().add(parseCodeSystemPropertyComponent(xpp)); 7633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 7634 res.getConcept().add(parseCodeSystemConceptDefinitionComponent(xpp)); 7635 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 7636 return false; 7637 } 7638 return true; 7639 } 7640 7641 protected CodeSystem.CodeSystemFilterComponent parseCodeSystemFilterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7642 CodeSystem.CodeSystemFilterComponent res = new CodeSystem.CodeSystemFilterComponent(); 7643 parseElementAttributes(xpp, res); 7644 next(xpp); 7645 int eventType = nextNoWhitespace(xpp); 7646 while (eventType != XmlPullParser.END_TAG) { 7647 if (!parseCodeSystemFilterComponentContent(eventType, xpp, res)) 7648 unknownContent(xpp); 7649 eventType = nextNoWhitespace(xpp); 7650 } 7651 next(xpp); 7652 parseElementClose(res); 7653 return res; 7654 } 7655 7656 protected boolean parseCodeSystemFilterComponentContent(int eventType, XmlPullParser xpp, CodeSystem.CodeSystemFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7657 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7658 res.setCodeElement(parseCode(xpp)); 7659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7660 res.setDescriptionElement(parseString(xpp)); 7661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 7662 res.getOperator().add(parseEnumeration(xpp, Enumerations.FilterOperator.NULL, new Enumerations.FilterOperatorEnumFactory())); 7663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 7664 res.setValueElement(parseString(xpp)); 7665 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7666 return false; 7667 } 7668 return true; 7669 } 7670 7671 protected CodeSystem.PropertyComponent parseCodeSystemPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7672 CodeSystem.PropertyComponent res = new CodeSystem.PropertyComponent(); 7673 parseElementAttributes(xpp, res); 7674 next(xpp); 7675 int eventType = nextNoWhitespace(xpp); 7676 while (eventType != XmlPullParser.END_TAG) { 7677 if (!parseCodeSystemPropertyComponentContent(eventType, xpp, res)) 7678 unknownContent(xpp); 7679 eventType = nextNoWhitespace(xpp); 7680 } 7681 next(xpp); 7682 parseElementClose(res); 7683 return res; 7684 } 7685 7686 protected boolean parseCodeSystemPropertyComponentContent(int eventType, XmlPullParser xpp, CodeSystem.PropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7687 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7688 res.setCodeElement(parseCode(xpp)); 7689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 7690 res.setUriElement(parseUri(xpp)); 7691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7692 res.setDescriptionElement(parseString(xpp)); 7693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7694 res.setTypeElement(parseEnumeration(xpp, CodeSystem.PropertyType.NULL, new CodeSystem.PropertyTypeEnumFactory())); 7695 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7696 return false; 7697 } 7698 return true; 7699 } 7700 7701 protected CodeSystem.ConceptDefinitionComponent parseCodeSystemConceptDefinitionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7702 CodeSystem.ConceptDefinitionComponent res = new CodeSystem.ConceptDefinitionComponent(); 7703 parseElementAttributes(xpp, res); 7704 next(xpp); 7705 int eventType = nextNoWhitespace(xpp); 7706 while (eventType != XmlPullParser.END_TAG) { 7707 if (!parseCodeSystemConceptDefinitionComponentContent(eventType, xpp, res)) 7708 unknownContent(xpp); 7709 eventType = nextNoWhitespace(xpp); 7710 } 7711 next(xpp); 7712 parseElementClose(res); 7713 return res; 7714 } 7715 7716 protected boolean parseCodeSystemConceptDefinitionComponentContent(int eventType, XmlPullParser xpp, CodeSystem.ConceptDefinitionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7717 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7718 res.setCodeElement(parseCode(xpp)); 7719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 7720 res.setDisplayElement(parseString(xpp)); 7721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 7722 res.setDefinitionElement(parseString(xpp)); 7723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 7724 res.getDesignation().add(parseCodeSystemConceptDefinitionDesignationComponent(xpp)); 7725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 7726 res.getProperty().add(parseCodeSystemConceptPropertyComponent(xpp)); 7727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 7728 res.getConcept().add(parseCodeSystemConceptDefinitionComponent(xpp)); 7729 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7730 return false; 7731 } 7732 return true; 7733 } 7734 7735 protected CodeSystem.ConceptDefinitionDesignationComponent parseCodeSystemConceptDefinitionDesignationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7736 CodeSystem.ConceptDefinitionDesignationComponent res = new CodeSystem.ConceptDefinitionDesignationComponent(); 7737 parseElementAttributes(xpp, res); 7738 next(xpp); 7739 int eventType = nextNoWhitespace(xpp); 7740 while (eventType != XmlPullParser.END_TAG) { 7741 if (!parseCodeSystemConceptDefinitionDesignationComponentContent(eventType, xpp, res)) 7742 unknownContent(xpp); 7743 eventType = nextNoWhitespace(xpp); 7744 } 7745 next(xpp); 7746 parseElementClose(res); 7747 return res; 7748 } 7749 7750 protected boolean parseCodeSystemConceptDefinitionDesignationComponentContent(int eventType, XmlPullParser xpp, CodeSystem.ConceptDefinitionDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7751 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 7752 res.setLanguageElement(parseCode(xpp)); 7753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 7754 res.setUse(parseCoding(xpp)); 7755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalUse")) { 7756 res.getAdditionalUse().add(parseCoding(xpp)); 7757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 7758 res.setValueElement(parseString(xpp)); 7759 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7760 return false; 7761 } 7762 return true; 7763 } 7764 7765 protected CodeSystem.ConceptPropertyComponent parseCodeSystemConceptPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7766 CodeSystem.ConceptPropertyComponent res = new CodeSystem.ConceptPropertyComponent(); 7767 parseElementAttributes(xpp, res); 7768 next(xpp); 7769 int eventType = nextNoWhitespace(xpp); 7770 while (eventType != XmlPullParser.END_TAG) { 7771 if (!parseCodeSystemConceptPropertyComponentContent(eventType, xpp, res)) 7772 unknownContent(xpp); 7773 eventType = nextNoWhitespace(xpp); 7774 } 7775 next(xpp); 7776 parseElementClose(res); 7777 return res; 7778 } 7779 7780 protected boolean parseCodeSystemConceptPropertyComponentContent(int eventType, XmlPullParser xpp, CodeSystem.ConceptPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7781 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7782 res.setCodeElement(parseCode(xpp)); 7783 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 7784 res.setValue(parseType("value", xpp)); 7785 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7786 return false; 7787 } 7788 return true; 7789 } 7790 7791 protected Communication parseCommunication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7792 Communication res = new Communication(); 7793 parseResourceAttributes(xpp, res); 7794 next(xpp); 7795 int eventType = nextNoWhitespace(xpp); 7796 while (eventType != XmlPullParser.END_TAG) { 7797 if (!parseCommunicationContent(eventType, xpp, res)) 7798 unknownContent(xpp); 7799 eventType = nextNoWhitespace(xpp); 7800 } 7801 next(xpp); 7802 parseElementClose(res); 7803 return res; 7804 } 7805 7806 protected boolean parseCommunicationContent(int eventType, XmlPullParser xpp, Communication res) throws XmlPullParserException, IOException, FHIRFormatError { 7807 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7808 res.getIdentifier().add(parseIdentifier(xpp)); 7809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 7810 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 7811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 7812 res.getInstantiatesUri().add(parseUri(xpp)); 7813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 7814 res.getBasedOn().add(parseReference(xpp)); 7815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 7816 res.getPartOf().add(parseReference(xpp)); 7817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inResponseTo")) { 7818 res.getInResponseTo().add(parseReference(xpp)); 7819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7820 res.setStatusElement(parseEnumeration(xpp, Enumerations.EventStatus.NULL, new Enumerations.EventStatusEnumFactory())); 7821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 7822 res.setStatusReason(parseCodeableConcept(xpp)); 7823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 7824 res.getCategory().add(parseCodeableConcept(xpp)); 7825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 7826 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 7827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 7828 res.getMedium().add(parseCodeableConcept(xpp)); 7829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7830 res.setSubject(parseReference(xpp)); 7831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 7832 res.setTopic(parseCodeableConcept(xpp)); 7833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("about")) { 7834 res.getAbout().add(parseReference(xpp)); 7835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 7836 res.setEncounter(parseReference(xpp)); 7837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sent")) { 7838 res.setSentElement(parseDateTime(xpp)); 7839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("received")) { 7840 res.setReceivedElement(parseDateTime(xpp)); 7841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 7842 res.getRecipient().add(parseReference(xpp)); 7843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 7844 res.setSender(parseReference(xpp)); 7845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 7846 res.getReason().add(parseCodeableReference(xpp)); 7847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 7848 res.getPayload().add(parseCommunicationPayloadComponent(xpp)); 7849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 7850 res.getNote().add(parseAnnotation(xpp)); 7851 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 7852 return false; 7853 } 7854 return true; 7855 } 7856 7857 protected Communication.CommunicationPayloadComponent parseCommunicationPayloadComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7858 Communication.CommunicationPayloadComponent res = new Communication.CommunicationPayloadComponent(); 7859 parseElementAttributes(xpp, res); 7860 next(xpp); 7861 int eventType = nextNoWhitespace(xpp); 7862 while (eventType != XmlPullParser.END_TAG) { 7863 if (!parseCommunicationPayloadComponentContent(eventType, xpp, res)) 7864 unknownContent(xpp); 7865 eventType = nextNoWhitespace(xpp); 7866 } 7867 next(xpp); 7868 parseElementClose(res); 7869 return res; 7870 } 7871 7872 protected boolean parseCommunicationPayloadComponentContent(int eventType, XmlPullParser xpp, Communication.CommunicationPayloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7873 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 7874 res.setContent(parseType("content", xpp)); 7875 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7876 return false; 7877 } 7878 return true; 7879 } 7880 7881 protected CommunicationRequest parseCommunicationRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7882 CommunicationRequest res = new CommunicationRequest(); 7883 parseResourceAttributes(xpp, res); 7884 next(xpp); 7885 int eventType = nextNoWhitespace(xpp); 7886 while (eventType != XmlPullParser.END_TAG) { 7887 if (!parseCommunicationRequestContent(eventType, xpp, res)) 7888 unknownContent(xpp); 7889 eventType = nextNoWhitespace(xpp); 7890 } 7891 next(xpp); 7892 parseElementClose(res); 7893 return res; 7894 } 7895 7896 protected boolean parseCommunicationRequestContent(int eventType, XmlPullParser xpp, CommunicationRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 7897 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7898 res.getIdentifier().add(parseIdentifier(xpp)); 7899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 7900 res.getBasedOn().add(parseReference(xpp)); 7901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 7902 res.getReplaces().add(parseReference(xpp)); 7903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 7904 res.setGroupIdentifier(parseIdentifier(xpp)); 7905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7906 res.setStatusElement(parseEnumeration(xpp, Enumerations.RequestStatus.NULL, new Enumerations.RequestStatusEnumFactory())); 7907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 7908 res.setStatusReason(parseCodeableConcept(xpp)); 7909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 7910 res.setIntentElement(parseEnumeration(xpp, Enumerations.RequestIntent.NULL, new Enumerations.RequestIntentEnumFactory())); 7911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 7912 res.getCategory().add(parseCodeableConcept(xpp)); 7913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 7914 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 7915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 7916 res.setDoNotPerformElement(parseBoolean(xpp)); 7917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 7918 res.getMedium().add(parseCodeableConcept(xpp)); 7919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7920 res.setSubject(parseReference(xpp)); 7921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("about")) { 7922 res.getAbout().add(parseReference(xpp)); 7923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 7924 res.setEncounter(parseReference(xpp)); 7925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 7926 res.getPayload().add(parseCommunicationRequestPayloadComponent(xpp)); 7927 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 7928 res.setOccurrence(parseType("occurrence", xpp)); 7929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 7930 res.setAuthoredOnElement(parseDateTime(xpp)); 7931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 7932 res.setRequester(parseReference(xpp)); 7933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 7934 res.getRecipient().add(parseReference(xpp)); 7935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationProvider")) { 7936 res.getInformationProvider().add(parseReference(xpp)); 7937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 7938 res.getReason().add(parseCodeableReference(xpp)); 7939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 7940 res.getNote().add(parseAnnotation(xpp)); 7941 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 7942 return false; 7943 } 7944 return true; 7945 } 7946 7947 protected CommunicationRequest.CommunicationRequestPayloadComponent parseCommunicationRequestPayloadComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7948 CommunicationRequest.CommunicationRequestPayloadComponent res = new CommunicationRequest.CommunicationRequestPayloadComponent(); 7949 parseElementAttributes(xpp, res); 7950 next(xpp); 7951 int eventType = nextNoWhitespace(xpp); 7952 while (eventType != XmlPullParser.END_TAG) { 7953 if (!parseCommunicationRequestPayloadComponentContent(eventType, xpp, res)) 7954 unknownContent(xpp); 7955 eventType = nextNoWhitespace(xpp); 7956 } 7957 next(xpp); 7958 parseElementClose(res); 7959 return res; 7960 } 7961 7962 protected boolean parseCommunicationRequestPayloadComponentContent(int eventType, XmlPullParser xpp, CommunicationRequest.CommunicationRequestPayloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7963 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 7964 res.setContent(parseType("content", xpp)); 7965 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 7966 return false; 7967 } 7968 return true; 7969 } 7970 7971 protected CompartmentDefinition parseCompartmentDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7972 CompartmentDefinition res = new CompartmentDefinition(); 7973 parseResourceAttributes(xpp, res); 7974 next(xpp); 7975 int eventType = nextNoWhitespace(xpp); 7976 while (eventType != XmlPullParser.END_TAG) { 7977 if (!parseCompartmentDefinitionContent(eventType, xpp, res)) 7978 unknownContent(xpp); 7979 eventType = nextNoWhitespace(xpp); 7980 } 7981 next(xpp); 7982 parseElementClose(res); 7983 return res; 7984 } 7985 7986 protected boolean parseCompartmentDefinitionContent(int eventType, XmlPullParser xpp, CompartmentDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 7987 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7988 res.setUrlElement(parseUri(xpp)); 7989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7990 res.setVersionElement(parseString(xpp)); 7991 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 7992 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 7993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7994 res.setNameElement(parseString(xpp)); 7995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 7996 res.setTitleElement(parseString(xpp)); 7997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7998 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 7999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 8000 res.setExperimentalElement(parseBoolean(xpp)); 8001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8002 res.setDateElement(parseDateTime(xpp)); 8003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 8004 res.setPublisherElement(parseString(xpp)); 8005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 8006 res.getContact().add(parseContactDetail(xpp)); 8007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8008 res.setDescriptionElement(parseMarkdown(xpp)); 8009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 8010 res.getUseContext().add(parseUsageContext(xpp)); 8011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 8012 res.setPurposeElement(parseMarkdown(xpp)); 8013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8014 res.setCodeElement(parseEnumeration(xpp, Enumerations.CompartmentType.NULL, new Enumerations.CompartmentTypeEnumFactory())); 8015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 8016 res.setSearchElement(parseBoolean(xpp)); 8017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 8018 res.getResource().add(parseCompartmentDefinitionResourceComponent(xpp)); 8019 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 8020 return false; 8021 } 8022 return true; 8023 } 8024 8025 protected CompartmentDefinition.CompartmentDefinitionResourceComponent parseCompartmentDefinitionResourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8026 CompartmentDefinition.CompartmentDefinitionResourceComponent res = new CompartmentDefinition.CompartmentDefinitionResourceComponent(); 8027 parseElementAttributes(xpp, res); 8028 next(xpp); 8029 int eventType = nextNoWhitespace(xpp); 8030 while (eventType != XmlPullParser.END_TAG) { 8031 if (!parseCompartmentDefinitionResourceComponentContent(eventType, xpp, res)) 8032 unknownContent(xpp); 8033 eventType = nextNoWhitespace(xpp); 8034 } 8035 next(xpp); 8036 parseElementClose(res); 8037 return res; 8038 } 8039 8040 protected boolean parseCompartmentDefinitionResourceComponentContent(int eventType, XmlPullParser xpp, CompartmentDefinition.CompartmentDefinitionResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8041 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8042 res.setCodeElement(parseCode(xpp)); 8043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 8044 res.getParam().add(parseString(xpp)); 8045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 8046 res.setDocumentationElement(parseString(xpp)); 8047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("startParam")) { 8048 res.setStartParamElement(parseUri(xpp)); 8049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endParam")) { 8050 res.setEndParamElement(parseUri(xpp)); 8051 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8052 return false; 8053 } 8054 return true; 8055 } 8056 8057 protected Composition parseComposition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8058 Composition res = new Composition(); 8059 parseResourceAttributes(xpp, res); 8060 next(xpp); 8061 int eventType = nextNoWhitespace(xpp); 8062 while (eventType != XmlPullParser.END_TAG) { 8063 if (!parseCompositionContent(eventType, xpp, res)) 8064 unknownContent(xpp); 8065 eventType = nextNoWhitespace(xpp); 8066 } 8067 next(xpp); 8068 parseElementClose(res); 8069 return res; 8070 } 8071 8072 protected boolean parseCompositionContent(int eventType, XmlPullParser xpp, Composition res) throws XmlPullParserException, IOException, FHIRFormatError { 8073 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 8074 res.setUrlElement(parseUri(xpp)); 8075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8076 res.getIdentifier().add(parseIdentifier(xpp)); 8077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8078 res.setVersionElement(parseString(xpp)); 8079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8080 res.setStatusElement(parseEnumeration(xpp, Enumerations.CompositionStatus.NULL, new Enumerations.CompositionStatusEnumFactory())); 8081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8082 res.setType(parseCodeableConcept(xpp)); 8083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8084 res.getCategory().add(parseCodeableConcept(xpp)); 8085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8086 res.getSubject().add(parseReference(xpp)); 8087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8088 res.setEncounter(parseReference(xpp)); 8089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8090 res.setDateElement(parseDateTime(xpp)); 8091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 8092 res.getUseContext().add(parseUsageContext(xpp)); 8093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 8094 res.getAuthor().add(parseReference(xpp)); 8095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8096 res.setNameElement(parseString(xpp)); 8097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 8098 res.setTitleElement(parseString(xpp)); 8099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8100 res.getNote().add(parseAnnotation(xpp)); 8101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attester")) { 8102 res.getAttester().add(parseCompositionAttesterComponent(xpp)); 8103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 8104 res.setCustodian(parseReference(xpp)); 8105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 8106 res.getRelatesTo().add(parseRelatedArtifact(xpp)); 8107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 8108 res.getEvent().add(parseCompositionEventComponent(xpp)); 8109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 8110 res.getSection().add(parseCompositionSectionComponent(xpp)); 8111 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 8112 return false; 8113 } 8114 return true; 8115 } 8116 8117 protected Composition.CompositionAttesterComponent parseCompositionAttesterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8118 Composition.CompositionAttesterComponent res = new Composition.CompositionAttesterComponent(); 8119 parseElementAttributes(xpp, res); 8120 next(xpp); 8121 int eventType = nextNoWhitespace(xpp); 8122 while (eventType != XmlPullParser.END_TAG) { 8123 if (!parseCompositionAttesterComponentContent(eventType, xpp, res)) 8124 unknownContent(xpp); 8125 eventType = nextNoWhitespace(xpp); 8126 } 8127 next(xpp); 8128 parseElementClose(res); 8129 return res; 8130 } 8131 8132 protected boolean parseCompositionAttesterComponentContent(int eventType, XmlPullParser xpp, Composition.CompositionAttesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8133 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 8134 res.setMode(parseCodeableConcept(xpp)); 8135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 8136 res.setTimeElement(parseDateTime(xpp)); 8137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 8138 res.setParty(parseReference(xpp)); 8139 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8140 return false; 8141 } 8142 return true; 8143 } 8144 8145 protected Composition.CompositionEventComponent parseCompositionEventComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8146 Composition.CompositionEventComponent res = new Composition.CompositionEventComponent(); 8147 parseElementAttributes(xpp, res); 8148 next(xpp); 8149 int eventType = nextNoWhitespace(xpp); 8150 while (eventType != XmlPullParser.END_TAG) { 8151 if (!parseCompositionEventComponentContent(eventType, xpp, res)) 8152 unknownContent(xpp); 8153 eventType = nextNoWhitespace(xpp); 8154 } 8155 next(xpp); 8156 parseElementClose(res); 8157 return res; 8158 } 8159 8160 protected boolean parseCompositionEventComponentContent(int eventType, XmlPullParser xpp, Composition.CompositionEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8161 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8162 res.setPeriod(parsePeriod(xpp)); 8163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 8164 res.getDetail().add(parseCodeableReference(xpp)); 8165 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8166 return false; 8167 } 8168 return true; 8169 } 8170 8171 protected Composition.SectionComponent parseCompositionSectionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8172 Composition.SectionComponent res = new Composition.SectionComponent(); 8173 parseElementAttributes(xpp, res); 8174 next(xpp); 8175 int eventType = nextNoWhitespace(xpp); 8176 while (eventType != XmlPullParser.END_TAG) { 8177 if (!parseCompositionSectionComponentContent(eventType, xpp, res)) 8178 unknownContent(xpp); 8179 eventType = nextNoWhitespace(xpp); 8180 } 8181 next(xpp); 8182 parseElementClose(res); 8183 return res; 8184 } 8185 8186 protected boolean parseCompositionSectionComponentContent(int eventType, XmlPullParser xpp, Composition.SectionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8187 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 8188 res.setTitleElement(parseString(xpp)); 8189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8190 res.setCode(parseCodeableConcept(xpp)); 8191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 8192 res.getAuthor().add(parseReference(xpp)); 8193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 8194 res.setFocus(parseReference(xpp)); 8195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8196 res.setText(parseNarrative(xpp)); 8197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 8198 res.setOrderedBy(parseCodeableConcept(xpp)); 8199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 8200 res.getEntry().add(parseReference(xpp)); 8201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 8202 res.setEmptyReason(parseCodeableConcept(xpp)); 8203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 8204 res.getSection().add(parseCompositionSectionComponent(xpp)); 8205 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8206 return false; 8207 } 8208 return true; 8209 } 8210 8211 protected ConceptMap parseConceptMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8212 ConceptMap res = new ConceptMap(); 8213 parseResourceAttributes(xpp, res); 8214 next(xpp); 8215 int eventType = nextNoWhitespace(xpp); 8216 while (eventType != XmlPullParser.END_TAG) { 8217 if (!parseConceptMapContent(eventType, xpp, res)) 8218 unknownContent(xpp); 8219 eventType = nextNoWhitespace(xpp); 8220 } 8221 next(xpp); 8222 parseElementClose(res); 8223 return res; 8224 } 8225 8226 protected boolean parseConceptMapContent(int eventType, XmlPullParser xpp, ConceptMap res) throws XmlPullParserException, IOException, FHIRFormatError { 8227 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 8228 res.setUrlElement(parseUri(xpp)); 8229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8230 res.getIdentifier().add(parseIdentifier(xpp)); 8231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8232 res.setVersionElement(parseString(xpp)); 8233 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 8234 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 8235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8236 res.setNameElement(parseString(xpp)); 8237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 8238 res.setTitleElement(parseString(xpp)); 8239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8240 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 8241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 8242 res.setExperimentalElement(parseBoolean(xpp)); 8243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8244 res.setDateElement(parseDateTime(xpp)); 8245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 8246 res.setPublisherElement(parseString(xpp)); 8247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 8248 res.getContact().add(parseContactDetail(xpp)); 8249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8250 res.setDescriptionElement(parseMarkdown(xpp)); 8251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 8252 res.getUseContext().add(parseUsageContext(xpp)); 8253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 8254 res.getJurisdiction().add(parseCodeableConcept(xpp)); 8255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 8256 res.setPurposeElement(parseMarkdown(xpp)); 8257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 8258 res.setCopyrightElement(parseMarkdown(xpp)); 8259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 8260 res.setCopyrightLabelElement(parseString(xpp)); 8261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 8262 res.setApprovalDateElement(parseDate(xpp)); 8263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 8264 res.setLastReviewDateElement(parseDate(xpp)); 8265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 8266 res.setEffectivePeriod(parsePeriod(xpp)); 8267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 8268 res.getTopic().add(parseCodeableConcept(xpp)); 8269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 8270 res.getAuthor().add(parseContactDetail(xpp)); 8271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 8272 res.getEditor().add(parseContactDetail(xpp)); 8273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 8274 res.getReviewer().add(parseContactDetail(xpp)); 8275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 8276 res.getEndorser().add(parseContactDetail(xpp)); 8277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 8278 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 8279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 8280 res.getProperty().add(parseConceptMapPropertyComponent(xpp)); 8281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalAttribute")) { 8282 res.getAdditionalAttribute().add(parseConceptMapAdditionalAttributeComponent(xpp)); 8283 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "sourceScope")) { 8284 res.setSourceScope(parseType("sourceScope", xpp)); 8285 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "targetScope")) { 8286 res.setTargetScope(parseType("targetScope", xpp)); 8287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 8288 res.getGroup().add(parseConceptMapGroupComponent(xpp)); 8289 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 8290 return false; 8291 } 8292 return true; 8293 } 8294 8295 protected ConceptMap.PropertyComponent parseConceptMapPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8296 ConceptMap.PropertyComponent res = new ConceptMap.PropertyComponent(); 8297 parseElementAttributes(xpp, res); 8298 next(xpp); 8299 int eventType = nextNoWhitespace(xpp); 8300 while (eventType != XmlPullParser.END_TAG) { 8301 if (!parseConceptMapPropertyComponentContent(eventType, xpp, res)) 8302 unknownContent(xpp); 8303 eventType = nextNoWhitespace(xpp); 8304 } 8305 next(xpp); 8306 parseElementClose(res); 8307 return res; 8308 } 8309 8310 protected boolean parseConceptMapPropertyComponentContent(int eventType, XmlPullParser xpp, ConceptMap.PropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8311 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8312 res.setCodeElement(parseCode(xpp)); 8313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 8314 res.setUriElement(parseUri(xpp)); 8315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8316 res.setDescriptionElement(parseString(xpp)); 8317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8318 res.setTypeElement(parseEnumeration(xpp, ConceptMap.ConceptMapPropertyType.NULL, new ConceptMap.ConceptMapPropertyTypeEnumFactory())); 8319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 8320 res.setSystemElement(parseCanonical(xpp)); 8321 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8322 return false; 8323 } 8324 return true; 8325 } 8326 8327 protected ConceptMap.AdditionalAttributeComponent parseConceptMapAdditionalAttributeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8328 ConceptMap.AdditionalAttributeComponent res = new ConceptMap.AdditionalAttributeComponent(); 8329 parseElementAttributes(xpp, res); 8330 next(xpp); 8331 int eventType = nextNoWhitespace(xpp); 8332 while (eventType != XmlPullParser.END_TAG) { 8333 if (!parseConceptMapAdditionalAttributeComponentContent(eventType, xpp, res)) 8334 unknownContent(xpp); 8335 eventType = nextNoWhitespace(xpp); 8336 } 8337 next(xpp); 8338 parseElementClose(res); 8339 return res; 8340 } 8341 8342 protected boolean parseConceptMapAdditionalAttributeComponentContent(int eventType, XmlPullParser xpp, ConceptMap.AdditionalAttributeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8343 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8344 res.setCodeElement(parseCode(xpp)); 8345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 8346 res.setUriElement(parseUri(xpp)); 8347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8348 res.setDescriptionElement(parseString(xpp)); 8349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8350 res.setTypeElement(parseEnumeration(xpp, ConceptMap.ConceptMapAttributeType.NULL, new ConceptMap.ConceptMapAttributeTypeEnumFactory())); 8351 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8352 return false; 8353 } 8354 return true; 8355 } 8356 8357 protected ConceptMap.ConceptMapGroupComponent parseConceptMapGroupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8358 ConceptMap.ConceptMapGroupComponent res = new ConceptMap.ConceptMapGroupComponent(); 8359 parseElementAttributes(xpp, res); 8360 next(xpp); 8361 int eventType = nextNoWhitespace(xpp); 8362 while (eventType != XmlPullParser.END_TAG) { 8363 if (!parseConceptMapGroupComponentContent(eventType, xpp, res)) 8364 unknownContent(xpp); 8365 eventType = nextNoWhitespace(xpp); 8366 } 8367 next(xpp); 8368 parseElementClose(res); 8369 return res; 8370 } 8371 8372 protected boolean parseConceptMapGroupComponentContent(int eventType, XmlPullParser xpp, ConceptMap.ConceptMapGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8373 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 8374 res.setSourceElement(parseCanonical(xpp)); 8375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 8376 res.setTargetElement(parseCanonical(xpp)); 8377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 8378 res.getElement().add(parseConceptMapSourceElementComponent(xpp)); 8379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unmapped")) { 8380 res.setUnmapped(parseConceptMapGroupUnmappedComponent(xpp)); 8381 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8382 return false; 8383 } 8384 return true; 8385 } 8386 8387 protected ConceptMap.SourceElementComponent parseConceptMapSourceElementComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8388 ConceptMap.SourceElementComponent res = new ConceptMap.SourceElementComponent(); 8389 parseElementAttributes(xpp, res); 8390 next(xpp); 8391 int eventType = nextNoWhitespace(xpp); 8392 while (eventType != XmlPullParser.END_TAG) { 8393 if (!parseConceptMapSourceElementComponentContent(eventType, xpp, res)) 8394 unknownContent(xpp); 8395 eventType = nextNoWhitespace(xpp); 8396 } 8397 next(xpp); 8398 parseElementClose(res); 8399 return res; 8400 } 8401 8402 protected boolean parseConceptMapSourceElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap.SourceElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8403 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8404 res.setCodeElement(parseCode(xpp)); 8405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 8406 res.setDisplayElement(parseString(xpp)); 8407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 8408 res.setValueSetElement(parseCanonical(xpp)); 8409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noMap")) { 8410 res.setNoMapElement(parseBoolean(xpp)); 8411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 8412 res.getTarget().add(parseConceptMapTargetElementComponent(xpp)); 8413 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8414 return false; 8415 } 8416 return true; 8417 } 8418 8419 protected ConceptMap.TargetElementComponent parseConceptMapTargetElementComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8420 ConceptMap.TargetElementComponent res = new ConceptMap.TargetElementComponent(); 8421 parseElementAttributes(xpp, res); 8422 next(xpp); 8423 int eventType = nextNoWhitespace(xpp); 8424 while (eventType != XmlPullParser.END_TAG) { 8425 if (!parseConceptMapTargetElementComponentContent(eventType, xpp, res)) 8426 unknownContent(xpp); 8427 eventType = nextNoWhitespace(xpp); 8428 } 8429 next(xpp); 8430 parseElementClose(res); 8431 return res; 8432 } 8433 8434 protected boolean parseConceptMapTargetElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap.TargetElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8435 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8436 res.setCodeElement(parseCode(xpp)); 8437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 8438 res.setDisplayElement(parseString(xpp)); 8439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 8440 res.setValueSetElement(parseCanonical(xpp)); 8441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 8442 res.setRelationshipElement(parseEnumeration(xpp, Enumerations.ConceptMapRelationship.NULL, new Enumerations.ConceptMapRelationshipEnumFactory())); 8443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 8444 res.setCommentElement(parseString(xpp)); 8445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 8446 res.getProperty().add(parseConceptMapMappingPropertyComponent(xpp)); 8447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependsOn")) { 8448 res.getDependsOn().add(parseConceptMapOtherElementComponent(xpp)); 8449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 8450 res.getProduct().add(parseConceptMapOtherElementComponent(xpp)); 8451 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8452 return false; 8453 } 8454 return true; 8455 } 8456 8457 protected ConceptMap.MappingPropertyComponent parseConceptMapMappingPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8458 ConceptMap.MappingPropertyComponent res = new ConceptMap.MappingPropertyComponent(); 8459 parseElementAttributes(xpp, res); 8460 next(xpp); 8461 int eventType = nextNoWhitespace(xpp); 8462 while (eventType != XmlPullParser.END_TAG) { 8463 if (!parseConceptMapMappingPropertyComponentContent(eventType, xpp, res)) 8464 unknownContent(xpp); 8465 eventType = nextNoWhitespace(xpp); 8466 } 8467 next(xpp); 8468 parseElementClose(res); 8469 return res; 8470 } 8471 8472 protected boolean parseConceptMapMappingPropertyComponentContent(int eventType, XmlPullParser xpp, ConceptMap.MappingPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8473 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8474 res.setCodeElement(parseCode(xpp)); 8475 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 8476 res.setValue(parseType("value", xpp)); 8477 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8478 return false; 8479 } 8480 return true; 8481 } 8482 8483 protected ConceptMap.OtherElementComponent parseConceptMapOtherElementComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8484 ConceptMap.OtherElementComponent res = new ConceptMap.OtherElementComponent(); 8485 parseElementAttributes(xpp, res); 8486 next(xpp); 8487 int eventType = nextNoWhitespace(xpp); 8488 while (eventType != XmlPullParser.END_TAG) { 8489 if (!parseConceptMapOtherElementComponentContent(eventType, xpp, res)) 8490 unknownContent(xpp); 8491 eventType = nextNoWhitespace(xpp); 8492 } 8493 next(xpp); 8494 parseElementClose(res); 8495 return res; 8496 } 8497 8498 protected boolean parseConceptMapOtherElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap.OtherElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8499 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attribute")) { 8500 res.setAttributeElement(parseCode(xpp)); 8501 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 8502 res.setValue(parseType("value", xpp)); 8503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 8504 res.setValueSetElement(parseCanonical(xpp)); 8505 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8506 return false; 8507 } 8508 return true; 8509 } 8510 8511 protected ConceptMap.ConceptMapGroupUnmappedComponent parseConceptMapGroupUnmappedComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8512 ConceptMap.ConceptMapGroupUnmappedComponent res = new ConceptMap.ConceptMapGroupUnmappedComponent(); 8513 parseElementAttributes(xpp, res); 8514 next(xpp); 8515 int eventType = nextNoWhitespace(xpp); 8516 while (eventType != XmlPullParser.END_TAG) { 8517 if (!parseConceptMapGroupUnmappedComponentContent(eventType, xpp, res)) 8518 unknownContent(xpp); 8519 eventType = nextNoWhitespace(xpp); 8520 } 8521 next(xpp); 8522 parseElementClose(res); 8523 return res; 8524 } 8525 8526 protected boolean parseConceptMapGroupUnmappedComponentContent(int eventType, XmlPullParser xpp, ConceptMap.ConceptMapGroupUnmappedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8527 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 8528 res.setModeElement(parseEnumeration(xpp, ConceptMap.ConceptMapGroupUnmappedMode.NULL, new ConceptMap.ConceptMapGroupUnmappedModeEnumFactory())); 8529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8530 res.setCodeElement(parseCode(xpp)); 8531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 8532 res.setDisplayElement(parseString(xpp)); 8533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 8534 res.setValueSetElement(parseCanonical(xpp)); 8535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 8536 res.setRelationshipElement(parseEnumeration(xpp, Enumerations.ConceptMapRelationship.NULL, new Enumerations.ConceptMapRelationshipEnumFactory())); 8537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("otherMap")) { 8538 res.setOtherMapElement(parseCanonical(xpp)); 8539 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8540 return false; 8541 } 8542 return true; 8543 } 8544 8545 protected Condition parseCondition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8546 Condition res = new Condition(); 8547 parseResourceAttributes(xpp, res); 8548 next(xpp); 8549 int eventType = nextNoWhitespace(xpp); 8550 while (eventType != XmlPullParser.END_TAG) { 8551 if (!parseConditionContent(eventType, xpp, res)) 8552 unknownContent(xpp); 8553 eventType = nextNoWhitespace(xpp); 8554 } 8555 next(xpp); 8556 parseElementClose(res); 8557 return res; 8558 } 8559 8560 protected boolean parseConditionContent(int eventType, XmlPullParser xpp, Condition res) throws XmlPullParserException, IOException, FHIRFormatError { 8561 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8562 res.getIdentifier().add(parseIdentifier(xpp)); 8563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalStatus")) { 8564 res.setClinicalStatus(parseCodeableConcept(xpp)); 8565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationStatus")) { 8566 res.setVerificationStatus(parseCodeableConcept(xpp)); 8567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8568 res.getCategory().add(parseCodeableConcept(xpp)); 8569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 8570 res.setSeverity(parseCodeableConcept(xpp)); 8571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8572 res.setCode(parseCodeableConcept(xpp)); 8573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 8574 res.getBodySite().add(parseCodeableConcept(xpp)); 8575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8576 res.setSubject(parseReference(xpp)); 8577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8578 res.setEncounter(parseReference(xpp)); 8579 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 8580 res.setOnset(parseType("onset", xpp)); 8581 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "abatement")) { 8582 res.setAbatement(parseType("abatement", xpp)); 8583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedDate")) { 8584 res.setRecordedDateElement(parseDateTime(xpp)); 8585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 8586 res.getParticipant().add(parseConditionParticipantComponent(xpp)); 8587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stage")) { 8588 res.getStage().add(parseConditionStageComponent(xpp)); 8589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidence")) { 8590 res.getEvidence().add(parseCodeableReference(xpp)); 8591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8592 res.getNote().add(parseAnnotation(xpp)); 8593 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 8594 return false; 8595 } 8596 return true; 8597 } 8598 8599 protected Condition.ConditionParticipantComponent parseConditionParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8600 Condition.ConditionParticipantComponent res = new Condition.ConditionParticipantComponent(); 8601 parseElementAttributes(xpp, res); 8602 next(xpp); 8603 int eventType = nextNoWhitespace(xpp); 8604 while (eventType != XmlPullParser.END_TAG) { 8605 if (!parseConditionParticipantComponentContent(eventType, xpp, res)) 8606 unknownContent(xpp); 8607 eventType = nextNoWhitespace(xpp); 8608 } 8609 next(xpp); 8610 parseElementClose(res); 8611 return res; 8612 } 8613 8614 protected boolean parseConditionParticipantComponentContent(int eventType, XmlPullParser xpp, Condition.ConditionParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8615 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 8616 res.setFunction(parseCodeableConcept(xpp)); 8617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 8618 res.setActor(parseReference(xpp)); 8619 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8620 return false; 8621 } 8622 return true; 8623 } 8624 8625 protected Condition.ConditionStageComponent parseConditionStageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8626 Condition.ConditionStageComponent res = new Condition.ConditionStageComponent(); 8627 parseElementAttributes(xpp, res); 8628 next(xpp); 8629 int eventType = nextNoWhitespace(xpp); 8630 while (eventType != XmlPullParser.END_TAG) { 8631 if (!parseConditionStageComponentContent(eventType, xpp, res)) 8632 unknownContent(xpp); 8633 eventType = nextNoWhitespace(xpp); 8634 } 8635 next(xpp); 8636 parseElementClose(res); 8637 return res; 8638 } 8639 8640 protected boolean parseConditionStageComponentContent(int eventType, XmlPullParser xpp, Condition.ConditionStageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8641 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 8642 res.setSummary(parseCodeableConcept(xpp)); 8643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessment")) { 8644 res.getAssessment().add(parseReference(xpp)); 8645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8646 res.setType(parseCodeableConcept(xpp)); 8647 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8648 return false; 8649 } 8650 return true; 8651 } 8652 8653 protected ConditionDefinition parseConditionDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8654 ConditionDefinition res = new ConditionDefinition(); 8655 parseResourceAttributes(xpp, res); 8656 next(xpp); 8657 int eventType = nextNoWhitespace(xpp); 8658 while (eventType != XmlPullParser.END_TAG) { 8659 if (!parseConditionDefinitionContent(eventType, xpp, res)) 8660 unknownContent(xpp); 8661 eventType = nextNoWhitespace(xpp); 8662 } 8663 next(xpp); 8664 parseElementClose(res); 8665 return res; 8666 } 8667 8668 protected boolean parseConditionDefinitionContent(int eventType, XmlPullParser xpp, ConditionDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 8669 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 8670 res.setUrlElement(parseUri(xpp)); 8671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8672 res.getIdentifier().add(parseIdentifier(xpp)); 8673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8674 res.setVersionElement(parseString(xpp)); 8675 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 8676 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 8677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8678 res.setNameElement(parseString(xpp)); 8679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 8680 res.setTitleElement(parseString(xpp)); 8681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtitle")) { 8682 res.setSubtitleElement(parseString(xpp)); 8683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8684 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 8685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 8686 res.setExperimentalElement(parseBoolean(xpp)); 8687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8688 res.setDateElement(parseDateTime(xpp)); 8689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 8690 res.setPublisherElement(parseString(xpp)); 8691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 8692 res.getContact().add(parseContactDetail(xpp)); 8693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8694 res.setDescriptionElement(parseMarkdown(xpp)); 8695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 8696 res.getUseContext().add(parseUsageContext(xpp)); 8697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 8698 res.getJurisdiction().add(parseCodeableConcept(xpp)); 8699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8700 res.setCode(parseCodeableConcept(xpp)); 8701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 8702 res.setSeverity(parseCodeableConcept(xpp)); 8703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 8704 res.setBodySite(parseCodeableConcept(xpp)); 8705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stage")) { 8706 res.setStage(parseCodeableConcept(xpp)); 8707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasSeverity")) { 8708 res.setHasSeverityElement(parseBoolean(xpp)); 8709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasBodySite")) { 8710 res.setHasBodySiteElement(parseBoolean(xpp)); 8711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasStage")) { 8712 res.setHasStageElement(parseBoolean(xpp)); 8713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 8714 res.getDefinition().add(parseUri(xpp)); 8715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observation")) { 8716 res.getObservation().add(parseConditionDefinitionObservationComponent(xpp)); 8717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { 8718 res.getMedication().add(parseConditionDefinitionMedicationComponent(xpp)); 8719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precondition")) { 8720 res.getPrecondition().add(parseConditionDefinitionPreconditionComponent(xpp)); 8721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("team")) { 8722 res.getTeam().add(parseReference(xpp)); 8723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("questionnaire")) { 8724 res.getQuestionnaire().add(parseConditionDefinitionQuestionnaireComponent(xpp)); 8725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 8726 res.getPlan().add(parseConditionDefinitionPlanComponent(xpp)); 8727 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 8728 return false; 8729 } 8730 return true; 8731 } 8732 8733 protected ConditionDefinition.ConditionDefinitionObservationComponent parseConditionDefinitionObservationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8734 ConditionDefinition.ConditionDefinitionObservationComponent res = new ConditionDefinition.ConditionDefinitionObservationComponent(); 8735 parseElementAttributes(xpp, res); 8736 next(xpp); 8737 int eventType = nextNoWhitespace(xpp); 8738 while (eventType != XmlPullParser.END_TAG) { 8739 if (!parseConditionDefinitionObservationComponentContent(eventType, xpp, res)) 8740 unknownContent(xpp); 8741 eventType = nextNoWhitespace(xpp); 8742 } 8743 next(xpp); 8744 parseElementClose(res); 8745 return res; 8746 } 8747 8748 protected boolean parseConditionDefinitionObservationComponentContent(int eventType, XmlPullParser xpp, ConditionDefinition.ConditionDefinitionObservationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8749 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8750 res.setCategory(parseCodeableConcept(xpp)); 8751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8752 res.setCode(parseCodeableConcept(xpp)); 8753 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8754 return false; 8755 } 8756 return true; 8757 } 8758 8759 protected ConditionDefinition.ConditionDefinitionMedicationComponent parseConditionDefinitionMedicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8760 ConditionDefinition.ConditionDefinitionMedicationComponent res = new ConditionDefinition.ConditionDefinitionMedicationComponent(); 8761 parseElementAttributes(xpp, res); 8762 next(xpp); 8763 int eventType = nextNoWhitespace(xpp); 8764 while (eventType != XmlPullParser.END_TAG) { 8765 if (!parseConditionDefinitionMedicationComponentContent(eventType, xpp, res)) 8766 unknownContent(xpp); 8767 eventType = nextNoWhitespace(xpp); 8768 } 8769 next(xpp); 8770 parseElementClose(res); 8771 return res; 8772 } 8773 8774 protected boolean parseConditionDefinitionMedicationComponentContent(int eventType, XmlPullParser xpp, ConditionDefinition.ConditionDefinitionMedicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8775 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8776 res.setCategory(parseCodeableConcept(xpp)); 8777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8778 res.setCode(parseCodeableConcept(xpp)); 8779 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8780 return false; 8781 } 8782 return true; 8783 } 8784 8785 protected ConditionDefinition.ConditionDefinitionPreconditionComponent parseConditionDefinitionPreconditionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8786 ConditionDefinition.ConditionDefinitionPreconditionComponent res = new ConditionDefinition.ConditionDefinitionPreconditionComponent(); 8787 parseElementAttributes(xpp, res); 8788 next(xpp); 8789 int eventType = nextNoWhitespace(xpp); 8790 while (eventType != XmlPullParser.END_TAG) { 8791 if (!parseConditionDefinitionPreconditionComponentContent(eventType, xpp, res)) 8792 unknownContent(xpp); 8793 eventType = nextNoWhitespace(xpp); 8794 } 8795 next(xpp); 8796 parseElementClose(res); 8797 return res; 8798 } 8799 8800 protected boolean parseConditionDefinitionPreconditionComponentContent(int eventType, XmlPullParser xpp, ConditionDefinition.ConditionDefinitionPreconditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8801 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8802 res.setTypeElement(parseEnumeration(xpp, ConditionDefinition.ConditionPreconditionType.NULL, new ConditionDefinition.ConditionPreconditionTypeEnumFactory())); 8803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8804 res.setCode(parseCodeableConcept(xpp)); 8805 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 8806 res.setValue(parseType("value", xpp)); 8807 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8808 return false; 8809 } 8810 return true; 8811 } 8812 8813 protected ConditionDefinition.ConditionDefinitionQuestionnaireComponent parseConditionDefinitionQuestionnaireComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8814 ConditionDefinition.ConditionDefinitionQuestionnaireComponent res = new ConditionDefinition.ConditionDefinitionQuestionnaireComponent(); 8815 parseElementAttributes(xpp, res); 8816 next(xpp); 8817 int eventType = nextNoWhitespace(xpp); 8818 while (eventType != XmlPullParser.END_TAG) { 8819 if (!parseConditionDefinitionQuestionnaireComponentContent(eventType, xpp, res)) 8820 unknownContent(xpp); 8821 eventType = nextNoWhitespace(xpp); 8822 } 8823 next(xpp); 8824 parseElementClose(res); 8825 return res; 8826 } 8827 8828 protected boolean parseConditionDefinitionQuestionnaireComponentContent(int eventType, XmlPullParser xpp, ConditionDefinition.ConditionDefinitionQuestionnaireComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8829 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 8830 res.setPurposeElement(parseEnumeration(xpp, ConditionDefinition.ConditionQuestionnairePurpose.NULL, new ConditionDefinition.ConditionQuestionnairePurposeEnumFactory())); 8831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 8832 res.setReference(parseReference(xpp)); 8833 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8834 return false; 8835 } 8836 return true; 8837 } 8838 8839 protected ConditionDefinition.ConditionDefinitionPlanComponent parseConditionDefinitionPlanComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8840 ConditionDefinition.ConditionDefinitionPlanComponent res = new ConditionDefinition.ConditionDefinitionPlanComponent(); 8841 parseElementAttributes(xpp, res); 8842 next(xpp); 8843 int eventType = nextNoWhitespace(xpp); 8844 while (eventType != XmlPullParser.END_TAG) { 8845 if (!parseConditionDefinitionPlanComponentContent(eventType, xpp, res)) 8846 unknownContent(xpp); 8847 eventType = nextNoWhitespace(xpp); 8848 } 8849 next(xpp); 8850 parseElementClose(res); 8851 return res; 8852 } 8853 8854 protected boolean parseConditionDefinitionPlanComponentContent(int eventType, XmlPullParser xpp, ConditionDefinition.ConditionDefinitionPlanComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8855 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 8856 res.setRole(parseCodeableConcept(xpp)); 8857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 8858 res.setReference(parseReference(xpp)); 8859 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8860 return false; 8861 } 8862 return true; 8863 } 8864 8865 protected Consent parseConsent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8866 Consent res = new Consent(); 8867 parseResourceAttributes(xpp, res); 8868 next(xpp); 8869 int eventType = nextNoWhitespace(xpp); 8870 while (eventType != XmlPullParser.END_TAG) { 8871 if (!parseConsentContent(eventType, xpp, res)) 8872 unknownContent(xpp); 8873 eventType = nextNoWhitespace(xpp); 8874 } 8875 next(xpp); 8876 parseElementClose(res); 8877 return res; 8878 } 8879 8880 protected boolean parseConsentContent(int eventType, XmlPullParser xpp, Consent res) throws XmlPullParserException, IOException, FHIRFormatError { 8881 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8882 res.getIdentifier().add(parseIdentifier(xpp)); 8883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8884 res.setStatusElement(parseEnumeration(xpp, Consent.ConsentState.NULL, new Consent.ConsentStateEnumFactory())); 8885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8886 res.getCategory().add(parseCodeableConcept(xpp)); 8887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8888 res.setSubject(parseReference(xpp)); 8889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8890 res.setDateElement(parseDate(xpp)); 8891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8892 res.setPeriod(parsePeriod(xpp)); 8893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("grantor")) { 8894 res.getGrantor().add(parseReference(xpp)); 8895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("grantee")) { 8896 res.getGrantee().add(parseReference(xpp)); 8897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manager")) { 8898 res.getManager().add(parseReference(xpp)); 8899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("controller")) { 8900 res.getController().add(parseReference(xpp)); 8901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceAttachment")) { 8902 res.getSourceAttachment().add(parseAttachment(xpp)); 8903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceReference")) { 8904 res.getSourceReference().add(parseReference(xpp)); 8905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regulatoryBasis")) { 8906 res.getRegulatoryBasis().add(parseCodeableConcept(xpp)); 8907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policyBasis")) { 8908 res.setPolicyBasis(parseConsentPolicyBasisComponent(xpp)); 8909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policyText")) { 8910 res.getPolicyText().add(parseReference(xpp)); 8911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verification")) { 8912 res.getVerification().add(parseConsentVerificationComponent(xpp)); 8913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decision")) { 8914 res.setDecisionElement(parseEnumeration(xpp, Enumerations.ConsentProvisionType.NULL, new Enumerations.ConsentProvisionTypeEnumFactory())); 8915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provision")) { 8916 res.getProvision().add(parseConsentProvisionComponent(xpp)); 8917 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 8918 return false; 8919 } 8920 return true; 8921 } 8922 8923 protected Consent.ConsentPolicyBasisComponent parseConsentPolicyBasisComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8924 Consent.ConsentPolicyBasisComponent res = new Consent.ConsentPolicyBasisComponent(); 8925 parseElementAttributes(xpp, res); 8926 next(xpp); 8927 int eventType = nextNoWhitespace(xpp); 8928 while (eventType != XmlPullParser.END_TAG) { 8929 if (!parseConsentPolicyBasisComponentContent(eventType, xpp, res)) 8930 unknownContent(xpp); 8931 eventType = nextNoWhitespace(xpp); 8932 } 8933 next(xpp); 8934 parseElementClose(res); 8935 return res; 8936 } 8937 8938 protected boolean parseConsentPolicyBasisComponentContent(int eventType, XmlPullParser xpp, Consent.ConsentPolicyBasisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8939 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 8940 res.setReference(parseReference(xpp)); 8941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 8942 res.setUrlElement(parseUrl(xpp)); 8943 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8944 return false; 8945 } 8946 return true; 8947 } 8948 8949 protected Consent.ConsentVerificationComponent parseConsentVerificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8950 Consent.ConsentVerificationComponent res = new Consent.ConsentVerificationComponent(); 8951 parseElementAttributes(xpp, res); 8952 next(xpp); 8953 int eventType = nextNoWhitespace(xpp); 8954 while (eventType != XmlPullParser.END_TAG) { 8955 if (!parseConsentVerificationComponentContent(eventType, xpp, res)) 8956 unknownContent(xpp); 8957 eventType = nextNoWhitespace(xpp); 8958 } 8959 next(xpp); 8960 parseElementClose(res); 8961 return res; 8962 } 8963 8964 protected boolean parseConsentVerificationComponentContent(int eventType, XmlPullParser xpp, Consent.ConsentVerificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8965 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verified")) { 8966 res.setVerifiedElement(parseBoolean(xpp)); 8967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationType")) { 8968 res.setVerificationType(parseCodeableConcept(xpp)); 8969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verifiedBy")) { 8970 res.setVerifiedBy(parseReference(xpp)); 8971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verifiedWith")) { 8972 res.setVerifiedWith(parseReference(xpp)); 8973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationDate")) { 8974 res.getVerificationDate().add(parseDateTime(xpp)); 8975 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 8976 return false; 8977 } 8978 return true; 8979 } 8980 8981 protected Consent.ProvisionComponent parseConsentProvisionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8982 Consent.ProvisionComponent res = new Consent.ProvisionComponent(); 8983 parseElementAttributes(xpp, res); 8984 next(xpp); 8985 int eventType = nextNoWhitespace(xpp); 8986 while (eventType != XmlPullParser.END_TAG) { 8987 if (!parseConsentProvisionComponentContent(eventType, xpp, res)) 8988 unknownContent(xpp); 8989 eventType = nextNoWhitespace(xpp); 8990 } 8991 next(xpp); 8992 parseElementClose(res); 8993 return res; 8994 } 8995 8996 protected boolean parseConsentProvisionComponentContent(int eventType, XmlPullParser xpp, Consent.ProvisionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8997 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8998 res.setPeriod(parsePeriod(xpp)); 8999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 9000 res.getActor().add(parseConsentProvisionActorComponent(xpp)); 9001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 9002 res.getAction().add(parseCodeableConcept(xpp)); 9003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 9004 res.getSecurityLabel().add(parseCoding(xpp)); 9005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 9006 res.getPurpose().add(parseCoding(xpp)); 9007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentType")) { 9008 res.getDocumentType().add(parseCoding(xpp)); 9009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceType")) { 9010 res.getResourceType().add(parseCoding(xpp)); 9011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9012 res.getCode().add(parseCodeableConcept(xpp)); 9013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataPeriod")) { 9014 res.setDataPeriod(parsePeriod(xpp)); 9015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 9016 res.getData().add(parseConsentProvisionDataComponent(xpp)); 9017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 9018 res.setExpression(parseExpression(xpp)); 9019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provision")) { 9020 res.getProvision().add(parseConsentProvisionComponent(xpp)); 9021 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9022 return false; 9023 } 9024 return true; 9025 } 9026 9027 protected Consent.ProvisionActorComponent parseConsentProvisionActorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9028 Consent.ProvisionActorComponent res = new Consent.ProvisionActorComponent(); 9029 parseElementAttributes(xpp, res); 9030 next(xpp); 9031 int eventType = nextNoWhitespace(xpp); 9032 while (eventType != XmlPullParser.END_TAG) { 9033 if (!parseConsentProvisionActorComponentContent(eventType, xpp, res)) 9034 unknownContent(xpp); 9035 eventType = nextNoWhitespace(xpp); 9036 } 9037 next(xpp); 9038 parseElementClose(res); 9039 return res; 9040 } 9041 9042 protected boolean parseConsentProvisionActorComponentContent(int eventType, XmlPullParser xpp, Consent.ProvisionActorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9043 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 9044 res.setRole(parseCodeableConcept(xpp)); 9045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 9046 res.setReference(parseReference(xpp)); 9047 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9048 return false; 9049 } 9050 return true; 9051 } 9052 9053 protected Consent.ProvisionDataComponent parseConsentProvisionDataComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9054 Consent.ProvisionDataComponent res = new Consent.ProvisionDataComponent(); 9055 parseElementAttributes(xpp, res); 9056 next(xpp); 9057 int eventType = nextNoWhitespace(xpp); 9058 while (eventType != XmlPullParser.END_TAG) { 9059 if (!parseConsentProvisionDataComponentContent(eventType, xpp, res)) 9060 unknownContent(xpp); 9061 eventType = nextNoWhitespace(xpp); 9062 } 9063 next(xpp); 9064 parseElementClose(res); 9065 return res; 9066 } 9067 9068 protected boolean parseConsentProvisionDataComponentContent(int eventType, XmlPullParser xpp, Consent.ProvisionDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9069 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaning")) { 9070 res.setMeaningElement(parseEnumeration(xpp, Enumerations.ConsentDataMeaning.NULL, new Enumerations.ConsentDataMeaningEnumFactory())); 9071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 9072 res.setReference(parseReference(xpp)); 9073 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9074 return false; 9075 } 9076 return true; 9077 } 9078 9079 protected Contract parseContract(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9080 Contract res = new Contract(); 9081 parseResourceAttributes(xpp, res); 9082 next(xpp); 9083 int eventType = nextNoWhitespace(xpp); 9084 while (eventType != XmlPullParser.END_TAG) { 9085 if (!parseContractContent(eventType, xpp, res)) 9086 unknownContent(xpp); 9087 eventType = nextNoWhitespace(xpp); 9088 } 9089 next(xpp); 9090 parseElementClose(res); 9091 return res; 9092 } 9093 9094 protected boolean parseContractContent(int eventType, XmlPullParser xpp, Contract res) throws XmlPullParserException, IOException, FHIRFormatError { 9095 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9096 res.getIdentifier().add(parseIdentifier(xpp)); 9097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 9098 res.setUrlElement(parseUri(xpp)); 9099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9100 res.setVersionElement(parseString(xpp)); 9101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9102 res.setStatusElement(parseEnumeration(xpp, Contract.ContractResourceStatusCodes.NULL, new Contract.ContractResourceStatusCodesEnumFactory())); 9103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legalState")) { 9104 res.setLegalState(parseCodeableConcept(xpp)); 9105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 9106 res.setInstantiatesCanonical(parseReference(xpp)); 9107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 9108 res.setInstantiatesUriElement(parseUri(xpp)); 9109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentDerivative")) { 9110 res.setContentDerivative(parseCodeableConcept(xpp)); 9111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 9112 res.setIssuedElement(parseDateTime(xpp)); 9113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 9114 res.setApplies(parsePeriod(xpp)); 9115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationType")) { 9116 res.setExpirationType(parseCodeableConcept(xpp)); 9117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 9118 res.getSubject().add(parseReference(xpp)); 9119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 9120 res.getAuthority().add(parseReference(xpp)); 9121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { 9122 res.getDomain().add(parseReference(xpp)); 9123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 9124 res.getSite().add(parseReference(xpp)); 9125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9126 res.setNameElement(parseString(xpp)); 9127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 9128 res.setTitleElement(parseString(xpp)); 9129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtitle")) { 9130 res.setSubtitleElement(parseString(xpp)); 9131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 9132 res.getAlias().add(parseString(xpp)); 9133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 9134 res.setAuthor(parseReference(xpp)); 9135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 9136 res.setScope(parseCodeableConcept(xpp)); 9137 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "topic")) { 9138 res.setTopic(parseType("topic", xpp)); 9139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9140 res.setType(parseCodeableConcept(xpp)); 9141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 9142 res.getSubType().add(parseCodeableConcept(xpp)); 9143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentDefinition")) { 9144 res.setContentDefinition(parseContractContentDefinitionComponent(xpp)); 9145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 9146 res.getTerm().add(parseContractTermComponent(xpp)); 9147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 9148 res.getSupportingInfo().add(parseReference(xpp)); 9149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 9150 res.getRelevantHistory().add(parseReference(xpp)); 9151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signer")) { 9152 res.getSigner().add(parseContractSignatoryComponent(xpp)); 9153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("friendly")) { 9154 res.getFriendly().add(parseContractFriendlyLanguageComponent(xpp)); 9155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legal")) { 9156 res.getLegal().add(parseContractLegalLanguageComponent(xpp)); 9157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 9158 res.getRule().add(parseContractComputableLanguageComponent(xpp)); 9159 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "legallyBinding")) { 9160 res.setLegallyBinding(parseType("legallyBinding", xpp)); 9161 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 9162 return false; 9163 } 9164 return true; 9165 } 9166 9167 protected Contract.ContentDefinitionComponent parseContractContentDefinitionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9168 Contract.ContentDefinitionComponent res = new Contract.ContentDefinitionComponent(); 9169 parseElementAttributes(xpp, res); 9170 next(xpp); 9171 int eventType = nextNoWhitespace(xpp); 9172 while (eventType != XmlPullParser.END_TAG) { 9173 if (!parseContractContentDefinitionComponentContent(eventType, xpp, res)) 9174 unknownContent(xpp); 9175 eventType = nextNoWhitespace(xpp); 9176 } 9177 next(xpp); 9178 parseElementClose(res); 9179 return res; 9180 } 9181 9182 protected boolean parseContractContentDefinitionComponentContent(int eventType, XmlPullParser xpp, Contract.ContentDefinitionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9183 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9184 res.setType(parseCodeableConcept(xpp)); 9185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 9186 res.setSubType(parseCodeableConcept(xpp)); 9187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 9188 res.setPublisher(parseReference(xpp)); 9189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationDate")) { 9190 res.setPublicationDateElement(parseDateTime(xpp)); 9191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationStatus")) { 9192 res.setPublicationStatusElement(parseEnumeration(xpp, Contract.ContractResourcePublicationStatusCodes.NULL, new Contract.ContractResourcePublicationStatusCodesEnumFactory())); 9193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 9194 res.setCopyrightElement(parseMarkdown(xpp)); 9195 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9196 return false; 9197 } 9198 return true; 9199 } 9200 9201 protected Contract.TermComponent parseContractTermComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9202 Contract.TermComponent res = new Contract.TermComponent(); 9203 parseElementAttributes(xpp, res); 9204 next(xpp); 9205 int eventType = nextNoWhitespace(xpp); 9206 while (eventType != XmlPullParser.END_TAG) { 9207 if (!parseContractTermComponentContent(eventType, xpp, res)) 9208 unknownContent(xpp); 9209 eventType = nextNoWhitespace(xpp); 9210 } 9211 next(xpp); 9212 parseElementClose(res); 9213 return res; 9214 } 9215 9216 protected boolean parseContractTermComponentContent(int eventType, XmlPullParser xpp, Contract.TermComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9217 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9218 res.setIdentifier(parseIdentifier(xpp)); 9219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 9220 res.setIssuedElement(parseDateTime(xpp)); 9221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 9222 res.setApplies(parsePeriod(xpp)); 9223 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "topic")) { 9224 res.setTopic(parseType("topic", xpp)); 9225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9226 res.setType(parseCodeableConcept(xpp)); 9227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 9228 res.setSubType(parseCodeableConcept(xpp)); 9229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 9230 res.setTextElement(parseString(xpp)); 9231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 9232 res.getSecurityLabel().add(parseContractSecurityLabelComponent(xpp)); 9233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offer")) { 9234 res.setOffer(parseContractOfferComponent(xpp)); 9235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asset")) { 9236 res.getAsset().add(parseContractAssetComponent(xpp)); 9237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 9238 res.getAction().add(parseContractActionComponent(xpp)); 9239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 9240 res.getGroup().add(parseContractTermComponent(xpp)); 9241 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9242 return false; 9243 } 9244 return true; 9245 } 9246 9247 protected Contract.SecurityLabelComponent parseContractSecurityLabelComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9248 Contract.SecurityLabelComponent res = new Contract.SecurityLabelComponent(); 9249 parseElementAttributes(xpp, res); 9250 next(xpp); 9251 int eventType = nextNoWhitespace(xpp); 9252 while (eventType != XmlPullParser.END_TAG) { 9253 if (!parseContractSecurityLabelComponentContent(eventType, xpp, res)) 9254 unknownContent(xpp); 9255 eventType = nextNoWhitespace(xpp); 9256 } 9257 next(xpp); 9258 parseElementClose(res); 9259 return res; 9260 } 9261 9262 protected boolean parseContractSecurityLabelComponentContent(int eventType, XmlPullParser xpp, Contract.SecurityLabelComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9263 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 9264 res.getNumber().add(parseUnsignedInt(xpp)); 9265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classification")) { 9266 res.setClassification(parseCoding(xpp)); 9267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 9268 res.getCategory().add(parseCoding(xpp)); 9269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("control")) { 9270 res.getControl().add(parseCoding(xpp)); 9271 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9272 return false; 9273 } 9274 return true; 9275 } 9276 9277 protected Contract.ContractOfferComponent parseContractOfferComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9278 Contract.ContractOfferComponent res = new Contract.ContractOfferComponent(); 9279 parseElementAttributes(xpp, res); 9280 next(xpp); 9281 int eventType = nextNoWhitespace(xpp); 9282 while (eventType != XmlPullParser.END_TAG) { 9283 if (!parseContractOfferComponentContent(eventType, xpp, res)) 9284 unknownContent(xpp); 9285 eventType = nextNoWhitespace(xpp); 9286 } 9287 next(xpp); 9288 parseElementClose(res); 9289 return res; 9290 } 9291 9292 protected boolean parseContractOfferComponentContent(int eventType, XmlPullParser xpp, Contract.ContractOfferComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9293 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9294 res.getIdentifier().add(parseIdentifier(xpp)); 9295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 9296 res.getParty().add(parseContractPartyComponent(xpp)); 9297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 9298 res.setTopic(parseReference(xpp)); 9299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9300 res.setType(parseCodeableConcept(xpp)); 9301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decision")) { 9302 res.setDecision(parseCodeableConcept(xpp)); 9303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decisionMode")) { 9304 res.getDecisionMode().add(parseCodeableConcept(xpp)); 9305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answer")) { 9306 res.getAnswer().add(parseContractAnswerComponent(xpp)); 9307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 9308 res.setTextElement(parseString(xpp)); 9309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 9310 res.getLinkId().add(parseString(xpp)); 9311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabelNumber")) { 9312 res.getSecurityLabelNumber().add(parseUnsignedInt(xpp)); 9313 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9314 return false; 9315 } 9316 return true; 9317 } 9318 9319 protected Contract.ContractPartyComponent parseContractPartyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9320 Contract.ContractPartyComponent res = new Contract.ContractPartyComponent(); 9321 parseElementAttributes(xpp, res); 9322 next(xpp); 9323 int eventType = nextNoWhitespace(xpp); 9324 while (eventType != XmlPullParser.END_TAG) { 9325 if (!parseContractPartyComponentContent(eventType, xpp, res)) 9326 unknownContent(xpp); 9327 eventType = nextNoWhitespace(xpp); 9328 } 9329 next(xpp); 9330 parseElementClose(res); 9331 return res; 9332 } 9333 9334 protected boolean parseContractPartyComponentContent(int eventType, XmlPullParser xpp, Contract.ContractPartyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9335 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 9336 res.getReference().add(parseReference(xpp)); 9337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 9338 res.setRole(parseCodeableConcept(xpp)); 9339 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9340 return false; 9341 } 9342 return true; 9343 } 9344 9345 protected Contract.AnswerComponent parseContractAnswerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9346 Contract.AnswerComponent res = new Contract.AnswerComponent(); 9347 parseElementAttributes(xpp, res); 9348 next(xpp); 9349 int eventType = nextNoWhitespace(xpp); 9350 while (eventType != XmlPullParser.END_TAG) { 9351 if (!parseContractAnswerComponentContent(eventType, xpp, res)) 9352 unknownContent(xpp); 9353 eventType = nextNoWhitespace(xpp); 9354 } 9355 next(xpp); 9356 parseElementClose(res); 9357 return res; 9358 } 9359 9360 protected boolean parseContractAnswerComponentContent(int eventType, XmlPullParser xpp, Contract.AnswerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9361 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 9362 res.setValue(parseType("value", xpp)); 9363 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9364 return false; 9365 } 9366 return true; 9367 } 9368 9369 protected Contract.ContractAssetComponent parseContractAssetComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9370 Contract.ContractAssetComponent res = new Contract.ContractAssetComponent(); 9371 parseElementAttributes(xpp, res); 9372 next(xpp); 9373 int eventType = nextNoWhitespace(xpp); 9374 while (eventType != XmlPullParser.END_TAG) { 9375 if (!parseContractAssetComponentContent(eventType, xpp, res)) 9376 unknownContent(xpp); 9377 eventType = nextNoWhitespace(xpp); 9378 } 9379 next(xpp); 9380 parseElementClose(res); 9381 return res; 9382 } 9383 9384 protected boolean parseContractAssetComponentContent(int eventType, XmlPullParser xpp, Contract.ContractAssetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9385 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 9386 res.setScope(parseCodeableConcept(xpp)); 9387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9388 res.getType().add(parseCodeableConcept(xpp)); 9389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeReference")) { 9390 res.getTypeReference().add(parseReference(xpp)); 9391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 9392 res.getSubtype().add(parseCodeableConcept(xpp)); 9393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 9394 res.setRelationship(parseCoding(xpp)); 9395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 9396 res.getContext().add(parseContractAssetContextComponent(xpp)); 9397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 9398 res.setConditionElement(parseString(xpp)); 9399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodType")) { 9400 res.getPeriodType().add(parseCodeableConcept(xpp)); 9401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 9402 res.getPeriod().add(parsePeriod(xpp)); 9403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usePeriod")) { 9404 res.getUsePeriod().add(parsePeriod(xpp)); 9405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 9406 res.setTextElement(parseString(xpp)); 9407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 9408 res.getLinkId().add(parseString(xpp)); 9409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answer")) { 9410 res.getAnswer().add(parseContractAnswerComponent(xpp)); 9411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabelNumber")) { 9412 res.getSecurityLabelNumber().add(parseUnsignedInt(xpp)); 9413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 9414 res.getValuedItem().add(parseContractValuedItemComponent(xpp)); 9415 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9416 return false; 9417 } 9418 return true; 9419 } 9420 9421 protected Contract.AssetContextComponent parseContractAssetContextComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9422 Contract.AssetContextComponent res = new Contract.AssetContextComponent(); 9423 parseElementAttributes(xpp, res); 9424 next(xpp); 9425 int eventType = nextNoWhitespace(xpp); 9426 while (eventType != XmlPullParser.END_TAG) { 9427 if (!parseContractAssetContextComponentContent(eventType, xpp, res)) 9428 unknownContent(xpp); 9429 eventType = nextNoWhitespace(xpp); 9430 } 9431 next(xpp); 9432 parseElementClose(res); 9433 return res; 9434 } 9435 9436 protected boolean parseContractAssetContextComponentContent(int eventType, XmlPullParser xpp, Contract.AssetContextComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9437 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 9438 res.setReference(parseReference(xpp)); 9439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9440 res.getCode().add(parseCodeableConcept(xpp)); 9441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 9442 res.setTextElement(parseString(xpp)); 9443 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9444 return false; 9445 } 9446 return true; 9447 } 9448 9449 protected Contract.ValuedItemComponent parseContractValuedItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9450 Contract.ValuedItemComponent res = new Contract.ValuedItemComponent(); 9451 parseElementAttributes(xpp, res); 9452 next(xpp); 9453 int eventType = nextNoWhitespace(xpp); 9454 while (eventType != XmlPullParser.END_TAG) { 9455 if (!parseContractValuedItemComponentContent(eventType, xpp, res)) 9456 unknownContent(xpp); 9457 eventType = nextNoWhitespace(xpp); 9458 } 9459 next(xpp); 9460 parseElementClose(res); 9461 return res; 9462 } 9463 9464 protected boolean parseContractValuedItemComponentContent(int eventType, XmlPullParser xpp, Contract.ValuedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9465 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 9466 res.setEntity(parseType("entity", xpp)); 9467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9468 res.setIdentifier(parseIdentifier(xpp)); 9469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 9470 res.setEffectiveTimeElement(parseDateTime(xpp)); 9471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9472 res.setQuantity(parseQuantity(xpp)); 9473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 9474 res.setUnitPrice(parseMoney(xpp)); 9475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 9476 res.setFactorElement(parseDecimal(xpp)); 9477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 9478 res.setPointsElement(parseDecimal(xpp)); 9479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 9480 res.setNet(parseMoney(xpp)); 9481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payment")) { 9482 res.setPaymentElement(parseString(xpp)); 9483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentDate")) { 9484 res.setPaymentDateElement(parseDateTime(xpp)); 9485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 9486 res.setResponsible(parseReference(xpp)); 9487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 9488 res.setRecipient(parseReference(xpp)); 9489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 9490 res.getLinkId().add(parseString(xpp)); 9491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabelNumber")) { 9492 res.getSecurityLabelNumber().add(parseUnsignedInt(xpp)); 9493 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9494 return false; 9495 } 9496 return true; 9497 } 9498 9499 protected Contract.ActionComponent parseContractActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9500 Contract.ActionComponent res = new Contract.ActionComponent(); 9501 parseElementAttributes(xpp, res); 9502 next(xpp); 9503 int eventType = nextNoWhitespace(xpp); 9504 while (eventType != XmlPullParser.END_TAG) { 9505 if (!parseContractActionComponentContent(eventType, xpp, res)) 9506 unknownContent(xpp); 9507 eventType = nextNoWhitespace(xpp); 9508 } 9509 next(xpp); 9510 parseElementClose(res); 9511 return res; 9512 } 9513 9514 protected boolean parseContractActionComponentContent(int eventType, XmlPullParser xpp, Contract.ActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9515 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 9516 res.setDoNotPerformElement(parseBoolean(xpp)); 9517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9518 res.setType(parseCodeableConcept(xpp)); 9519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 9520 res.getSubject().add(parseContractActionSubjectComponent(xpp)); 9521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 9522 res.setIntent(parseCodeableConcept(xpp)); 9523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 9524 res.getLinkId().add(parseString(xpp)); 9525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9526 res.setStatus(parseCodeableConcept(xpp)); 9527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 9528 res.setContext(parseReference(xpp)); 9529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextLinkId")) { 9530 res.getContextLinkId().add(parseString(xpp)); 9531 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 9532 res.setOccurrence(parseType("occurrence", xpp)); 9533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 9534 res.getRequester().add(parseReference(xpp)); 9535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requesterLinkId")) { 9536 res.getRequesterLinkId().add(parseString(xpp)); 9537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 9538 res.getPerformerType().add(parseCodeableConcept(xpp)); 9539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerRole")) { 9540 res.setPerformerRole(parseCodeableConcept(xpp)); 9541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 9542 res.setPerformer(parseReference(xpp)); 9543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerLinkId")) { 9544 res.getPerformerLinkId().add(parseString(xpp)); 9545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9546 res.getReason().add(parseCodeableReference(xpp)); 9547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonLinkId")) { 9548 res.getReasonLinkId().add(parseString(xpp)); 9549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 9550 res.getNote().add(parseAnnotation(xpp)); 9551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabelNumber")) { 9552 res.getSecurityLabelNumber().add(parseUnsignedInt(xpp)); 9553 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9554 return false; 9555 } 9556 return true; 9557 } 9558 9559 protected Contract.ActionSubjectComponent parseContractActionSubjectComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9560 Contract.ActionSubjectComponent res = new Contract.ActionSubjectComponent(); 9561 parseElementAttributes(xpp, res); 9562 next(xpp); 9563 int eventType = nextNoWhitespace(xpp); 9564 while (eventType != XmlPullParser.END_TAG) { 9565 if (!parseContractActionSubjectComponentContent(eventType, xpp, res)) 9566 unknownContent(xpp); 9567 eventType = nextNoWhitespace(xpp); 9568 } 9569 next(xpp); 9570 parseElementClose(res); 9571 return res; 9572 } 9573 9574 protected boolean parseContractActionSubjectComponentContent(int eventType, XmlPullParser xpp, Contract.ActionSubjectComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9575 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 9576 res.getReference().add(parseReference(xpp)); 9577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 9578 res.setRole(parseCodeableConcept(xpp)); 9579 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9580 return false; 9581 } 9582 return true; 9583 } 9584 9585 protected Contract.SignatoryComponent parseContractSignatoryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9586 Contract.SignatoryComponent res = new Contract.SignatoryComponent(); 9587 parseElementAttributes(xpp, res); 9588 next(xpp); 9589 int eventType = nextNoWhitespace(xpp); 9590 while (eventType != XmlPullParser.END_TAG) { 9591 if (!parseContractSignatoryComponentContent(eventType, xpp, res)) 9592 unknownContent(xpp); 9593 eventType = nextNoWhitespace(xpp); 9594 } 9595 next(xpp); 9596 parseElementClose(res); 9597 return res; 9598 } 9599 9600 protected boolean parseContractSignatoryComponentContent(int eventType, XmlPullParser xpp, Contract.SignatoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9601 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9602 res.setType(parseCoding(xpp)); 9603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 9604 res.setParty(parseReference(xpp)); 9605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 9606 res.getSignature().add(parseSignature(xpp)); 9607 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9608 return false; 9609 } 9610 return true; 9611 } 9612 9613 protected Contract.FriendlyLanguageComponent parseContractFriendlyLanguageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9614 Contract.FriendlyLanguageComponent res = new Contract.FriendlyLanguageComponent(); 9615 parseElementAttributes(xpp, res); 9616 next(xpp); 9617 int eventType = nextNoWhitespace(xpp); 9618 while (eventType != XmlPullParser.END_TAG) { 9619 if (!parseContractFriendlyLanguageComponentContent(eventType, xpp, res)) 9620 unknownContent(xpp); 9621 eventType = nextNoWhitespace(xpp); 9622 } 9623 next(xpp); 9624 parseElementClose(res); 9625 return res; 9626 } 9627 9628 protected boolean parseContractFriendlyLanguageComponentContent(int eventType, XmlPullParser xpp, Contract.FriendlyLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9629 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 9630 res.setContent(parseType("content", xpp)); 9631 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9632 return false; 9633 } 9634 return true; 9635 } 9636 9637 protected Contract.LegalLanguageComponent parseContractLegalLanguageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9638 Contract.LegalLanguageComponent res = new Contract.LegalLanguageComponent(); 9639 parseElementAttributes(xpp, res); 9640 next(xpp); 9641 int eventType = nextNoWhitespace(xpp); 9642 while (eventType != XmlPullParser.END_TAG) { 9643 if (!parseContractLegalLanguageComponentContent(eventType, xpp, res)) 9644 unknownContent(xpp); 9645 eventType = nextNoWhitespace(xpp); 9646 } 9647 next(xpp); 9648 parseElementClose(res); 9649 return res; 9650 } 9651 9652 protected boolean parseContractLegalLanguageComponentContent(int eventType, XmlPullParser xpp, Contract.LegalLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9653 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 9654 res.setContent(parseType("content", xpp)); 9655 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9656 return false; 9657 } 9658 return true; 9659 } 9660 9661 protected Contract.ComputableLanguageComponent parseContractComputableLanguageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9662 Contract.ComputableLanguageComponent res = new Contract.ComputableLanguageComponent(); 9663 parseElementAttributes(xpp, res); 9664 next(xpp); 9665 int eventType = nextNoWhitespace(xpp); 9666 while (eventType != XmlPullParser.END_TAG) { 9667 if (!parseContractComputableLanguageComponentContent(eventType, xpp, res)) 9668 unknownContent(xpp); 9669 eventType = nextNoWhitespace(xpp); 9670 } 9671 next(xpp); 9672 parseElementClose(res); 9673 return res; 9674 } 9675 9676 protected boolean parseContractComputableLanguageComponentContent(int eventType, XmlPullParser xpp, Contract.ComputableLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9677 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 9678 res.setContent(parseType("content", xpp)); 9679 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9680 return false; 9681 } 9682 return true; 9683 } 9684 9685 protected Coverage parseCoverage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9686 Coverage res = new Coverage(); 9687 parseResourceAttributes(xpp, res); 9688 next(xpp); 9689 int eventType = nextNoWhitespace(xpp); 9690 while (eventType != XmlPullParser.END_TAG) { 9691 if (!parseCoverageContent(eventType, xpp, res)) 9692 unknownContent(xpp); 9693 eventType = nextNoWhitespace(xpp); 9694 } 9695 next(xpp); 9696 parseElementClose(res); 9697 return res; 9698 } 9699 9700 protected boolean parseCoverageContent(int eventType, XmlPullParser xpp, Coverage res) throws XmlPullParserException, IOException, FHIRFormatError { 9701 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9702 res.getIdentifier().add(parseIdentifier(xpp)); 9703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9704 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 9705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 9706 res.setKindElement(parseEnumeration(xpp, Coverage.Kind.NULL, new Coverage.KindEnumFactory())); 9707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentBy")) { 9708 res.getPaymentBy().add(parseCoveragePaymentByComponent(xpp)); 9709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9710 res.setType(parseCodeableConcept(xpp)); 9711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policyHolder")) { 9712 res.setPolicyHolder(parseReference(xpp)); 9713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriber")) { 9714 res.setSubscriber(parseReference(xpp)); 9715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriberId")) { 9716 res.getSubscriberId().add(parseIdentifier(xpp)); 9717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("beneficiary")) { 9718 res.setBeneficiary(parseReference(xpp)); 9719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 9720 res.setDependentElement(parseString(xpp)); 9721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 9722 res.setRelationship(parseCodeableConcept(xpp)); 9723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 9724 res.setPeriod(parsePeriod(xpp)); 9725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 9726 res.setInsurer(parseReference(xpp)); 9727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 9728 res.getClass_().add(parseCoverageClassComponent(xpp)); 9729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("order")) { 9730 res.setOrderElement(parsePositiveInt(xpp)); 9731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 9732 res.setNetworkElement(parseString(xpp)); 9733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("costToBeneficiary")) { 9734 res.getCostToBeneficiary().add(parseCoverageCostToBeneficiaryComponent(xpp)); 9735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subrogation")) { 9736 res.setSubrogationElement(parseBoolean(xpp)); 9737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contract")) { 9738 res.getContract().add(parseReference(xpp)); 9739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurancePlan")) { 9740 res.setInsurancePlan(parseReference(xpp)); 9741 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 9742 return false; 9743 } 9744 return true; 9745 } 9746 9747 protected Coverage.CoveragePaymentByComponent parseCoveragePaymentByComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9748 Coverage.CoveragePaymentByComponent res = new Coverage.CoveragePaymentByComponent(); 9749 parseElementAttributes(xpp, res); 9750 next(xpp); 9751 int eventType = nextNoWhitespace(xpp); 9752 while (eventType != XmlPullParser.END_TAG) { 9753 if (!parseCoveragePaymentByComponentContent(eventType, xpp, res)) 9754 unknownContent(xpp); 9755 eventType = nextNoWhitespace(xpp); 9756 } 9757 next(xpp); 9758 parseElementClose(res); 9759 return res; 9760 } 9761 9762 protected boolean parseCoveragePaymentByComponentContent(int eventType, XmlPullParser xpp, Coverage.CoveragePaymentByComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9763 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 9764 res.setParty(parseReference(xpp)); 9765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsibility")) { 9766 res.setResponsibilityElement(parseString(xpp)); 9767 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9768 return false; 9769 } 9770 return true; 9771 } 9772 9773 protected Coverage.ClassComponent parseCoverageClassComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9774 Coverage.ClassComponent res = new Coverage.ClassComponent(); 9775 parseElementAttributes(xpp, res); 9776 next(xpp); 9777 int eventType = nextNoWhitespace(xpp); 9778 while (eventType != XmlPullParser.END_TAG) { 9779 if (!parseCoverageClassComponentContent(eventType, xpp, res)) 9780 unknownContent(xpp); 9781 eventType = nextNoWhitespace(xpp); 9782 } 9783 next(xpp); 9784 parseElementClose(res); 9785 return res; 9786 } 9787 9788 protected boolean parseCoverageClassComponentContent(int eventType, XmlPullParser xpp, Coverage.ClassComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9789 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9790 res.setType(parseCodeableConcept(xpp)); 9791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 9792 res.setValue(parseIdentifier(xpp)); 9793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9794 res.setNameElement(parseString(xpp)); 9795 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9796 return false; 9797 } 9798 return true; 9799 } 9800 9801 protected Coverage.CostToBeneficiaryComponent parseCoverageCostToBeneficiaryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9802 Coverage.CostToBeneficiaryComponent res = new Coverage.CostToBeneficiaryComponent(); 9803 parseElementAttributes(xpp, res); 9804 next(xpp); 9805 int eventType = nextNoWhitespace(xpp); 9806 while (eventType != XmlPullParser.END_TAG) { 9807 if (!parseCoverageCostToBeneficiaryComponentContent(eventType, xpp, res)) 9808 unknownContent(xpp); 9809 eventType = nextNoWhitespace(xpp); 9810 } 9811 next(xpp); 9812 parseElementClose(res); 9813 return res; 9814 } 9815 9816 protected boolean parseCoverageCostToBeneficiaryComponentContent(int eventType, XmlPullParser xpp, Coverage.CostToBeneficiaryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9817 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9818 res.setType(parseCodeableConcept(xpp)); 9819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 9820 res.setCategory(parseCodeableConcept(xpp)); 9821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 9822 res.setNetwork(parseCodeableConcept(xpp)); 9823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 9824 res.setUnit(parseCodeableConcept(xpp)); 9825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 9826 res.setTerm(parseCodeableConcept(xpp)); 9827 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 9828 res.setValue(parseType("value", xpp)); 9829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exception")) { 9830 res.getException().add(parseCoverageExemptionComponent(xpp)); 9831 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9832 return false; 9833 } 9834 return true; 9835 } 9836 9837 protected Coverage.ExemptionComponent parseCoverageExemptionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9838 Coverage.ExemptionComponent res = new Coverage.ExemptionComponent(); 9839 parseElementAttributes(xpp, res); 9840 next(xpp); 9841 int eventType = nextNoWhitespace(xpp); 9842 while (eventType != XmlPullParser.END_TAG) { 9843 if (!parseCoverageExemptionComponentContent(eventType, xpp, res)) 9844 unknownContent(xpp); 9845 eventType = nextNoWhitespace(xpp); 9846 } 9847 next(xpp); 9848 parseElementClose(res); 9849 return res; 9850 } 9851 9852 protected boolean parseCoverageExemptionComponentContent(int eventType, XmlPullParser xpp, Coverage.ExemptionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9853 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9854 res.setType(parseCodeableConcept(xpp)); 9855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 9856 res.setPeriod(parsePeriod(xpp)); 9857 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9858 return false; 9859 } 9860 return true; 9861 } 9862 9863 protected CoverageEligibilityRequest parseCoverageEligibilityRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9864 CoverageEligibilityRequest res = new CoverageEligibilityRequest(); 9865 parseResourceAttributes(xpp, res); 9866 next(xpp); 9867 int eventType = nextNoWhitespace(xpp); 9868 while (eventType != XmlPullParser.END_TAG) { 9869 if (!parseCoverageEligibilityRequestContent(eventType, xpp, res)) 9870 unknownContent(xpp); 9871 eventType = nextNoWhitespace(xpp); 9872 } 9873 next(xpp); 9874 parseElementClose(res); 9875 return res; 9876 } 9877 9878 protected boolean parseCoverageEligibilityRequestContent(int eventType, XmlPullParser xpp, CoverageEligibilityRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 9879 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9880 res.getIdentifier().add(parseIdentifier(xpp)); 9881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9882 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 9883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 9884 res.setPriority(parseCodeableConcept(xpp)); 9885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 9886 res.getPurpose().add(parseEnumeration(xpp, CoverageEligibilityRequest.EligibilityRequestPurpose.NULL, new CoverageEligibilityRequest.EligibilityRequestPurposeEnumFactory())); 9887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9888 res.setPatient(parseReference(xpp)); 9889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 9890 res.getEvent().add(parseCoverageEligibilityRequestEventComponent(xpp)); 9891 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 9892 res.setServiced(parseType("serviced", xpp)); 9893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 9894 res.setCreatedElement(parseDateTime(xpp)); 9895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 9896 res.setEnterer(parseReference(xpp)); 9897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 9898 res.setProvider(parseReference(xpp)); 9899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 9900 res.setInsurer(parseReference(xpp)); 9901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 9902 res.setFacility(parseReference(xpp)); 9903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 9904 res.getSupportingInfo().add(parseCoverageEligibilityRequestSupportingInformationComponent(xpp)); 9905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 9906 res.getInsurance().add(parseCoverageEligibilityRequestInsuranceComponent(xpp)); 9907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 9908 res.getItem().add(parseCoverageEligibilityRequestDetailsComponent(xpp)); 9909 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 9910 return false; 9911 } 9912 return true; 9913 } 9914 9915 protected CoverageEligibilityRequest.CoverageEligibilityRequestEventComponent parseCoverageEligibilityRequestEventComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9916 CoverageEligibilityRequest.CoverageEligibilityRequestEventComponent res = new CoverageEligibilityRequest.CoverageEligibilityRequestEventComponent(); 9917 parseElementAttributes(xpp, res); 9918 next(xpp); 9919 int eventType = nextNoWhitespace(xpp); 9920 while (eventType != XmlPullParser.END_TAG) { 9921 if (!parseCoverageEligibilityRequestEventComponentContent(eventType, xpp, res)) 9922 unknownContent(xpp); 9923 eventType = nextNoWhitespace(xpp); 9924 } 9925 next(xpp); 9926 parseElementClose(res); 9927 return res; 9928 } 9929 9930 protected boolean parseCoverageEligibilityRequestEventComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityRequest.CoverageEligibilityRequestEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9931 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9932 res.setType(parseCodeableConcept(xpp)); 9933 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 9934 res.setWhen(parseType("when", xpp)); 9935 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9936 return false; 9937 } 9938 return true; 9939 } 9940 9941 protected CoverageEligibilityRequest.SupportingInformationComponent parseCoverageEligibilityRequestSupportingInformationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9942 CoverageEligibilityRequest.SupportingInformationComponent res = new CoverageEligibilityRequest.SupportingInformationComponent(); 9943 parseElementAttributes(xpp, res); 9944 next(xpp); 9945 int eventType = nextNoWhitespace(xpp); 9946 while (eventType != XmlPullParser.END_TAG) { 9947 if (!parseCoverageEligibilityRequestSupportingInformationComponentContent(eventType, xpp, res)) 9948 unknownContent(xpp); 9949 eventType = nextNoWhitespace(xpp); 9950 } 9951 next(xpp); 9952 parseElementClose(res); 9953 return res; 9954 } 9955 9956 protected boolean parseCoverageEligibilityRequestSupportingInformationComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityRequest.SupportingInformationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9957 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 9958 res.setSequenceElement(parsePositiveInt(xpp)); 9959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("information")) { 9960 res.setInformation(parseReference(xpp)); 9961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appliesToAll")) { 9962 res.setAppliesToAllElement(parseBoolean(xpp)); 9963 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9964 return false; 9965 } 9966 return true; 9967 } 9968 9969 protected CoverageEligibilityRequest.InsuranceComponent parseCoverageEligibilityRequestInsuranceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9970 CoverageEligibilityRequest.InsuranceComponent res = new CoverageEligibilityRequest.InsuranceComponent(); 9971 parseElementAttributes(xpp, res); 9972 next(xpp); 9973 int eventType = nextNoWhitespace(xpp); 9974 while (eventType != XmlPullParser.END_TAG) { 9975 if (!parseCoverageEligibilityRequestInsuranceComponentContent(eventType, xpp, res)) 9976 unknownContent(xpp); 9977 eventType = nextNoWhitespace(xpp); 9978 } 9979 next(xpp); 9980 parseElementClose(res); 9981 return res; 9982 } 9983 9984 protected boolean parseCoverageEligibilityRequestInsuranceComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityRequest.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9985 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 9986 res.setFocalElement(parseBoolean(xpp)); 9987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 9988 res.setCoverage(parseReference(xpp)); 9989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 9990 res.setBusinessArrangementElement(parseString(xpp)); 9991 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 9992 return false; 9993 } 9994 return true; 9995 } 9996 9997 protected CoverageEligibilityRequest.DetailsComponent parseCoverageEligibilityRequestDetailsComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9998 CoverageEligibilityRequest.DetailsComponent res = new CoverageEligibilityRequest.DetailsComponent(); 9999 parseElementAttributes(xpp, res); 10000 next(xpp); 10001 int eventType = nextNoWhitespace(xpp); 10002 while (eventType != XmlPullParser.END_TAG) { 10003 if (!parseCoverageEligibilityRequestDetailsComponentContent(eventType, xpp, res)) 10004 unknownContent(xpp); 10005 eventType = nextNoWhitespace(xpp); 10006 } 10007 next(xpp); 10008 parseElementClose(res); 10009 return res; 10010 } 10011 10012 protected boolean parseCoverageEligibilityRequestDetailsComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityRequest.DetailsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10013 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfoSequence")) { 10014 res.getSupportingInfoSequence().add(parsePositiveInt(xpp)); 10015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10016 res.setCategory(parseCodeableConcept(xpp)); 10017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 10018 res.setProductOrService(parseCodeableConcept(xpp)); 10019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 10020 res.getModifier().add(parseCodeableConcept(xpp)); 10021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 10022 res.setProvider(parseReference(xpp)); 10023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 10024 res.setQuantity(parseQuantity(xpp)); 10025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 10026 res.setUnitPrice(parseMoney(xpp)); 10027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 10028 res.setFacility(parseReference(xpp)); 10029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 10030 res.getDiagnosis().add(parseCoverageEligibilityRequestDiagnosisComponent(xpp)); 10031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 10032 res.getDetail().add(parseReference(xpp)); 10033 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10034 return false; 10035 } 10036 return true; 10037 } 10038 10039 protected CoverageEligibilityRequest.DiagnosisComponent parseCoverageEligibilityRequestDiagnosisComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10040 CoverageEligibilityRequest.DiagnosisComponent res = new CoverageEligibilityRequest.DiagnosisComponent(); 10041 parseElementAttributes(xpp, res); 10042 next(xpp); 10043 int eventType = nextNoWhitespace(xpp); 10044 while (eventType != XmlPullParser.END_TAG) { 10045 if (!parseCoverageEligibilityRequestDiagnosisComponentContent(eventType, xpp, res)) 10046 unknownContent(xpp); 10047 eventType = nextNoWhitespace(xpp); 10048 } 10049 next(xpp); 10050 parseElementClose(res); 10051 return res; 10052 } 10053 10054 protected boolean parseCoverageEligibilityRequestDiagnosisComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityRequest.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10055 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "diagnosis")) { 10056 res.setDiagnosis(parseType("diagnosis", xpp)); 10057 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10058 return false; 10059 } 10060 return true; 10061 } 10062 10063 protected CoverageEligibilityResponse parseCoverageEligibilityResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10064 CoverageEligibilityResponse res = new CoverageEligibilityResponse(); 10065 parseResourceAttributes(xpp, res); 10066 next(xpp); 10067 int eventType = nextNoWhitespace(xpp); 10068 while (eventType != XmlPullParser.END_TAG) { 10069 if (!parseCoverageEligibilityResponseContent(eventType, xpp, res)) 10070 unknownContent(xpp); 10071 eventType = nextNoWhitespace(xpp); 10072 } 10073 next(xpp); 10074 parseElementClose(res); 10075 return res; 10076 } 10077 10078 protected boolean parseCoverageEligibilityResponseContent(int eventType, XmlPullParser xpp, CoverageEligibilityResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 10079 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10080 res.getIdentifier().add(parseIdentifier(xpp)); 10081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10082 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 10083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 10084 res.getPurpose().add(parseEnumeration(xpp, CoverageEligibilityResponse.EligibilityResponsePurpose.NULL, new CoverageEligibilityResponse.EligibilityResponsePurposeEnumFactory())); 10085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 10086 res.setPatient(parseReference(xpp)); 10087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 10088 res.getEvent().add(parseCoverageEligibilityResponseEventComponent(xpp)); 10089 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 10090 res.setServiced(parseType("serviced", xpp)); 10091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 10092 res.setCreatedElement(parseDateTime(xpp)); 10093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestor")) { 10094 res.setRequestor(parseReference(xpp)); 10095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 10096 res.setRequest(parseReference(xpp)); 10097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 10098 res.setOutcomeElement(parseEnumeration(xpp, CoverageEligibilityResponse.EligibilityOutcome.NULL, new CoverageEligibilityResponse.EligibilityOutcomeEnumFactory())); 10099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 10100 res.setDispositionElement(parseString(xpp)); 10101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 10102 res.setInsurer(parseReference(xpp)); 10103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 10104 res.getInsurance().add(parseCoverageEligibilityResponseInsuranceComponent(xpp)); 10105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 10106 res.setPreAuthRefElement(parseString(xpp)); 10107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 10108 res.setForm(parseCodeableConcept(xpp)); 10109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 10110 res.getError().add(parseCoverageEligibilityResponseErrorsComponent(xpp)); 10111 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 10112 return false; 10113 } 10114 return true; 10115 } 10116 10117 protected CoverageEligibilityResponse.CoverageEligibilityResponseEventComponent parseCoverageEligibilityResponseEventComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10118 CoverageEligibilityResponse.CoverageEligibilityResponseEventComponent res = new CoverageEligibilityResponse.CoverageEligibilityResponseEventComponent(); 10119 parseElementAttributes(xpp, res); 10120 next(xpp); 10121 int eventType = nextNoWhitespace(xpp); 10122 while (eventType != XmlPullParser.END_TAG) { 10123 if (!parseCoverageEligibilityResponseEventComponentContent(eventType, xpp, res)) 10124 unknownContent(xpp); 10125 eventType = nextNoWhitespace(xpp); 10126 } 10127 next(xpp); 10128 parseElementClose(res); 10129 return res; 10130 } 10131 10132 protected boolean parseCoverageEligibilityResponseEventComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityResponse.CoverageEligibilityResponseEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10133 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10134 res.setType(parseCodeableConcept(xpp)); 10135 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 10136 res.setWhen(parseType("when", xpp)); 10137 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10138 return false; 10139 } 10140 return true; 10141 } 10142 10143 protected CoverageEligibilityResponse.InsuranceComponent parseCoverageEligibilityResponseInsuranceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10144 CoverageEligibilityResponse.InsuranceComponent res = new CoverageEligibilityResponse.InsuranceComponent(); 10145 parseElementAttributes(xpp, res); 10146 next(xpp); 10147 int eventType = nextNoWhitespace(xpp); 10148 while (eventType != XmlPullParser.END_TAG) { 10149 if (!parseCoverageEligibilityResponseInsuranceComponentContent(eventType, xpp, res)) 10150 unknownContent(xpp); 10151 eventType = nextNoWhitespace(xpp); 10152 } 10153 next(xpp); 10154 parseElementClose(res); 10155 return res; 10156 } 10157 10158 protected boolean parseCoverageEligibilityResponseInsuranceComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityResponse.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10159 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 10160 res.setCoverage(parseReference(xpp)); 10161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inforce")) { 10162 res.setInforceElement(parseBoolean(xpp)); 10163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitPeriod")) { 10164 res.setBenefitPeriod(parsePeriod(xpp)); 10165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 10166 res.getItem().add(parseCoverageEligibilityResponseItemsComponent(xpp)); 10167 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10168 return false; 10169 } 10170 return true; 10171 } 10172 10173 protected CoverageEligibilityResponse.ItemsComponent parseCoverageEligibilityResponseItemsComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10174 CoverageEligibilityResponse.ItemsComponent res = new CoverageEligibilityResponse.ItemsComponent(); 10175 parseElementAttributes(xpp, res); 10176 next(xpp); 10177 int eventType = nextNoWhitespace(xpp); 10178 while (eventType != XmlPullParser.END_TAG) { 10179 if (!parseCoverageEligibilityResponseItemsComponentContent(eventType, xpp, res)) 10180 unknownContent(xpp); 10181 eventType = nextNoWhitespace(xpp); 10182 } 10183 next(xpp); 10184 parseElementClose(res); 10185 return res; 10186 } 10187 10188 protected boolean parseCoverageEligibilityResponseItemsComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityResponse.ItemsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10189 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10190 res.setCategory(parseCodeableConcept(xpp)); 10191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 10192 res.setProductOrService(parseCodeableConcept(xpp)); 10193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 10194 res.getModifier().add(parseCodeableConcept(xpp)); 10195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 10196 res.setProvider(parseReference(xpp)); 10197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excluded")) { 10198 res.setExcludedElement(parseBoolean(xpp)); 10199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10200 res.setNameElement(parseString(xpp)); 10201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10202 res.setDescriptionElement(parseString(xpp)); 10203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 10204 res.setNetwork(parseCodeableConcept(xpp)); 10205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 10206 res.setUnit(parseCodeableConcept(xpp)); 10207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 10208 res.setTerm(parseCodeableConcept(xpp)); 10209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefit")) { 10210 res.getBenefit().add(parseCoverageEligibilityResponseBenefitComponent(xpp)); 10211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorizationRequired")) { 10212 res.setAuthorizationRequiredElement(parseBoolean(xpp)); 10213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorizationSupporting")) { 10214 res.getAuthorizationSupporting().add(parseCodeableConcept(xpp)); 10215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorizationUrl")) { 10216 res.setAuthorizationUrlElement(parseUri(xpp)); 10217 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10218 return false; 10219 } 10220 return true; 10221 } 10222 10223 protected CoverageEligibilityResponse.BenefitComponent parseCoverageEligibilityResponseBenefitComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10224 CoverageEligibilityResponse.BenefitComponent res = new CoverageEligibilityResponse.BenefitComponent(); 10225 parseElementAttributes(xpp, res); 10226 next(xpp); 10227 int eventType = nextNoWhitespace(xpp); 10228 while (eventType != XmlPullParser.END_TAG) { 10229 if (!parseCoverageEligibilityResponseBenefitComponentContent(eventType, xpp, res)) 10230 unknownContent(xpp); 10231 eventType = nextNoWhitespace(xpp); 10232 } 10233 next(xpp); 10234 parseElementClose(res); 10235 return res; 10236 } 10237 10238 protected boolean parseCoverageEligibilityResponseBenefitComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityResponse.BenefitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10239 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10240 res.setType(parseCodeableConcept(xpp)); 10241 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "allowed")) { 10242 res.setAllowed(parseType("allowed", xpp)); 10243 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "used")) { 10244 res.setUsed(parseType("used", xpp)); 10245 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10246 return false; 10247 } 10248 return true; 10249 } 10250 10251 protected CoverageEligibilityResponse.ErrorsComponent parseCoverageEligibilityResponseErrorsComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10252 CoverageEligibilityResponse.ErrorsComponent res = new CoverageEligibilityResponse.ErrorsComponent(); 10253 parseElementAttributes(xpp, res); 10254 next(xpp); 10255 int eventType = nextNoWhitespace(xpp); 10256 while (eventType != XmlPullParser.END_TAG) { 10257 if (!parseCoverageEligibilityResponseErrorsComponentContent(eventType, xpp, res)) 10258 unknownContent(xpp); 10259 eventType = nextNoWhitespace(xpp); 10260 } 10261 next(xpp); 10262 parseElementClose(res); 10263 return res; 10264 } 10265 10266 protected boolean parseCoverageEligibilityResponseErrorsComponentContent(int eventType, XmlPullParser xpp, CoverageEligibilityResponse.ErrorsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10267 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10268 res.setCode(parseCodeableConcept(xpp)); 10269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 10270 res.getExpression().add(parseString(xpp)); 10271 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10272 return false; 10273 } 10274 return true; 10275 } 10276 10277 protected DetectedIssue parseDetectedIssue(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10278 DetectedIssue res = new DetectedIssue(); 10279 parseResourceAttributes(xpp, res); 10280 next(xpp); 10281 int eventType = nextNoWhitespace(xpp); 10282 while (eventType != XmlPullParser.END_TAG) { 10283 if (!parseDetectedIssueContent(eventType, xpp, res)) 10284 unknownContent(xpp); 10285 eventType = nextNoWhitespace(xpp); 10286 } 10287 next(xpp); 10288 parseElementClose(res); 10289 return res; 10290 } 10291 10292 protected boolean parseDetectedIssueContent(int eventType, XmlPullParser xpp, DetectedIssue res) throws XmlPullParserException, IOException, FHIRFormatError { 10293 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10294 res.getIdentifier().add(parseIdentifier(xpp)); 10295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10296 res.setStatusElement(parseEnumeration(xpp, DetectedIssue.DetectedIssueStatus.NULL, new DetectedIssue.DetectedIssueStatusEnumFactory())); 10297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10298 res.getCategory().add(parseCodeableConcept(xpp)); 10299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10300 res.setCode(parseCodeableConcept(xpp)); 10301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 10302 res.setSeverityElement(parseEnumeration(xpp, DetectedIssue.DetectedIssueSeverity.NULL, new DetectedIssue.DetectedIssueSeverityEnumFactory())); 10303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10304 res.setSubject(parseReference(xpp)); 10305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 10306 res.setEncounter(parseReference(xpp)); 10307 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "identified")) { 10308 res.setIdentified(parseType("identified", xpp)); 10309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 10310 res.setAuthor(parseReference(xpp)); 10311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicated")) { 10312 res.getImplicated().add(parseReference(xpp)); 10313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidence")) { 10314 res.getEvidence().add(parseDetectedIssueEvidenceComponent(xpp)); 10315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 10316 res.setDetailElement(parseMarkdown(xpp)); 10317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 10318 res.setReferenceElement(parseUri(xpp)); 10319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 10320 res.getMitigation().add(parseDetectedIssueMitigationComponent(xpp)); 10321 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 10322 return false; 10323 } 10324 return true; 10325 } 10326 10327 protected DetectedIssue.DetectedIssueEvidenceComponent parseDetectedIssueEvidenceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10328 DetectedIssue.DetectedIssueEvidenceComponent res = new DetectedIssue.DetectedIssueEvidenceComponent(); 10329 parseElementAttributes(xpp, res); 10330 next(xpp); 10331 int eventType = nextNoWhitespace(xpp); 10332 while (eventType != XmlPullParser.END_TAG) { 10333 if (!parseDetectedIssueEvidenceComponentContent(eventType, xpp, res)) 10334 unknownContent(xpp); 10335 eventType = nextNoWhitespace(xpp); 10336 } 10337 next(xpp); 10338 parseElementClose(res); 10339 return res; 10340 } 10341 10342 protected boolean parseDetectedIssueEvidenceComponentContent(int eventType, XmlPullParser xpp, DetectedIssue.DetectedIssueEvidenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10343 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10344 res.getCode().add(parseCodeableConcept(xpp)); 10345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 10346 res.getDetail().add(parseReference(xpp)); 10347 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10348 return false; 10349 } 10350 return true; 10351 } 10352 10353 protected DetectedIssue.DetectedIssueMitigationComponent parseDetectedIssueMitigationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10354 DetectedIssue.DetectedIssueMitigationComponent res = new DetectedIssue.DetectedIssueMitigationComponent(); 10355 parseElementAttributes(xpp, res); 10356 next(xpp); 10357 int eventType = nextNoWhitespace(xpp); 10358 while (eventType != XmlPullParser.END_TAG) { 10359 if (!parseDetectedIssueMitigationComponentContent(eventType, xpp, res)) 10360 unknownContent(xpp); 10361 eventType = nextNoWhitespace(xpp); 10362 } 10363 next(xpp); 10364 parseElementClose(res); 10365 return res; 10366 } 10367 10368 protected boolean parseDetectedIssueMitigationComponentContent(int eventType, XmlPullParser xpp, DetectedIssue.DetectedIssueMitigationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10369 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 10370 res.setAction(parseCodeableConcept(xpp)); 10371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10372 res.setDateElement(parseDateTime(xpp)); 10373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 10374 res.setAuthor(parseReference(xpp)); 10375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 10376 res.getNote().add(parseAnnotation(xpp)); 10377 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10378 return false; 10379 } 10380 return true; 10381 } 10382 10383 protected Device parseDevice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10384 Device res = new Device(); 10385 parseResourceAttributes(xpp, res); 10386 next(xpp); 10387 int eventType = nextNoWhitespace(xpp); 10388 while (eventType != XmlPullParser.END_TAG) { 10389 if (!parseDeviceContent(eventType, xpp, res)) 10390 unknownContent(xpp); 10391 eventType = nextNoWhitespace(xpp); 10392 } 10393 next(xpp); 10394 parseElementClose(res); 10395 return res; 10396 } 10397 10398 protected boolean parseDeviceContent(int eventType, XmlPullParser xpp, Device res) throws XmlPullParserException, IOException, FHIRFormatError { 10399 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10400 res.getIdentifier().add(parseIdentifier(xpp)); 10401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("displayName")) { 10402 res.setDisplayNameElement(parseString(xpp)); 10403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 10404 res.setDefinition(parseCodeableReference(xpp)); 10405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udiCarrier")) { 10406 res.getUdiCarrier().add(parseDeviceUdiCarrierComponent(xpp)); 10407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10408 res.setStatusElement(parseEnumeration(xpp, Device.FHIRDeviceStatus.NULL, new Device.FHIRDeviceStatusEnumFactory())); 10409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availabilityStatus")) { 10410 res.setAvailabilityStatus(parseCodeableConcept(xpp)); 10411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("biologicalSourceEvent")) { 10412 res.setBiologicalSourceEvent(parseIdentifier(xpp)); 10413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 10414 res.setManufacturerElement(parseString(xpp)); 10415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufactureDate")) { 10416 res.setManufactureDateElement(parseDateTime(xpp)); 10417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 10418 res.setExpirationDateElement(parseDateTime(xpp)); 10419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 10420 res.setLotNumberElement(parseString(xpp)); 10421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serialNumber")) { 10422 res.setSerialNumberElement(parseString(xpp)); 10423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10424 res.getName().add(parseDeviceNameComponent(xpp)); 10425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modelNumber")) { 10426 res.setModelNumberElement(parseString(xpp)); 10427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partNumber")) { 10428 res.setPartNumberElement(parseString(xpp)); 10429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10430 res.getCategory().add(parseCodeableConcept(xpp)); 10431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10432 res.getType().add(parseCodeableConcept(xpp)); 10433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 10434 res.getVersion().add(parseDeviceVersionComponent(xpp)); 10435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conformsTo")) { 10436 res.getConformsTo().add(parseDeviceConformsToComponent(xpp)); 10437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 10438 res.getProperty().add(parseDevicePropertyComponent(xpp)); 10439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 10440 res.setMode(parseCodeableConcept(xpp)); 10441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cycle")) { 10442 res.setCycle(parseCount(xpp)); 10443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 10444 res.setDuration(parseDuration(xpp)); 10445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 10446 res.setOwner(parseReference(xpp)); 10447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10448 res.getContact().add(parseContactPoint(xpp)); 10449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 10450 res.setLocation(parseReference(xpp)); 10451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 10452 res.setUrlElement(parseUri(xpp)); 10453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 10454 res.getEndpoint().add(parseReference(xpp)); 10455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gateway")) { 10456 res.getGateway().add(parseCodeableReference(xpp)); 10457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 10458 res.getNote().add(parseAnnotation(xpp)); 10459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("safety")) { 10460 res.getSafety().add(parseCodeableConcept(xpp)); 10461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 10462 res.setParent(parseReference(xpp)); 10463 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 10464 return false; 10465 } 10466 return true; 10467 } 10468 10469 protected Device.DeviceUdiCarrierComponent parseDeviceUdiCarrierComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10470 Device.DeviceUdiCarrierComponent res = new Device.DeviceUdiCarrierComponent(); 10471 parseElementAttributes(xpp, res); 10472 next(xpp); 10473 int eventType = nextNoWhitespace(xpp); 10474 while (eventType != XmlPullParser.END_TAG) { 10475 if (!parseDeviceUdiCarrierComponentContent(eventType, xpp, res)) 10476 unknownContent(xpp); 10477 eventType = nextNoWhitespace(xpp); 10478 } 10479 next(xpp); 10480 parseElementClose(res); 10481 return res; 10482 } 10483 10484 protected boolean parseDeviceUdiCarrierComponentContent(int eventType, XmlPullParser xpp, Device.DeviceUdiCarrierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10485 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deviceIdentifier")) { 10486 res.setDeviceIdentifierElement(parseString(xpp)); 10487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 10488 res.setIssuerElement(parseUri(xpp)); 10489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 10490 res.setJurisdictionElement(parseUri(xpp)); 10491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("carrierAIDC")) { 10492 res.setCarrierAIDCElement(parseBase64Binary(xpp)); 10493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("carrierHRF")) { 10494 res.setCarrierHRFElement(parseString(xpp)); 10495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entryType")) { 10496 res.setEntryTypeElement(parseEnumeration(xpp, Device.UDIEntryType.NULL, new Device.UDIEntryTypeEnumFactory())); 10497 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10498 return false; 10499 } 10500 return true; 10501 } 10502 10503 protected Device.DeviceNameComponent parseDeviceNameComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10504 Device.DeviceNameComponent res = new Device.DeviceNameComponent(); 10505 parseElementAttributes(xpp, res); 10506 next(xpp); 10507 int eventType = nextNoWhitespace(xpp); 10508 while (eventType != XmlPullParser.END_TAG) { 10509 if (!parseDeviceNameComponentContent(eventType, xpp, res)) 10510 unknownContent(xpp); 10511 eventType = nextNoWhitespace(xpp); 10512 } 10513 next(xpp); 10514 parseElementClose(res); 10515 return res; 10516 } 10517 10518 protected boolean parseDeviceNameComponentContent(int eventType, XmlPullParser xpp, Device.DeviceNameComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10519 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 10520 res.setValueElement(parseString(xpp)); 10521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10522 res.setTypeElement(parseEnumeration(xpp, Enumerations.DeviceNameType.NULL, new Enumerations.DeviceNameTypeEnumFactory())); 10523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 10524 res.setDisplayElement(parseBoolean(xpp)); 10525 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10526 return false; 10527 } 10528 return true; 10529 } 10530 10531 protected Device.DeviceVersionComponent parseDeviceVersionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10532 Device.DeviceVersionComponent res = new Device.DeviceVersionComponent(); 10533 parseElementAttributes(xpp, res); 10534 next(xpp); 10535 int eventType = nextNoWhitespace(xpp); 10536 while (eventType != XmlPullParser.END_TAG) { 10537 if (!parseDeviceVersionComponentContent(eventType, xpp, res)) 10538 unknownContent(xpp); 10539 eventType = nextNoWhitespace(xpp); 10540 } 10541 next(xpp); 10542 parseElementClose(res); 10543 return res; 10544 } 10545 10546 protected boolean parseDeviceVersionComponentContent(int eventType, XmlPullParser xpp, Device.DeviceVersionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10547 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10548 res.setType(parseCodeableConcept(xpp)); 10549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 10550 res.setComponent(parseIdentifier(xpp)); 10551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("installDate")) { 10552 res.setInstallDateElement(parseDateTime(xpp)); 10553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 10554 res.setValueElement(parseString(xpp)); 10555 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10556 return false; 10557 } 10558 return true; 10559 } 10560 10561 protected Device.DeviceConformsToComponent parseDeviceConformsToComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10562 Device.DeviceConformsToComponent res = new Device.DeviceConformsToComponent(); 10563 parseElementAttributes(xpp, res); 10564 next(xpp); 10565 int eventType = nextNoWhitespace(xpp); 10566 while (eventType != XmlPullParser.END_TAG) { 10567 if (!parseDeviceConformsToComponentContent(eventType, xpp, res)) 10568 unknownContent(xpp); 10569 eventType = nextNoWhitespace(xpp); 10570 } 10571 next(xpp); 10572 parseElementClose(res); 10573 return res; 10574 } 10575 10576 protected boolean parseDeviceConformsToComponentContent(int eventType, XmlPullParser xpp, Device.DeviceConformsToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10577 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10578 res.setCategory(parseCodeableConcept(xpp)); 10579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specification")) { 10580 res.setSpecification(parseCodeableConcept(xpp)); 10581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 10582 res.setVersionElement(parseString(xpp)); 10583 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10584 return false; 10585 } 10586 return true; 10587 } 10588 10589 protected Device.DevicePropertyComponent parseDevicePropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10590 Device.DevicePropertyComponent res = new Device.DevicePropertyComponent(); 10591 parseElementAttributes(xpp, res); 10592 next(xpp); 10593 int eventType = nextNoWhitespace(xpp); 10594 while (eventType != XmlPullParser.END_TAG) { 10595 if (!parseDevicePropertyComponentContent(eventType, xpp, res)) 10596 unknownContent(xpp); 10597 eventType = nextNoWhitespace(xpp); 10598 } 10599 next(xpp); 10600 parseElementClose(res); 10601 return res; 10602 } 10603 10604 protected boolean parseDevicePropertyComponentContent(int eventType, XmlPullParser xpp, Device.DevicePropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10605 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10606 res.setType(parseCodeableConcept(xpp)); 10607 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 10608 res.setValue(parseType("value", xpp)); 10609 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10610 return false; 10611 } 10612 return true; 10613 } 10614 10615 protected DeviceAssociation parseDeviceAssociation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10616 DeviceAssociation res = new DeviceAssociation(); 10617 parseResourceAttributes(xpp, res); 10618 next(xpp); 10619 int eventType = nextNoWhitespace(xpp); 10620 while (eventType != XmlPullParser.END_TAG) { 10621 if (!parseDeviceAssociationContent(eventType, xpp, res)) 10622 unknownContent(xpp); 10623 eventType = nextNoWhitespace(xpp); 10624 } 10625 next(xpp); 10626 parseElementClose(res); 10627 return res; 10628 } 10629 10630 protected boolean parseDeviceAssociationContent(int eventType, XmlPullParser xpp, DeviceAssociation res) throws XmlPullParserException, IOException, FHIRFormatError { 10631 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10632 res.getIdentifier().add(parseIdentifier(xpp)); 10633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 10634 res.setDevice(parseReference(xpp)); 10635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10636 res.getCategory().add(parseCodeableConcept(xpp)); 10637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10638 res.setStatus(parseCodeableConcept(xpp)); 10639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 10640 res.getStatusReason().add(parseCodeableConcept(xpp)); 10641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10642 res.setSubject(parseReference(xpp)); 10643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodyStructure")) { 10644 res.setBodyStructure(parseReference(xpp)); 10645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10646 res.setPeriod(parsePeriod(xpp)); 10647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 10648 res.getOperation().add(parseDeviceAssociationOperationComponent(xpp)); 10649 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 10650 return false; 10651 } 10652 return true; 10653 } 10654 10655 protected DeviceAssociation.DeviceAssociationOperationComponent parseDeviceAssociationOperationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10656 DeviceAssociation.DeviceAssociationOperationComponent res = new DeviceAssociation.DeviceAssociationOperationComponent(); 10657 parseElementAttributes(xpp, res); 10658 next(xpp); 10659 int eventType = nextNoWhitespace(xpp); 10660 while (eventType != XmlPullParser.END_TAG) { 10661 if (!parseDeviceAssociationOperationComponentContent(eventType, xpp, res)) 10662 unknownContent(xpp); 10663 eventType = nextNoWhitespace(xpp); 10664 } 10665 next(xpp); 10666 parseElementClose(res); 10667 return res; 10668 } 10669 10670 protected boolean parseDeviceAssociationOperationComponentContent(int eventType, XmlPullParser xpp, DeviceAssociation.DeviceAssociationOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10671 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10672 res.setStatus(parseCodeableConcept(xpp)); 10673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 10674 res.getOperator().add(parseReference(xpp)); 10675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10676 res.setPeriod(parsePeriod(xpp)); 10677 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10678 return false; 10679 } 10680 return true; 10681 } 10682 10683 protected DeviceDefinition parseDeviceDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10684 DeviceDefinition res = new DeviceDefinition(); 10685 parseResourceAttributes(xpp, res); 10686 next(xpp); 10687 int eventType = nextNoWhitespace(xpp); 10688 while (eventType != XmlPullParser.END_TAG) { 10689 if (!parseDeviceDefinitionContent(eventType, xpp, res)) 10690 unknownContent(xpp); 10691 eventType = nextNoWhitespace(xpp); 10692 } 10693 next(xpp); 10694 parseElementClose(res); 10695 return res; 10696 } 10697 10698 protected boolean parseDeviceDefinitionContent(int eventType, XmlPullParser xpp, DeviceDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 10699 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10700 res.setDescriptionElement(parseMarkdown(xpp)); 10701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10702 res.getIdentifier().add(parseIdentifier(xpp)); 10703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udiDeviceIdentifier")) { 10704 res.getUdiDeviceIdentifier().add(parseDeviceDefinitionUdiDeviceIdentifierComponent(xpp)); 10705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regulatoryIdentifier")) { 10706 res.getRegulatoryIdentifier().add(parseDeviceDefinitionRegulatoryIdentifierComponent(xpp)); 10707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partNumber")) { 10708 res.setPartNumberElement(parseString(xpp)); 10709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 10710 res.setManufacturer(parseReference(xpp)); 10711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deviceName")) { 10712 res.getDeviceName().add(parseDeviceDefinitionDeviceNameComponent(xpp)); 10713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modelNumber")) { 10714 res.setModelNumberElement(parseString(xpp)); 10715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classification")) { 10716 res.getClassification().add(parseDeviceDefinitionClassificationComponent(xpp)); 10717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conformsTo")) { 10718 res.getConformsTo().add(parseDeviceDefinitionConformsToComponent(xpp)); 10719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasPart")) { 10720 res.getHasPart().add(parseDeviceDefinitionHasPartComponent(xpp)); 10721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packaging")) { 10722 res.getPackaging().add(parseDeviceDefinitionPackagingComponent(xpp)); 10723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 10724 res.getVersion().add(parseDeviceDefinitionVersionComponent(xpp)); 10725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("safety")) { 10726 res.getSafety().add(parseCodeableConcept(xpp)); 10727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("shelfLifeStorage")) { 10728 res.getShelfLifeStorage().add(parseProductShelfLife(xpp)); 10729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("languageCode")) { 10730 res.getLanguageCode().add(parseCodeableConcept(xpp)); 10731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 10732 res.getProperty().add(parseDeviceDefinitionPropertyComponent(xpp)); 10733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 10734 res.setOwner(parseReference(xpp)); 10735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10736 res.getContact().add(parseContactPoint(xpp)); 10737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 10738 res.getLink().add(parseDeviceDefinitionLinkComponent(xpp)); 10739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 10740 res.getNote().add(parseAnnotation(xpp)); 10741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("material")) { 10742 res.getMaterial().add(parseDeviceDefinitionMaterialComponent(xpp)); 10743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionIdentifierInUDI")) { 10744 res.getProductionIdentifierInUDI().add(parseEnumeration(xpp, DeviceDefinition.DeviceProductionIdentifierInUDI.NULL, new DeviceDefinition.DeviceProductionIdentifierInUDIEnumFactory())); 10745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("guideline")) { 10746 res.setGuideline(parseDeviceDefinitionGuidelineComponent(xpp)); 10747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("correctiveAction")) { 10748 res.setCorrectiveAction(parseDeviceDefinitionCorrectiveActionComponent(xpp)); 10749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chargeItem")) { 10750 res.getChargeItem().add(parseDeviceDefinitionChargeItemComponent(xpp)); 10751 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 10752 return false; 10753 } 10754 return true; 10755 } 10756 10757 protected DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent parseDeviceDefinitionUdiDeviceIdentifierComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10758 DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent res = new DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent(); 10759 parseElementAttributes(xpp, res); 10760 next(xpp); 10761 int eventType = nextNoWhitespace(xpp); 10762 while (eventType != XmlPullParser.END_TAG) { 10763 if (!parseDeviceDefinitionUdiDeviceIdentifierComponentContent(eventType, xpp, res)) 10764 unknownContent(xpp); 10765 eventType = nextNoWhitespace(xpp); 10766 } 10767 next(xpp); 10768 parseElementClose(res); 10769 return res; 10770 } 10771 10772 protected boolean parseDeviceDefinitionUdiDeviceIdentifierComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10773 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deviceIdentifier")) { 10774 res.setDeviceIdentifierElement(parseString(xpp)); 10775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 10776 res.setIssuerElement(parseUri(xpp)); 10777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 10778 res.setJurisdictionElement(parseUri(xpp)); 10779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketDistribution")) { 10780 res.getMarketDistribution().add(parseDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponent(xpp)); 10781 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10782 return false; 10783 } 10784 return true; 10785 } 10786 10787 protected DeviceDefinition.UdiDeviceIdentifierMarketDistributionComponent parseDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10788 DeviceDefinition.UdiDeviceIdentifierMarketDistributionComponent res = new DeviceDefinition.UdiDeviceIdentifierMarketDistributionComponent(); 10789 parseElementAttributes(xpp, res); 10790 next(xpp); 10791 int eventType = nextNoWhitespace(xpp); 10792 while (eventType != XmlPullParser.END_TAG) { 10793 if (!parseDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponentContent(eventType, xpp, res)) 10794 unknownContent(xpp); 10795 eventType = nextNoWhitespace(xpp); 10796 } 10797 next(xpp); 10798 parseElementClose(res); 10799 return res; 10800 } 10801 10802 protected boolean parseDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.UdiDeviceIdentifierMarketDistributionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10803 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketPeriod")) { 10804 res.setMarketPeriod(parsePeriod(xpp)); 10805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subJurisdiction")) { 10806 res.setSubJurisdictionElement(parseUri(xpp)); 10807 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10808 return false; 10809 } 10810 return true; 10811 } 10812 10813 protected DeviceDefinition.DeviceDefinitionRegulatoryIdentifierComponent parseDeviceDefinitionRegulatoryIdentifierComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10814 DeviceDefinition.DeviceDefinitionRegulatoryIdentifierComponent res = new DeviceDefinition.DeviceDefinitionRegulatoryIdentifierComponent(); 10815 parseElementAttributes(xpp, res); 10816 next(xpp); 10817 int eventType = nextNoWhitespace(xpp); 10818 while (eventType != XmlPullParser.END_TAG) { 10819 if (!parseDeviceDefinitionRegulatoryIdentifierComponentContent(eventType, xpp, res)) 10820 unknownContent(xpp); 10821 eventType = nextNoWhitespace(xpp); 10822 } 10823 next(xpp); 10824 parseElementClose(res); 10825 return res; 10826 } 10827 10828 protected boolean parseDeviceDefinitionRegulatoryIdentifierComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionRegulatoryIdentifierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10829 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10830 res.setTypeElement(parseEnumeration(xpp, DeviceDefinition.DeviceDefinitionRegulatoryIdentifierType.NULL, new DeviceDefinition.DeviceDefinitionRegulatoryIdentifierTypeEnumFactory())); 10831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deviceIdentifier")) { 10832 res.setDeviceIdentifierElement(parseString(xpp)); 10833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 10834 res.setIssuerElement(parseUri(xpp)); 10835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 10836 res.setJurisdictionElement(parseUri(xpp)); 10837 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10838 return false; 10839 } 10840 return true; 10841 } 10842 10843 protected DeviceDefinition.DeviceDefinitionDeviceNameComponent parseDeviceDefinitionDeviceNameComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10844 DeviceDefinition.DeviceDefinitionDeviceNameComponent res = new DeviceDefinition.DeviceDefinitionDeviceNameComponent(); 10845 parseElementAttributes(xpp, res); 10846 next(xpp); 10847 int eventType = nextNoWhitespace(xpp); 10848 while (eventType != XmlPullParser.END_TAG) { 10849 if (!parseDeviceDefinitionDeviceNameComponentContent(eventType, xpp, res)) 10850 unknownContent(xpp); 10851 eventType = nextNoWhitespace(xpp); 10852 } 10853 next(xpp); 10854 parseElementClose(res); 10855 return res; 10856 } 10857 10858 protected boolean parseDeviceDefinitionDeviceNameComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionDeviceNameComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10859 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10860 res.setNameElement(parseString(xpp)); 10861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10862 res.setTypeElement(parseEnumeration(xpp, Enumerations.DeviceNameType.NULL, new Enumerations.DeviceNameTypeEnumFactory())); 10863 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10864 return false; 10865 } 10866 return true; 10867 } 10868 10869 protected DeviceDefinition.DeviceDefinitionClassificationComponent parseDeviceDefinitionClassificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10870 DeviceDefinition.DeviceDefinitionClassificationComponent res = new DeviceDefinition.DeviceDefinitionClassificationComponent(); 10871 parseElementAttributes(xpp, res); 10872 next(xpp); 10873 int eventType = nextNoWhitespace(xpp); 10874 while (eventType != XmlPullParser.END_TAG) { 10875 if (!parseDeviceDefinitionClassificationComponentContent(eventType, xpp, res)) 10876 unknownContent(xpp); 10877 eventType = nextNoWhitespace(xpp); 10878 } 10879 next(xpp); 10880 parseElementClose(res); 10881 return res; 10882 } 10883 10884 protected boolean parseDeviceDefinitionClassificationComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionClassificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10885 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10886 res.setType(parseCodeableConcept(xpp)); 10887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("justification")) { 10888 res.getJustification().add(parseRelatedArtifact(xpp)); 10889 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10890 return false; 10891 } 10892 return true; 10893 } 10894 10895 protected DeviceDefinition.DeviceDefinitionConformsToComponent parseDeviceDefinitionConformsToComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10896 DeviceDefinition.DeviceDefinitionConformsToComponent res = new DeviceDefinition.DeviceDefinitionConformsToComponent(); 10897 parseElementAttributes(xpp, res); 10898 next(xpp); 10899 int eventType = nextNoWhitespace(xpp); 10900 while (eventType != XmlPullParser.END_TAG) { 10901 if (!parseDeviceDefinitionConformsToComponentContent(eventType, xpp, res)) 10902 unknownContent(xpp); 10903 eventType = nextNoWhitespace(xpp); 10904 } 10905 next(xpp); 10906 parseElementClose(res); 10907 return res; 10908 } 10909 10910 protected boolean parseDeviceDefinitionConformsToComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionConformsToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10911 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10912 res.setCategory(parseCodeableConcept(xpp)); 10913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specification")) { 10914 res.setSpecification(parseCodeableConcept(xpp)); 10915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 10916 res.getVersion().add(parseString(xpp)); 10917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 10918 res.getSource().add(parseRelatedArtifact(xpp)); 10919 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10920 return false; 10921 } 10922 return true; 10923 } 10924 10925 protected DeviceDefinition.DeviceDefinitionHasPartComponent parseDeviceDefinitionHasPartComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10926 DeviceDefinition.DeviceDefinitionHasPartComponent res = new DeviceDefinition.DeviceDefinitionHasPartComponent(); 10927 parseElementAttributes(xpp, res); 10928 next(xpp); 10929 int eventType = nextNoWhitespace(xpp); 10930 while (eventType != XmlPullParser.END_TAG) { 10931 if (!parseDeviceDefinitionHasPartComponentContent(eventType, xpp, res)) 10932 unknownContent(xpp); 10933 eventType = nextNoWhitespace(xpp); 10934 } 10935 next(xpp); 10936 parseElementClose(res); 10937 return res; 10938 } 10939 10940 protected boolean parseDeviceDefinitionHasPartComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionHasPartComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10941 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 10942 res.setReference(parseReference(xpp)); 10943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 10944 res.setCountElement(parseInteger(xpp)); 10945 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10946 return false; 10947 } 10948 return true; 10949 } 10950 10951 protected DeviceDefinition.DeviceDefinitionPackagingComponent parseDeviceDefinitionPackagingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10952 DeviceDefinition.DeviceDefinitionPackagingComponent res = new DeviceDefinition.DeviceDefinitionPackagingComponent(); 10953 parseElementAttributes(xpp, res); 10954 next(xpp); 10955 int eventType = nextNoWhitespace(xpp); 10956 while (eventType != XmlPullParser.END_TAG) { 10957 if (!parseDeviceDefinitionPackagingComponentContent(eventType, xpp, res)) 10958 unknownContent(xpp); 10959 eventType = nextNoWhitespace(xpp); 10960 } 10961 next(xpp); 10962 parseElementClose(res); 10963 return res; 10964 } 10965 10966 protected boolean parseDeviceDefinitionPackagingComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionPackagingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10967 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10968 res.setIdentifier(parseIdentifier(xpp)); 10969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10970 res.setType(parseCodeableConcept(xpp)); 10971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 10972 res.setCountElement(parseInteger(xpp)); 10973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("distributor")) { 10974 res.getDistributor().add(parseDeviceDefinitionPackagingDistributorComponent(xpp)); 10975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udiDeviceIdentifier")) { 10976 res.getUdiDeviceIdentifier().add(parseDeviceDefinitionUdiDeviceIdentifierComponent(xpp)); 10977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packaging")) { 10978 res.getPackaging().add(parseDeviceDefinitionPackagingComponent(xpp)); 10979 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 10980 return false; 10981 } 10982 return true; 10983 } 10984 10985 protected DeviceDefinition.PackagingDistributorComponent parseDeviceDefinitionPackagingDistributorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10986 DeviceDefinition.PackagingDistributorComponent res = new DeviceDefinition.PackagingDistributorComponent(); 10987 parseElementAttributes(xpp, res); 10988 next(xpp); 10989 int eventType = nextNoWhitespace(xpp); 10990 while (eventType != XmlPullParser.END_TAG) { 10991 if (!parseDeviceDefinitionPackagingDistributorComponentContent(eventType, xpp, res)) 10992 unknownContent(xpp); 10993 eventType = nextNoWhitespace(xpp); 10994 } 10995 next(xpp); 10996 parseElementClose(res); 10997 return res; 10998 } 10999 11000 protected boolean parseDeviceDefinitionPackagingDistributorComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.PackagingDistributorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11001 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11002 res.setNameElement(parseString(xpp)); 11003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organizationReference")) { 11004 res.getOrganizationReference().add(parseReference(xpp)); 11005 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11006 return false; 11007 } 11008 return true; 11009 } 11010 11011 protected DeviceDefinition.DeviceDefinitionVersionComponent parseDeviceDefinitionVersionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11012 DeviceDefinition.DeviceDefinitionVersionComponent res = new DeviceDefinition.DeviceDefinitionVersionComponent(); 11013 parseElementAttributes(xpp, res); 11014 next(xpp); 11015 int eventType = nextNoWhitespace(xpp); 11016 while (eventType != XmlPullParser.END_TAG) { 11017 if (!parseDeviceDefinitionVersionComponentContent(eventType, xpp, res)) 11018 unknownContent(xpp); 11019 eventType = nextNoWhitespace(xpp); 11020 } 11021 next(xpp); 11022 parseElementClose(res); 11023 return res; 11024 } 11025 11026 protected boolean parseDeviceDefinitionVersionComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionVersionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11027 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11028 res.setType(parseCodeableConcept(xpp)); 11029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 11030 res.setComponent(parseIdentifier(xpp)); 11031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 11032 res.setValueElement(parseString(xpp)); 11033 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11034 return false; 11035 } 11036 return true; 11037 } 11038 11039 protected DeviceDefinition.DeviceDefinitionPropertyComponent parseDeviceDefinitionPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11040 DeviceDefinition.DeviceDefinitionPropertyComponent res = new DeviceDefinition.DeviceDefinitionPropertyComponent(); 11041 parseElementAttributes(xpp, res); 11042 next(xpp); 11043 int eventType = nextNoWhitespace(xpp); 11044 while (eventType != XmlPullParser.END_TAG) { 11045 if (!parseDeviceDefinitionPropertyComponentContent(eventType, xpp, res)) 11046 unknownContent(xpp); 11047 eventType = nextNoWhitespace(xpp); 11048 } 11049 next(xpp); 11050 parseElementClose(res); 11051 return res; 11052 } 11053 11054 protected boolean parseDeviceDefinitionPropertyComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11055 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11056 res.setType(parseCodeableConcept(xpp)); 11057 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 11058 res.setValue(parseType("value", xpp)); 11059 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11060 return false; 11061 } 11062 return true; 11063 } 11064 11065 protected DeviceDefinition.DeviceDefinitionLinkComponent parseDeviceDefinitionLinkComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11066 DeviceDefinition.DeviceDefinitionLinkComponent res = new DeviceDefinition.DeviceDefinitionLinkComponent(); 11067 parseElementAttributes(xpp, res); 11068 next(xpp); 11069 int eventType = nextNoWhitespace(xpp); 11070 while (eventType != XmlPullParser.END_TAG) { 11071 if (!parseDeviceDefinitionLinkComponentContent(eventType, xpp, res)) 11072 unknownContent(xpp); 11073 eventType = nextNoWhitespace(xpp); 11074 } 11075 next(xpp); 11076 parseElementClose(res); 11077 return res; 11078 } 11079 11080 protected boolean parseDeviceDefinitionLinkComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11081 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relation")) { 11082 res.setRelation(parseCoding(xpp)); 11083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedDevice")) { 11084 res.setRelatedDevice(parseCodeableReference(xpp)); 11085 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11086 return false; 11087 } 11088 return true; 11089 } 11090 11091 protected DeviceDefinition.DeviceDefinitionMaterialComponent parseDeviceDefinitionMaterialComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11092 DeviceDefinition.DeviceDefinitionMaterialComponent res = new DeviceDefinition.DeviceDefinitionMaterialComponent(); 11093 parseElementAttributes(xpp, res); 11094 next(xpp); 11095 int eventType = nextNoWhitespace(xpp); 11096 while (eventType != XmlPullParser.END_TAG) { 11097 if (!parseDeviceDefinitionMaterialComponentContent(eventType, xpp, res)) 11098 unknownContent(xpp); 11099 eventType = nextNoWhitespace(xpp); 11100 } 11101 next(xpp); 11102 parseElementClose(res); 11103 return res; 11104 } 11105 11106 protected boolean parseDeviceDefinitionMaterialComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionMaterialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11107 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 11108 res.setSubstance(parseCodeableConcept(xpp)); 11109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alternate")) { 11110 res.setAlternateElement(parseBoolean(xpp)); 11111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allergenicIndicator")) { 11112 res.setAllergenicIndicatorElement(parseBoolean(xpp)); 11113 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11114 return false; 11115 } 11116 return true; 11117 } 11118 11119 protected DeviceDefinition.DeviceDefinitionGuidelineComponent parseDeviceDefinitionGuidelineComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11120 DeviceDefinition.DeviceDefinitionGuidelineComponent res = new DeviceDefinition.DeviceDefinitionGuidelineComponent(); 11121 parseElementAttributes(xpp, res); 11122 next(xpp); 11123 int eventType = nextNoWhitespace(xpp); 11124 while (eventType != XmlPullParser.END_TAG) { 11125 if (!parseDeviceDefinitionGuidelineComponentContent(eventType, xpp, res)) 11126 unknownContent(xpp); 11127 eventType = nextNoWhitespace(xpp); 11128 } 11129 next(xpp); 11130 parseElementClose(res); 11131 return res; 11132 } 11133 11134 protected boolean parseDeviceDefinitionGuidelineComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionGuidelineComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11135 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 11136 res.getUseContext().add(parseUsageContext(xpp)); 11137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usageInstruction")) { 11138 res.setUsageInstructionElement(parseMarkdown(xpp)); 11139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 11140 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 11141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 11142 res.getIndication().add(parseCodeableConcept(xpp)); 11143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contraindication")) { 11144 res.getContraindication().add(parseCodeableConcept(xpp)); 11145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("warning")) { 11146 res.getWarning().add(parseCodeableConcept(xpp)); 11147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedUse")) { 11148 res.setIntendedUseElement(parseString(xpp)); 11149 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11150 return false; 11151 } 11152 return true; 11153 } 11154 11155 protected DeviceDefinition.DeviceDefinitionCorrectiveActionComponent parseDeviceDefinitionCorrectiveActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11156 DeviceDefinition.DeviceDefinitionCorrectiveActionComponent res = new DeviceDefinition.DeviceDefinitionCorrectiveActionComponent(); 11157 parseElementAttributes(xpp, res); 11158 next(xpp); 11159 int eventType = nextNoWhitespace(xpp); 11160 while (eventType != XmlPullParser.END_TAG) { 11161 if (!parseDeviceDefinitionCorrectiveActionComponentContent(eventType, xpp, res)) 11162 unknownContent(xpp); 11163 eventType = nextNoWhitespace(xpp); 11164 } 11165 next(xpp); 11166 parseElementClose(res); 11167 return res; 11168 } 11169 11170 protected boolean parseDeviceDefinitionCorrectiveActionComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionCorrectiveActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11171 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recall")) { 11172 res.setRecallElement(parseBoolean(xpp)); 11173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 11174 res.setScopeElement(parseEnumeration(xpp, DeviceDefinition.DeviceCorrectiveActionScope.NULL, new DeviceDefinition.DeviceCorrectiveActionScopeEnumFactory())); 11175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 11176 res.setPeriod(parsePeriod(xpp)); 11177 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11178 return false; 11179 } 11180 return true; 11181 } 11182 11183 protected DeviceDefinition.DeviceDefinitionChargeItemComponent parseDeviceDefinitionChargeItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11184 DeviceDefinition.DeviceDefinitionChargeItemComponent res = new DeviceDefinition.DeviceDefinitionChargeItemComponent(); 11185 parseElementAttributes(xpp, res); 11186 next(xpp); 11187 int eventType = nextNoWhitespace(xpp); 11188 while (eventType != XmlPullParser.END_TAG) { 11189 if (!parseDeviceDefinitionChargeItemComponentContent(eventType, xpp, res)) 11190 unknownContent(xpp); 11191 eventType = nextNoWhitespace(xpp); 11192 } 11193 next(xpp); 11194 parseElementClose(res); 11195 return res; 11196 } 11197 11198 protected boolean parseDeviceDefinitionChargeItemComponentContent(int eventType, XmlPullParser xpp, DeviceDefinition.DeviceDefinitionChargeItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11199 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chargeItemCode")) { 11200 res.setChargeItemCode(parseCodeableReference(xpp)); 11201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 11202 res.setCount(parseQuantity(xpp)); 11203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 11204 res.setEffectivePeriod(parsePeriod(xpp)); 11205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 11206 res.getUseContext().add(parseUsageContext(xpp)); 11207 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11208 return false; 11209 } 11210 return true; 11211 } 11212 11213 protected DeviceDispense parseDeviceDispense(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11214 DeviceDispense res = new DeviceDispense(); 11215 parseResourceAttributes(xpp, res); 11216 next(xpp); 11217 int eventType = nextNoWhitespace(xpp); 11218 while (eventType != XmlPullParser.END_TAG) { 11219 if (!parseDeviceDispenseContent(eventType, xpp, res)) 11220 unknownContent(xpp); 11221 eventType = nextNoWhitespace(xpp); 11222 } 11223 next(xpp); 11224 parseElementClose(res); 11225 return res; 11226 } 11227 11228 protected boolean parseDeviceDispenseContent(int eventType, XmlPullParser xpp, DeviceDispense res) throws XmlPullParserException, IOException, FHIRFormatError { 11229 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11230 res.getIdentifier().add(parseIdentifier(xpp)); 11231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11232 res.getBasedOn().add(parseReference(xpp)); 11233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 11234 res.getPartOf().add(parseReference(xpp)); 11235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11236 res.setStatusElement(parseEnumeration(xpp, DeviceDispense.DeviceDispenseStatusCodes.NULL, new DeviceDispense.DeviceDispenseStatusCodesEnumFactory())); 11237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 11238 res.setStatusReason(parseCodeableReference(xpp)); 11239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11240 res.getCategory().add(parseCodeableConcept(xpp)); 11241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 11242 res.setDevice(parseCodeableReference(xpp)); 11243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11244 res.setSubject(parseReference(xpp)); 11245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 11246 res.setReceiver(parseReference(xpp)); 11247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 11248 res.setEncounter(parseReference(xpp)); 11249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 11250 res.getSupportingInformation().add(parseReference(xpp)); 11251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11252 res.getPerformer().add(parseDeviceDispensePerformerComponent(xpp)); 11253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 11254 res.setLocation(parseReference(xpp)); 11255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11256 res.setType(parseCodeableConcept(xpp)); 11257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11258 res.setQuantity(parseQuantity(xpp)); 11259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preparedDate")) { 11260 res.setPreparedDateElement(parseDateTime(xpp)); 11261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenHandedOver")) { 11262 res.setWhenHandedOverElement(parseDateTime(xpp)); 11263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 11264 res.setDestination(parseReference(xpp)); 11265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11266 res.getNote().add(parseAnnotation(xpp)); 11267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usageInstruction")) { 11268 res.setUsageInstructionElement(parseMarkdown(xpp)); 11269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 11270 res.getEventHistory().add(parseReference(xpp)); 11271 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 11272 return false; 11273 } 11274 return true; 11275 } 11276 11277 protected DeviceDispense.DeviceDispensePerformerComponent parseDeviceDispensePerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11278 DeviceDispense.DeviceDispensePerformerComponent res = new DeviceDispense.DeviceDispensePerformerComponent(); 11279 parseElementAttributes(xpp, res); 11280 next(xpp); 11281 int eventType = nextNoWhitespace(xpp); 11282 while (eventType != XmlPullParser.END_TAG) { 11283 if (!parseDeviceDispensePerformerComponentContent(eventType, xpp, res)) 11284 unknownContent(xpp); 11285 eventType = nextNoWhitespace(xpp); 11286 } 11287 next(xpp); 11288 parseElementClose(res); 11289 return res; 11290 } 11291 11292 protected boolean parseDeviceDispensePerformerComponentContent(int eventType, XmlPullParser xpp, DeviceDispense.DeviceDispensePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11293 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 11294 res.setFunction(parseCodeableConcept(xpp)); 11295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 11296 res.setActor(parseReference(xpp)); 11297 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11298 return false; 11299 } 11300 return true; 11301 } 11302 11303 protected DeviceMetric parseDeviceMetric(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11304 DeviceMetric res = new DeviceMetric(); 11305 parseResourceAttributes(xpp, res); 11306 next(xpp); 11307 int eventType = nextNoWhitespace(xpp); 11308 while (eventType != XmlPullParser.END_TAG) { 11309 if (!parseDeviceMetricContent(eventType, xpp, res)) 11310 unknownContent(xpp); 11311 eventType = nextNoWhitespace(xpp); 11312 } 11313 next(xpp); 11314 parseElementClose(res); 11315 return res; 11316 } 11317 11318 protected boolean parseDeviceMetricContent(int eventType, XmlPullParser xpp, DeviceMetric res) throws XmlPullParserException, IOException, FHIRFormatError { 11319 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11320 res.getIdentifier().add(parseIdentifier(xpp)); 11321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11322 res.setType(parseCodeableConcept(xpp)); 11323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 11324 res.setUnit(parseCodeableConcept(xpp)); 11325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 11326 res.setDevice(parseReference(xpp)); 11327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 11328 res.setOperationalStatusElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricOperationalStatus.NULL, new DeviceMetric.DeviceMetricOperationalStatusEnumFactory())); 11329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 11330 res.setColorElement(parseCode(xpp)); 11331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11332 res.setCategoryElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCategory.NULL, new DeviceMetric.DeviceMetricCategoryEnumFactory())); 11333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementFrequency")) { 11334 res.setMeasurementFrequency(parseQuantity(xpp)); 11335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("calibration")) { 11336 res.getCalibration().add(parseDeviceMetricCalibrationComponent(xpp)); 11337 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 11338 return false; 11339 } 11340 return true; 11341 } 11342 11343 protected DeviceMetric.DeviceMetricCalibrationComponent parseDeviceMetricCalibrationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11344 DeviceMetric.DeviceMetricCalibrationComponent res = new DeviceMetric.DeviceMetricCalibrationComponent(); 11345 parseElementAttributes(xpp, res); 11346 next(xpp); 11347 int eventType = nextNoWhitespace(xpp); 11348 while (eventType != XmlPullParser.END_TAG) { 11349 if (!parseDeviceMetricCalibrationComponentContent(eventType, xpp, res)) 11350 unknownContent(xpp); 11351 eventType = nextNoWhitespace(xpp); 11352 } 11353 next(xpp); 11354 parseElementClose(res); 11355 return res; 11356 } 11357 11358 protected boolean parseDeviceMetricCalibrationComponentContent(int eventType, XmlPullParser xpp, DeviceMetric.DeviceMetricCalibrationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11359 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11360 res.setTypeElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationType.NULL, new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory())); 11361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 11362 res.setStateElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationState.NULL, new DeviceMetric.DeviceMetricCalibrationStateEnumFactory())); 11363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 11364 res.setTimeElement(parseInstant(xpp)); 11365 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11366 return false; 11367 } 11368 return true; 11369 } 11370 11371 protected DeviceRequest parseDeviceRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11372 DeviceRequest res = new DeviceRequest(); 11373 parseResourceAttributes(xpp, res); 11374 next(xpp); 11375 int eventType = nextNoWhitespace(xpp); 11376 while (eventType != XmlPullParser.END_TAG) { 11377 if (!parseDeviceRequestContent(eventType, xpp, res)) 11378 unknownContent(xpp); 11379 eventType = nextNoWhitespace(xpp); 11380 } 11381 next(xpp); 11382 parseElementClose(res); 11383 return res; 11384 } 11385 11386 protected boolean parseDeviceRequestContent(int eventType, XmlPullParser xpp, DeviceRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 11387 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11388 res.getIdentifier().add(parseIdentifier(xpp)); 11389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 11390 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 11391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 11392 res.getInstantiatesUri().add(parseUri(xpp)); 11393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11394 res.getBasedOn().add(parseReference(xpp)); 11395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 11396 res.getReplaces().add(parseReference(xpp)); 11397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 11398 res.setGroupIdentifier(parseIdentifier(xpp)); 11399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11400 res.setStatusElement(parseEnumeration(xpp, Enumerations.RequestStatus.NULL, new Enumerations.RequestStatusEnumFactory())); 11401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 11402 res.setIntentElement(parseEnumeration(xpp, Enumerations.RequestIntent.NULL, new Enumerations.RequestIntentEnumFactory())); 11403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 11404 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 11405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 11406 res.setDoNotPerformElement(parseBoolean(xpp)); 11407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11408 res.setCode(parseCodeableReference(xpp)); 11409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11410 res.setQuantityElement(parseInteger(xpp)); 11411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 11412 res.getParameter().add(parseDeviceRequestParameterComponent(xpp)); 11413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11414 res.setSubject(parseReference(xpp)); 11415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 11416 res.setEncounter(parseReference(xpp)); 11417 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 11418 res.setOccurrence(parseType("occurrence", xpp)); 11419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 11420 res.setAuthoredOnElement(parseDateTime(xpp)); 11421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 11422 res.setRequester(parseReference(xpp)); 11423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11424 res.setPerformer(parseCodeableReference(xpp)); 11425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11426 res.getReason().add(parseCodeableReference(xpp)); 11427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeeded")) { 11428 res.setAsNeededElement(parseBoolean(xpp)); 11429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeededFor")) { 11430 res.setAsNeededFor(parseCodeableConcept(xpp)); 11431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 11432 res.getInsurance().add(parseReference(xpp)); 11433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 11434 res.getSupportingInfo().add(parseReference(xpp)); 11435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11436 res.getNote().add(parseAnnotation(xpp)); 11437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 11438 res.getRelevantHistory().add(parseReference(xpp)); 11439 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 11440 return false; 11441 } 11442 return true; 11443 } 11444 11445 protected DeviceRequest.DeviceRequestParameterComponent parseDeviceRequestParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11446 DeviceRequest.DeviceRequestParameterComponent res = new DeviceRequest.DeviceRequestParameterComponent(); 11447 parseElementAttributes(xpp, res); 11448 next(xpp); 11449 int eventType = nextNoWhitespace(xpp); 11450 while (eventType != XmlPullParser.END_TAG) { 11451 if (!parseDeviceRequestParameterComponentContent(eventType, xpp, res)) 11452 unknownContent(xpp); 11453 eventType = nextNoWhitespace(xpp); 11454 } 11455 next(xpp); 11456 parseElementClose(res); 11457 return res; 11458 } 11459 11460 protected boolean parseDeviceRequestParameterComponentContent(int eventType, XmlPullParser xpp, DeviceRequest.DeviceRequestParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11461 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11462 res.setCode(parseCodeableConcept(xpp)); 11463 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 11464 res.setValue(parseType("value", xpp)); 11465 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11466 return false; 11467 } 11468 return true; 11469 } 11470 11471 protected DeviceUsage parseDeviceUsage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11472 DeviceUsage res = new DeviceUsage(); 11473 parseResourceAttributes(xpp, res); 11474 next(xpp); 11475 int eventType = nextNoWhitespace(xpp); 11476 while (eventType != XmlPullParser.END_TAG) { 11477 if (!parseDeviceUsageContent(eventType, xpp, res)) 11478 unknownContent(xpp); 11479 eventType = nextNoWhitespace(xpp); 11480 } 11481 next(xpp); 11482 parseElementClose(res); 11483 return res; 11484 } 11485 11486 protected boolean parseDeviceUsageContent(int eventType, XmlPullParser xpp, DeviceUsage res) throws XmlPullParserException, IOException, FHIRFormatError { 11487 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11488 res.getIdentifier().add(parseIdentifier(xpp)); 11489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11490 res.getBasedOn().add(parseReference(xpp)); 11491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11492 res.setStatusElement(parseEnumeration(xpp, DeviceUsage.DeviceUsageStatus.NULL, new DeviceUsage.DeviceUsageStatusEnumFactory())); 11493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11494 res.getCategory().add(parseCodeableConcept(xpp)); 11495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 11496 res.setPatient(parseReference(xpp)); 11497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 11498 res.getDerivedFrom().add(parseReference(xpp)); 11499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11500 res.setContext(parseReference(xpp)); 11501 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 11502 res.setTiming(parseType("timing", xpp)); 11503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAsserted")) { 11504 res.setDateAssertedElement(parseDateTime(xpp)); 11505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usageStatus")) { 11506 res.setUsageStatus(parseCodeableConcept(xpp)); 11507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usageReason")) { 11508 res.getUsageReason().add(parseCodeableConcept(xpp)); 11509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adherence")) { 11510 res.setAdherence(parseDeviceUsageAdherenceComponent(xpp)); 11511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 11512 res.setInformationSource(parseReference(xpp)); 11513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 11514 res.setDevice(parseCodeableReference(xpp)); 11515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11516 res.getReason().add(parseCodeableReference(xpp)); 11517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 11518 res.setBodySite(parseCodeableReference(xpp)); 11519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11520 res.getNote().add(parseAnnotation(xpp)); 11521 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 11522 return false; 11523 } 11524 return true; 11525 } 11526 11527 protected DeviceUsage.DeviceUsageAdherenceComponent parseDeviceUsageAdherenceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11528 DeviceUsage.DeviceUsageAdherenceComponent res = new DeviceUsage.DeviceUsageAdherenceComponent(); 11529 parseElementAttributes(xpp, res); 11530 next(xpp); 11531 int eventType = nextNoWhitespace(xpp); 11532 while (eventType != XmlPullParser.END_TAG) { 11533 if (!parseDeviceUsageAdherenceComponentContent(eventType, xpp, res)) 11534 unknownContent(xpp); 11535 eventType = nextNoWhitespace(xpp); 11536 } 11537 next(xpp); 11538 parseElementClose(res); 11539 return res; 11540 } 11541 11542 protected boolean parseDeviceUsageAdherenceComponentContent(int eventType, XmlPullParser xpp, DeviceUsage.DeviceUsageAdherenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11543 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11544 res.setCode(parseCodeableConcept(xpp)); 11545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11546 res.getReason().add(parseCodeableConcept(xpp)); 11547 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11548 return false; 11549 } 11550 return true; 11551 } 11552 11553 protected DiagnosticReport parseDiagnosticReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11554 DiagnosticReport res = new DiagnosticReport(); 11555 parseResourceAttributes(xpp, res); 11556 next(xpp); 11557 int eventType = nextNoWhitespace(xpp); 11558 while (eventType != XmlPullParser.END_TAG) { 11559 if (!parseDiagnosticReportContent(eventType, xpp, res)) 11560 unknownContent(xpp); 11561 eventType = nextNoWhitespace(xpp); 11562 } 11563 next(xpp); 11564 parseElementClose(res); 11565 return res; 11566 } 11567 11568 protected boolean parseDiagnosticReportContent(int eventType, XmlPullParser xpp, DiagnosticReport res) throws XmlPullParserException, IOException, FHIRFormatError { 11569 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11570 res.getIdentifier().add(parseIdentifier(xpp)); 11571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11572 res.getBasedOn().add(parseReference(xpp)); 11573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11574 res.setStatusElement(parseEnumeration(xpp, DiagnosticReport.DiagnosticReportStatus.NULL, new DiagnosticReport.DiagnosticReportStatusEnumFactory())); 11575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11576 res.getCategory().add(parseCodeableConcept(xpp)); 11577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11578 res.setCode(parseCodeableConcept(xpp)); 11579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11580 res.setSubject(parseReference(xpp)); 11581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 11582 res.setEncounter(parseReference(xpp)); 11583 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 11584 res.setEffective(parseType("effective", xpp)); 11585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 11586 res.setIssuedElement(parseInstant(xpp)); 11587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11588 res.getPerformer().add(parseReference(xpp)); 11589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resultsInterpreter")) { 11590 res.getResultsInterpreter().add(parseReference(xpp)); 11591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 11592 res.getSpecimen().add(parseReference(xpp)); 11593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 11594 res.getResult().add(parseReference(xpp)); 11595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11596 res.getNote().add(parseAnnotation(xpp)); 11597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 11598 res.getStudy().add(parseReference(xpp)); 11599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 11600 res.getSupportingInfo().add(parseDiagnosticReportSupportingInfoComponent(xpp)); 11601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("media")) { 11602 res.getMedia().add(parseDiagnosticReportMediaComponent(xpp)); 11603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("composition")) { 11604 res.setComposition(parseReference(xpp)); 11605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conclusion")) { 11606 res.setConclusionElement(parseMarkdown(xpp)); 11607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conclusionCode")) { 11608 res.getConclusionCode().add(parseCodeableConcept(xpp)); 11609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("presentedForm")) { 11610 res.getPresentedForm().add(parseAttachment(xpp)); 11611 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 11612 return false; 11613 } 11614 return true; 11615 } 11616 11617 protected DiagnosticReport.DiagnosticReportSupportingInfoComponent parseDiagnosticReportSupportingInfoComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11618 DiagnosticReport.DiagnosticReportSupportingInfoComponent res = new DiagnosticReport.DiagnosticReportSupportingInfoComponent(); 11619 parseElementAttributes(xpp, res); 11620 next(xpp); 11621 int eventType = nextNoWhitespace(xpp); 11622 while (eventType != XmlPullParser.END_TAG) { 11623 if (!parseDiagnosticReportSupportingInfoComponentContent(eventType, xpp, res)) 11624 unknownContent(xpp); 11625 eventType = nextNoWhitespace(xpp); 11626 } 11627 next(xpp); 11628 parseElementClose(res); 11629 return res; 11630 } 11631 11632 protected boolean parseDiagnosticReportSupportingInfoComponentContent(int eventType, XmlPullParser xpp, DiagnosticReport.DiagnosticReportSupportingInfoComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11633 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11634 res.setType(parseCodeableConcept(xpp)); 11635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 11636 res.setReference(parseReference(xpp)); 11637 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11638 return false; 11639 } 11640 return true; 11641 } 11642 11643 protected DiagnosticReport.DiagnosticReportMediaComponent parseDiagnosticReportMediaComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11644 DiagnosticReport.DiagnosticReportMediaComponent res = new DiagnosticReport.DiagnosticReportMediaComponent(); 11645 parseElementAttributes(xpp, res); 11646 next(xpp); 11647 int eventType = nextNoWhitespace(xpp); 11648 while (eventType != XmlPullParser.END_TAG) { 11649 if (!parseDiagnosticReportMediaComponentContent(eventType, xpp, res)) 11650 unknownContent(xpp); 11651 eventType = nextNoWhitespace(xpp); 11652 } 11653 next(xpp); 11654 parseElementClose(res); 11655 return res; 11656 } 11657 11658 protected boolean parseDiagnosticReportMediaComponentContent(int eventType, XmlPullParser xpp, DiagnosticReport.DiagnosticReportMediaComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11659 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 11660 res.setCommentElement(parseString(xpp)); 11661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 11662 res.setLink(parseReference(xpp)); 11663 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11664 return false; 11665 } 11666 return true; 11667 } 11668 11669 protected DocumentReference parseDocumentReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11670 DocumentReference res = new DocumentReference(); 11671 parseResourceAttributes(xpp, res); 11672 next(xpp); 11673 int eventType = nextNoWhitespace(xpp); 11674 while (eventType != XmlPullParser.END_TAG) { 11675 if (!parseDocumentReferenceContent(eventType, xpp, res)) 11676 unknownContent(xpp); 11677 eventType = nextNoWhitespace(xpp); 11678 } 11679 next(xpp); 11680 parseElementClose(res); 11681 return res; 11682 } 11683 11684 protected boolean parseDocumentReferenceContent(int eventType, XmlPullParser xpp, DocumentReference res) throws XmlPullParserException, IOException, FHIRFormatError { 11685 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11686 res.getIdentifier().add(parseIdentifier(xpp)); 11687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 11688 res.setVersionElement(parseString(xpp)); 11689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11690 res.getBasedOn().add(parseReference(xpp)); 11691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11692 res.setStatusElement(parseEnumeration(xpp, DocumentReference.DocumentReferenceStatus.NULL, new DocumentReference.DocumentReferenceStatusEnumFactory())); 11693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("docStatus")) { 11694 res.setDocStatusElement(parseEnumeration(xpp, Enumerations.CompositionStatus.NULL, new Enumerations.CompositionStatusEnumFactory())); 11695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modality")) { 11696 res.getModality().add(parseCodeableConcept(xpp)); 11697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11698 res.setType(parseCodeableConcept(xpp)); 11699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11700 res.getCategory().add(parseCodeableConcept(xpp)); 11701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11702 res.setSubject(parseReference(xpp)); 11703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11704 res.getContext().add(parseReference(xpp)); 11705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 11706 res.getEvent().add(parseCodeableReference(xpp)); 11707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 11708 res.getBodySite().add(parseCodeableReference(xpp)); 11709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facilityType")) { 11710 res.setFacilityType(parseCodeableConcept(xpp)); 11711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practiceSetting")) { 11712 res.setPracticeSetting(parseCodeableConcept(xpp)); 11713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 11714 res.setPeriod(parsePeriod(xpp)); 11715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 11716 res.setDateElement(parseInstant(xpp)); 11717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 11718 res.getAuthor().add(parseReference(xpp)); 11719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attester")) { 11720 res.getAttester().add(parseDocumentReferenceAttesterComponent(xpp)); 11721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 11722 res.setCustodian(parseReference(xpp)); 11723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 11724 res.getRelatesTo().add(parseDocumentReferenceRelatesToComponent(xpp)); 11725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11726 res.setDescriptionElement(parseMarkdown(xpp)); 11727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 11728 res.getSecurityLabel().add(parseCodeableConcept(xpp)); 11729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 11730 res.getContent().add(parseDocumentReferenceContentComponent(xpp)); 11731 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 11732 return false; 11733 } 11734 return true; 11735 } 11736 11737 protected DocumentReference.DocumentReferenceAttesterComponent parseDocumentReferenceAttesterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11738 DocumentReference.DocumentReferenceAttesterComponent res = new DocumentReference.DocumentReferenceAttesterComponent(); 11739 parseElementAttributes(xpp, res); 11740 next(xpp); 11741 int eventType = nextNoWhitespace(xpp); 11742 while (eventType != XmlPullParser.END_TAG) { 11743 if (!parseDocumentReferenceAttesterComponentContent(eventType, xpp, res)) 11744 unknownContent(xpp); 11745 eventType = nextNoWhitespace(xpp); 11746 } 11747 next(xpp); 11748 parseElementClose(res); 11749 return res; 11750 } 11751 11752 protected boolean parseDocumentReferenceAttesterComponentContent(int eventType, XmlPullParser xpp, DocumentReference.DocumentReferenceAttesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11753 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 11754 res.setMode(parseCodeableConcept(xpp)); 11755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 11756 res.setTimeElement(parseDateTime(xpp)); 11757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 11758 res.setParty(parseReference(xpp)); 11759 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11760 return false; 11761 } 11762 return true; 11763 } 11764 11765 protected DocumentReference.DocumentReferenceRelatesToComponent parseDocumentReferenceRelatesToComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11766 DocumentReference.DocumentReferenceRelatesToComponent res = new DocumentReference.DocumentReferenceRelatesToComponent(); 11767 parseElementAttributes(xpp, res); 11768 next(xpp); 11769 int eventType = nextNoWhitespace(xpp); 11770 while (eventType != XmlPullParser.END_TAG) { 11771 if (!parseDocumentReferenceRelatesToComponentContent(eventType, xpp, res)) 11772 unknownContent(xpp); 11773 eventType = nextNoWhitespace(xpp); 11774 } 11775 next(xpp); 11776 parseElementClose(res); 11777 return res; 11778 } 11779 11780 protected boolean parseDocumentReferenceRelatesToComponentContent(int eventType, XmlPullParser xpp, DocumentReference.DocumentReferenceRelatesToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11781 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11782 res.setCode(parseCodeableConcept(xpp)); 11783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 11784 res.setTarget(parseReference(xpp)); 11785 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11786 return false; 11787 } 11788 return true; 11789 } 11790 11791 protected DocumentReference.DocumentReferenceContentComponent parseDocumentReferenceContentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11792 DocumentReference.DocumentReferenceContentComponent res = new DocumentReference.DocumentReferenceContentComponent(); 11793 parseElementAttributes(xpp, res); 11794 next(xpp); 11795 int eventType = nextNoWhitespace(xpp); 11796 while (eventType != XmlPullParser.END_TAG) { 11797 if (!parseDocumentReferenceContentComponentContent(eventType, xpp, res)) 11798 unknownContent(xpp); 11799 eventType = nextNoWhitespace(xpp); 11800 } 11801 next(xpp); 11802 parseElementClose(res); 11803 return res; 11804 } 11805 11806 protected boolean parseDocumentReferenceContentComponentContent(int eventType, XmlPullParser xpp, DocumentReference.DocumentReferenceContentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11807 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachment")) { 11808 res.setAttachment(parseAttachment(xpp)); 11809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 11810 res.getProfile().add(parseDocumentReferenceContentProfileComponent(xpp)); 11811 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11812 return false; 11813 } 11814 return true; 11815 } 11816 11817 protected DocumentReference.DocumentReferenceContentProfileComponent parseDocumentReferenceContentProfileComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11818 DocumentReference.DocumentReferenceContentProfileComponent res = new DocumentReference.DocumentReferenceContentProfileComponent(); 11819 parseElementAttributes(xpp, res); 11820 next(xpp); 11821 int eventType = nextNoWhitespace(xpp); 11822 while (eventType != XmlPullParser.END_TAG) { 11823 if (!parseDocumentReferenceContentProfileComponentContent(eventType, xpp, res)) 11824 unknownContent(xpp); 11825 eventType = nextNoWhitespace(xpp); 11826 } 11827 next(xpp); 11828 parseElementClose(res); 11829 return res; 11830 } 11831 11832 protected boolean parseDocumentReferenceContentProfileComponentContent(int eventType, XmlPullParser xpp, DocumentReference.DocumentReferenceContentProfileComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11833 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 11834 res.setValue(parseType("value", xpp)); 11835 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11836 return false; 11837 } 11838 return true; 11839 } 11840 11841 protected Encounter parseEncounter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11842 Encounter res = new Encounter(); 11843 parseResourceAttributes(xpp, res); 11844 next(xpp); 11845 int eventType = nextNoWhitespace(xpp); 11846 while (eventType != XmlPullParser.END_TAG) { 11847 if (!parseEncounterContent(eventType, xpp, res)) 11848 unknownContent(xpp); 11849 eventType = nextNoWhitespace(xpp); 11850 } 11851 next(xpp); 11852 parseElementClose(res); 11853 return res; 11854 } 11855 11856 protected boolean parseEncounterContent(int eventType, XmlPullParser xpp, Encounter res) throws XmlPullParserException, IOException, FHIRFormatError { 11857 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11858 res.getIdentifier().add(parseIdentifier(xpp)); 11859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11860 res.setStatusElement(parseEnumeration(xpp, Enumerations.EncounterStatus.NULL, new Enumerations.EncounterStatusEnumFactory())); 11861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 11862 res.getClass_().add(parseCodeableConcept(xpp)); 11863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 11864 res.setPriority(parseCodeableConcept(xpp)); 11865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11866 res.getType().add(parseCodeableConcept(xpp)); 11867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 11868 res.getServiceType().add(parseCodeableReference(xpp)); 11869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11870 res.setSubject(parseReference(xpp)); 11871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectStatus")) { 11872 res.setSubjectStatus(parseCodeableConcept(xpp)); 11873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("episodeOfCare")) { 11874 res.getEpisodeOfCare().add(parseReference(xpp)); 11875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11876 res.getBasedOn().add(parseReference(xpp)); 11877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 11878 res.getCareTeam().add(parseReference(xpp)); 11879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 11880 res.setPartOf(parseReference(xpp)); 11881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvider")) { 11882 res.setServiceProvider(parseReference(xpp)); 11883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 11884 res.getParticipant().add(parseEncounterParticipantComponent(xpp)); 11885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 11886 res.getAppointment().add(parseReference(xpp)); 11887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("virtualService")) { 11888 res.getVirtualService().add(parseVirtualServiceDetail(xpp)); 11889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actualPeriod")) { 11890 res.setActualPeriod(parsePeriod(xpp)); 11891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plannedStartDate")) { 11892 res.setPlannedStartDateElement(parseDateTime(xpp)); 11893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plannedEndDate")) { 11894 res.setPlannedEndDateElement(parseDateTime(xpp)); 11895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 11896 res.setLength(parseDuration(xpp)); 11897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11898 res.getReason().add(parseEncounterReasonComponent(xpp)); 11899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 11900 res.getDiagnosis().add(parseEncounterDiagnosisComponent(xpp)); 11901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 11902 res.getAccount().add(parseReference(xpp)); 11903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dietPreference")) { 11904 res.getDietPreference().add(parseCodeableConcept(xpp)); 11905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialArrangement")) { 11906 res.getSpecialArrangement().add(parseCodeableConcept(xpp)); 11907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialCourtesy")) { 11908 res.getSpecialCourtesy().add(parseCodeableConcept(xpp)); 11909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("admission")) { 11910 res.setAdmission(parseEncounterAdmissionComponent(xpp)); 11911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 11912 res.getLocation().add(parseEncounterLocationComponent(xpp)); 11913 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 11914 return false; 11915 } 11916 return true; 11917 } 11918 11919 protected Encounter.EncounterParticipantComponent parseEncounterParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11920 Encounter.EncounterParticipantComponent res = new Encounter.EncounterParticipantComponent(); 11921 parseElementAttributes(xpp, res); 11922 next(xpp); 11923 int eventType = nextNoWhitespace(xpp); 11924 while (eventType != XmlPullParser.END_TAG) { 11925 if (!parseEncounterParticipantComponentContent(eventType, xpp, res)) 11926 unknownContent(xpp); 11927 eventType = nextNoWhitespace(xpp); 11928 } 11929 next(xpp); 11930 parseElementClose(res); 11931 return res; 11932 } 11933 11934 protected boolean parseEncounterParticipantComponentContent(int eventType, XmlPullParser xpp, Encounter.EncounterParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11935 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11936 res.getType().add(parseCodeableConcept(xpp)); 11937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 11938 res.setPeriod(parsePeriod(xpp)); 11939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 11940 res.setActor(parseReference(xpp)); 11941 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11942 return false; 11943 } 11944 return true; 11945 } 11946 11947 protected Encounter.ReasonComponent parseEncounterReasonComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11948 Encounter.ReasonComponent res = new Encounter.ReasonComponent(); 11949 parseElementAttributes(xpp, res); 11950 next(xpp); 11951 int eventType = nextNoWhitespace(xpp); 11952 while (eventType != XmlPullParser.END_TAG) { 11953 if (!parseEncounterReasonComponentContent(eventType, xpp, res)) 11954 unknownContent(xpp); 11955 eventType = nextNoWhitespace(xpp); 11956 } 11957 next(xpp); 11958 parseElementClose(res); 11959 return res; 11960 } 11961 11962 protected boolean parseEncounterReasonComponentContent(int eventType, XmlPullParser xpp, Encounter.ReasonComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11963 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 11964 res.getUse().add(parseCodeableConcept(xpp)); 11965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 11966 res.getValue().add(parseCodeableReference(xpp)); 11967 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11968 return false; 11969 } 11970 return true; 11971 } 11972 11973 protected Encounter.DiagnosisComponent parseEncounterDiagnosisComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11974 Encounter.DiagnosisComponent res = new Encounter.DiagnosisComponent(); 11975 parseElementAttributes(xpp, res); 11976 next(xpp); 11977 int eventType = nextNoWhitespace(xpp); 11978 while (eventType != XmlPullParser.END_TAG) { 11979 if (!parseEncounterDiagnosisComponentContent(eventType, xpp, res)) 11980 unknownContent(xpp); 11981 eventType = nextNoWhitespace(xpp); 11982 } 11983 next(xpp); 11984 parseElementClose(res); 11985 return res; 11986 } 11987 11988 protected boolean parseEncounterDiagnosisComponentContent(int eventType, XmlPullParser xpp, Encounter.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11989 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 11990 res.getCondition().add(parseCodeableReference(xpp)); 11991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 11992 res.getUse().add(parseCodeableConcept(xpp)); 11993 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 11994 return false; 11995 } 11996 return true; 11997 } 11998 11999 protected Encounter.EncounterAdmissionComponent parseEncounterAdmissionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12000 Encounter.EncounterAdmissionComponent res = new Encounter.EncounterAdmissionComponent(); 12001 parseElementAttributes(xpp, res); 12002 next(xpp); 12003 int eventType = nextNoWhitespace(xpp); 12004 while (eventType != XmlPullParser.END_TAG) { 12005 if (!parseEncounterAdmissionComponentContent(eventType, xpp, res)) 12006 unknownContent(xpp); 12007 eventType = nextNoWhitespace(xpp); 12008 } 12009 next(xpp); 12010 parseElementClose(res); 12011 return res; 12012 } 12013 12014 protected boolean parseEncounterAdmissionComponentContent(int eventType, XmlPullParser xpp, Encounter.EncounterAdmissionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12015 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAdmissionIdentifier")) { 12016 res.setPreAdmissionIdentifier(parseIdentifier(xpp)); 12017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 12018 res.setOrigin(parseReference(xpp)); 12019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("admitSource")) { 12020 res.setAdmitSource(parseCodeableConcept(xpp)); 12021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reAdmission")) { 12022 res.setReAdmission(parseCodeableConcept(xpp)); 12023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 12024 res.setDestination(parseReference(xpp)); 12025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dischargeDisposition")) { 12026 res.setDischargeDisposition(parseCodeableConcept(xpp)); 12027 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12028 return false; 12029 } 12030 return true; 12031 } 12032 12033 protected Encounter.EncounterLocationComponent parseEncounterLocationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12034 Encounter.EncounterLocationComponent res = new Encounter.EncounterLocationComponent(); 12035 parseElementAttributes(xpp, res); 12036 next(xpp); 12037 int eventType = nextNoWhitespace(xpp); 12038 while (eventType != XmlPullParser.END_TAG) { 12039 if (!parseEncounterLocationComponentContent(eventType, xpp, res)) 12040 unknownContent(xpp); 12041 eventType = nextNoWhitespace(xpp); 12042 } 12043 next(xpp); 12044 parseElementClose(res); 12045 return res; 12046 } 12047 12048 protected boolean parseEncounterLocationComponentContent(int eventType, XmlPullParser xpp, Encounter.EncounterLocationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12049 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 12050 res.setLocation(parseReference(xpp)); 12051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12052 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterLocationStatus.NULL, new Encounter.EncounterLocationStatusEnumFactory())); 12053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 12054 res.setForm(parseCodeableConcept(xpp)); 12055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12056 res.setPeriod(parsePeriod(xpp)); 12057 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12058 return false; 12059 } 12060 return true; 12061 } 12062 12063 protected EncounterHistory parseEncounterHistory(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12064 EncounterHistory res = new EncounterHistory(); 12065 parseResourceAttributes(xpp, res); 12066 next(xpp); 12067 int eventType = nextNoWhitespace(xpp); 12068 while (eventType != XmlPullParser.END_TAG) { 12069 if (!parseEncounterHistoryContent(eventType, xpp, res)) 12070 unknownContent(xpp); 12071 eventType = nextNoWhitespace(xpp); 12072 } 12073 next(xpp); 12074 parseElementClose(res); 12075 return res; 12076 } 12077 12078 protected boolean parseEncounterHistoryContent(int eventType, XmlPullParser xpp, EncounterHistory res) throws XmlPullParserException, IOException, FHIRFormatError { 12079 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 12080 res.setEncounter(parseReference(xpp)); 12081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12082 res.getIdentifier().add(parseIdentifier(xpp)); 12083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12084 res.setStatusElement(parseEnumeration(xpp, Enumerations.EncounterStatus.NULL, new Enumerations.EncounterStatusEnumFactory())); 12085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 12086 res.setClass_(parseCodeableConcept(xpp)); 12087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12088 res.getType().add(parseCodeableConcept(xpp)); 12089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 12090 res.getServiceType().add(parseCodeableReference(xpp)); 12091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 12092 res.setSubject(parseReference(xpp)); 12093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectStatus")) { 12094 res.setSubjectStatus(parseCodeableConcept(xpp)); 12095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actualPeriod")) { 12096 res.setActualPeriod(parsePeriod(xpp)); 12097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plannedStartDate")) { 12098 res.setPlannedStartDateElement(parseDateTime(xpp)); 12099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plannedEndDate")) { 12100 res.setPlannedEndDateElement(parseDateTime(xpp)); 12101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 12102 res.setLength(parseDuration(xpp)); 12103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 12104 res.getLocation().add(parseEncounterHistoryLocationComponent(xpp)); 12105 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 12106 return false; 12107 } 12108 return true; 12109 } 12110 12111 protected EncounterHistory.EncounterHistoryLocationComponent parseEncounterHistoryLocationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12112 EncounterHistory.EncounterHistoryLocationComponent res = new EncounterHistory.EncounterHistoryLocationComponent(); 12113 parseElementAttributes(xpp, res); 12114 next(xpp); 12115 int eventType = nextNoWhitespace(xpp); 12116 while (eventType != XmlPullParser.END_TAG) { 12117 if (!parseEncounterHistoryLocationComponentContent(eventType, xpp, res)) 12118 unknownContent(xpp); 12119 eventType = nextNoWhitespace(xpp); 12120 } 12121 next(xpp); 12122 parseElementClose(res); 12123 return res; 12124 } 12125 12126 protected boolean parseEncounterHistoryLocationComponentContent(int eventType, XmlPullParser xpp, EncounterHistory.EncounterHistoryLocationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12127 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 12128 res.setLocation(parseReference(xpp)); 12129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 12130 res.setForm(parseCodeableConcept(xpp)); 12131 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12132 return false; 12133 } 12134 return true; 12135 } 12136 12137 protected Endpoint parseEndpoint(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12138 Endpoint res = new Endpoint(); 12139 parseResourceAttributes(xpp, res); 12140 next(xpp); 12141 int eventType = nextNoWhitespace(xpp); 12142 while (eventType != XmlPullParser.END_TAG) { 12143 if (!parseEndpointContent(eventType, xpp, res)) 12144 unknownContent(xpp); 12145 eventType = nextNoWhitespace(xpp); 12146 } 12147 next(xpp); 12148 parseElementClose(res); 12149 return res; 12150 } 12151 12152 protected boolean parseEndpointContent(int eventType, XmlPullParser xpp, Endpoint res) throws XmlPullParserException, IOException, FHIRFormatError { 12153 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12154 res.getIdentifier().add(parseIdentifier(xpp)); 12155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12156 res.setStatusElement(parseEnumeration(xpp, Endpoint.EndpointStatus.NULL, new Endpoint.EndpointStatusEnumFactory())); 12157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("connectionType")) { 12158 res.getConnectionType().add(parseCodeableConcept(xpp)); 12159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12160 res.setNameElement(parseString(xpp)); 12161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12162 res.setDescriptionElement(parseString(xpp)); 12163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("environmentType")) { 12164 res.getEnvironmentType().add(parseCodeableConcept(xpp)); 12165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 12166 res.setManagingOrganization(parseReference(xpp)); 12167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12168 res.getContact().add(parseContactPoint(xpp)); 12169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12170 res.setPeriod(parsePeriod(xpp)); 12171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 12172 res.getPayload().add(parseEndpointPayloadComponent(xpp)); 12173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12174 res.setAddressElement(parseUrl(xpp)); 12175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { 12176 res.getHeader().add(parseString(xpp)); 12177 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 12178 return false; 12179 } 12180 return true; 12181 } 12182 12183 protected Endpoint.EndpointPayloadComponent parseEndpointPayloadComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12184 Endpoint.EndpointPayloadComponent res = new Endpoint.EndpointPayloadComponent(); 12185 parseElementAttributes(xpp, res); 12186 next(xpp); 12187 int eventType = nextNoWhitespace(xpp); 12188 while (eventType != XmlPullParser.END_TAG) { 12189 if (!parseEndpointPayloadComponentContent(eventType, xpp, res)) 12190 unknownContent(xpp); 12191 eventType = nextNoWhitespace(xpp); 12192 } 12193 next(xpp); 12194 parseElementClose(res); 12195 return res; 12196 } 12197 12198 protected boolean parseEndpointPayloadComponentContent(int eventType, XmlPullParser xpp, Endpoint.EndpointPayloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12199 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12200 res.getType().add(parseCodeableConcept(xpp)); 12201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mimeType")) { 12202 res.getMimeType().add(parseCode(xpp)); 12203 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12204 return false; 12205 } 12206 return true; 12207 } 12208 12209 protected EnrollmentRequest parseEnrollmentRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12210 EnrollmentRequest res = new EnrollmentRequest(); 12211 parseResourceAttributes(xpp, res); 12212 next(xpp); 12213 int eventType = nextNoWhitespace(xpp); 12214 while (eventType != XmlPullParser.END_TAG) { 12215 if (!parseEnrollmentRequestContent(eventType, xpp, res)) 12216 unknownContent(xpp); 12217 eventType = nextNoWhitespace(xpp); 12218 } 12219 next(xpp); 12220 parseElementClose(res); 12221 return res; 12222 } 12223 12224 protected boolean parseEnrollmentRequestContent(int eventType, XmlPullParser xpp, EnrollmentRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 12225 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12226 res.getIdentifier().add(parseIdentifier(xpp)); 12227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12228 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 12229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 12230 res.setCreatedElement(parseDateTime(xpp)); 12231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 12232 res.setInsurer(parseReference(xpp)); 12233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 12234 res.setProvider(parseReference(xpp)); 12235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("candidate")) { 12236 res.setCandidate(parseReference(xpp)); 12237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 12238 res.setCoverage(parseReference(xpp)); 12239 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 12240 return false; 12241 } 12242 return true; 12243 } 12244 12245 protected EnrollmentResponse parseEnrollmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12246 EnrollmentResponse res = new EnrollmentResponse(); 12247 parseResourceAttributes(xpp, res); 12248 next(xpp); 12249 int eventType = nextNoWhitespace(xpp); 12250 while (eventType != XmlPullParser.END_TAG) { 12251 if (!parseEnrollmentResponseContent(eventType, xpp, res)) 12252 unknownContent(xpp); 12253 eventType = nextNoWhitespace(xpp); 12254 } 12255 next(xpp); 12256 parseElementClose(res); 12257 return res; 12258 } 12259 12260 protected boolean parseEnrollmentResponseContent(int eventType, XmlPullParser xpp, EnrollmentResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 12261 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12262 res.getIdentifier().add(parseIdentifier(xpp)); 12263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12264 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 12265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 12266 res.setRequest(parseReference(xpp)); 12267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 12268 res.setOutcomeElement(parseEnumeration(xpp, EnrollmentResponse.EnrollmentOutcome.NULL, new EnrollmentResponse.EnrollmentOutcomeEnumFactory())); 12269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 12270 res.setDispositionElement(parseString(xpp)); 12271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 12272 res.setCreatedElement(parseDateTime(xpp)); 12273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 12274 res.setOrganization(parseReference(xpp)); 12275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 12276 res.setRequestProvider(parseReference(xpp)); 12277 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 12278 return false; 12279 } 12280 return true; 12281 } 12282 12283 protected EpisodeOfCare parseEpisodeOfCare(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12284 EpisodeOfCare res = new EpisodeOfCare(); 12285 parseResourceAttributes(xpp, res); 12286 next(xpp); 12287 int eventType = nextNoWhitespace(xpp); 12288 while (eventType != XmlPullParser.END_TAG) { 12289 if (!parseEpisodeOfCareContent(eventType, xpp, res)) 12290 unknownContent(xpp); 12291 eventType = nextNoWhitespace(xpp); 12292 } 12293 next(xpp); 12294 parseElementClose(res); 12295 return res; 12296 } 12297 12298 protected boolean parseEpisodeOfCareContent(int eventType, XmlPullParser xpp, EpisodeOfCare res) throws XmlPullParserException, IOException, FHIRFormatError { 12299 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12300 res.getIdentifier().add(parseIdentifier(xpp)); 12301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12302 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 12303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 12304 res.getStatusHistory().add(parseEpisodeOfCareStatusHistoryComponent(xpp)); 12305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12306 res.getType().add(parseCodeableConcept(xpp)); 12307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 12308 res.getReason().add(parseEpisodeOfCareReasonComponent(xpp)); 12309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 12310 res.getDiagnosis().add(parseEpisodeOfCareDiagnosisComponent(xpp)); 12311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 12312 res.setPatient(parseReference(xpp)); 12313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 12314 res.setManagingOrganization(parseReference(xpp)); 12315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12316 res.setPeriod(parsePeriod(xpp)); 12317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralRequest")) { 12318 res.getReferralRequest().add(parseReference(xpp)); 12319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careManager")) { 12320 res.setCareManager(parseReference(xpp)); 12321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 12322 res.getCareTeam().add(parseReference(xpp)); 12323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 12324 res.getAccount().add(parseReference(xpp)); 12325 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 12326 return false; 12327 } 12328 return true; 12329 } 12330 12331 protected EpisodeOfCare.EpisodeOfCareStatusHistoryComponent parseEpisodeOfCareStatusHistoryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12332 EpisodeOfCare.EpisodeOfCareStatusHistoryComponent res = new EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); 12333 parseElementAttributes(xpp, res); 12334 next(xpp); 12335 int eventType = nextNoWhitespace(xpp); 12336 while (eventType != XmlPullParser.END_TAG) { 12337 if (!parseEpisodeOfCareStatusHistoryComponentContent(eventType, xpp, res)) 12338 unknownContent(xpp); 12339 eventType = nextNoWhitespace(xpp); 12340 } 12341 next(xpp); 12342 parseElementClose(res); 12343 return res; 12344 } 12345 12346 protected boolean parseEpisodeOfCareStatusHistoryComponentContent(int eventType, XmlPullParser xpp, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12347 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12348 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 12349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12350 res.setPeriod(parsePeriod(xpp)); 12351 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12352 return false; 12353 } 12354 return true; 12355 } 12356 12357 protected EpisodeOfCare.ReasonComponent parseEpisodeOfCareReasonComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12358 EpisodeOfCare.ReasonComponent res = new EpisodeOfCare.ReasonComponent(); 12359 parseElementAttributes(xpp, res); 12360 next(xpp); 12361 int eventType = nextNoWhitespace(xpp); 12362 while (eventType != XmlPullParser.END_TAG) { 12363 if (!parseEpisodeOfCareReasonComponentContent(eventType, xpp, res)) 12364 unknownContent(xpp); 12365 eventType = nextNoWhitespace(xpp); 12366 } 12367 next(xpp); 12368 parseElementClose(res); 12369 return res; 12370 } 12371 12372 protected boolean parseEpisodeOfCareReasonComponentContent(int eventType, XmlPullParser xpp, EpisodeOfCare.ReasonComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12373 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 12374 res.setUse(parseCodeableConcept(xpp)); 12375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 12376 res.getValue().add(parseCodeableReference(xpp)); 12377 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12378 return false; 12379 } 12380 return true; 12381 } 12382 12383 protected EpisodeOfCare.DiagnosisComponent parseEpisodeOfCareDiagnosisComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12384 EpisodeOfCare.DiagnosisComponent res = new EpisodeOfCare.DiagnosisComponent(); 12385 parseElementAttributes(xpp, res); 12386 next(xpp); 12387 int eventType = nextNoWhitespace(xpp); 12388 while (eventType != XmlPullParser.END_TAG) { 12389 if (!parseEpisodeOfCareDiagnosisComponentContent(eventType, xpp, res)) 12390 unknownContent(xpp); 12391 eventType = nextNoWhitespace(xpp); 12392 } 12393 next(xpp); 12394 parseElementClose(res); 12395 return res; 12396 } 12397 12398 protected boolean parseEpisodeOfCareDiagnosisComponentContent(int eventType, XmlPullParser xpp, EpisodeOfCare.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12399 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 12400 res.getCondition().add(parseCodeableReference(xpp)); 12401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 12402 res.setUse(parseCodeableConcept(xpp)); 12403 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12404 return false; 12405 } 12406 return true; 12407 } 12408 12409 protected EventDefinition parseEventDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12410 EventDefinition res = new EventDefinition(); 12411 parseResourceAttributes(xpp, res); 12412 next(xpp); 12413 int eventType = nextNoWhitespace(xpp); 12414 while (eventType != XmlPullParser.END_TAG) { 12415 if (!parseEventDefinitionContent(eventType, xpp, res)) 12416 unknownContent(xpp); 12417 eventType = nextNoWhitespace(xpp); 12418 } 12419 next(xpp); 12420 parseElementClose(res); 12421 return res; 12422 } 12423 12424 protected boolean parseEventDefinitionContent(int eventType, XmlPullParser xpp, EventDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 12425 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12426 res.setUrlElement(parseUri(xpp)); 12427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12428 res.getIdentifier().add(parseIdentifier(xpp)); 12429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12430 res.setVersionElement(parseString(xpp)); 12431 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 12432 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 12433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12434 res.setNameElement(parseString(xpp)); 12435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 12436 res.setTitleElement(parseString(xpp)); 12437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtitle")) { 12438 res.setSubtitleElement(parseString(xpp)); 12439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12440 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 12441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12442 res.setExperimentalElement(parseBoolean(xpp)); 12443 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 12444 res.setSubject(parseType("subject", xpp)); 12445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12446 res.setDateElement(parseDateTime(xpp)); 12447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12448 res.setPublisherElement(parseString(xpp)); 12449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12450 res.getContact().add(parseContactDetail(xpp)); 12451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12452 res.setDescriptionElement(parseMarkdown(xpp)); 12453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12454 res.getUseContext().add(parseUsageContext(xpp)); 12455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 12456 res.getJurisdiction().add(parseCodeableConcept(xpp)); 12457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 12458 res.setPurposeElement(parseMarkdown(xpp)); 12459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 12460 res.setUsageElement(parseMarkdown(xpp)); 12461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 12462 res.setCopyrightElement(parseMarkdown(xpp)); 12463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 12464 res.setCopyrightLabelElement(parseString(xpp)); 12465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 12466 res.setApprovalDateElement(parseDate(xpp)); 12467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 12468 res.setLastReviewDateElement(parseDate(xpp)); 12469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 12470 res.setEffectivePeriod(parsePeriod(xpp)); 12471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 12472 res.getTopic().add(parseCodeableConcept(xpp)); 12473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 12474 res.getAuthor().add(parseContactDetail(xpp)); 12475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 12476 res.getEditor().add(parseContactDetail(xpp)); 12477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 12478 res.getReviewer().add(parseContactDetail(xpp)); 12479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 12480 res.getEndorser().add(parseContactDetail(xpp)); 12481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 12482 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 12483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("trigger")) { 12484 res.getTrigger().add(parseTriggerDefinition(xpp)); 12485 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 12486 return false; 12487 } 12488 return true; 12489 } 12490 12491 protected Evidence parseEvidence(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12492 Evidence res = new Evidence(); 12493 parseResourceAttributes(xpp, res); 12494 next(xpp); 12495 int eventType = nextNoWhitespace(xpp); 12496 while (eventType != XmlPullParser.END_TAG) { 12497 if (!parseEvidenceContent(eventType, xpp, res)) 12498 unknownContent(xpp); 12499 eventType = nextNoWhitespace(xpp); 12500 } 12501 next(xpp); 12502 parseElementClose(res); 12503 return res; 12504 } 12505 12506 protected boolean parseEvidenceContent(int eventType, XmlPullParser xpp, Evidence res) throws XmlPullParserException, IOException, FHIRFormatError { 12507 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12508 res.setUrlElement(parseUri(xpp)); 12509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12510 res.getIdentifier().add(parseIdentifier(xpp)); 12511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12512 res.setVersionElement(parseString(xpp)); 12513 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 12514 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 12515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12516 res.setNameElement(parseString(xpp)); 12517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 12518 res.setTitleElement(parseString(xpp)); 12519 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "citeAs")) { 12520 res.setCiteAs(parseType("citeAs", xpp)); 12521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12522 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 12523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12524 res.setExperimentalElement(parseBoolean(xpp)); 12525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12526 res.setDateElement(parseDateTime(xpp)); 12527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 12528 res.setApprovalDateElement(parseDate(xpp)); 12529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 12530 res.setLastReviewDateElement(parseDate(xpp)); 12531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12532 res.setPublisherElement(parseString(xpp)); 12533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12534 res.getContact().add(parseContactDetail(xpp)); 12535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 12536 res.getAuthor().add(parseContactDetail(xpp)); 12537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 12538 res.getEditor().add(parseContactDetail(xpp)); 12539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 12540 res.getReviewer().add(parseContactDetail(xpp)); 12541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 12542 res.getEndorser().add(parseContactDetail(xpp)); 12543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12544 res.getUseContext().add(parseUsageContext(xpp)); 12545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 12546 res.setPurposeElement(parseMarkdown(xpp)); 12547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 12548 res.setCopyrightElement(parseMarkdown(xpp)); 12549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 12550 res.setCopyrightLabelElement(parseString(xpp)); 12551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 12552 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 12553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12554 res.setDescriptionElement(parseMarkdown(xpp)); 12555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assertion")) { 12556 res.setAssertionElement(parseMarkdown(xpp)); 12557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 12558 res.getNote().add(parseAnnotation(xpp)); 12559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variableDefinition")) { 12560 res.getVariableDefinition().add(parseEvidenceVariableDefinitionComponent(xpp)); 12561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("synthesisType")) { 12562 res.setSynthesisType(parseCodeableConcept(xpp)); 12563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("studyDesign")) { 12564 res.getStudyDesign().add(parseCodeableConcept(xpp)); 12565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statistic")) { 12566 res.getStatistic().add(parseEvidenceStatisticComponent(xpp)); 12567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("certainty")) { 12568 res.getCertainty().add(parseEvidenceCertaintyComponent(xpp)); 12569 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 12570 return false; 12571 } 12572 return true; 12573 } 12574 12575 protected Evidence.EvidenceVariableDefinitionComponent parseEvidenceVariableDefinitionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12576 Evidence.EvidenceVariableDefinitionComponent res = new Evidence.EvidenceVariableDefinitionComponent(); 12577 parseElementAttributes(xpp, res); 12578 next(xpp); 12579 int eventType = nextNoWhitespace(xpp); 12580 while (eventType != XmlPullParser.END_TAG) { 12581 if (!parseEvidenceVariableDefinitionComponentContent(eventType, xpp, res)) 12582 unknownContent(xpp); 12583 eventType = nextNoWhitespace(xpp); 12584 } 12585 next(xpp); 12586 parseElementClose(res); 12587 return res; 12588 } 12589 12590 protected boolean parseEvidenceVariableDefinitionComponentContent(int eventType, XmlPullParser xpp, Evidence.EvidenceVariableDefinitionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12591 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12592 res.setDescriptionElement(parseMarkdown(xpp)); 12593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 12594 res.getNote().add(parseAnnotation(xpp)); 12595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variableRole")) { 12596 res.setVariableRole(parseCodeableConcept(xpp)); 12597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observed")) { 12598 res.setObserved(parseReference(xpp)); 12599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intended")) { 12600 res.setIntended(parseReference(xpp)); 12601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("directnessMatch")) { 12602 res.setDirectnessMatch(parseCodeableConcept(xpp)); 12603 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12604 return false; 12605 } 12606 return true; 12607 } 12608 12609 protected Evidence.EvidenceStatisticComponent parseEvidenceStatisticComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12610 Evidence.EvidenceStatisticComponent res = new Evidence.EvidenceStatisticComponent(); 12611 parseElementAttributes(xpp, res); 12612 next(xpp); 12613 int eventType = nextNoWhitespace(xpp); 12614 while (eventType != XmlPullParser.END_TAG) { 12615 if (!parseEvidenceStatisticComponentContent(eventType, xpp, res)) 12616 unknownContent(xpp); 12617 eventType = nextNoWhitespace(xpp); 12618 } 12619 next(xpp); 12620 parseElementClose(res); 12621 return res; 12622 } 12623 12624 protected boolean parseEvidenceStatisticComponentContent(int eventType, XmlPullParser xpp, Evidence.EvidenceStatisticComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12625 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12626 res.setDescriptionElement(parseMarkdown(xpp)); 12627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 12628 res.getNote().add(parseAnnotation(xpp)); 12629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statisticType")) { 12630 res.setStatisticType(parseCodeableConcept(xpp)); 12631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 12632 res.setCategory(parseCodeableConcept(xpp)); 12633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 12634 res.setQuantity(parseQuantity(xpp)); 12635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfEvents")) { 12636 res.setNumberOfEventsElement(parseUnsignedInt(xpp)); 12637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberAffected")) { 12638 res.setNumberAffectedElement(parseUnsignedInt(xpp)); 12639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sampleSize")) { 12640 res.setSampleSize(parseEvidenceStatisticSampleSizeComponent(xpp)); 12641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attributeEstimate")) { 12642 res.getAttributeEstimate().add(parseEvidenceStatisticAttributeEstimateComponent(xpp)); 12643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modelCharacteristic")) { 12644 res.getModelCharacteristic().add(parseEvidenceStatisticModelCharacteristicComponent(xpp)); 12645 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12646 return false; 12647 } 12648 return true; 12649 } 12650 12651 protected Evidence.EvidenceStatisticSampleSizeComponent parseEvidenceStatisticSampleSizeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12652 Evidence.EvidenceStatisticSampleSizeComponent res = new Evidence.EvidenceStatisticSampleSizeComponent(); 12653 parseElementAttributes(xpp, res); 12654 next(xpp); 12655 int eventType = nextNoWhitespace(xpp); 12656 while (eventType != XmlPullParser.END_TAG) { 12657 if (!parseEvidenceStatisticSampleSizeComponentContent(eventType, xpp, res)) 12658 unknownContent(xpp); 12659 eventType = nextNoWhitespace(xpp); 12660 } 12661 next(xpp); 12662 parseElementClose(res); 12663 return res; 12664 } 12665 12666 protected boolean parseEvidenceStatisticSampleSizeComponentContent(int eventType, XmlPullParser xpp, Evidence.EvidenceStatisticSampleSizeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12667 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12668 res.setDescriptionElement(parseMarkdown(xpp)); 12669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 12670 res.getNote().add(parseAnnotation(xpp)); 12671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfStudies")) { 12672 res.setNumberOfStudiesElement(parseUnsignedInt(xpp)); 12673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfParticipants")) { 12674 res.setNumberOfParticipantsElement(parseUnsignedInt(xpp)); 12675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("knownDataCount")) { 12676 res.setKnownDataCountElement(parseUnsignedInt(xpp)); 12677 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12678 return false; 12679 } 12680 return true; 12681 } 12682 12683 protected Evidence.EvidenceStatisticAttributeEstimateComponent parseEvidenceStatisticAttributeEstimateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12684 Evidence.EvidenceStatisticAttributeEstimateComponent res = new Evidence.EvidenceStatisticAttributeEstimateComponent(); 12685 parseElementAttributes(xpp, res); 12686 next(xpp); 12687 int eventType = nextNoWhitespace(xpp); 12688 while (eventType != XmlPullParser.END_TAG) { 12689 if (!parseEvidenceStatisticAttributeEstimateComponentContent(eventType, xpp, res)) 12690 unknownContent(xpp); 12691 eventType = nextNoWhitespace(xpp); 12692 } 12693 next(xpp); 12694 parseElementClose(res); 12695 return res; 12696 } 12697 12698 protected boolean parseEvidenceStatisticAttributeEstimateComponentContent(int eventType, XmlPullParser xpp, Evidence.EvidenceStatisticAttributeEstimateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12699 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12700 res.setDescriptionElement(parseMarkdown(xpp)); 12701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 12702 res.getNote().add(parseAnnotation(xpp)); 12703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12704 res.setType(parseCodeableConcept(xpp)); 12705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 12706 res.setQuantity(parseQuantity(xpp)); 12707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("level")) { 12708 res.setLevelElement(parseDecimal(xpp)); 12709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("range")) { 12710 res.setRange(parseRange(xpp)); 12711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attributeEstimate")) { 12712 res.getAttributeEstimate().add(parseEvidenceStatisticAttributeEstimateComponent(xpp)); 12713 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12714 return false; 12715 } 12716 return true; 12717 } 12718 12719 protected Evidence.EvidenceStatisticModelCharacteristicComponent parseEvidenceStatisticModelCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12720 Evidence.EvidenceStatisticModelCharacteristicComponent res = new Evidence.EvidenceStatisticModelCharacteristicComponent(); 12721 parseElementAttributes(xpp, res); 12722 next(xpp); 12723 int eventType = nextNoWhitespace(xpp); 12724 while (eventType != XmlPullParser.END_TAG) { 12725 if (!parseEvidenceStatisticModelCharacteristicComponentContent(eventType, xpp, res)) 12726 unknownContent(xpp); 12727 eventType = nextNoWhitespace(xpp); 12728 } 12729 next(xpp); 12730 parseElementClose(res); 12731 return res; 12732 } 12733 12734 protected boolean parseEvidenceStatisticModelCharacteristicComponentContent(int eventType, XmlPullParser xpp, Evidence.EvidenceStatisticModelCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12735 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12736 res.setCode(parseCodeableConcept(xpp)); 12737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 12738 res.setValue(parseQuantity(xpp)); 12739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 12740 res.getVariable().add(parseEvidenceStatisticModelCharacteristicVariableComponent(xpp)); 12741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attributeEstimate")) { 12742 res.getAttributeEstimate().add(parseEvidenceStatisticAttributeEstimateComponent(xpp)); 12743 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12744 return false; 12745 } 12746 return true; 12747 } 12748 12749 protected Evidence.EvidenceStatisticModelCharacteristicVariableComponent parseEvidenceStatisticModelCharacteristicVariableComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12750 Evidence.EvidenceStatisticModelCharacteristicVariableComponent res = new Evidence.EvidenceStatisticModelCharacteristicVariableComponent(); 12751 parseElementAttributes(xpp, res); 12752 next(xpp); 12753 int eventType = nextNoWhitespace(xpp); 12754 while (eventType != XmlPullParser.END_TAG) { 12755 if (!parseEvidenceStatisticModelCharacteristicVariableComponentContent(eventType, xpp, res)) 12756 unknownContent(xpp); 12757 eventType = nextNoWhitespace(xpp); 12758 } 12759 next(xpp); 12760 parseElementClose(res); 12761 return res; 12762 } 12763 12764 protected boolean parseEvidenceStatisticModelCharacteristicVariableComponentContent(int eventType, XmlPullParser xpp, Evidence.EvidenceStatisticModelCharacteristicVariableComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12765 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variableDefinition")) { 12766 res.setVariableDefinition(parseReference(xpp)); 12767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("handling")) { 12768 res.setHandlingElement(parseEnumeration(xpp, Enumerations.EvidenceVariableHandling.NULL, new Enumerations.EvidenceVariableHandlingEnumFactory())); 12769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCategory")) { 12770 res.getValueCategory().add(parseCodeableConcept(xpp)); 12771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueQuantity")) { 12772 res.getValueQuantity().add(parseQuantity(xpp)); 12773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueRange")) { 12774 res.getValueRange().add(parseRange(xpp)); 12775 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12776 return false; 12777 } 12778 return true; 12779 } 12780 12781 protected Evidence.EvidenceCertaintyComponent parseEvidenceCertaintyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12782 Evidence.EvidenceCertaintyComponent res = new Evidence.EvidenceCertaintyComponent(); 12783 parseElementAttributes(xpp, res); 12784 next(xpp); 12785 int eventType = nextNoWhitespace(xpp); 12786 while (eventType != XmlPullParser.END_TAG) { 12787 if (!parseEvidenceCertaintyComponentContent(eventType, xpp, res)) 12788 unknownContent(xpp); 12789 eventType = nextNoWhitespace(xpp); 12790 } 12791 next(xpp); 12792 parseElementClose(res); 12793 return res; 12794 } 12795 12796 protected boolean parseEvidenceCertaintyComponentContent(int eventType, XmlPullParser xpp, Evidence.EvidenceCertaintyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12797 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12798 res.setDescriptionElement(parseMarkdown(xpp)); 12799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 12800 res.getNote().add(parseAnnotation(xpp)); 12801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12802 res.setType(parseCodeableConcept(xpp)); 12803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rating")) { 12804 res.setRating(parseCodeableConcept(xpp)); 12805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rater")) { 12806 res.setRaterElement(parseString(xpp)); 12807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subcomponent")) { 12808 res.getSubcomponent().add(parseEvidenceCertaintyComponent(xpp)); 12809 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12810 return false; 12811 } 12812 return true; 12813 } 12814 12815 protected EvidenceReport parseEvidenceReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12816 EvidenceReport res = new EvidenceReport(); 12817 parseResourceAttributes(xpp, res); 12818 next(xpp); 12819 int eventType = nextNoWhitespace(xpp); 12820 while (eventType != XmlPullParser.END_TAG) { 12821 if (!parseEvidenceReportContent(eventType, xpp, res)) 12822 unknownContent(xpp); 12823 eventType = nextNoWhitespace(xpp); 12824 } 12825 next(xpp); 12826 parseElementClose(res); 12827 return res; 12828 } 12829 12830 protected boolean parseEvidenceReportContent(int eventType, XmlPullParser xpp, EvidenceReport res) throws XmlPullParserException, IOException, FHIRFormatError { 12831 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12832 res.setUrlElement(parseUri(xpp)); 12833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12834 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 12835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12836 res.getUseContext().add(parseUsageContext(xpp)); 12837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12838 res.getIdentifier().add(parseIdentifier(xpp)); 12839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedIdentifier")) { 12840 res.getRelatedIdentifier().add(parseIdentifier(xpp)); 12841 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "citeAs")) { 12842 res.setCiteAs(parseType("citeAs", xpp)); 12843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12844 res.setType(parseCodeableConcept(xpp)); 12845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 12846 res.getNote().add(parseAnnotation(xpp)); 12847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 12848 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 12849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 12850 res.setSubject(parseEvidenceReportSubjectComponent(xpp)); 12851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12852 res.setPublisherElement(parseString(xpp)); 12853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12854 res.getContact().add(parseContactDetail(xpp)); 12855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 12856 res.getAuthor().add(parseContactDetail(xpp)); 12857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 12858 res.getEditor().add(parseContactDetail(xpp)); 12859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 12860 res.getReviewer().add(parseContactDetail(xpp)); 12861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 12862 res.getEndorser().add(parseContactDetail(xpp)); 12863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 12864 res.getRelatesTo().add(parseEvidenceReportRelatesToComponent(xpp)); 12865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 12866 res.getSection().add(parseEvidenceReportSectionComponent(xpp)); 12867 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 12868 return false; 12869 } 12870 return true; 12871 } 12872 12873 protected EvidenceReport.EvidenceReportSubjectComponent parseEvidenceReportSubjectComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12874 EvidenceReport.EvidenceReportSubjectComponent res = new EvidenceReport.EvidenceReportSubjectComponent(); 12875 parseElementAttributes(xpp, res); 12876 next(xpp); 12877 int eventType = nextNoWhitespace(xpp); 12878 while (eventType != XmlPullParser.END_TAG) { 12879 if (!parseEvidenceReportSubjectComponentContent(eventType, xpp, res)) 12880 unknownContent(xpp); 12881 eventType = nextNoWhitespace(xpp); 12882 } 12883 next(xpp); 12884 parseElementClose(res); 12885 return res; 12886 } 12887 12888 protected boolean parseEvidenceReportSubjectComponentContent(int eventType, XmlPullParser xpp, EvidenceReport.EvidenceReportSubjectComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12889 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 12890 res.getCharacteristic().add(parseEvidenceReportSubjectCharacteristicComponent(xpp)); 12891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 12892 res.getNote().add(parseAnnotation(xpp)); 12893 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12894 return false; 12895 } 12896 return true; 12897 } 12898 12899 protected EvidenceReport.EvidenceReportSubjectCharacteristicComponent parseEvidenceReportSubjectCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12900 EvidenceReport.EvidenceReportSubjectCharacteristicComponent res = new EvidenceReport.EvidenceReportSubjectCharacteristicComponent(); 12901 parseElementAttributes(xpp, res); 12902 next(xpp); 12903 int eventType = nextNoWhitespace(xpp); 12904 while (eventType != XmlPullParser.END_TAG) { 12905 if (!parseEvidenceReportSubjectCharacteristicComponentContent(eventType, xpp, res)) 12906 unknownContent(xpp); 12907 eventType = nextNoWhitespace(xpp); 12908 } 12909 next(xpp); 12910 parseElementClose(res); 12911 return res; 12912 } 12913 12914 protected boolean parseEvidenceReportSubjectCharacteristicComponentContent(int eventType, XmlPullParser xpp, EvidenceReport.EvidenceReportSubjectCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12915 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12916 res.setCode(parseCodeableConcept(xpp)); 12917 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 12918 res.setValue(parseType("value", xpp)); 12919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 12920 res.setExcludeElement(parseBoolean(xpp)); 12921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12922 res.setPeriod(parsePeriod(xpp)); 12923 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12924 return false; 12925 } 12926 return true; 12927 } 12928 12929 protected EvidenceReport.EvidenceReportRelatesToComponent parseEvidenceReportRelatesToComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12930 EvidenceReport.EvidenceReportRelatesToComponent res = new EvidenceReport.EvidenceReportRelatesToComponent(); 12931 parseElementAttributes(xpp, res); 12932 next(xpp); 12933 int eventType = nextNoWhitespace(xpp); 12934 while (eventType != XmlPullParser.END_TAG) { 12935 if (!parseEvidenceReportRelatesToComponentContent(eventType, xpp, res)) 12936 unknownContent(xpp); 12937 eventType = nextNoWhitespace(xpp); 12938 } 12939 next(xpp); 12940 parseElementClose(res); 12941 return res; 12942 } 12943 12944 protected boolean parseEvidenceReportRelatesToComponentContent(int eventType, XmlPullParser xpp, EvidenceReport.EvidenceReportRelatesToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12945 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12946 res.setCodeElement(parseEnumeration(xpp, EvidenceReport.ReportRelationshipType.NULL, new EvidenceReport.ReportRelationshipTypeEnumFactory())); 12947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12948 res.setTarget(parseEvidenceReportRelatesToTargetComponent(xpp)); 12949 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12950 return false; 12951 } 12952 return true; 12953 } 12954 12955 protected EvidenceReport.EvidenceReportRelatesToTargetComponent parseEvidenceReportRelatesToTargetComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12956 EvidenceReport.EvidenceReportRelatesToTargetComponent res = new EvidenceReport.EvidenceReportRelatesToTargetComponent(); 12957 parseElementAttributes(xpp, res); 12958 next(xpp); 12959 int eventType = nextNoWhitespace(xpp); 12960 while (eventType != XmlPullParser.END_TAG) { 12961 if (!parseEvidenceReportRelatesToTargetComponentContent(eventType, xpp, res)) 12962 unknownContent(xpp); 12963 eventType = nextNoWhitespace(xpp); 12964 } 12965 next(xpp); 12966 parseElementClose(res); 12967 return res; 12968 } 12969 12970 protected boolean parseEvidenceReportRelatesToTargetComponentContent(int eventType, XmlPullParser xpp, EvidenceReport.EvidenceReportRelatesToTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12971 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12972 res.setUrlElement(parseUri(xpp)); 12973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12974 res.setIdentifier(parseIdentifier(xpp)); 12975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 12976 res.setDisplayElement(parseMarkdown(xpp)); 12977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 12978 res.setResource(parseReference(xpp)); 12979 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 12980 return false; 12981 } 12982 return true; 12983 } 12984 12985 protected EvidenceReport.SectionComponent parseEvidenceReportSectionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12986 EvidenceReport.SectionComponent res = new EvidenceReport.SectionComponent(); 12987 parseElementAttributes(xpp, res); 12988 next(xpp); 12989 int eventType = nextNoWhitespace(xpp); 12990 while (eventType != XmlPullParser.END_TAG) { 12991 if (!parseEvidenceReportSectionComponentContent(eventType, xpp, res)) 12992 unknownContent(xpp); 12993 eventType = nextNoWhitespace(xpp); 12994 } 12995 next(xpp); 12996 parseElementClose(res); 12997 return res; 12998 } 12999 13000 protected boolean parseEvidenceReportSectionComponentContent(int eventType, XmlPullParser xpp, EvidenceReport.SectionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13001 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13002 res.setTitleElement(parseString(xpp)); 13003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 13004 res.setFocus(parseCodeableConcept(xpp)); 13005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focusReference")) { 13006 res.setFocusReference(parseReference(xpp)); 13007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 13008 res.getAuthor().add(parseReference(xpp)); 13009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 13010 res.setText(parseNarrative(xpp)); 13011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 13012 res.setModeElement(parseEnumeration(xpp, Enumerations.ListMode.NULL, new Enumerations.ListModeEnumFactory())); 13013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 13014 res.setOrderedBy(parseCodeableConcept(xpp)); 13015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entryClassifier")) { 13016 res.getEntryClassifier().add(parseCodeableConcept(xpp)); 13017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entryReference")) { 13018 res.getEntryReference().add(parseReference(xpp)); 13019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entryQuantity")) { 13020 res.getEntryQuantity().add(parseQuantity(xpp)); 13021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 13022 res.setEmptyReason(parseCodeableConcept(xpp)); 13023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 13024 res.getSection().add(parseEvidenceReportSectionComponent(xpp)); 13025 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13026 return false; 13027 } 13028 return true; 13029 } 13030 13031 protected EvidenceVariable parseEvidenceVariable(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13032 EvidenceVariable res = new EvidenceVariable(); 13033 parseResourceAttributes(xpp, res); 13034 next(xpp); 13035 int eventType = nextNoWhitespace(xpp); 13036 while (eventType != XmlPullParser.END_TAG) { 13037 if (!parseEvidenceVariableContent(eventType, xpp, res)) 13038 unknownContent(xpp); 13039 eventType = nextNoWhitespace(xpp); 13040 } 13041 next(xpp); 13042 parseElementClose(res); 13043 return res; 13044 } 13045 13046 protected boolean parseEvidenceVariableContent(int eventType, XmlPullParser xpp, EvidenceVariable res) throws XmlPullParserException, IOException, FHIRFormatError { 13047 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 13048 res.setUrlElement(parseUri(xpp)); 13049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13050 res.getIdentifier().add(parseIdentifier(xpp)); 13051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 13052 res.setVersionElement(parseString(xpp)); 13053 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 13054 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 13055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13056 res.setNameElement(parseString(xpp)); 13057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13058 res.setTitleElement(parseString(xpp)); 13059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("shortTitle")) { 13060 res.setShortTitleElement(parseString(xpp)); 13061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13062 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 13063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 13064 res.setExperimentalElement(parseBoolean(xpp)); 13065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 13066 res.setDateElement(parseDateTime(xpp)); 13067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 13068 res.setPublisherElement(parseString(xpp)); 13069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 13070 res.getContact().add(parseContactDetail(xpp)); 13071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13072 res.setDescriptionElement(parseMarkdown(xpp)); 13073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 13074 res.getNote().add(parseAnnotation(xpp)); 13075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 13076 res.getUseContext().add(parseUsageContext(xpp)); 13077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 13078 res.setPurposeElement(parseMarkdown(xpp)); 13079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 13080 res.setCopyrightElement(parseMarkdown(xpp)); 13081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 13082 res.setCopyrightLabelElement(parseString(xpp)); 13083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 13084 res.setApprovalDateElement(parseDate(xpp)); 13085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 13086 res.setLastReviewDateElement(parseDate(xpp)); 13087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 13088 res.setEffectivePeriod(parsePeriod(xpp)); 13089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 13090 res.getAuthor().add(parseContactDetail(xpp)); 13091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 13092 res.getEditor().add(parseContactDetail(xpp)); 13093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 13094 res.getReviewer().add(parseContactDetail(xpp)); 13095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 13096 res.getEndorser().add(parseContactDetail(xpp)); 13097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 13098 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 13099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { 13100 res.setActualElement(parseBoolean(xpp)); 13101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 13102 res.getCharacteristic().add(parseEvidenceVariableCharacteristicComponent(xpp)); 13103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("handling")) { 13104 res.setHandlingElement(parseEnumeration(xpp, Enumerations.EvidenceVariableHandling.NULL, new Enumerations.EvidenceVariableHandlingEnumFactory())); 13105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 13106 res.getCategory().add(parseEvidenceVariableCategoryComponent(xpp)); 13107 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 13108 return false; 13109 } 13110 return true; 13111 } 13112 13113 protected EvidenceVariable.EvidenceVariableCharacteristicComponent parseEvidenceVariableCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13114 EvidenceVariable.EvidenceVariableCharacteristicComponent res = new EvidenceVariable.EvidenceVariableCharacteristicComponent(); 13115 parseElementAttributes(xpp, res); 13116 next(xpp); 13117 int eventType = nextNoWhitespace(xpp); 13118 while (eventType != XmlPullParser.END_TAG) { 13119 if (!parseEvidenceVariableCharacteristicComponentContent(eventType, xpp, res)) 13120 unknownContent(xpp); 13121 eventType = nextNoWhitespace(xpp); 13122 } 13123 next(xpp); 13124 parseElementClose(res); 13125 return res; 13126 } 13127 13128 protected boolean parseEvidenceVariableCharacteristicComponentContent(int eventType, XmlPullParser xpp, EvidenceVariable.EvidenceVariableCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13129 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 13130 res.setLinkIdElement(parseId(xpp)); 13131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13132 res.setDescriptionElement(parseMarkdown(xpp)); 13133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 13134 res.getNote().add(parseAnnotation(xpp)); 13135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 13136 res.setExcludeElement(parseBoolean(xpp)); 13137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionReference")) { 13138 res.setDefinitionReference(parseReference(xpp)); 13139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionCanonical")) { 13140 res.setDefinitionCanonicalElement(parseCanonical(xpp)); 13141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionCodeableConcept")) { 13142 res.setDefinitionCodeableConcept(parseCodeableConcept(xpp)); 13143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionExpression")) { 13144 res.setDefinitionExpression(parseExpression(xpp)); 13145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionId")) { 13146 res.setDefinitionIdElement(parseId(xpp)); 13147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionByTypeAndValue")) { 13148 res.setDefinitionByTypeAndValue(parseEvidenceVariableCharacteristicDefinitionByTypeAndValueComponent(xpp)); 13149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitionByCombination")) { 13150 res.setDefinitionByCombination(parseEvidenceVariableCharacteristicDefinitionByCombinationComponent(xpp)); 13151 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "instances")) { 13152 res.setInstances(parseType("instances", xpp)); 13153 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "duration")) { 13154 res.setDuration(parseType("duration", xpp)); 13155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timeFromEvent")) { 13156 res.getTimeFromEvent().add(parseEvidenceVariableCharacteristicTimeFromEventComponent(xpp)); 13157 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13158 return false; 13159 } 13160 return true; 13161 } 13162 13163 protected EvidenceVariable.EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent parseEvidenceVariableCharacteristicDefinitionByTypeAndValueComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13164 EvidenceVariable.EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent res = new EvidenceVariable.EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent(); 13165 parseElementAttributes(xpp, res); 13166 next(xpp); 13167 int eventType = nextNoWhitespace(xpp); 13168 while (eventType != XmlPullParser.END_TAG) { 13169 if (!parseEvidenceVariableCharacteristicDefinitionByTypeAndValueComponentContent(eventType, xpp, res)) 13170 unknownContent(xpp); 13171 eventType = nextNoWhitespace(xpp); 13172 } 13173 next(xpp); 13174 parseElementClose(res); 13175 return res; 13176 } 13177 13178 protected boolean parseEvidenceVariableCharacteristicDefinitionByTypeAndValueComponentContent(int eventType, XmlPullParser xpp, EvidenceVariable.EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13179 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13180 res.setType(parseCodeableConcept(xpp)); 13181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 13182 res.getMethod().add(parseCodeableConcept(xpp)); 13183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 13184 res.setDevice(parseReference(xpp)); 13185 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 13186 res.setValue(parseType("value", xpp)); 13187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 13188 res.setOffset(parseCodeableConcept(xpp)); 13189 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13190 return false; 13191 } 13192 return true; 13193 } 13194 13195 protected EvidenceVariable.EvidenceVariableCharacteristicDefinitionByCombinationComponent parseEvidenceVariableCharacteristicDefinitionByCombinationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13196 EvidenceVariable.EvidenceVariableCharacteristicDefinitionByCombinationComponent res = new EvidenceVariable.EvidenceVariableCharacteristicDefinitionByCombinationComponent(); 13197 parseElementAttributes(xpp, res); 13198 next(xpp); 13199 int eventType = nextNoWhitespace(xpp); 13200 while (eventType != XmlPullParser.END_TAG) { 13201 if (!parseEvidenceVariableCharacteristicDefinitionByCombinationComponentContent(eventType, xpp, res)) 13202 unknownContent(xpp); 13203 eventType = nextNoWhitespace(xpp); 13204 } 13205 next(xpp); 13206 parseElementClose(res); 13207 return res; 13208 } 13209 13210 protected boolean parseEvidenceVariableCharacteristicDefinitionByCombinationComponentContent(int eventType, XmlPullParser xpp, EvidenceVariable.EvidenceVariableCharacteristicDefinitionByCombinationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13211 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13212 res.setCodeElement(parseEnumeration(xpp, EvidenceVariable.CharacteristicCombination.NULL, new EvidenceVariable.CharacteristicCombinationEnumFactory())); 13213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("threshold")) { 13214 res.setThresholdElement(parsePositiveInt(xpp)); 13215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 13216 res.getCharacteristic().add(parseEvidenceVariableCharacteristicComponent(xpp)); 13217 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13218 return false; 13219 } 13220 return true; 13221 } 13222 13223 protected EvidenceVariable.EvidenceVariableCharacteristicTimeFromEventComponent parseEvidenceVariableCharacteristicTimeFromEventComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13224 EvidenceVariable.EvidenceVariableCharacteristicTimeFromEventComponent res = new EvidenceVariable.EvidenceVariableCharacteristicTimeFromEventComponent(); 13225 parseElementAttributes(xpp, res); 13226 next(xpp); 13227 int eventType = nextNoWhitespace(xpp); 13228 while (eventType != XmlPullParser.END_TAG) { 13229 if (!parseEvidenceVariableCharacteristicTimeFromEventComponentContent(eventType, xpp, res)) 13230 unknownContent(xpp); 13231 eventType = nextNoWhitespace(xpp); 13232 } 13233 next(xpp); 13234 parseElementClose(res); 13235 return res; 13236 } 13237 13238 protected boolean parseEvidenceVariableCharacteristicTimeFromEventComponentContent(int eventType, XmlPullParser xpp, EvidenceVariable.EvidenceVariableCharacteristicTimeFromEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13239 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13240 res.setDescriptionElement(parseMarkdown(xpp)); 13241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 13242 res.getNote().add(parseAnnotation(xpp)); 13243 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "event")) { 13244 res.setEvent(parseType("event", xpp)); 13245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 13246 res.setQuantity(parseQuantity(xpp)); 13247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("range")) { 13248 res.setRange(parseRange(xpp)); 13249 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13250 return false; 13251 } 13252 return true; 13253 } 13254 13255 protected EvidenceVariable.EvidenceVariableCategoryComponent parseEvidenceVariableCategoryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13256 EvidenceVariable.EvidenceVariableCategoryComponent res = new EvidenceVariable.EvidenceVariableCategoryComponent(); 13257 parseElementAttributes(xpp, res); 13258 next(xpp); 13259 int eventType = nextNoWhitespace(xpp); 13260 while (eventType != XmlPullParser.END_TAG) { 13261 if (!parseEvidenceVariableCategoryComponentContent(eventType, xpp, res)) 13262 unknownContent(xpp); 13263 eventType = nextNoWhitespace(xpp); 13264 } 13265 next(xpp); 13266 parseElementClose(res); 13267 return res; 13268 } 13269 13270 protected boolean parseEvidenceVariableCategoryComponentContent(int eventType, XmlPullParser xpp, EvidenceVariable.EvidenceVariableCategoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13271 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13272 res.setNameElement(parseString(xpp)); 13273 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 13274 res.setValue(parseType("value", xpp)); 13275 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13276 return false; 13277 } 13278 return true; 13279 } 13280 13281 protected ExampleScenario parseExampleScenario(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13282 ExampleScenario res = new ExampleScenario(); 13283 parseResourceAttributes(xpp, res); 13284 next(xpp); 13285 int eventType = nextNoWhitespace(xpp); 13286 while (eventType != XmlPullParser.END_TAG) { 13287 if (!parseExampleScenarioContent(eventType, xpp, res)) 13288 unknownContent(xpp); 13289 eventType = nextNoWhitespace(xpp); 13290 } 13291 next(xpp); 13292 parseElementClose(res); 13293 return res; 13294 } 13295 13296 protected boolean parseExampleScenarioContent(int eventType, XmlPullParser xpp, ExampleScenario res) throws XmlPullParserException, IOException, FHIRFormatError { 13297 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 13298 res.setUrlElement(parseUri(xpp)); 13299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13300 res.getIdentifier().add(parseIdentifier(xpp)); 13301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 13302 res.setVersionElement(parseString(xpp)); 13303 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 13304 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 13305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13306 res.setNameElement(parseString(xpp)); 13307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13308 res.setTitleElement(parseString(xpp)); 13309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13310 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 13311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 13312 res.setExperimentalElement(parseBoolean(xpp)); 13313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 13314 res.setDateElement(parseDateTime(xpp)); 13315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 13316 res.setPublisherElement(parseString(xpp)); 13317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 13318 res.getContact().add(parseContactDetail(xpp)); 13319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13320 res.setDescriptionElement(parseMarkdown(xpp)); 13321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 13322 res.getUseContext().add(parseUsageContext(xpp)); 13323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 13324 res.getJurisdiction().add(parseCodeableConcept(xpp)); 13325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 13326 res.setPurposeElement(parseMarkdown(xpp)); 13327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 13328 res.setCopyrightElement(parseMarkdown(xpp)); 13329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 13330 res.setCopyrightLabelElement(parseString(xpp)); 13331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 13332 res.getActor().add(parseExampleScenarioActorComponent(xpp)); 13333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 13334 res.getInstance().add(parseExampleScenarioInstanceComponent(xpp)); 13335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("process")) { 13336 res.getProcess().add(parseExampleScenarioProcessComponent(xpp)); 13337 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 13338 return false; 13339 } 13340 return true; 13341 } 13342 13343 protected ExampleScenario.ExampleScenarioActorComponent parseExampleScenarioActorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13344 ExampleScenario.ExampleScenarioActorComponent res = new ExampleScenario.ExampleScenarioActorComponent(); 13345 parseElementAttributes(xpp, res); 13346 next(xpp); 13347 int eventType = nextNoWhitespace(xpp); 13348 while (eventType != XmlPullParser.END_TAG) { 13349 if (!parseExampleScenarioActorComponentContent(eventType, xpp, res)) 13350 unknownContent(xpp); 13351 eventType = nextNoWhitespace(xpp); 13352 } 13353 next(xpp); 13354 parseElementClose(res); 13355 return res; 13356 } 13357 13358 protected boolean parseExampleScenarioActorComponentContent(int eventType, XmlPullParser xpp, ExampleScenario.ExampleScenarioActorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13359 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 13360 res.setKeyElement(parseString(xpp)); 13361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13362 res.setTypeElement(parseEnumeration(xpp, Enumerations.ExampleScenarioActorType.NULL, new Enumerations.ExampleScenarioActorTypeEnumFactory())); 13363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13364 res.setTitleElement(parseString(xpp)); 13365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13366 res.setDescriptionElement(parseMarkdown(xpp)); 13367 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13368 return false; 13369 } 13370 return true; 13371 } 13372 13373 protected ExampleScenario.ExampleScenarioInstanceComponent parseExampleScenarioInstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13374 ExampleScenario.ExampleScenarioInstanceComponent res = new ExampleScenario.ExampleScenarioInstanceComponent(); 13375 parseElementAttributes(xpp, res); 13376 next(xpp); 13377 int eventType = nextNoWhitespace(xpp); 13378 while (eventType != XmlPullParser.END_TAG) { 13379 if (!parseExampleScenarioInstanceComponentContent(eventType, xpp, res)) 13380 unknownContent(xpp); 13381 eventType = nextNoWhitespace(xpp); 13382 } 13383 next(xpp); 13384 parseElementClose(res); 13385 return res; 13386 } 13387 13388 protected boolean parseExampleScenarioInstanceComponentContent(int eventType, XmlPullParser xpp, ExampleScenario.ExampleScenarioInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13389 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 13390 res.setKeyElement(parseString(xpp)); 13391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structureType")) { 13392 res.setStructureType(parseCoding(xpp)); 13393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structureVersion")) { 13394 res.setStructureVersionElement(parseString(xpp)); 13395 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "structureProfile")) { 13396 res.setStructureProfile(parseType("structureProfile", xpp)); 13397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13398 res.setTitleElement(parseString(xpp)); 13399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13400 res.setDescriptionElement(parseMarkdown(xpp)); 13401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 13402 res.setContent(parseReference(xpp)); 13403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 13404 res.getVersion().add(parseExampleScenarioInstanceVersionComponent(xpp)); 13405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("containedInstance")) { 13406 res.getContainedInstance().add(parseExampleScenarioInstanceContainedInstanceComponent(xpp)); 13407 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13408 return false; 13409 } 13410 return true; 13411 } 13412 13413 protected ExampleScenario.ExampleScenarioInstanceVersionComponent parseExampleScenarioInstanceVersionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13414 ExampleScenario.ExampleScenarioInstanceVersionComponent res = new ExampleScenario.ExampleScenarioInstanceVersionComponent(); 13415 parseElementAttributes(xpp, res); 13416 next(xpp); 13417 int eventType = nextNoWhitespace(xpp); 13418 while (eventType != XmlPullParser.END_TAG) { 13419 if (!parseExampleScenarioInstanceVersionComponentContent(eventType, xpp, res)) 13420 unknownContent(xpp); 13421 eventType = nextNoWhitespace(xpp); 13422 } 13423 next(xpp); 13424 parseElementClose(res); 13425 return res; 13426 } 13427 13428 protected boolean parseExampleScenarioInstanceVersionComponentContent(int eventType, XmlPullParser xpp, ExampleScenario.ExampleScenarioInstanceVersionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13429 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 13430 res.setKeyElement(parseString(xpp)); 13431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13432 res.setTitleElement(parseString(xpp)); 13433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13434 res.setDescriptionElement(parseMarkdown(xpp)); 13435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 13436 res.setContent(parseReference(xpp)); 13437 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13438 return false; 13439 } 13440 return true; 13441 } 13442 13443 protected ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent parseExampleScenarioInstanceContainedInstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13444 ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent res = new ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent(); 13445 parseElementAttributes(xpp, res); 13446 next(xpp); 13447 int eventType = nextNoWhitespace(xpp); 13448 while (eventType != XmlPullParser.END_TAG) { 13449 if (!parseExampleScenarioInstanceContainedInstanceComponentContent(eventType, xpp, res)) 13450 unknownContent(xpp); 13451 eventType = nextNoWhitespace(xpp); 13452 } 13453 next(xpp); 13454 parseElementClose(res); 13455 return res; 13456 } 13457 13458 protected boolean parseExampleScenarioInstanceContainedInstanceComponentContent(int eventType, XmlPullParser xpp, ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13459 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instanceReference")) { 13460 res.setInstanceReferenceElement(parseString(xpp)); 13461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionReference")) { 13462 res.setVersionReferenceElement(parseString(xpp)); 13463 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13464 return false; 13465 } 13466 return true; 13467 } 13468 13469 protected ExampleScenario.ExampleScenarioProcessComponent parseExampleScenarioProcessComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13470 ExampleScenario.ExampleScenarioProcessComponent res = new ExampleScenario.ExampleScenarioProcessComponent(); 13471 parseElementAttributes(xpp, res); 13472 next(xpp); 13473 int eventType = nextNoWhitespace(xpp); 13474 while (eventType != XmlPullParser.END_TAG) { 13475 if (!parseExampleScenarioProcessComponentContent(eventType, xpp, res)) 13476 unknownContent(xpp); 13477 eventType = nextNoWhitespace(xpp); 13478 } 13479 next(xpp); 13480 parseElementClose(res); 13481 return res; 13482 } 13483 13484 protected boolean parseExampleScenarioProcessComponentContent(int eventType, XmlPullParser xpp, ExampleScenario.ExampleScenarioProcessComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13485 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13486 res.setTitleElement(parseString(xpp)); 13487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13488 res.setDescriptionElement(parseMarkdown(xpp)); 13489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preConditions")) { 13490 res.setPreConditionsElement(parseMarkdown(xpp)); 13491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("postConditions")) { 13492 res.setPostConditionsElement(parseMarkdown(xpp)); 13493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("step")) { 13494 res.getStep().add(parseExampleScenarioProcessStepComponent(xpp)); 13495 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13496 return false; 13497 } 13498 return true; 13499 } 13500 13501 protected ExampleScenario.ExampleScenarioProcessStepComponent parseExampleScenarioProcessStepComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13502 ExampleScenario.ExampleScenarioProcessStepComponent res = new ExampleScenario.ExampleScenarioProcessStepComponent(); 13503 parseElementAttributes(xpp, res); 13504 next(xpp); 13505 int eventType = nextNoWhitespace(xpp); 13506 while (eventType != XmlPullParser.END_TAG) { 13507 if (!parseExampleScenarioProcessStepComponentContent(eventType, xpp, res)) 13508 unknownContent(xpp); 13509 eventType = nextNoWhitespace(xpp); 13510 } 13511 next(xpp); 13512 parseElementClose(res); 13513 return res; 13514 } 13515 13516 protected boolean parseExampleScenarioProcessStepComponentContent(int eventType, XmlPullParser xpp, ExampleScenario.ExampleScenarioProcessStepComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13517 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 13518 res.setNumberElement(parseString(xpp)); 13519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("process")) { 13520 res.setProcess(parseExampleScenarioProcessComponent(xpp)); 13521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("workflow")) { 13522 res.setWorkflowElement(parseCanonical(xpp)); 13523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 13524 res.setOperation(parseExampleScenarioProcessStepOperationComponent(xpp)); 13525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alternative")) { 13526 res.getAlternative().add(parseExampleScenarioProcessStepAlternativeComponent(xpp)); 13527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pause")) { 13528 res.setPauseElement(parseBoolean(xpp)); 13529 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13530 return false; 13531 } 13532 return true; 13533 } 13534 13535 protected ExampleScenario.ExampleScenarioProcessStepOperationComponent parseExampleScenarioProcessStepOperationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13536 ExampleScenario.ExampleScenarioProcessStepOperationComponent res = new ExampleScenario.ExampleScenarioProcessStepOperationComponent(); 13537 parseElementAttributes(xpp, res); 13538 next(xpp); 13539 int eventType = nextNoWhitespace(xpp); 13540 while (eventType != XmlPullParser.END_TAG) { 13541 if (!parseExampleScenarioProcessStepOperationComponentContent(eventType, xpp, res)) 13542 unknownContent(xpp); 13543 eventType = nextNoWhitespace(xpp); 13544 } 13545 next(xpp); 13546 parseElementClose(res); 13547 return res; 13548 } 13549 13550 protected boolean parseExampleScenarioProcessStepOperationComponentContent(int eventType, XmlPullParser xpp, ExampleScenario.ExampleScenarioProcessStepOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13551 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13552 res.setType(parseCoding(xpp)); 13553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13554 res.setTitleElement(parseString(xpp)); 13555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initiator")) { 13556 res.setInitiatorElement(parseString(xpp)); 13557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 13558 res.setReceiverElement(parseString(xpp)); 13559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13560 res.setDescriptionElement(parseMarkdown(xpp)); 13561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initiatorActive")) { 13562 res.setInitiatorActiveElement(parseBoolean(xpp)); 13563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiverActive")) { 13564 res.setReceiverActiveElement(parseBoolean(xpp)); 13565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 13566 res.setRequest(parseExampleScenarioInstanceContainedInstanceComponent(xpp)); 13567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 13568 res.setResponse(parseExampleScenarioInstanceContainedInstanceComponent(xpp)); 13569 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13570 return false; 13571 } 13572 return true; 13573 } 13574 13575 protected ExampleScenario.ExampleScenarioProcessStepAlternativeComponent parseExampleScenarioProcessStepAlternativeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13576 ExampleScenario.ExampleScenarioProcessStepAlternativeComponent res = new ExampleScenario.ExampleScenarioProcessStepAlternativeComponent(); 13577 parseElementAttributes(xpp, res); 13578 next(xpp); 13579 int eventType = nextNoWhitespace(xpp); 13580 while (eventType != XmlPullParser.END_TAG) { 13581 if (!parseExampleScenarioProcessStepAlternativeComponentContent(eventType, xpp, res)) 13582 unknownContent(xpp); 13583 eventType = nextNoWhitespace(xpp); 13584 } 13585 next(xpp); 13586 parseElementClose(res); 13587 return res; 13588 } 13589 13590 protected boolean parseExampleScenarioProcessStepAlternativeComponentContent(int eventType, XmlPullParser xpp, ExampleScenario.ExampleScenarioProcessStepAlternativeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13591 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13592 res.setTitleElement(parseString(xpp)); 13593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13594 res.setDescriptionElement(parseMarkdown(xpp)); 13595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("step")) { 13596 res.getStep().add(parseExampleScenarioProcessStepComponent(xpp)); 13597 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13598 return false; 13599 } 13600 return true; 13601 } 13602 13603 protected ExplanationOfBenefit parseExplanationOfBenefit(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13604 ExplanationOfBenefit res = new ExplanationOfBenefit(); 13605 parseResourceAttributes(xpp, res); 13606 next(xpp); 13607 int eventType = nextNoWhitespace(xpp); 13608 while (eventType != XmlPullParser.END_TAG) { 13609 if (!parseExplanationOfBenefitContent(eventType, xpp, res)) 13610 unknownContent(xpp); 13611 eventType = nextNoWhitespace(xpp); 13612 } 13613 next(xpp); 13614 parseElementClose(res); 13615 return res; 13616 } 13617 13618 protected boolean parseExplanationOfBenefitContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit res) throws XmlPullParserException, IOException, FHIRFormatError { 13619 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13620 res.getIdentifier().add(parseIdentifier(xpp)); 13621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 13622 res.getTraceNumber().add(parseIdentifier(xpp)); 13623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13624 res.setStatusElement(parseEnumeration(xpp, ExplanationOfBenefit.ExplanationOfBenefitStatus.NULL, new ExplanationOfBenefit.ExplanationOfBenefitStatusEnumFactory())); 13625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13626 res.setType(parseCodeableConcept(xpp)); 13627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 13628 res.setSubType(parseCodeableConcept(xpp)); 13629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 13630 res.setUseElement(parseEnumeration(xpp, Enumerations.Use.NULL, new Enumerations.UseEnumFactory())); 13631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 13632 res.setPatient(parseReference(xpp)); 13633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billablePeriod")) { 13634 res.setBillablePeriod(parsePeriod(xpp)); 13635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 13636 res.setCreatedElement(parseDateTime(xpp)); 13637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 13638 res.setEnterer(parseReference(xpp)); 13639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 13640 res.setInsurer(parseReference(xpp)); 13641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 13642 res.setProvider(parseReference(xpp)); 13643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 13644 res.setPriority(parseCodeableConcept(xpp)); 13645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundsReserveRequested")) { 13646 res.setFundsReserveRequested(parseCodeableConcept(xpp)); 13647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundsReserve")) { 13648 res.setFundsReserve(parseCodeableConcept(xpp)); 13649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 13650 res.getRelated().add(parseExplanationOfBenefitRelatedClaimComponent(xpp)); 13651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 13652 res.setPrescription(parseReference(xpp)); 13653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalPrescription")) { 13654 res.setOriginalPrescription(parseReference(xpp)); 13655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 13656 res.getEvent().add(parseExplanationOfBenefitEventComponent(xpp)); 13657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 13658 res.setPayee(parseExplanationOfBenefitPayeeComponent(xpp)); 13659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referral")) { 13660 res.setReferral(parseReference(xpp)); 13661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 13662 res.getEncounter().add(parseReference(xpp)); 13663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 13664 res.setFacility(parseReference(xpp)); 13665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 13666 res.setClaim(parseReference(xpp)); 13667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 13668 res.setClaimResponse(parseReference(xpp)); 13669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 13670 res.setOutcomeElement(parseEnumeration(xpp, Enumerations.ClaimProcessingCodes.NULL, new Enumerations.ClaimProcessingCodesEnumFactory())); 13671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decision")) { 13672 res.setDecision(parseCodeableConcept(xpp)); 13673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 13674 res.setDispositionElement(parseString(xpp)); 13675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 13676 res.getPreAuthRef().add(parseString(xpp)); 13677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRefPeriod")) { 13678 res.getPreAuthRefPeriod().add(parsePeriod(xpp)); 13679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisRelatedGroup")) { 13680 res.setDiagnosisRelatedGroup(parseCodeableConcept(xpp)); 13681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 13682 res.getCareTeam().add(parseExplanationOfBenefitCareTeamComponent(xpp)); 13683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 13684 res.getSupportingInfo().add(parseExplanationOfBenefitSupportingInformationComponent(xpp)); 13685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 13686 res.getDiagnosis().add(parseExplanationOfBenefitDiagnosisComponent(xpp)); 13687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 13688 res.getProcedure().add(parseExplanationOfBenefitProcedureComponent(xpp)); 13689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precedence")) { 13690 res.setPrecedenceElement(parsePositiveInt(xpp)); 13691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 13692 res.getInsurance().add(parseExplanationOfBenefitInsuranceComponent(xpp)); 13693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accident")) { 13694 res.setAccident(parseExplanationOfBenefitAccidentComponent(xpp)); 13695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 13696 res.setPatientPaid(parseMoney(xpp)); 13697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13698 res.getItem().add(parseExplanationOfBenefitItemComponent(xpp)); 13699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 13700 res.getAddItem().add(parseExplanationOfBenefitAddedItemComponent(xpp)); 13701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 13702 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp)); 13703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 13704 res.getTotal().add(parseExplanationOfBenefitTotalComponent(xpp)); 13705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payment")) { 13706 res.setPayment(parseExplanationOfBenefitPaymentComponent(xpp)); 13707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("formCode")) { 13708 res.setFormCode(parseCodeableConcept(xpp)); 13709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 13710 res.setForm(parseAttachment(xpp)); 13711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 13712 res.getProcessNote().add(parseExplanationOfBenefitNoteComponent(xpp)); 13713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitPeriod")) { 13714 res.setBenefitPeriod(parsePeriod(xpp)); 13715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitBalance")) { 13716 res.getBenefitBalance().add(parseExplanationOfBenefitBenefitBalanceComponent(xpp)); 13717 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 13718 return false; 13719 } 13720 return true; 13721 } 13722 13723 protected ExplanationOfBenefit.RelatedClaimComponent parseExplanationOfBenefitRelatedClaimComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13724 ExplanationOfBenefit.RelatedClaimComponent res = new ExplanationOfBenefit.RelatedClaimComponent(); 13725 parseElementAttributes(xpp, res); 13726 next(xpp); 13727 int eventType = nextNoWhitespace(xpp); 13728 while (eventType != XmlPullParser.END_TAG) { 13729 if (!parseExplanationOfBenefitRelatedClaimComponentContent(eventType, xpp, res)) 13730 unknownContent(xpp); 13731 eventType = nextNoWhitespace(xpp); 13732 } 13733 next(xpp); 13734 parseElementClose(res); 13735 return res; 13736 } 13737 13738 protected boolean parseExplanationOfBenefitRelatedClaimComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.RelatedClaimComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13739 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 13740 res.setClaim(parseReference(xpp)); 13741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 13742 res.setRelationship(parseCodeableConcept(xpp)); 13743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 13744 res.setReference(parseIdentifier(xpp)); 13745 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13746 return false; 13747 } 13748 return true; 13749 } 13750 13751 protected ExplanationOfBenefit.ExplanationOfBenefitEventComponent parseExplanationOfBenefitEventComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13752 ExplanationOfBenefit.ExplanationOfBenefitEventComponent res = new ExplanationOfBenefit.ExplanationOfBenefitEventComponent(); 13753 parseElementAttributes(xpp, res); 13754 next(xpp); 13755 int eventType = nextNoWhitespace(xpp); 13756 while (eventType != XmlPullParser.END_TAG) { 13757 if (!parseExplanationOfBenefitEventComponentContent(eventType, xpp, res)) 13758 unknownContent(xpp); 13759 eventType = nextNoWhitespace(xpp); 13760 } 13761 next(xpp); 13762 parseElementClose(res); 13763 return res; 13764 } 13765 13766 protected boolean parseExplanationOfBenefitEventComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.ExplanationOfBenefitEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13767 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13768 res.setType(parseCodeableConcept(xpp)); 13769 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 13770 res.setWhen(parseType("when", xpp)); 13771 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13772 return false; 13773 } 13774 return true; 13775 } 13776 13777 protected ExplanationOfBenefit.PayeeComponent parseExplanationOfBenefitPayeeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13778 ExplanationOfBenefit.PayeeComponent res = new ExplanationOfBenefit.PayeeComponent(); 13779 parseElementAttributes(xpp, res); 13780 next(xpp); 13781 int eventType = nextNoWhitespace(xpp); 13782 while (eventType != XmlPullParser.END_TAG) { 13783 if (!parseExplanationOfBenefitPayeeComponentContent(eventType, xpp, res)) 13784 unknownContent(xpp); 13785 eventType = nextNoWhitespace(xpp); 13786 } 13787 next(xpp); 13788 parseElementClose(res); 13789 return res; 13790 } 13791 13792 protected boolean parseExplanationOfBenefitPayeeComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.PayeeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13793 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13794 res.setType(parseCodeableConcept(xpp)); 13795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 13796 res.setParty(parseReference(xpp)); 13797 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13798 return false; 13799 } 13800 return true; 13801 } 13802 13803 protected ExplanationOfBenefit.CareTeamComponent parseExplanationOfBenefitCareTeamComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13804 ExplanationOfBenefit.CareTeamComponent res = new ExplanationOfBenefit.CareTeamComponent(); 13805 parseElementAttributes(xpp, res); 13806 next(xpp); 13807 int eventType = nextNoWhitespace(xpp); 13808 while (eventType != XmlPullParser.END_TAG) { 13809 if (!parseExplanationOfBenefitCareTeamComponentContent(eventType, xpp, res)) 13810 unknownContent(xpp); 13811 eventType = nextNoWhitespace(xpp); 13812 } 13813 next(xpp); 13814 parseElementClose(res); 13815 return res; 13816 } 13817 13818 protected boolean parseExplanationOfBenefitCareTeamComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.CareTeamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13819 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 13820 res.setSequenceElement(parsePositiveInt(xpp)); 13821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 13822 res.setProvider(parseReference(xpp)); 13823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 13824 res.setResponsibleElement(parseBoolean(xpp)); 13825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13826 res.setRole(parseCodeableConcept(xpp)); 13827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 13828 res.setSpecialty(parseCodeableConcept(xpp)); 13829 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13830 return false; 13831 } 13832 return true; 13833 } 13834 13835 protected ExplanationOfBenefit.SupportingInformationComponent parseExplanationOfBenefitSupportingInformationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13836 ExplanationOfBenefit.SupportingInformationComponent res = new ExplanationOfBenefit.SupportingInformationComponent(); 13837 parseElementAttributes(xpp, res); 13838 next(xpp); 13839 int eventType = nextNoWhitespace(xpp); 13840 while (eventType != XmlPullParser.END_TAG) { 13841 if (!parseExplanationOfBenefitSupportingInformationComponentContent(eventType, xpp, res)) 13842 unknownContent(xpp); 13843 eventType = nextNoWhitespace(xpp); 13844 } 13845 next(xpp); 13846 parseElementClose(res); 13847 return res; 13848 } 13849 13850 protected boolean parseExplanationOfBenefitSupportingInformationComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.SupportingInformationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13851 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 13852 res.setSequenceElement(parsePositiveInt(xpp)); 13853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 13854 res.setCategory(parseCodeableConcept(xpp)); 13855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13856 res.setCode(parseCodeableConcept(xpp)); 13857 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 13858 res.setTiming(parseType("timing", xpp)); 13859 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 13860 res.setValue(parseType("value", xpp)); 13861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 13862 res.setReason(parseCoding(xpp)); 13863 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13864 return false; 13865 } 13866 return true; 13867 } 13868 13869 protected ExplanationOfBenefit.DiagnosisComponent parseExplanationOfBenefitDiagnosisComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13870 ExplanationOfBenefit.DiagnosisComponent res = new ExplanationOfBenefit.DiagnosisComponent(); 13871 parseElementAttributes(xpp, res); 13872 next(xpp); 13873 int eventType = nextNoWhitespace(xpp); 13874 while (eventType != XmlPullParser.END_TAG) { 13875 if (!parseExplanationOfBenefitDiagnosisComponentContent(eventType, xpp, res)) 13876 unknownContent(xpp); 13877 eventType = nextNoWhitespace(xpp); 13878 } 13879 next(xpp); 13880 parseElementClose(res); 13881 return res; 13882 } 13883 13884 protected boolean parseExplanationOfBenefitDiagnosisComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13885 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 13886 res.setSequenceElement(parsePositiveInt(xpp)); 13887 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "diagnosis")) { 13888 res.setDiagnosis(parseType("diagnosis", xpp)); 13889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13890 res.getType().add(parseCodeableConcept(xpp)); 13891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onAdmission")) { 13892 res.setOnAdmission(parseCodeableConcept(xpp)); 13893 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13894 return false; 13895 } 13896 return true; 13897 } 13898 13899 protected ExplanationOfBenefit.ProcedureComponent parseExplanationOfBenefitProcedureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13900 ExplanationOfBenefit.ProcedureComponent res = new ExplanationOfBenefit.ProcedureComponent(); 13901 parseElementAttributes(xpp, res); 13902 next(xpp); 13903 int eventType = nextNoWhitespace(xpp); 13904 while (eventType != XmlPullParser.END_TAG) { 13905 if (!parseExplanationOfBenefitProcedureComponentContent(eventType, xpp, res)) 13906 unknownContent(xpp); 13907 eventType = nextNoWhitespace(xpp); 13908 } 13909 next(xpp); 13910 parseElementClose(res); 13911 return res; 13912 } 13913 13914 protected boolean parseExplanationOfBenefitProcedureComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.ProcedureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13915 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 13916 res.setSequenceElement(parsePositiveInt(xpp)); 13917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13918 res.getType().add(parseCodeableConcept(xpp)); 13919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 13920 res.setDateElement(parseDateTime(xpp)); 13921 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "procedure")) { 13922 res.setProcedure(parseType("procedure", xpp)); 13923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 13924 res.getUdi().add(parseReference(xpp)); 13925 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13926 return false; 13927 } 13928 return true; 13929 } 13930 13931 protected ExplanationOfBenefit.InsuranceComponent parseExplanationOfBenefitInsuranceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13932 ExplanationOfBenefit.InsuranceComponent res = new ExplanationOfBenefit.InsuranceComponent(); 13933 parseElementAttributes(xpp, res); 13934 next(xpp); 13935 int eventType = nextNoWhitespace(xpp); 13936 while (eventType != XmlPullParser.END_TAG) { 13937 if (!parseExplanationOfBenefitInsuranceComponentContent(eventType, xpp, res)) 13938 unknownContent(xpp); 13939 eventType = nextNoWhitespace(xpp); 13940 } 13941 next(xpp); 13942 parseElementClose(res); 13943 return res; 13944 } 13945 13946 protected boolean parseExplanationOfBenefitInsuranceComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13947 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 13948 res.setFocalElement(parseBoolean(xpp)); 13949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 13950 res.setCoverage(parseReference(xpp)); 13951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 13952 res.getPreAuthRef().add(parseString(xpp)); 13953 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13954 return false; 13955 } 13956 return true; 13957 } 13958 13959 protected ExplanationOfBenefit.AccidentComponent parseExplanationOfBenefitAccidentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13960 ExplanationOfBenefit.AccidentComponent res = new ExplanationOfBenefit.AccidentComponent(); 13961 parseElementAttributes(xpp, res); 13962 next(xpp); 13963 int eventType = nextNoWhitespace(xpp); 13964 while (eventType != XmlPullParser.END_TAG) { 13965 if (!parseExplanationOfBenefitAccidentComponentContent(eventType, xpp, res)) 13966 unknownContent(xpp); 13967 eventType = nextNoWhitespace(xpp); 13968 } 13969 next(xpp); 13970 parseElementClose(res); 13971 return res; 13972 } 13973 13974 protected boolean parseExplanationOfBenefitAccidentComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.AccidentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13975 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 13976 res.setDateElement(parseDate(xpp)); 13977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13978 res.setType(parseCodeableConcept(xpp)); 13979 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 13980 res.setLocation(parseType("location", xpp)); 13981 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 13982 return false; 13983 } 13984 return true; 13985 } 13986 13987 protected ExplanationOfBenefit.ItemComponent parseExplanationOfBenefitItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13988 ExplanationOfBenefit.ItemComponent res = new ExplanationOfBenefit.ItemComponent(); 13989 parseElementAttributes(xpp, res); 13990 next(xpp); 13991 int eventType = nextNoWhitespace(xpp); 13992 while (eventType != XmlPullParser.END_TAG) { 13993 if (!parseExplanationOfBenefitItemComponentContent(eventType, xpp, res)) 13994 unknownContent(xpp); 13995 eventType = nextNoWhitespace(xpp); 13996 } 13997 next(xpp); 13998 parseElementClose(res); 13999 return res; 14000 } 14001 14002 protected boolean parseExplanationOfBenefitItemComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14003 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 14004 res.setSequenceElement(parsePositiveInt(xpp)); 14005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeamSequence")) { 14006 res.getCareTeamSequence().add(parsePositiveInt(xpp)); 14007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisSequence")) { 14008 res.getDiagnosisSequence().add(parsePositiveInt(xpp)); 14009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureSequence")) { 14010 res.getProcedureSequence().add(parsePositiveInt(xpp)); 14011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSequence")) { 14012 res.getInformationSequence().add(parsePositiveInt(xpp)); 14013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 14014 res.getTraceNumber().add(parseIdentifier(xpp)); 14015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 14016 res.setRevenue(parseCodeableConcept(xpp)); 14017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14018 res.setCategory(parseCodeableConcept(xpp)); 14019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 14020 res.setProductOrService(parseCodeableConcept(xpp)); 14021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 14022 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 14023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 14024 res.getRequest().add(parseReference(xpp)); 14025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 14026 res.getModifier().add(parseCodeableConcept(xpp)); 14027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 14028 res.getProgramCode().add(parseCodeableConcept(xpp)); 14029 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 14030 res.setServiced(parseType("serviced", xpp)); 14031 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 14032 res.setLocation(parseType("location", xpp)); 14033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 14034 res.setPatientPaid(parseMoney(xpp)); 14035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14036 res.setQuantity(parseQuantity(xpp)); 14037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 14038 res.setUnitPrice(parseMoney(xpp)); 14039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 14040 res.setFactorElement(parseDecimal(xpp)); 14041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 14042 res.setTax(parseMoney(xpp)); 14043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 14044 res.setNet(parseMoney(xpp)); 14045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 14046 res.getUdi().add(parseReference(xpp)); 14047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 14048 res.getBodySite().add(parseExplanationOfBenefitItemBodySiteComponent(xpp)); 14049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 14050 res.getEncounter().add(parseReference(xpp)); 14051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 14052 res.getNoteNumber().add(parsePositiveInt(xpp)); 14053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 14054 res.setReviewOutcome(parseExplanationOfBenefitItemReviewOutcomeComponent(xpp)); 14055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 14056 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp)); 14057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 14058 res.getDetail().add(parseExplanationOfBenefitDetailComponent(xpp)); 14059 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14060 return false; 14061 } 14062 return true; 14063 } 14064 14065 protected ExplanationOfBenefit.ItemBodySiteComponent parseExplanationOfBenefitItemBodySiteComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14066 ExplanationOfBenefit.ItemBodySiteComponent res = new ExplanationOfBenefit.ItemBodySiteComponent(); 14067 parseElementAttributes(xpp, res); 14068 next(xpp); 14069 int eventType = nextNoWhitespace(xpp); 14070 while (eventType != XmlPullParser.END_TAG) { 14071 if (!parseExplanationOfBenefitItemBodySiteComponentContent(eventType, xpp, res)) 14072 unknownContent(xpp); 14073 eventType = nextNoWhitespace(xpp); 14074 } 14075 next(xpp); 14076 parseElementClose(res); 14077 return res; 14078 } 14079 14080 protected boolean parseExplanationOfBenefitItemBodySiteComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.ItemBodySiteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14081 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 14082 res.getSite().add(parseCodeableReference(xpp)); 14083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 14084 res.getSubSite().add(parseCodeableConcept(xpp)); 14085 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14086 return false; 14087 } 14088 return true; 14089 } 14090 14091 protected ExplanationOfBenefit.ItemReviewOutcomeComponent parseExplanationOfBenefitItemReviewOutcomeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14092 ExplanationOfBenefit.ItemReviewOutcomeComponent res = new ExplanationOfBenefit.ItemReviewOutcomeComponent(); 14093 parseElementAttributes(xpp, res); 14094 next(xpp); 14095 int eventType = nextNoWhitespace(xpp); 14096 while (eventType != XmlPullParser.END_TAG) { 14097 if (!parseExplanationOfBenefitItemReviewOutcomeComponentContent(eventType, xpp, res)) 14098 unknownContent(xpp); 14099 eventType = nextNoWhitespace(xpp); 14100 } 14101 next(xpp); 14102 parseElementClose(res); 14103 return res; 14104 } 14105 14106 protected boolean parseExplanationOfBenefitItemReviewOutcomeComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.ItemReviewOutcomeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14107 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decision")) { 14108 res.setDecision(parseCodeableConcept(xpp)); 14109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 14110 res.getReason().add(parseCodeableConcept(xpp)); 14111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 14112 res.setPreAuthRefElement(parseString(xpp)); 14113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthPeriod")) { 14114 res.setPreAuthPeriod(parsePeriod(xpp)); 14115 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14116 return false; 14117 } 14118 return true; 14119 } 14120 14121 protected ExplanationOfBenefit.AdjudicationComponent parseExplanationOfBenefitAdjudicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14122 ExplanationOfBenefit.AdjudicationComponent res = new ExplanationOfBenefit.AdjudicationComponent(); 14123 parseElementAttributes(xpp, res); 14124 next(xpp); 14125 int eventType = nextNoWhitespace(xpp); 14126 while (eventType != XmlPullParser.END_TAG) { 14127 if (!parseExplanationOfBenefitAdjudicationComponentContent(eventType, xpp, res)) 14128 unknownContent(xpp); 14129 eventType = nextNoWhitespace(xpp); 14130 } 14131 next(xpp); 14132 parseElementClose(res); 14133 return res; 14134 } 14135 14136 protected boolean parseExplanationOfBenefitAdjudicationComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.AdjudicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14137 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14138 res.setCategory(parseCodeableConcept(xpp)); 14139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 14140 res.setReason(parseCodeableConcept(xpp)); 14141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 14142 res.setAmount(parseMoney(xpp)); 14143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14144 res.setQuantity(parseQuantity(xpp)); 14145 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14146 return false; 14147 } 14148 return true; 14149 } 14150 14151 protected ExplanationOfBenefit.DetailComponent parseExplanationOfBenefitDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14152 ExplanationOfBenefit.DetailComponent res = new ExplanationOfBenefit.DetailComponent(); 14153 parseElementAttributes(xpp, res); 14154 next(xpp); 14155 int eventType = nextNoWhitespace(xpp); 14156 while (eventType != XmlPullParser.END_TAG) { 14157 if (!parseExplanationOfBenefitDetailComponentContent(eventType, xpp, res)) 14158 unknownContent(xpp); 14159 eventType = nextNoWhitespace(xpp); 14160 } 14161 next(xpp); 14162 parseElementClose(res); 14163 return res; 14164 } 14165 14166 protected boolean parseExplanationOfBenefitDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.DetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14167 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 14168 res.setSequenceElement(parsePositiveInt(xpp)); 14169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 14170 res.getTraceNumber().add(parseIdentifier(xpp)); 14171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 14172 res.setRevenue(parseCodeableConcept(xpp)); 14173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14174 res.setCategory(parseCodeableConcept(xpp)); 14175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 14176 res.setProductOrService(parseCodeableConcept(xpp)); 14177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 14178 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 14179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 14180 res.getModifier().add(parseCodeableConcept(xpp)); 14181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 14182 res.getProgramCode().add(parseCodeableConcept(xpp)); 14183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 14184 res.setPatientPaid(parseMoney(xpp)); 14185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14186 res.setQuantity(parseQuantity(xpp)); 14187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 14188 res.setUnitPrice(parseMoney(xpp)); 14189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 14190 res.setFactorElement(parseDecimal(xpp)); 14191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 14192 res.setTax(parseMoney(xpp)); 14193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 14194 res.setNet(parseMoney(xpp)); 14195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 14196 res.getUdi().add(parseReference(xpp)); 14197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 14198 res.getNoteNumber().add(parsePositiveInt(xpp)); 14199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 14200 res.setReviewOutcome(parseExplanationOfBenefitItemReviewOutcomeComponent(xpp)); 14201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 14202 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp)); 14203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 14204 res.getSubDetail().add(parseExplanationOfBenefitSubDetailComponent(xpp)); 14205 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14206 return false; 14207 } 14208 return true; 14209 } 14210 14211 protected ExplanationOfBenefit.SubDetailComponent parseExplanationOfBenefitSubDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14212 ExplanationOfBenefit.SubDetailComponent res = new ExplanationOfBenefit.SubDetailComponent(); 14213 parseElementAttributes(xpp, res); 14214 next(xpp); 14215 int eventType = nextNoWhitespace(xpp); 14216 while (eventType != XmlPullParser.END_TAG) { 14217 if (!parseExplanationOfBenefitSubDetailComponentContent(eventType, xpp, res)) 14218 unknownContent(xpp); 14219 eventType = nextNoWhitespace(xpp); 14220 } 14221 next(xpp); 14222 parseElementClose(res); 14223 return res; 14224 } 14225 14226 protected boolean parseExplanationOfBenefitSubDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14227 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 14228 res.setSequenceElement(parsePositiveInt(xpp)); 14229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 14230 res.getTraceNumber().add(parseIdentifier(xpp)); 14231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 14232 res.setRevenue(parseCodeableConcept(xpp)); 14233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14234 res.setCategory(parseCodeableConcept(xpp)); 14235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 14236 res.setProductOrService(parseCodeableConcept(xpp)); 14237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 14238 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 14239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 14240 res.getModifier().add(parseCodeableConcept(xpp)); 14241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 14242 res.getProgramCode().add(parseCodeableConcept(xpp)); 14243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 14244 res.setPatientPaid(parseMoney(xpp)); 14245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14246 res.setQuantity(parseQuantity(xpp)); 14247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 14248 res.setUnitPrice(parseMoney(xpp)); 14249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 14250 res.setFactorElement(parseDecimal(xpp)); 14251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 14252 res.setTax(parseMoney(xpp)); 14253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 14254 res.setNet(parseMoney(xpp)); 14255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 14256 res.getUdi().add(parseReference(xpp)); 14257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 14258 res.getNoteNumber().add(parsePositiveInt(xpp)); 14259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 14260 res.setReviewOutcome(parseExplanationOfBenefitItemReviewOutcomeComponent(xpp)); 14261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 14262 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp)); 14263 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14264 return false; 14265 } 14266 return true; 14267 } 14268 14269 protected ExplanationOfBenefit.AddedItemComponent parseExplanationOfBenefitAddedItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14270 ExplanationOfBenefit.AddedItemComponent res = new ExplanationOfBenefit.AddedItemComponent(); 14271 parseElementAttributes(xpp, res); 14272 next(xpp); 14273 int eventType = nextNoWhitespace(xpp); 14274 while (eventType != XmlPullParser.END_TAG) { 14275 if (!parseExplanationOfBenefitAddedItemComponentContent(eventType, xpp, res)) 14276 unknownContent(xpp); 14277 eventType = nextNoWhitespace(xpp); 14278 } 14279 next(xpp); 14280 parseElementClose(res); 14281 return res; 14282 } 14283 14284 protected boolean parseExplanationOfBenefitAddedItemComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.AddedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14285 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("itemSequence")) { 14286 res.getItemSequence().add(parsePositiveInt(xpp)); 14287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detailSequence")) { 14288 res.getDetailSequence().add(parsePositiveInt(xpp)); 14289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetailSequence")) { 14290 res.getSubDetailSequence().add(parsePositiveInt(xpp)); 14291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 14292 res.getTraceNumber().add(parseIdentifier(xpp)); 14293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 14294 res.getProvider().add(parseReference(xpp)); 14295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 14296 res.setRevenue(parseCodeableConcept(xpp)); 14297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 14298 res.setProductOrService(parseCodeableConcept(xpp)); 14299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 14300 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 14301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 14302 res.getRequest().add(parseReference(xpp)); 14303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 14304 res.getModifier().add(parseCodeableConcept(xpp)); 14305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 14306 res.getProgramCode().add(parseCodeableConcept(xpp)); 14307 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 14308 res.setServiced(parseType("serviced", xpp)); 14309 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 14310 res.setLocation(parseType("location", xpp)); 14311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 14312 res.setPatientPaid(parseMoney(xpp)); 14313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14314 res.setQuantity(parseQuantity(xpp)); 14315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 14316 res.setUnitPrice(parseMoney(xpp)); 14317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 14318 res.setFactorElement(parseDecimal(xpp)); 14319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 14320 res.setTax(parseMoney(xpp)); 14321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 14322 res.setNet(parseMoney(xpp)); 14323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 14324 res.getBodySite().add(parseExplanationOfBenefitAddedItemBodySiteComponent(xpp)); 14325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 14326 res.getNoteNumber().add(parsePositiveInt(xpp)); 14327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 14328 res.setReviewOutcome(parseExplanationOfBenefitItemReviewOutcomeComponent(xpp)); 14329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 14330 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp)); 14331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 14332 res.getDetail().add(parseExplanationOfBenefitAddedItemDetailComponent(xpp)); 14333 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14334 return false; 14335 } 14336 return true; 14337 } 14338 14339 protected ExplanationOfBenefit.AddedItemBodySiteComponent parseExplanationOfBenefitAddedItemBodySiteComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14340 ExplanationOfBenefit.AddedItemBodySiteComponent res = new ExplanationOfBenefit.AddedItemBodySiteComponent(); 14341 parseElementAttributes(xpp, res); 14342 next(xpp); 14343 int eventType = nextNoWhitespace(xpp); 14344 while (eventType != XmlPullParser.END_TAG) { 14345 if (!parseExplanationOfBenefitAddedItemBodySiteComponentContent(eventType, xpp, res)) 14346 unknownContent(xpp); 14347 eventType = nextNoWhitespace(xpp); 14348 } 14349 next(xpp); 14350 parseElementClose(res); 14351 return res; 14352 } 14353 14354 protected boolean parseExplanationOfBenefitAddedItemBodySiteComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.AddedItemBodySiteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14355 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 14356 res.getSite().add(parseCodeableReference(xpp)); 14357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 14358 res.getSubSite().add(parseCodeableConcept(xpp)); 14359 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14360 return false; 14361 } 14362 return true; 14363 } 14364 14365 protected ExplanationOfBenefit.AddedItemDetailComponent parseExplanationOfBenefitAddedItemDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14366 ExplanationOfBenefit.AddedItemDetailComponent res = new ExplanationOfBenefit.AddedItemDetailComponent(); 14367 parseElementAttributes(xpp, res); 14368 next(xpp); 14369 int eventType = nextNoWhitespace(xpp); 14370 while (eventType != XmlPullParser.END_TAG) { 14371 if (!parseExplanationOfBenefitAddedItemDetailComponentContent(eventType, xpp, res)) 14372 unknownContent(xpp); 14373 eventType = nextNoWhitespace(xpp); 14374 } 14375 next(xpp); 14376 parseElementClose(res); 14377 return res; 14378 } 14379 14380 protected boolean parseExplanationOfBenefitAddedItemDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.AddedItemDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14381 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 14382 res.getTraceNumber().add(parseIdentifier(xpp)); 14383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 14384 res.setRevenue(parseCodeableConcept(xpp)); 14385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 14386 res.setProductOrService(parseCodeableConcept(xpp)); 14387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 14388 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 14389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 14390 res.getModifier().add(parseCodeableConcept(xpp)); 14391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 14392 res.setPatientPaid(parseMoney(xpp)); 14393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14394 res.setQuantity(parseQuantity(xpp)); 14395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 14396 res.setUnitPrice(parseMoney(xpp)); 14397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 14398 res.setFactorElement(parseDecimal(xpp)); 14399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 14400 res.setTax(parseMoney(xpp)); 14401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 14402 res.setNet(parseMoney(xpp)); 14403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 14404 res.getNoteNumber().add(parsePositiveInt(xpp)); 14405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 14406 res.setReviewOutcome(parseExplanationOfBenefitItemReviewOutcomeComponent(xpp)); 14407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 14408 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp)); 14409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 14410 res.getSubDetail().add(parseExplanationOfBenefitAddedItemDetailSubDetailComponent(xpp)); 14411 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14412 return false; 14413 } 14414 return true; 14415 } 14416 14417 protected ExplanationOfBenefit.AddedItemDetailSubDetailComponent parseExplanationOfBenefitAddedItemDetailSubDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14418 ExplanationOfBenefit.AddedItemDetailSubDetailComponent res = new ExplanationOfBenefit.AddedItemDetailSubDetailComponent(); 14419 parseElementAttributes(xpp, res); 14420 next(xpp); 14421 int eventType = nextNoWhitespace(xpp); 14422 while (eventType != XmlPullParser.END_TAG) { 14423 if (!parseExplanationOfBenefitAddedItemDetailSubDetailComponentContent(eventType, xpp, res)) 14424 unknownContent(xpp); 14425 eventType = nextNoWhitespace(xpp); 14426 } 14427 next(xpp); 14428 parseElementClose(res); 14429 return res; 14430 } 14431 14432 protected boolean parseExplanationOfBenefitAddedItemDetailSubDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.AddedItemDetailSubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14433 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("traceNumber")) { 14434 res.getTraceNumber().add(parseIdentifier(xpp)); 14435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 14436 res.setRevenue(parseCodeableConcept(xpp)); 14437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrService")) { 14438 res.setProductOrService(parseCodeableConcept(xpp)); 14439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productOrServiceEnd")) { 14440 res.setProductOrServiceEnd(parseCodeableConcept(xpp)); 14441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 14442 res.getModifier().add(parseCodeableConcept(xpp)); 14443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPaid")) { 14444 res.setPatientPaid(parseMoney(xpp)); 14445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14446 res.setQuantity(parseQuantity(xpp)); 14447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 14448 res.setUnitPrice(parseMoney(xpp)); 14449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 14450 res.setFactorElement(parseDecimal(xpp)); 14451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tax")) { 14452 res.setTax(parseMoney(xpp)); 14453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 14454 res.setNet(parseMoney(xpp)); 14455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 14456 res.getNoteNumber().add(parsePositiveInt(xpp)); 14457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewOutcome")) { 14458 res.setReviewOutcome(parseExplanationOfBenefitItemReviewOutcomeComponent(xpp)); 14459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 14460 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp)); 14461 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14462 return false; 14463 } 14464 return true; 14465 } 14466 14467 protected ExplanationOfBenefit.TotalComponent parseExplanationOfBenefitTotalComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14468 ExplanationOfBenefit.TotalComponent res = new ExplanationOfBenefit.TotalComponent(); 14469 parseElementAttributes(xpp, res); 14470 next(xpp); 14471 int eventType = nextNoWhitespace(xpp); 14472 while (eventType != XmlPullParser.END_TAG) { 14473 if (!parseExplanationOfBenefitTotalComponentContent(eventType, xpp, res)) 14474 unknownContent(xpp); 14475 eventType = nextNoWhitespace(xpp); 14476 } 14477 next(xpp); 14478 parseElementClose(res); 14479 return res; 14480 } 14481 14482 protected boolean parseExplanationOfBenefitTotalComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.TotalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14483 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14484 res.setCategory(parseCodeableConcept(xpp)); 14485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 14486 res.setAmount(parseMoney(xpp)); 14487 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14488 return false; 14489 } 14490 return true; 14491 } 14492 14493 protected ExplanationOfBenefit.PaymentComponent parseExplanationOfBenefitPaymentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14494 ExplanationOfBenefit.PaymentComponent res = new ExplanationOfBenefit.PaymentComponent(); 14495 parseElementAttributes(xpp, res); 14496 next(xpp); 14497 int eventType = nextNoWhitespace(xpp); 14498 while (eventType != XmlPullParser.END_TAG) { 14499 if (!parseExplanationOfBenefitPaymentComponentContent(eventType, xpp, res)) 14500 unknownContent(xpp); 14501 eventType = nextNoWhitespace(xpp); 14502 } 14503 next(xpp); 14504 parseElementClose(res); 14505 return res; 14506 } 14507 14508 protected boolean parseExplanationOfBenefitPaymentComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.PaymentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14509 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14510 res.setType(parseCodeableConcept(xpp)); 14511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustment")) { 14512 res.setAdjustment(parseMoney(xpp)); 14513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustmentReason")) { 14514 res.setAdjustmentReason(parseCodeableConcept(xpp)); 14515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 14516 res.setDateElement(parseDate(xpp)); 14517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 14518 res.setAmount(parseMoney(xpp)); 14519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14520 res.setIdentifier(parseIdentifier(xpp)); 14521 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14522 return false; 14523 } 14524 return true; 14525 } 14526 14527 protected ExplanationOfBenefit.NoteComponent parseExplanationOfBenefitNoteComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14528 ExplanationOfBenefit.NoteComponent res = new ExplanationOfBenefit.NoteComponent(); 14529 parseElementAttributes(xpp, res); 14530 next(xpp); 14531 int eventType = nextNoWhitespace(xpp); 14532 while (eventType != XmlPullParser.END_TAG) { 14533 if (!parseExplanationOfBenefitNoteComponentContent(eventType, xpp, res)) 14534 unknownContent(xpp); 14535 eventType = nextNoWhitespace(xpp); 14536 } 14537 next(xpp); 14538 parseElementClose(res); 14539 return res; 14540 } 14541 14542 protected boolean parseExplanationOfBenefitNoteComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.NoteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14543 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 14544 res.setNumberElement(parsePositiveInt(xpp)); 14545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14546 res.setType(parseCodeableConcept(xpp)); 14547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 14548 res.setTextElement(parseString(xpp)); 14549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 14550 res.setLanguage(parseCodeableConcept(xpp)); 14551 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14552 return false; 14553 } 14554 return true; 14555 } 14556 14557 protected ExplanationOfBenefit.BenefitBalanceComponent parseExplanationOfBenefitBenefitBalanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14558 ExplanationOfBenefit.BenefitBalanceComponent res = new ExplanationOfBenefit.BenefitBalanceComponent(); 14559 parseElementAttributes(xpp, res); 14560 next(xpp); 14561 int eventType = nextNoWhitespace(xpp); 14562 while (eventType != XmlPullParser.END_TAG) { 14563 if (!parseExplanationOfBenefitBenefitBalanceComponentContent(eventType, xpp, res)) 14564 unknownContent(xpp); 14565 eventType = nextNoWhitespace(xpp); 14566 } 14567 next(xpp); 14568 parseElementClose(res); 14569 return res; 14570 } 14571 14572 protected boolean parseExplanationOfBenefitBenefitBalanceComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.BenefitBalanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14573 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14574 res.setCategory(parseCodeableConcept(xpp)); 14575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excluded")) { 14576 res.setExcludedElement(parseBoolean(xpp)); 14577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14578 res.setNameElement(parseString(xpp)); 14579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14580 res.setDescriptionElement(parseString(xpp)); 14581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 14582 res.setNetwork(parseCodeableConcept(xpp)); 14583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 14584 res.setUnit(parseCodeableConcept(xpp)); 14585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 14586 res.setTerm(parseCodeableConcept(xpp)); 14587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("financial")) { 14588 res.getFinancial().add(parseExplanationOfBenefitBenefitComponent(xpp)); 14589 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14590 return false; 14591 } 14592 return true; 14593 } 14594 14595 protected ExplanationOfBenefit.BenefitComponent parseExplanationOfBenefitBenefitComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14596 ExplanationOfBenefit.BenefitComponent res = new ExplanationOfBenefit.BenefitComponent(); 14597 parseElementAttributes(xpp, res); 14598 next(xpp); 14599 int eventType = nextNoWhitespace(xpp); 14600 while (eventType != XmlPullParser.END_TAG) { 14601 if (!parseExplanationOfBenefitBenefitComponentContent(eventType, xpp, res)) 14602 unknownContent(xpp); 14603 eventType = nextNoWhitespace(xpp); 14604 } 14605 next(xpp); 14606 parseElementClose(res); 14607 return res; 14608 } 14609 14610 protected boolean parseExplanationOfBenefitBenefitComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit.BenefitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14611 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14612 res.setType(parseCodeableConcept(xpp)); 14613 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "allowed")) { 14614 res.setAllowed(parseType("allowed", xpp)); 14615 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "used")) { 14616 res.setUsed(parseType("used", xpp)); 14617 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14618 return false; 14619 } 14620 return true; 14621 } 14622 14623 protected FamilyMemberHistory parseFamilyMemberHistory(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14624 FamilyMemberHistory res = new FamilyMemberHistory(); 14625 parseResourceAttributes(xpp, res); 14626 next(xpp); 14627 int eventType = nextNoWhitespace(xpp); 14628 while (eventType != XmlPullParser.END_TAG) { 14629 if (!parseFamilyMemberHistoryContent(eventType, xpp, res)) 14630 unknownContent(xpp); 14631 eventType = nextNoWhitespace(xpp); 14632 } 14633 next(xpp); 14634 parseElementClose(res); 14635 return res; 14636 } 14637 14638 protected boolean parseFamilyMemberHistoryContent(int eventType, XmlPullParser xpp, FamilyMemberHistory res) throws XmlPullParserException, IOException, FHIRFormatError { 14639 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14640 res.getIdentifier().add(parseIdentifier(xpp)); 14641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 14642 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 14643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 14644 res.getInstantiatesUri().add(parseUri(xpp)); 14645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14646 res.setStatusElement(parseEnumeration(xpp, FamilyMemberHistory.FamilyHistoryStatus.NULL, new FamilyMemberHistory.FamilyHistoryStatusEnumFactory())); 14647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 14648 res.setDataAbsentReason(parseCodeableConcept(xpp)); 14649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 14650 res.setPatient(parseReference(xpp)); 14651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 14652 res.setDateElement(parseDateTime(xpp)); 14653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 14654 res.getParticipant().add(parseFamilyMemberHistoryParticipantComponent(xpp)); 14655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14656 res.setNameElement(parseString(xpp)); 14657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 14658 res.setRelationship(parseCodeableConcept(xpp)); 14659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sex")) { 14660 res.setSex(parseCodeableConcept(xpp)); 14661 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "born")) { 14662 res.setBorn(parseType("born", xpp)); 14663 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "age")) { 14664 res.setAge(parseType("age", xpp)); 14665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("estimatedAge")) { 14666 res.setEstimatedAgeElement(parseBoolean(xpp)); 14667 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 14668 res.setDeceased(parseType("deceased", xpp)); 14669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 14670 res.getReason().add(parseCodeableReference(xpp)); 14671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14672 res.getNote().add(parseAnnotation(xpp)); 14673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 14674 res.getCondition().add(parseFamilyMemberHistoryConditionComponent(xpp)); 14675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 14676 res.getProcedure().add(parseFamilyMemberHistoryProcedureComponent(xpp)); 14677 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 14678 return false; 14679 } 14680 return true; 14681 } 14682 14683 protected FamilyMemberHistory.FamilyMemberHistoryParticipantComponent parseFamilyMemberHistoryParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14684 FamilyMemberHistory.FamilyMemberHistoryParticipantComponent res = new FamilyMemberHistory.FamilyMemberHistoryParticipantComponent(); 14685 parseElementAttributes(xpp, res); 14686 next(xpp); 14687 int eventType = nextNoWhitespace(xpp); 14688 while (eventType != XmlPullParser.END_TAG) { 14689 if (!parseFamilyMemberHistoryParticipantComponentContent(eventType, xpp, res)) 14690 unknownContent(xpp); 14691 eventType = nextNoWhitespace(xpp); 14692 } 14693 next(xpp); 14694 parseElementClose(res); 14695 return res; 14696 } 14697 14698 protected boolean parseFamilyMemberHistoryParticipantComponentContent(int eventType, XmlPullParser xpp, FamilyMemberHistory.FamilyMemberHistoryParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14699 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 14700 res.setFunction(parseCodeableConcept(xpp)); 14701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 14702 res.setActor(parseReference(xpp)); 14703 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14704 return false; 14705 } 14706 return true; 14707 } 14708 14709 protected FamilyMemberHistory.FamilyMemberHistoryConditionComponent parseFamilyMemberHistoryConditionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14710 FamilyMemberHistory.FamilyMemberHistoryConditionComponent res = new FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); 14711 parseElementAttributes(xpp, res); 14712 next(xpp); 14713 int eventType = nextNoWhitespace(xpp); 14714 while (eventType != XmlPullParser.END_TAG) { 14715 if (!parseFamilyMemberHistoryConditionComponentContent(eventType, xpp, res)) 14716 unknownContent(xpp); 14717 eventType = nextNoWhitespace(xpp); 14718 } 14719 next(xpp); 14720 parseElementClose(res); 14721 return res; 14722 } 14723 14724 protected boolean parseFamilyMemberHistoryConditionComponentContent(int eventType, XmlPullParser xpp, FamilyMemberHistory.FamilyMemberHistoryConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14725 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14726 res.setCode(parseCodeableConcept(xpp)); 14727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 14728 res.setOutcome(parseCodeableConcept(xpp)); 14729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributedToDeath")) { 14730 res.setContributedToDeathElement(parseBoolean(xpp)); 14731 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 14732 res.setOnset(parseType("onset", xpp)); 14733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14734 res.getNote().add(parseAnnotation(xpp)); 14735 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14736 return false; 14737 } 14738 return true; 14739 } 14740 14741 protected FamilyMemberHistory.FamilyMemberHistoryProcedureComponent parseFamilyMemberHistoryProcedureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14742 FamilyMemberHistory.FamilyMemberHistoryProcedureComponent res = new FamilyMemberHistory.FamilyMemberHistoryProcedureComponent(); 14743 parseElementAttributes(xpp, res); 14744 next(xpp); 14745 int eventType = nextNoWhitespace(xpp); 14746 while (eventType != XmlPullParser.END_TAG) { 14747 if (!parseFamilyMemberHistoryProcedureComponentContent(eventType, xpp, res)) 14748 unknownContent(xpp); 14749 eventType = nextNoWhitespace(xpp); 14750 } 14751 next(xpp); 14752 parseElementClose(res); 14753 return res; 14754 } 14755 14756 protected boolean parseFamilyMemberHistoryProcedureComponentContent(int eventType, XmlPullParser xpp, FamilyMemberHistory.FamilyMemberHistoryProcedureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14757 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14758 res.setCode(parseCodeableConcept(xpp)); 14759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 14760 res.setOutcome(parseCodeableConcept(xpp)); 14761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributedToDeath")) { 14762 res.setContributedToDeathElement(parseBoolean(xpp)); 14763 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "performed")) { 14764 res.setPerformed(parseType("performed", xpp)); 14765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14766 res.getNote().add(parseAnnotation(xpp)); 14767 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14768 return false; 14769 } 14770 return true; 14771 } 14772 14773 protected Flag parseFlag(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14774 Flag res = new Flag(); 14775 parseResourceAttributes(xpp, res); 14776 next(xpp); 14777 int eventType = nextNoWhitespace(xpp); 14778 while (eventType != XmlPullParser.END_TAG) { 14779 if (!parseFlagContent(eventType, xpp, res)) 14780 unknownContent(xpp); 14781 eventType = nextNoWhitespace(xpp); 14782 } 14783 next(xpp); 14784 parseElementClose(res); 14785 return res; 14786 } 14787 14788 protected boolean parseFlagContent(int eventType, XmlPullParser xpp, Flag res) throws XmlPullParserException, IOException, FHIRFormatError { 14789 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14790 res.getIdentifier().add(parseIdentifier(xpp)); 14791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14792 res.setStatusElement(parseEnumeration(xpp, Flag.FlagStatus.NULL, new Flag.FlagStatusEnumFactory())); 14793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14794 res.getCategory().add(parseCodeableConcept(xpp)); 14795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14796 res.setCode(parseCodeableConcept(xpp)); 14797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14798 res.setSubject(parseReference(xpp)); 14799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 14800 res.setPeriod(parsePeriod(xpp)); 14801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 14802 res.setEncounter(parseReference(xpp)); 14803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 14804 res.setAuthor(parseReference(xpp)); 14805 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 14806 return false; 14807 } 14808 return true; 14809 } 14810 14811 protected FormularyItem parseFormularyItem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14812 FormularyItem res = new FormularyItem(); 14813 parseResourceAttributes(xpp, res); 14814 next(xpp); 14815 int eventType = nextNoWhitespace(xpp); 14816 while (eventType != XmlPullParser.END_TAG) { 14817 if (!parseFormularyItemContent(eventType, xpp, res)) 14818 unknownContent(xpp); 14819 eventType = nextNoWhitespace(xpp); 14820 } 14821 next(xpp); 14822 parseElementClose(res); 14823 return res; 14824 } 14825 14826 protected boolean parseFormularyItemContent(int eventType, XmlPullParser xpp, FormularyItem res) throws XmlPullParserException, IOException, FHIRFormatError { 14827 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14828 res.getIdentifier().add(parseIdentifier(xpp)); 14829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14830 res.setCode(parseCodeableConcept(xpp)); 14831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14832 res.setStatusElement(parseEnumeration(xpp, FormularyItem.FormularyItemStatusCodes.NULL, new FormularyItem.FormularyItemStatusCodesEnumFactory())); 14833 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 14834 return false; 14835 } 14836 return true; 14837 } 14838 14839 protected GenomicStudy parseGenomicStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14840 GenomicStudy res = new GenomicStudy(); 14841 parseResourceAttributes(xpp, res); 14842 next(xpp); 14843 int eventType = nextNoWhitespace(xpp); 14844 while (eventType != XmlPullParser.END_TAG) { 14845 if (!parseGenomicStudyContent(eventType, xpp, res)) 14846 unknownContent(xpp); 14847 eventType = nextNoWhitespace(xpp); 14848 } 14849 next(xpp); 14850 parseElementClose(res); 14851 return res; 14852 } 14853 14854 protected boolean parseGenomicStudyContent(int eventType, XmlPullParser xpp, GenomicStudy res) throws XmlPullParserException, IOException, FHIRFormatError { 14855 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14856 res.getIdentifier().add(parseIdentifier(xpp)); 14857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14858 res.setStatusElement(parseEnumeration(xpp, GenomicStudy.GenomicStudyStatus.NULL, new GenomicStudy.GenomicStudyStatusEnumFactory())); 14859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14860 res.getType().add(parseCodeableConcept(xpp)); 14861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14862 res.setSubject(parseReference(xpp)); 14863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 14864 res.setEncounter(parseReference(xpp)); 14865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("startDate")) { 14866 res.setStartDateElement(parseDateTime(xpp)); 14867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 14868 res.getBasedOn().add(parseReference(xpp)); 14869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referrer")) { 14870 res.setReferrer(parseReference(xpp)); 14871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpreter")) { 14872 res.getInterpreter().add(parseReference(xpp)); 14873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 14874 res.getReason().add(parseCodeableReference(xpp)); 14875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 14876 res.setInstantiatesCanonicalElement(parseCanonical(xpp)); 14877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 14878 res.setInstantiatesUriElement(parseUri(xpp)); 14879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14880 res.getNote().add(parseAnnotation(xpp)); 14881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14882 res.setDescriptionElement(parseMarkdown(xpp)); 14883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("analysis")) { 14884 res.getAnalysis().add(parseGenomicStudyAnalysisComponent(xpp)); 14885 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 14886 return false; 14887 } 14888 return true; 14889 } 14890 14891 protected GenomicStudy.GenomicStudyAnalysisComponent parseGenomicStudyAnalysisComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14892 GenomicStudy.GenomicStudyAnalysisComponent res = new GenomicStudy.GenomicStudyAnalysisComponent(); 14893 parseElementAttributes(xpp, res); 14894 next(xpp); 14895 int eventType = nextNoWhitespace(xpp); 14896 while (eventType != XmlPullParser.END_TAG) { 14897 if (!parseGenomicStudyAnalysisComponentContent(eventType, xpp, res)) 14898 unknownContent(xpp); 14899 eventType = nextNoWhitespace(xpp); 14900 } 14901 next(xpp); 14902 parseElementClose(res); 14903 return res; 14904 } 14905 14906 protected boolean parseGenomicStudyAnalysisComponentContent(int eventType, XmlPullParser xpp, GenomicStudy.GenomicStudyAnalysisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14907 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14908 res.getIdentifier().add(parseIdentifier(xpp)); 14909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("methodType")) { 14910 res.getMethodType().add(parseCodeableConcept(xpp)); 14911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("changeType")) { 14912 res.getChangeType().add(parseCodeableConcept(xpp)); 14913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genomeBuild")) { 14914 res.setGenomeBuild(parseCodeableConcept(xpp)); 14915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 14916 res.setInstantiatesCanonicalElement(parseCanonical(xpp)); 14917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 14918 res.setInstantiatesUriElement(parseUri(xpp)); 14919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 14920 res.setTitleElement(parseString(xpp)); 14921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 14922 res.getFocus().add(parseReference(xpp)); 14923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 14924 res.getSpecimen().add(parseReference(xpp)); 14925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 14926 res.setDateElement(parseDateTime(xpp)); 14927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14928 res.getNote().add(parseAnnotation(xpp)); 14929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocolPerformed")) { 14930 res.setProtocolPerformed(parseReference(xpp)); 14931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regionsStudied")) { 14932 res.getRegionsStudied().add(parseReference(xpp)); 14933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regionsCalled")) { 14934 res.getRegionsCalled().add(parseReference(xpp)); 14935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 14936 res.getInput().add(parseGenomicStudyAnalysisInputComponent(xpp)); 14937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 14938 res.getOutput().add(parseGenomicStudyAnalysisOutputComponent(xpp)); 14939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 14940 res.getPerformer().add(parseGenomicStudyAnalysisPerformerComponent(xpp)); 14941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 14942 res.getDevice().add(parseGenomicStudyAnalysisDeviceComponent(xpp)); 14943 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14944 return false; 14945 } 14946 return true; 14947 } 14948 14949 protected GenomicStudy.GenomicStudyAnalysisInputComponent parseGenomicStudyAnalysisInputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14950 GenomicStudy.GenomicStudyAnalysisInputComponent res = new GenomicStudy.GenomicStudyAnalysisInputComponent(); 14951 parseElementAttributes(xpp, res); 14952 next(xpp); 14953 int eventType = nextNoWhitespace(xpp); 14954 while (eventType != XmlPullParser.END_TAG) { 14955 if (!parseGenomicStudyAnalysisInputComponentContent(eventType, xpp, res)) 14956 unknownContent(xpp); 14957 eventType = nextNoWhitespace(xpp); 14958 } 14959 next(xpp); 14960 parseElementClose(res); 14961 return res; 14962 } 14963 14964 protected boolean parseGenomicStudyAnalysisInputComponentContent(int eventType, XmlPullParser xpp, GenomicStudy.GenomicStudyAnalysisInputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14965 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("file")) { 14966 res.setFile(parseReference(xpp)); 14967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14968 res.setType(parseCodeableConcept(xpp)); 14969 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "generatedBy")) { 14970 res.setGeneratedBy(parseType("generatedBy", xpp)); 14971 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14972 return false; 14973 } 14974 return true; 14975 } 14976 14977 protected GenomicStudy.GenomicStudyAnalysisOutputComponent parseGenomicStudyAnalysisOutputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14978 GenomicStudy.GenomicStudyAnalysisOutputComponent res = new GenomicStudy.GenomicStudyAnalysisOutputComponent(); 14979 parseElementAttributes(xpp, res); 14980 next(xpp); 14981 int eventType = nextNoWhitespace(xpp); 14982 while (eventType != XmlPullParser.END_TAG) { 14983 if (!parseGenomicStudyAnalysisOutputComponentContent(eventType, xpp, res)) 14984 unknownContent(xpp); 14985 eventType = nextNoWhitespace(xpp); 14986 } 14987 next(xpp); 14988 parseElementClose(res); 14989 return res; 14990 } 14991 14992 protected boolean parseGenomicStudyAnalysisOutputComponentContent(int eventType, XmlPullParser xpp, GenomicStudy.GenomicStudyAnalysisOutputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14993 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("file")) { 14994 res.setFile(parseReference(xpp)); 14995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14996 res.setType(parseCodeableConcept(xpp)); 14997 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 14998 return false; 14999 } 15000 return true; 15001 } 15002 15003 protected GenomicStudy.GenomicStudyAnalysisPerformerComponent parseGenomicStudyAnalysisPerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15004 GenomicStudy.GenomicStudyAnalysisPerformerComponent res = new GenomicStudy.GenomicStudyAnalysisPerformerComponent(); 15005 parseElementAttributes(xpp, res); 15006 next(xpp); 15007 int eventType = nextNoWhitespace(xpp); 15008 while (eventType != XmlPullParser.END_TAG) { 15009 if (!parseGenomicStudyAnalysisPerformerComponentContent(eventType, xpp, res)) 15010 unknownContent(xpp); 15011 eventType = nextNoWhitespace(xpp); 15012 } 15013 next(xpp); 15014 parseElementClose(res); 15015 return res; 15016 } 15017 15018 protected boolean parseGenomicStudyAnalysisPerformerComponentContent(int eventType, XmlPullParser xpp, GenomicStudy.GenomicStudyAnalysisPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15019 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 15020 res.setActor(parseReference(xpp)); 15021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 15022 res.setRole(parseCodeableConcept(xpp)); 15023 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15024 return false; 15025 } 15026 return true; 15027 } 15028 15029 protected GenomicStudy.GenomicStudyAnalysisDeviceComponent parseGenomicStudyAnalysisDeviceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15030 GenomicStudy.GenomicStudyAnalysisDeviceComponent res = new GenomicStudy.GenomicStudyAnalysisDeviceComponent(); 15031 parseElementAttributes(xpp, res); 15032 next(xpp); 15033 int eventType = nextNoWhitespace(xpp); 15034 while (eventType != XmlPullParser.END_TAG) { 15035 if (!parseGenomicStudyAnalysisDeviceComponentContent(eventType, xpp, res)) 15036 unknownContent(xpp); 15037 eventType = nextNoWhitespace(xpp); 15038 } 15039 next(xpp); 15040 parseElementClose(res); 15041 return res; 15042 } 15043 15044 protected boolean parseGenomicStudyAnalysisDeviceComponentContent(int eventType, XmlPullParser xpp, GenomicStudy.GenomicStudyAnalysisDeviceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15045 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 15046 res.setDevice(parseReference(xpp)); 15047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 15048 res.setFunction(parseCodeableConcept(xpp)); 15049 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15050 return false; 15051 } 15052 return true; 15053 } 15054 15055 protected Goal parseGoal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15056 Goal res = new Goal(); 15057 parseResourceAttributes(xpp, res); 15058 next(xpp); 15059 int eventType = nextNoWhitespace(xpp); 15060 while (eventType != XmlPullParser.END_TAG) { 15061 if (!parseGoalContent(eventType, xpp, res)) 15062 unknownContent(xpp); 15063 eventType = nextNoWhitespace(xpp); 15064 } 15065 next(xpp); 15066 parseElementClose(res); 15067 return res; 15068 } 15069 15070 protected boolean parseGoalContent(int eventType, XmlPullParser xpp, Goal res) throws XmlPullParserException, IOException, FHIRFormatError { 15071 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15072 res.getIdentifier().add(parseIdentifier(xpp)); 15073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lifecycleStatus")) { 15074 res.setLifecycleStatusElement(parseEnumeration(xpp, Goal.GoalLifecycleStatus.NULL, new Goal.GoalLifecycleStatusEnumFactory())); 15075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("achievementStatus")) { 15076 res.setAchievementStatus(parseCodeableConcept(xpp)); 15077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 15078 res.getCategory().add(parseCodeableConcept(xpp)); 15079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("continuous")) { 15080 res.setContinuousElement(parseBoolean(xpp)); 15081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 15082 res.setPriority(parseCodeableConcept(xpp)); 15083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15084 res.setDescription(parseCodeableConcept(xpp)); 15085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 15086 res.setSubject(parseReference(xpp)); 15087 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "start")) { 15088 res.setStart(parseType("start", xpp)); 15089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 15090 res.getTarget().add(parseGoalTargetComponent(xpp)); 15091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 15092 res.setStatusDateElement(parseDate(xpp)); 15093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 15094 res.setStatusReasonElement(parseString(xpp)); 15095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 15096 res.setSource(parseReference(xpp)); 15097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 15098 res.getAddresses().add(parseReference(xpp)); 15099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 15100 res.getNote().add(parseAnnotation(xpp)); 15101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 15102 res.getOutcome().add(parseCodeableReference(xpp)); 15103 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 15104 return false; 15105 } 15106 return true; 15107 } 15108 15109 protected Goal.GoalTargetComponent parseGoalTargetComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15110 Goal.GoalTargetComponent res = new Goal.GoalTargetComponent(); 15111 parseElementAttributes(xpp, res); 15112 next(xpp); 15113 int eventType = nextNoWhitespace(xpp); 15114 while (eventType != XmlPullParser.END_TAG) { 15115 if (!parseGoalTargetComponentContent(eventType, xpp, res)) 15116 unknownContent(xpp); 15117 eventType = nextNoWhitespace(xpp); 15118 } 15119 next(xpp); 15120 parseElementClose(res); 15121 return res; 15122 } 15123 15124 protected boolean parseGoalTargetComponentContent(int eventType, XmlPullParser xpp, Goal.GoalTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15125 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 15126 res.setMeasure(parseCodeableConcept(xpp)); 15127 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "detail")) { 15128 res.setDetail(parseType("detail", xpp)); 15129 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "due")) { 15130 res.setDue(parseType("due", xpp)); 15131 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15132 return false; 15133 } 15134 return true; 15135 } 15136 15137 protected GraphDefinition parseGraphDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15138 GraphDefinition res = new GraphDefinition(); 15139 parseResourceAttributes(xpp, res); 15140 next(xpp); 15141 int eventType = nextNoWhitespace(xpp); 15142 while (eventType != XmlPullParser.END_TAG) { 15143 if (!parseGraphDefinitionContent(eventType, xpp, res)) 15144 unknownContent(xpp); 15145 eventType = nextNoWhitespace(xpp); 15146 } 15147 next(xpp); 15148 parseElementClose(res); 15149 return res; 15150 } 15151 15152 protected boolean parseGraphDefinitionContent(int eventType, XmlPullParser xpp, GraphDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 15153 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 15154 res.setUrlElement(parseUri(xpp)); 15155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15156 res.getIdentifier().add(parseIdentifier(xpp)); 15157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 15158 res.setVersionElement(parseString(xpp)); 15159 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 15160 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 15161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15162 res.setNameElement(parseString(xpp)); 15163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 15164 res.setTitleElement(parseString(xpp)); 15165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15166 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 15167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 15168 res.setExperimentalElement(parseBoolean(xpp)); 15169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 15170 res.setDateElement(parseDateTime(xpp)); 15171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 15172 res.setPublisherElement(parseString(xpp)); 15173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 15174 res.getContact().add(parseContactDetail(xpp)); 15175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15176 res.setDescriptionElement(parseMarkdown(xpp)); 15177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 15178 res.getUseContext().add(parseUsageContext(xpp)); 15179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 15180 res.getJurisdiction().add(parseCodeableConcept(xpp)); 15181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 15182 res.setPurposeElement(parseMarkdown(xpp)); 15183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 15184 res.setCopyrightElement(parseMarkdown(xpp)); 15185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 15186 res.setCopyrightLabelElement(parseString(xpp)); 15187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 15188 res.setStartElement(parseId(xpp)); 15189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("node")) { 15190 res.getNode().add(parseGraphDefinitionNodeComponent(xpp)); 15191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 15192 res.getLink().add(parseGraphDefinitionLinkComponent(xpp)); 15193 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 15194 return false; 15195 } 15196 return true; 15197 } 15198 15199 protected GraphDefinition.GraphDefinitionNodeComponent parseGraphDefinitionNodeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15200 GraphDefinition.GraphDefinitionNodeComponent res = new GraphDefinition.GraphDefinitionNodeComponent(); 15201 parseElementAttributes(xpp, res); 15202 next(xpp); 15203 int eventType = nextNoWhitespace(xpp); 15204 while (eventType != XmlPullParser.END_TAG) { 15205 if (!parseGraphDefinitionNodeComponentContent(eventType, xpp, res)) 15206 unknownContent(xpp); 15207 eventType = nextNoWhitespace(xpp); 15208 } 15209 next(xpp); 15210 parseElementClose(res); 15211 return res; 15212 } 15213 15214 protected boolean parseGraphDefinitionNodeComponentContent(int eventType, XmlPullParser xpp, GraphDefinition.GraphDefinitionNodeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15215 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nodeId")) { 15216 res.setNodeIdElement(parseId(xpp)); 15217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15218 res.setDescriptionElement(parseString(xpp)); 15219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15220 res.setTypeElement(parseEnumeration(xpp, Enumerations.VersionIndependentResourceTypesAll.NULL, new Enumerations.VersionIndependentResourceTypesAllEnumFactory())); 15221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 15222 res.setProfileElement(parseCanonical(xpp)); 15223 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15224 return false; 15225 } 15226 return true; 15227 } 15228 15229 protected GraphDefinition.GraphDefinitionLinkComponent parseGraphDefinitionLinkComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15230 GraphDefinition.GraphDefinitionLinkComponent res = new GraphDefinition.GraphDefinitionLinkComponent(); 15231 parseElementAttributes(xpp, res); 15232 next(xpp); 15233 int eventType = nextNoWhitespace(xpp); 15234 while (eventType != XmlPullParser.END_TAG) { 15235 if (!parseGraphDefinitionLinkComponentContent(eventType, xpp, res)) 15236 unknownContent(xpp); 15237 eventType = nextNoWhitespace(xpp); 15238 } 15239 next(xpp); 15240 parseElementClose(res); 15241 return res; 15242 } 15243 15244 protected boolean parseGraphDefinitionLinkComponentContent(int eventType, XmlPullParser xpp, GraphDefinition.GraphDefinitionLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15245 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15246 res.setDescriptionElement(parseString(xpp)); 15247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 15248 res.setMinElement(parseInteger(xpp)); 15249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 15250 res.setMaxElement(parseString(xpp)); 15251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 15252 res.setSourceIdElement(parseId(xpp)); 15253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 15254 res.setPathElement(parseString(xpp)); 15255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sliceName")) { 15256 res.setSliceNameElement(parseString(xpp)); 15257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetId")) { 15258 res.setTargetIdElement(parseId(xpp)); 15259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("params")) { 15260 res.setParamsElement(parseString(xpp)); 15261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compartment")) { 15262 res.getCompartment().add(parseGraphDefinitionLinkCompartmentComponent(xpp)); 15263 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15264 return false; 15265 } 15266 return true; 15267 } 15268 15269 protected GraphDefinition.GraphDefinitionLinkCompartmentComponent parseGraphDefinitionLinkCompartmentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15270 GraphDefinition.GraphDefinitionLinkCompartmentComponent res = new GraphDefinition.GraphDefinitionLinkCompartmentComponent(); 15271 parseElementAttributes(xpp, res); 15272 next(xpp); 15273 int eventType = nextNoWhitespace(xpp); 15274 while (eventType != XmlPullParser.END_TAG) { 15275 if (!parseGraphDefinitionLinkCompartmentComponentContent(eventType, xpp, res)) 15276 unknownContent(xpp); 15277 eventType = nextNoWhitespace(xpp); 15278 } 15279 next(xpp); 15280 parseElementClose(res); 15281 return res; 15282 } 15283 15284 protected boolean parseGraphDefinitionLinkCompartmentComponentContent(int eventType, XmlPullParser xpp, GraphDefinition.GraphDefinitionLinkCompartmentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15285 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 15286 res.setUseElement(parseEnumeration(xpp, GraphDefinition.GraphCompartmentUse.NULL, new GraphDefinition.GraphCompartmentUseEnumFactory())); 15287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 15288 res.setRuleElement(parseEnumeration(xpp, GraphDefinition.GraphCompartmentRule.NULL, new GraphDefinition.GraphCompartmentRuleEnumFactory())); 15289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15290 res.setCodeElement(parseEnumeration(xpp, Enumerations.CompartmentType.NULL, new Enumerations.CompartmentTypeEnumFactory())); 15291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 15292 res.setExpressionElement(parseString(xpp)); 15293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15294 res.setDescriptionElement(parseString(xpp)); 15295 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15296 return false; 15297 } 15298 return true; 15299 } 15300 15301 protected Group parseGroup(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15302 Group res = new Group(); 15303 parseResourceAttributes(xpp, res); 15304 next(xpp); 15305 int eventType = nextNoWhitespace(xpp); 15306 while (eventType != XmlPullParser.END_TAG) { 15307 if (!parseGroupContent(eventType, xpp, res)) 15308 unknownContent(xpp); 15309 eventType = nextNoWhitespace(xpp); 15310 } 15311 next(xpp); 15312 parseElementClose(res); 15313 return res; 15314 } 15315 15316 protected boolean parseGroupContent(int eventType, XmlPullParser xpp, Group res) throws XmlPullParserException, IOException, FHIRFormatError { 15317 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15318 res.getIdentifier().add(parseIdentifier(xpp)); 15319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 15320 res.setActiveElement(parseBoolean(xpp)); 15321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15322 res.setTypeElement(parseEnumeration(xpp, Group.GroupType.NULL, new Group.GroupTypeEnumFactory())); 15323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("membership")) { 15324 res.setMembershipElement(parseEnumeration(xpp, Group.GroupMembershipBasis.NULL, new Group.GroupMembershipBasisEnumFactory())); 15325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15326 res.setCode(parseCodeableConcept(xpp)); 15327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15328 res.setNameElement(parseString(xpp)); 15329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15330 res.setDescriptionElement(parseMarkdown(xpp)); 15331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15332 res.setQuantityElement(parseUnsignedInt(xpp)); 15333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingEntity")) { 15334 res.setManagingEntity(parseReference(xpp)); 15335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 15336 res.getCharacteristic().add(parseGroupCharacteristicComponent(xpp)); 15337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 15338 res.getMember().add(parseGroupMemberComponent(xpp)); 15339 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 15340 return false; 15341 } 15342 return true; 15343 } 15344 15345 protected Group.GroupCharacteristicComponent parseGroupCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15346 Group.GroupCharacteristicComponent res = new Group.GroupCharacteristicComponent(); 15347 parseElementAttributes(xpp, res); 15348 next(xpp); 15349 int eventType = nextNoWhitespace(xpp); 15350 while (eventType != XmlPullParser.END_TAG) { 15351 if (!parseGroupCharacteristicComponentContent(eventType, xpp, res)) 15352 unknownContent(xpp); 15353 eventType = nextNoWhitespace(xpp); 15354 } 15355 next(xpp); 15356 parseElementClose(res); 15357 return res; 15358 } 15359 15360 protected boolean parseGroupCharacteristicComponentContent(int eventType, XmlPullParser xpp, Group.GroupCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15361 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15362 res.setCode(parseCodeableConcept(xpp)); 15363 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 15364 res.setValue(parseType("value", xpp)); 15365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 15366 res.setExcludeElement(parseBoolean(xpp)); 15367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 15368 res.setPeriod(parsePeriod(xpp)); 15369 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15370 return false; 15371 } 15372 return true; 15373 } 15374 15375 protected Group.GroupMemberComponent parseGroupMemberComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15376 Group.GroupMemberComponent res = new Group.GroupMemberComponent(); 15377 parseElementAttributes(xpp, res); 15378 next(xpp); 15379 int eventType = nextNoWhitespace(xpp); 15380 while (eventType != XmlPullParser.END_TAG) { 15381 if (!parseGroupMemberComponentContent(eventType, xpp, res)) 15382 unknownContent(xpp); 15383 eventType = nextNoWhitespace(xpp); 15384 } 15385 next(xpp); 15386 parseElementClose(res); 15387 return res; 15388 } 15389 15390 protected boolean parseGroupMemberComponentContent(int eventType, XmlPullParser xpp, Group.GroupMemberComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15391 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 15392 res.setEntity(parseReference(xpp)); 15393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 15394 res.setPeriod(parsePeriod(xpp)); 15395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 15396 res.setInactiveElement(parseBoolean(xpp)); 15397 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15398 return false; 15399 } 15400 return true; 15401 } 15402 15403 protected GuidanceResponse parseGuidanceResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15404 GuidanceResponse res = new GuidanceResponse(); 15405 parseResourceAttributes(xpp, res); 15406 next(xpp); 15407 int eventType = nextNoWhitespace(xpp); 15408 while (eventType != XmlPullParser.END_TAG) { 15409 if (!parseGuidanceResponseContent(eventType, xpp, res)) 15410 unknownContent(xpp); 15411 eventType = nextNoWhitespace(xpp); 15412 } 15413 next(xpp); 15414 parseElementClose(res); 15415 return res; 15416 } 15417 15418 protected boolean parseGuidanceResponseContent(int eventType, XmlPullParser xpp, GuidanceResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 15419 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestIdentifier")) { 15420 res.setRequestIdentifier(parseIdentifier(xpp)); 15421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15422 res.getIdentifier().add(parseIdentifier(xpp)); 15423 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "module")) { 15424 res.setModule(parseType("module", xpp)); 15425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15426 res.setStatusElement(parseEnumeration(xpp, GuidanceResponse.GuidanceResponseStatus.NULL, new GuidanceResponse.GuidanceResponseStatusEnumFactory())); 15427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 15428 res.setSubject(parseReference(xpp)); 15429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 15430 res.setEncounter(parseReference(xpp)); 15431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceDateTime")) { 15432 res.setOccurrenceDateTimeElement(parseDateTime(xpp)); 15433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 15434 res.setPerformer(parseReference(xpp)); 15435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 15436 res.getReason().add(parseCodeableReference(xpp)); 15437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 15438 res.getNote().add(parseAnnotation(xpp)); 15439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evaluationMessage")) { 15440 res.setEvaluationMessage(parseReference(xpp)); 15441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outputParameters")) { 15442 res.setOutputParameters(parseReference(xpp)); 15443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 15444 res.getResult().add(parseReference(xpp)); 15445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 15446 res.getDataRequirement().add(parseDataRequirement(xpp)); 15447 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 15448 return false; 15449 } 15450 return true; 15451 } 15452 15453 protected HealthcareService parseHealthcareService(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15454 HealthcareService res = new HealthcareService(); 15455 parseResourceAttributes(xpp, res); 15456 next(xpp); 15457 int eventType = nextNoWhitespace(xpp); 15458 while (eventType != XmlPullParser.END_TAG) { 15459 if (!parseHealthcareServiceContent(eventType, xpp, res)) 15460 unknownContent(xpp); 15461 eventType = nextNoWhitespace(xpp); 15462 } 15463 next(xpp); 15464 parseElementClose(res); 15465 return res; 15466 } 15467 15468 protected boolean parseHealthcareServiceContent(int eventType, XmlPullParser xpp, HealthcareService res) throws XmlPullParserException, IOException, FHIRFormatError { 15469 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15470 res.getIdentifier().add(parseIdentifier(xpp)); 15471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 15472 res.setActiveElement(parseBoolean(xpp)); 15473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("providedBy")) { 15474 res.setProvidedBy(parseReference(xpp)); 15475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offeredIn")) { 15476 res.getOfferedIn().add(parseReference(xpp)); 15477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 15478 res.getCategory().add(parseCodeableConcept(xpp)); 15479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15480 res.getType().add(parseCodeableConcept(xpp)); 15481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 15482 res.getSpecialty().add(parseCodeableConcept(xpp)); 15483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 15484 res.getLocation().add(parseReference(xpp)); 15485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15486 res.setNameElement(parseString(xpp)); 15487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 15488 res.setCommentElement(parseMarkdown(xpp)); 15489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extraDetails")) { 15490 res.setExtraDetailsElement(parseMarkdown(xpp)); 15491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 15492 res.setPhoto(parseAttachment(xpp)); 15493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 15494 res.getContact().add(parseExtendedContactDetail(xpp)); 15495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverageArea")) { 15496 res.getCoverageArea().add(parseReference(xpp)); 15497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvisionCode")) { 15498 res.getServiceProvisionCode().add(parseCodeableConcept(xpp)); 15499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibility")) { 15500 res.getEligibility().add(parseHealthcareServiceEligibilityComponent(xpp)); 15501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("program")) { 15502 res.getProgram().add(parseCodeableConcept(xpp)); 15503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 15504 res.getCharacteristic().add(parseCodeableConcept(xpp)); 15505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 15506 res.getCommunication().add(parseCodeableConcept(xpp)); 15507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralMethod")) { 15508 res.getReferralMethod().add(parseCodeableConcept(xpp)); 15509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentRequired")) { 15510 res.setAppointmentRequiredElement(parseBoolean(xpp)); 15511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 15512 res.getAvailability().add(parseAvailability(xpp)); 15513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 15514 res.getEndpoint().add(parseReference(xpp)); 15515 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 15516 return false; 15517 } 15518 return true; 15519 } 15520 15521 protected HealthcareService.HealthcareServiceEligibilityComponent parseHealthcareServiceEligibilityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15522 HealthcareService.HealthcareServiceEligibilityComponent res = new HealthcareService.HealthcareServiceEligibilityComponent(); 15523 parseElementAttributes(xpp, res); 15524 next(xpp); 15525 int eventType = nextNoWhitespace(xpp); 15526 while (eventType != XmlPullParser.END_TAG) { 15527 if (!parseHealthcareServiceEligibilityComponentContent(eventType, xpp, res)) 15528 unknownContent(xpp); 15529 eventType = nextNoWhitespace(xpp); 15530 } 15531 next(xpp); 15532 parseElementClose(res); 15533 return res; 15534 } 15535 15536 protected boolean parseHealthcareServiceEligibilityComponentContent(int eventType, XmlPullParser xpp, HealthcareService.HealthcareServiceEligibilityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15537 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15538 res.setCode(parseCodeableConcept(xpp)); 15539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 15540 res.setCommentElement(parseMarkdown(xpp)); 15541 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15542 return false; 15543 } 15544 return true; 15545 } 15546 15547 protected ImagingSelection parseImagingSelection(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15548 ImagingSelection res = new ImagingSelection(); 15549 parseResourceAttributes(xpp, res); 15550 next(xpp); 15551 int eventType = nextNoWhitespace(xpp); 15552 while (eventType != XmlPullParser.END_TAG) { 15553 if (!parseImagingSelectionContent(eventType, xpp, res)) 15554 unknownContent(xpp); 15555 eventType = nextNoWhitespace(xpp); 15556 } 15557 next(xpp); 15558 parseElementClose(res); 15559 return res; 15560 } 15561 15562 protected boolean parseImagingSelectionContent(int eventType, XmlPullParser xpp, ImagingSelection res) throws XmlPullParserException, IOException, FHIRFormatError { 15563 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15564 res.getIdentifier().add(parseIdentifier(xpp)); 15565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15566 res.setStatusElement(parseEnumeration(xpp, ImagingSelection.ImagingSelectionStatus.NULL, new ImagingSelection.ImagingSelectionStatusEnumFactory())); 15567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 15568 res.setSubject(parseReference(xpp)); 15569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 15570 res.setIssuedElement(parseInstant(xpp)); 15571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 15572 res.getPerformer().add(parseImagingSelectionPerformerComponent(xpp)); 15573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 15574 res.getBasedOn().add(parseReference(xpp)); 15575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 15576 res.getCategory().add(parseCodeableConcept(xpp)); 15577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15578 res.setCode(parseCodeableConcept(xpp)); 15579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("studyUid")) { 15580 res.setStudyUidElement(parseId(xpp)); 15581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 15582 res.getDerivedFrom().add(parseReference(xpp)); 15583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 15584 res.getEndpoint().add(parseReference(xpp)); 15585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesUid")) { 15586 res.setSeriesUidElement(parseId(xpp)); 15587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesNumber")) { 15588 res.setSeriesNumberElement(parseUnsignedInt(xpp)); 15589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frameOfReferenceUid")) { 15590 res.setFrameOfReferenceUidElement(parseId(xpp)); 15591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 15592 res.setBodySite(parseCodeableReference(xpp)); 15593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 15594 res.getFocus().add(parseReference(xpp)); 15595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 15596 res.getInstance().add(parseImagingSelectionInstanceComponent(xpp)); 15597 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 15598 return false; 15599 } 15600 return true; 15601 } 15602 15603 protected ImagingSelection.ImagingSelectionPerformerComponent parseImagingSelectionPerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15604 ImagingSelection.ImagingSelectionPerformerComponent res = new ImagingSelection.ImagingSelectionPerformerComponent(); 15605 parseElementAttributes(xpp, res); 15606 next(xpp); 15607 int eventType = nextNoWhitespace(xpp); 15608 while (eventType != XmlPullParser.END_TAG) { 15609 if (!parseImagingSelectionPerformerComponentContent(eventType, xpp, res)) 15610 unknownContent(xpp); 15611 eventType = nextNoWhitespace(xpp); 15612 } 15613 next(xpp); 15614 parseElementClose(res); 15615 return res; 15616 } 15617 15618 protected boolean parseImagingSelectionPerformerComponentContent(int eventType, XmlPullParser xpp, ImagingSelection.ImagingSelectionPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15619 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 15620 res.setFunction(parseCodeableConcept(xpp)); 15621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 15622 res.setActor(parseReference(xpp)); 15623 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15624 return false; 15625 } 15626 return true; 15627 } 15628 15629 protected ImagingSelection.ImagingSelectionInstanceComponent parseImagingSelectionInstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15630 ImagingSelection.ImagingSelectionInstanceComponent res = new ImagingSelection.ImagingSelectionInstanceComponent(); 15631 parseElementAttributes(xpp, res); 15632 next(xpp); 15633 int eventType = nextNoWhitespace(xpp); 15634 while (eventType != XmlPullParser.END_TAG) { 15635 if (!parseImagingSelectionInstanceComponentContent(eventType, xpp, res)) 15636 unknownContent(xpp); 15637 eventType = nextNoWhitespace(xpp); 15638 } 15639 next(xpp); 15640 parseElementClose(res); 15641 return res; 15642 } 15643 15644 protected boolean parseImagingSelectionInstanceComponentContent(int eventType, XmlPullParser xpp, ImagingSelection.ImagingSelectionInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15645 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 15646 res.setUidElement(parseId(xpp)); 15647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 15648 res.setNumberElement(parseUnsignedInt(xpp)); 15649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 15650 res.setSopClass(parseCoding(xpp)); 15651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subset")) { 15652 res.getSubset().add(parseString(xpp)); 15653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imageRegion2D")) { 15654 res.getImageRegion2D().add(parseImagingSelectionImageRegion2DComponent(xpp)); 15655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imageRegion3D")) { 15656 res.getImageRegion3D().add(parseImagingSelectionImageRegion3DComponent(xpp)); 15657 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15658 return false; 15659 } 15660 return true; 15661 } 15662 15663 protected ImagingSelection.ImageRegion2DComponent parseImagingSelectionImageRegion2DComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15664 ImagingSelection.ImageRegion2DComponent res = new ImagingSelection.ImageRegion2DComponent(); 15665 parseElementAttributes(xpp, res); 15666 next(xpp); 15667 int eventType = nextNoWhitespace(xpp); 15668 while (eventType != XmlPullParser.END_TAG) { 15669 if (!parseImagingSelectionImageRegion2DComponentContent(eventType, xpp, res)) 15670 unknownContent(xpp); 15671 eventType = nextNoWhitespace(xpp); 15672 } 15673 next(xpp); 15674 parseElementClose(res); 15675 return res; 15676 } 15677 15678 protected boolean parseImagingSelectionImageRegion2DComponentContent(int eventType, XmlPullParser xpp, ImagingSelection.ImageRegion2DComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15679 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regionType")) { 15680 res.setRegionTypeElement(parseEnumeration(xpp, ImagingSelection.ImagingSelection2DGraphicType.NULL, new ImagingSelection.ImagingSelection2DGraphicTypeEnumFactory())); 15681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coordinate")) { 15682 res.getCoordinate().add(parseDecimal(xpp)); 15683 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15684 return false; 15685 } 15686 return true; 15687 } 15688 15689 protected ImagingSelection.ImageRegion3DComponent parseImagingSelectionImageRegion3DComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15690 ImagingSelection.ImageRegion3DComponent res = new ImagingSelection.ImageRegion3DComponent(); 15691 parseElementAttributes(xpp, res); 15692 next(xpp); 15693 int eventType = nextNoWhitespace(xpp); 15694 while (eventType != XmlPullParser.END_TAG) { 15695 if (!parseImagingSelectionImageRegion3DComponentContent(eventType, xpp, res)) 15696 unknownContent(xpp); 15697 eventType = nextNoWhitespace(xpp); 15698 } 15699 next(xpp); 15700 parseElementClose(res); 15701 return res; 15702 } 15703 15704 protected boolean parseImagingSelectionImageRegion3DComponentContent(int eventType, XmlPullParser xpp, ImagingSelection.ImageRegion3DComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15705 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regionType")) { 15706 res.setRegionTypeElement(parseEnumeration(xpp, ImagingSelection.ImagingSelection3DGraphicType.NULL, new ImagingSelection.ImagingSelection3DGraphicTypeEnumFactory())); 15707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coordinate")) { 15708 res.getCoordinate().add(parseDecimal(xpp)); 15709 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15710 return false; 15711 } 15712 return true; 15713 } 15714 15715 protected ImagingStudy parseImagingStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15716 ImagingStudy res = new ImagingStudy(); 15717 parseResourceAttributes(xpp, res); 15718 next(xpp); 15719 int eventType = nextNoWhitespace(xpp); 15720 while (eventType != XmlPullParser.END_TAG) { 15721 if (!parseImagingStudyContent(eventType, xpp, res)) 15722 unknownContent(xpp); 15723 eventType = nextNoWhitespace(xpp); 15724 } 15725 next(xpp); 15726 parseElementClose(res); 15727 return res; 15728 } 15729 15730 protected boolean parseImagingStudyContent(int eventType, XmlPullParser xpp, ImagingStudy res) throws XmlPullParserException, IOException, FHIRFormatError { 15731 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15732 res.getIdentifier().add(parseIdentifier(xpp)); 15733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15734 res.setStatusElement(parseEnumeration(xpp, ImagingStudy.ImagingStudyStatus.NULL, new ImagingStudy.ImagingStudyStatusEnumFactory())); 15735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modality")) { 15736 res.getModality().add(parseCodeableConcept(xpp)); 15737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 15738 res.setSubject(parseReference(xpp)); 15739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 15740 res.setEncounter(parseReference(xpp)); 15741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 15742 res.setStartedElement(parseDateTime(xpp)); 15743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 15744 res.getBasedOn().add(parseReference(xpp)); 15745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 15746 res.getPartOf().add(parseReference(xpp)); 15747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referrer")) { 15748 res.setReferrer(parseReference(xpp)); 15749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 15750 res.getEndpoint().add(parseReference(xpp)); 15751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfSeries")) { 15752 res.setNumberOfSeriesElement(parseUnsignedInt(xpp)); 15753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 15754 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 15755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 15756 res.getProcedure().add(parseCodeableReference(xpp)); 15757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 15758 res.setLocation(parseReference(xpp)); 15759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 15760 res.getReason().add(parseCodeableReference(xpp)); 15761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 15762 res.getNote().add(parseAnnotation(xpp)); 15763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15764 res.setDescriptionElement(parseString(xpp)); 15765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 15766 res.getSeries().add(parseImagingStudySeriesComponent(xpp)); 15767 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 15768 return false; 15769 } 15770 return true; 15771 } 15772 15773 protected ImagingStudy.ImagingStudySeriesComponent parseImagingStudySeriesComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15774 ImagingStudy.ImagingStudySeriesComponent res = new ImagingStudy.ImagingStudySeriesComponent(); 15775 parseElementAttributes(xpp, res); 15776 next(xpp); 15777 int eventType = nextNoWhitespace(xpp); 15778 while (eventType != XmlPullParser.END_TAG) { 15779 if (!parseImagingStudySeriesComponentContent(eventType, xpp, res)) 15780 unknownContent(xpp); 15781 eventType = nextNoWhitespace(xpp); 15782 } 15783 next(xpp); 15784 parseElementClose(res); 15785 return res; 15786 } 15787 15788 protected boolean parseImagingStudySeriesComponentContent(int eventType, XmlPullParser xpp, ImagingStudy.ImagingStudySeriesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15789 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 15790 res.setUidElement(parseId(xpp)); 15791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 15792 res.setNumberElement(parseUnsignedInt(xpp)); 15793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modality")) { 15794 res.setModality(parseCodeableConcept(xpp)); 15795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15796 res.setDescriptionElement(parseString(xpp)); 15797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 15798 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 15799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 15800 res.getEndpoint().add(parseReference(xpp)); 15801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 15802 res.setBodySite(parseCodeableReference(xpp)); 15803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("laterality")) { 15804 res.setLaterality(parseCodeableConcept(xpp)); 15805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 15806 res.getSpecimen().add(parseReference(xpp)); 15807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 15808 res.setStartedElement(parseDateTime(xpp)); 15809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 15810 res.getPerformer().add(parseImagingStudySeriesPerformerComponent(xpp)); 15811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 15812 res.getInstance().add(parseImagingStudySeriesInstanceComponent(xpp)); 15813 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15814 return false; 15815 } 15816 return true; 15817 } 15818 15819 protected ImagingStudy.ImagingStudySeriesPerformerComponent parseImagingStudySeriesPerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15820 ImagingStudy.ImagingStudySeriesPerformerComponent res = new ImagingStudy.ImagingStudySeriesPerformerComponent(); 15821 parseElementAttributes(xpp, res); 15822 next(xpp); 15823 int eventType = nextNoWhitespace(xpp); 15824 while (eventType != XmlPullParser.END_TAG) { 15825 if (!parseImagingStudySeriesPerformerComponentContent(eventType, xpp, res)) 15826 unknownContent(xpp); 15827 eventType = nextNoWhitespace(xpp); 15828 } 15829 next(xpp); 15830 parseElementClose(res); 15831 return res; 15832 } 15833 15834 protected boolean parseImagingStudySeriesPerformerComponentContent(int eventType, XmlPullParser xpp, ImagingStudy.ImagingStudySeriesPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15835 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 15836 res.setFunction(parseCodeableConcept(xpp)); 15837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 15838 res.setActor(parseReference(xpp)); 15839 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15840 return false; 15841 } 15842 return true; 15843 } 15844 15845 protected ImagingStudy.ImagingStudySeriesInstanceComponent parseImagingStudySeriesInstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15846 ImagingStudy.ImagingStudySeriesInstanceComponent res = new ImagingStudy.ImagingStudySeriesInstanceComponent(); 15847 parseElementAttributes(xpp, res); 15848 next(xpp); 15849 int eventType = nextNoWhitespace(xpp); 15850 while (eventType != XmlPullParser.END_TAG) { 15851 if (!parseImagingStudySeriesInstanceComponentContent(eventType, xpp, res)) 15852 unknownContent(xpp); 15853 eventType = nextNoWhitespace(xpp); 15854 } 15855 next(xpp); 15856 parseElementClose(res); 15857 return res; 15858 } 15859 15860 protected boolean parseImagingStudySeriesInstanceComponentContent(int eventType, XmlPullParser xpp, ImagingStudy.ImagingStudySeriesInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15861 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 15862 res.setUidElement(parseId(xpp)); 15863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 15864 res.setSopClass(parseCoding(xpp)); 15865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 15866 res.setNumberElement(parseUnsignedInt(xpp)); 15867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 15868 res.setTitleElement(parseString(xpp)); 15869 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15870 return false; 15871 } 15872 return true; 15873 } 15874 15875 protected Immunization parseImmunization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15876 Immunization res = new Immunization(); 15877 parseResourceAttributes(xpp, res); 15878 next(xpp); 15879 int eventType = nextNoWhitespace(xpp); 15880 while (eventType != XmlPullParser.END_TAG) { 15881 if (!parseImmunizationContent(eventType, xpp, res)) 15882 unknownContent(xpp); 15883 eventType = nextNoWhitespace(xpp); 15884 } 15885 next(xpp); 15886 parseElementClose(res); 15887 return res; 15888 } 15889 15890 protected boolean parseImmunizationContent(int eventType, XmlPullParser xpp, Immunization res) throws XmlPullParserException, IOException, FHIRFormatError { 15891 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15892 res.getIdentifier().add(parseIdentifier(xpp)); 15893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 15894 res.getBasedOn().add(parseReference(xpp)); 15895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15896 res.setStatusElement(parseEnumeration(xpp, Immunization.ImmunizationStatusCodes.NULL, new Immunization.ImmunizationStatusCodesEnumFactory())); 15897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 15898 res.setStatusReason(parseCodeableConcept(xpp)); 15899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 15900 res.setVaccineCode(parseCodeableConcept(xpp)); 15901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administeredProduct")) { 15902 res.setAdministeredProduct(parseCodeableReference(xpp)); 15903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 15904 res.setManufacturer(parseCodeableReference(xpp)); 15905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 15906 res.setLotNumberElement(parseString(xpp)); 15907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 15908 res.setExpirationDateElement(parseDate(xpp)); 15909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 15910 res.setPatient(parseReference(xpp)); 15911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 15912 res.setEncounter(parseReference(xpp)); 15913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 15914 res.getSupportingInformation().add(parseReference(xpp)); 15915 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 15916 res.setOccurrence(parseType("occurrence", xpp)); 15917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("primarySource")) { 15918 res.setPrimarySourceElement(parseBoolean(xpp)); 15919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 15920 res.setInformationSource(parseCodeableReference(xpp)); 15921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 15922 res.setLocation(parseReference(xpp)); 15923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 15924 res.setSite(parseCodeableConcept(xpp)); 15925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 15926 res.setRoute(parseCodeableConcept(xpp)); 15927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseQuantity")) { 15928 res.setDoseQuantity(parseQuantity(xpp)); 15929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 15930 res.getPerformer().add(parseImmunizationPerformerComponent(xpp)); 15931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 15932 res.getNote().add(parseAnnotation(xpp)); 15933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 15934 res.getReason().add(parseCodeableReference(xpp)); 15935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isSubpotent")) { 15936 res.setIsSubpotentElement(parseBoolean(xpp)); 15937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subpotentReason")) { 15938 res.getSubpotentReason().add(parseCodeableConcept(xpp)); 15939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programEligibility")) { 15940 res.getProgramEligibility().add(parseImmunizationProgramEligibilityComponent(xpp)); 15941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundingSource")) { 15942 res.setFundingSource(parseCodeableConcept(xpp)); 15943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 15944 res.getReaction().add(parseImmunizationReactionComponent(xpp)); 15945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocolApplied")) { 15946 res.getProtocolApplied().add(parseImmunizationProtocolAppliedComponent(xpp)); 15947 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 15948 return false; 15949 } 15950 return true; 15951 } 15952 15953 protected Immunization.ImmunizationPerformerComponent parseImmunizationPerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15954 Immunization.ImmunizationPerformerComponent res = new Immunization.ImmunizationPerformerComponent(); 15955 parseElementAttributes(xpp, res); 15956 next(xpp); 15957 int eventType = nextNoWhitespace(xpp); 15958 while (eventType != XmlPullParser.END_TAG) { 15959 if (!parseImmunizationPerformerComponentContent(eventType, xpp, res)) 15960 unknownContent(xpp); 15961 eventType = nextNoWhitespace(xpp); 15962 } 15963 next(xpp); 15964 parseElementClose(res); 15965 return res; 15966 } 15967 15968 protected boolean parseImmunizationPerformerComponentContent(int eventType, XmlPullParser xpp, Immunization.ImmunizationPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15969 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 15970 res.setFunction(parseCodeableConcept(xpp)); 15971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 15972 res.setActor(parseReference(xpp)); 15973 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 15974 return false; 15975 } 15976 return true; 15977 } 15978 15979 protected Immunization.ImmunizationProgramEligibilityComponent parseImmunizationProgramEligibilityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15980 Immunization.ImmunizationProgramEligibilityComponent res = new Immunization.ImmunizationProgramEligibilityComponent(); 15981 parseElementAttributes(xpp, res); 15982 next(xpp); 15983 int eventType = nextNoWhitespace(xpp); 15984 while (eventType != XmlPullParser.END_TAG) { 15985 if (!parseImmunizationProgramEligibilityComponentContent(eventType, xpp, res)) 15986 unknownContent(xpp); 15987 eventType = nextNoWhitespace(xpp); 15988 } 15989 next(xpp); 15990 parseElementClose(res); 15991 return res; 15992 } 15993 15994 protected boolean parseImmunizationProgramEligibilityComponentContent(int eventType, XmlPullParser xpp, Immunization.ImmunizationProgramEligibilityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15995 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("program")) { 15996 res.setProgram(parseCodeableConcept(xpp)); 15997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programStatus")) { 15998 res.setProgramStatus(parseCodeableConcept(xpp)); 15999 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16000 return false; 16001 } 16002 return true; 16003 } 16004 16005 protected Immunization.ImmunizationReactionComponent parseImmunizationReactionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16006 Immunization.ImmunizationReactionComponent res = new Immunization.ImmunizationReactionComponent(); 16007 parseElementAttributes(xpp, res); 16008 next(xpp); 16009 int eventType = nextNoWhitespace(xpp); 16010 while (eventType != XmlPullParser.END_TAG) { 16011 if (!parseImmunizationReactionComponentContent(eventType, xpp, res)) 16012 unknownContent(xpp); 16013 eventType = nextNoWhitespace(xpp); 16014 } 16015 next(xpp); 16016 parseElementClose(res); 16017 return res; 16018 } 16019 16020 protected boolean parseImmunizationReactionComponentContent(int eventType, XmlPullParser xpp, Immunization.ImmunizationReactionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16021 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 16022 res.setDateElement(parseDateTime(xpp)); 16023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manifestation")) { 16024 res.setManifestation(parseCodeableReference(xpp)); 16025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reported")) { 16026 res.setReportedElement(parseBoolean(xpp)); 16027 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16028 return false; 16029 } 16030 return true; 16031 } 16032 16033 protected Immunization.ImmunizationProtocolAppliedComponent parseImmunizationProtocolAppliedComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16034 Immunization.ImmunizationProtocolAppliedComponent res = new Immunization.ImmunizationProtocolAppliedComponent(); 16035 parseElementAttributes(xpp, res); 16036 next(xpp); 16037 int eventType = nextNoWhitespace(xpp); 16038 while (eventType != XmlPullParser.END_TAG) { 16039 if (!parseImmunizationProtocolAppliedComponentContent(eventType, xpp, res)) 16040 unknownContent(xpp); 16041 eventType = nextNoWhitespace(xpp); 16042 } 16043 next(xpp); 16044 parseElementClose(res); 16045 return res; 16046 } 16047 16048 protected boolean parseImmunizationProtocolAppliedComponentContent(int eventType, XmlPullParser xpp, Immunization.ImmunizationProtocolAppliedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16049 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 16050 res.setSeriesElement(parseString(xpp)); 16051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 16052 res.setAuthority(parseReference(xpp)); 16053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 16054 res.getTargetDisease().add(parseCodeableConcept(xpp)); 16055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { 16056 res.setDoseNumberElement(parseString(xpp)); 16057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { 16058 res.setSeriesDosesElement(parseString(xpp)); 16059 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16060 return false; 16061 } 16062 return true; 16063 } 16064 16065 protected ImmunizationEvaluation parseImmunizationEvaluation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16066 ImmunizationEvaluation res = new ImmunizationEvaluation(); 16067 parseResourceAttributes(xpp, res); 16068 next(xpp); 16069 int eventType = nextNoWhitespace(xpp); 16070 while (eventType != XmlPullParser.END_TAG) { 16071 if (!parseImmunizationEvaluationContent(eventType, xpp, res)) 16072 unknownContent(xpp); 16073 eventType = nextNoWhitespace(xpp); 16074 } 16075 next(xpp); 16076 parseElementClose(res); 16077 return res; 16078 } 16079 16080 protected boolean parseImmunizationEvaluationContent(int eventType, XmlPullParser xpp, ImmunizationEvaluation res) throws XmlPullParserException, IOException, FHIRFormatError { 16081 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16082 res.getIdentifier().add(parseIdentifier(xpp)); 16083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 16084 res.setStatusElement(parseEnumeration(xpp, ImmunizationEvaluation.ImmunizationEvaluationStatusCodes.NULL, new ImmunizationEvaluation.ImmunizationEvaluationStatusCodesEnumFactory())); 16085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 16086 res.setPatient(parseReference(xpp)); 16087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 16088 res.setDateElement(parseDateTime(xpp)); 16089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 16090 res.setAuthority(parseReference(xpp)); 16091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 16092 res.setTargetDisease(parseCodeableConcept(xpp)); 16093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("immunizationEvent")) { 16094 res.setImmunizationEvent(parseReference(xpp)); 16095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatus")) { 16096 res.setDoseStatus(parseCodeableConcept(xpp)); 16097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatusReason")) { 16098 res.getDoseStatusReason().add(parseCodeableConcept(xpp)); 16099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16100 res.setDescriptionElement(parseMarkdown(xpp)); 16101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 16102 res.setSeriesElement(parseString(xpp)); 16103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { 16104 res.setDoseNumberElement(parseString(xpp)); 16105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { 16106 res.setSeriesDosesElement(parseString(xpp)); 16107 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 16108 return false; 16109 } 16110 return true; 16111 } 16112 16113 protected ImmunizationRecommendation parseImmunizationRecommendation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16114 ImmunizationRecommendation res = new ImmunizationRecommendation(); 16115 parseResourceAttributes(xpp, res); 16116 next(xpp); 16117 int eventType = nextNoWhitespace(xpp); 16118 while (eventType != XmlPullParser.END_TAG) { 16119 if (!parseImmunizationRecommendationContent(eventType, xpp, res)) 16120 unknownContent(xpp); 16121 eventType = nextNoWhitespace(xpp); 16122 } 16123 next(xpp); 16124 parseElementClose(res); 16125 return res; 16126 } 16127 16128 protected boolean parseImmunizationRecommendationContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation res) throws XmlPullParserException, IOException, FHIRFormatError { 16129 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16130 res.getIdentifier().add(parseIdentifier(xpp)); 16131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 16132 res.setPatient(parseReference(xpp)); 16133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 16134 res.setDateElement(parseDateTime(xpp)); 16135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 16136 res.setAuthority(parseReference(xpp)); 16137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recommendation")) { 16138 res.getRecommendation().add(parseImmunizationRecommendationRecommendationComponent(xpp)); 16139 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 16140 return false; 16141 } 16142 return true; 16143 } 16144 16145 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent parseImmunizationRecommendationRecommendationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16146 ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); 16147 parseElementAttributes(xpp, res); 16148 next(xpp); 16149 int eventType = nextNoWhitespace(xpp); 16150 while (eventType != XmlPullParser.END_TAG) { 16151 if (!parseImmunizationRecommendationRecommendationComponentContent(eventType, xpp, res)) 16152 unknownContent(xpp); 16153 eventType = nextNoWhitespace(xpp); 16154 } 16155 next(xpp); 16156 parseElementClose(res); 16157 return res; 16158 } 16159 16160 protected boolean parseImmunizationRecommendationRecommendationComponentContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16161 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 16162 res.getVaccineCode().add(parseCodeableConcept(xpp)); 16163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 16164 res.getTargetDisease().add(parseCodeableConcept(xpp)); 16165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contraindicatedVaccineCode")) { 16166 res.getContraindicatedVaccineCode().add(parseCodeableConcept(xpp)); 16167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("forecastStatus")) { 16168 res.setForecastStatus(parseCodeableConcept(xpp)); 16169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("forecastReason")) { 16170 res.getForecastReason().add(parseCodeableConcept(xpp)); 16171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateCriterion")) { 16172 res.getDateCriterion().add(parseImmunizationRecommendationRecommendationDateCriterionComponent(xpp)); 16173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16174 res.setDescriptionElement(parseMarkdown(xpp)); 16175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 16176 res.setSeriesElement(parseString(xpp)); 16177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { 16178 res.setDoseNumberElement(parseString(xpp)); 16179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { 16180 res.setSeriesDosesElement(parseString(xpp)); 16181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingImmunization")) { 16182 res.getSupportingImmunization().add(parseReference(xpp)); 16183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingPatientInformation")) { 16184 res.getSupportingPatientInformation().add(parseReference(xpp)); 16185 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16186 return false; 16187 } 16188 return true; 16189 } 16190 16191 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent parseImmunizationRecommendationRecommendationDateCriterionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16192 ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); 16193 parseElementAttributes(xpp, res); 16194 next(xpp); 16195 int eventType = nextNoWhitespace(xpp); 16196 while (eventType != XmlPullParser.END_TAG) { 16197 if (!parseImmunizationRecommendationRecommendationDateCriterionComponentContent(eventType, xpp, res)) 16198 unknownContent(xpp); 16199 eventType = nextNoWhitespace(xpp); 16200 } 16201 next(xpp); 16202 parseElementClose(res); 16203 return res; 16204 } 16205 16206 protected boolean parseImmunizationRecommendationRecommendationDateCriterionComponentContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16207 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 16208 res.setCode(parseCodeableConcept(xpp)); 16209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16210 res.setValueElement(parseDateTime(xpp)); 16211 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16212 return false; 16213 } 16214 return true; 16215 } 16216 16217 protected ImplementationGuide parseImplementationGuide(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16218 ImplementationGuide res = new ImplementationGuide(); 16219 parseResourceAttributes(xpp, res); 16220 next(xpp); 16221 int eventType = nextNoWhitespace(xpp); 16222 while (eventType != XmlPullParser.END_TAG) { 16223 if (!parseImplementationGuideContent(eventType, xpp, res)) 16224 unknownContent(xpp); 16225 eventType = nextNoWhitespace(xpp); 16226 } 16227 next(xpp); 16228 parseElementClose(res); 16229 return res; 16230 } 16231 16232 protected boolean parseImplementationGuideContent(int eventType, XmlPullParser xpp, ImplementationGuide res) throws XmlPullParserException, IOException, FHIRFormatError { 16233 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 16234 res.setUrlElement(parseUri(xpp)); 16235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16236 res.getIdentifier().add(parseIdentifier(xpp)); 16237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 16238 res.setVersionElement(parseString(xpp)); 16239 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 16240 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 16241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16242 res.setNameElement(parseString(xpp)); 16243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 16244 res.setTitleElement(parseString(xpp)); 16245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 16246 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 16247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 16248 res.setExperimentalElement(parseBoolean(xpp)); 16249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 16250 res.setDateElement(parseDateTime(xpp)); 16251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 16252 res.setPublisherElement(parseString(xpp)); 16253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 16254 res.getContact().add(parseContactDetail(xpp)); 16255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16256 res.setDescriptionElement(parseMarkdown(xpp)); 16257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 16258 res.getUseContext().add(parseUsageContext(xpp)); 16259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 16260 res.getJurisdiction().add(parseCodeableConcept(xpp)); 16261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 16262 res.setPurposeElement(parseMarkdown(xpp)); 16263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 16264 res.setCopyrightElement(parseMarkdown(xpp)); 16265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 16266 res.setCopyrightLabelElement(parseString(xpp)); 16267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageId")) { 16268 res.setPackageIdElement(parseId(xpp)); 16269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("license")) { 16270 res.setLicenseElement(parseEnumeration(xpp, ImplementationGuide.SPDXLicense.NULL, new ImplementationGuide.SPDXLicenseEnumFactory())); 16271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 16272 res.getFhirVersion().add(parseEnumeration(xpp, Enumerations.FHIRVersion.NULL, new Enumerations.FHIRVersionEnumFactory())); 16273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependsOn")) { 16274 res.getDependsOn().add(parseImplementationGuideDependsOnComponent(xpp)); 16275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("global")) { 16276 res.getGlobal().add(parseImplementationGuideGlobalComponent(xpp)); 16277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 16278 res.setDefinition(parseImplementationGuideDefinitionComponent(xpp)); 16279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manifest")) { 16280 res.setManifest(parseImplementationGuideManifestComponent(xpp)); 16281 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 16282 return false; 16283 } 16284 return true; 16285 } 16286 16287 protected ImplementationGuide.ImplementationGuideDependsOnComponent parseImplementationGuideDependsOnComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16288 ImplementationGuide.ImplementationGuideDependsOnComponent res = new ImplementationGuide.ImplementationGuideDependsOnComponent(); 16289 parseElementAttributes(xpp, res); 16290 next(xpp); 16291 int eventType = nextNoWhitespace(xpp); 16292 while (eventType != XmlPullParser.END_TAG) { 16293 if (!parseImplementationGuideDependsOnComponentContent(eventType, xpp, res)) 16294 unknownContent(xpp); 16295 eventType = nextNoWhitespace(xpp); 16296 } 16297 next(xpp); 16298 parseElementClose(res); 16299 return res; 16300 } 16301 16302 protected boolean parseImplementationGuideDependsOnComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideDependsOnComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16303 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 16304 res.setUriElement(parseCanonical(xpp)); 16305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageId")) { 16306 res.setPackageIdElement(parseId(xpp)); 16307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 16308 res.setVersionElement(parseString(xpp)); 16309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 16310 res.setReasonElement(parseMarkdown(xpp)); 16311 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16312 return false; 16313 } 16314 return true; 16315 } 16316 16317 protected ImplementationGuide.ImplementationGuideGlobalComponent parseImplementationGuideGlobalComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16318 ImplementationGuide.ImplementationGuideGlobalComponent res = new ImplementationGuide.ImplementationGuideGlobalComponent(); 16319 parseElementAttributes(xpp, res); 16320 next(xpp); 16321 int eventType = nextNoWhitespace(xpp); 16322 while (eventType != XmlPullParser.END_TAG) { 16323 if (!parseImplementationGuideGlobalComponentContent(eventType, xpp, res)) 16324 unknownContent(xpp); 16325 eventType = nextNoWhitespace(xpp); 16326 } 16327 next(xpp); 16328 parseElementClose(res); 16329 return res; 16330 } 16331 16332 protected boolean parseImplementationGuideGlobalComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideGlobalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16333 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16334 res.setTypeElement(parseCode(xpp)); 16335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16336 res.setProfileElement(parseCanonical(xpp)); 16337 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16338 return false; 16339 } 16340 return true; 16341 } 16342 16343 protected ImplementationGuide.ImplementationGuideDefinitionComponent parseImplementationGuideDefinitionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16344 ImplementationGuide.ImplementationGuideDefinitionComponent res = new ImplementationGuide.ImplementationGuideDefinitionComponent(); 16345 parseElementAttributes(xpp, res); 16346 next(xpp); 16347 int eventType = nextNoWhitespace(xpp); 16348 while (eventType != XmlPullParser.END_TAG) { 16349 if (!parseImplementationGuideDefinitionComponentContent(eventType, xpp, res)) 16350 unknownContent(xpp); 16351 eventType = nextNoWhitespace(xpp); 16352 } 16353 next(xpp); 16354 parseElementClose(res); 16355 return res; 16356 } 16357 16358 protected boolean parseImplementationGuideDefinitionComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideDefinitionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16359 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("grouping")) { 16360 res.getGrouping().add(parseImplementationGuideDefinitionGroupingComponent(xpp)); 16361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16362 res.getResource().add(parseImplementationGuideDefinitionResourceComponent(xpp)); 16363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 16364 res.setPage(parseImplementationGuideDefinitionPageComponent(xpp)); 16365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 16366 res.getParameter().add(parseImplementationGuideDefinitionParameterComponent(xpp)); 16367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("template")) { 16368 res.getTemplate().add(parseImplementationGuideDefinitionTemplateComponent(xpp)); 16369 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16370 return false; 16371 } 16372 return true; 16373 } 16374 16375 protected ImplementationGuide.ImplementationGuideDefinitionGroupingComponent parseImplementationGuideDefinitionGroupingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16376 ImplementationGuide.ImplementationGuideDefinitionGroupingComponent res = new ImplementationGuide.ImplementationGuideDefinitionGroupingComponent(); 16377 parseElementAttributes(xpp, res); 16378 next(xpp); 16379 int eventType = nextNoWhitespace(xpp); 16380 while (eventType != XmlPullParser.END_TAG) { 16381 if (!parseImplementationGuideDefinitionGroupingComponentContent(eventType, xpp, res)) 16382 unknownContent(xpp); 16383 eventType = nextNoWhitespace(xpp); 16384 } 16385 next(xpp); 16386 parseElementClose(res); 16387 return res; 16388 } 16389 16390 protected boolean parseImplementationGuideDefinitionGroupingComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideDefinitionGroupingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16391 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16392 res.setNameElement(parseString(xpp)); 16393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16394 res.setDescriptionElement(parseMarkdown(xpp)); 16395 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16396 return false; 16397 } 16398 return true; 16399 } 16400 16401 protected ImplementationGuide.ImplementationGuideDefinitionResourceComponent parseImplementationGuideDefinitionResourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16402 ImplementationGuide.ImplementationGuideDefinitionResourceComponent res = new ImplementationGuide.ImplementationGuideDefinitionResourceComponent(); 16403 parseElementAttributes(xpp, res); 16404 next(xpp); 16405 int eventType = nextNoWhitespace(xpp); 16406 while (eventType != XmlPullParser.END_TAG) { 16407 if (!parseImplementationGuideDefinitionResourceComponentContent(eventType, xpp, res)) 16408 unknownContent(xpp); 16409 eventType = nextNoWhitespace(xpp); 16410 } 16411 next(xpp); 16412 parseElementClose(res); 16413 return res; 16414 } 16415 16416 protected boolean parseImplementationGuideDefinitionResourceComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideDefinitionResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16417 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 16418 res.setReference(parseReference(xpp)); 16419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 16420 res.getFhirVersion().add(parseEnumeration(xpp, Enumerations.FHIRVersion.NULL, new Enumerations.FHIRVersionEnumFactory())); 16421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16422 res.setNameElement(parseString(xpp)); 16423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16424 res.setDescriptionElement(parseMarkdown(xpp)); 16425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isExample")) { 16426 res.setIsExampleElement(parseBoolean(xpp)); 16427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16428 res.getProfile().add(parseCanonical(xpp)); 16429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupingId")) { 16430 res.setGroupingIdElement(parseId(xpp)); 16431 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16432 return false; 16433 } 16434 return true; 16435 } 16436 16437 protected ImplementationGuide.ImplementationGuideDefinitionPageComponent parseImplementationGuideDefinitionPageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16438 ImplementationGuide.ImplementationGuideDefinitionPageComponent res = new ImplementationGuide.ImplementationGuideDefinitionPageComponent(); 16439 parseElementAttributes(xpp, res); 16440 next(xpp); 16441 int eventType = nextNoWhitespace(xpp); 16442 while (eventType != XmlPullParser.END_TAG) { 16443 if (!parseImplementationGuideDefinitionPageComponentContent(eventType, xpp, res)) 16444 unknownContent(xpp); 16445 eventType = nextNoWhitespace(xpp); 16446 } 16447 next(xpp); 16448 parseElementClose(res); 16449 return res; 16450 } 16451 16452 protected boolean parseImplementationGuideDefinitionPageComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideDefinitionPageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16453 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 16454 res.setSource(parseType("source", xpp)); 16455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16456 res.setNameElement(parseUrl(xpp)); 16457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 16458 res.setTitleElement(parseString(xpp)); 16459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("generation")) { 16460 res.setGenerationElement(parseEnumeration(xpp, ImplementationGuide.GuidePageGeneration.NULL, new ImplementationGuide.GuidePageGenerationEnumFactory())); 16461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 16462 res.getPage().add(parseImplementationGuideDefinitionPageComponent(xpp)); 16463 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16464 return false; 16465 } 16466 return true; 16467 } 16468 16469 protected ImplementationGuide.ImplementationGuideDefinitionParameterComponent parseImplementationGuideDefinitionParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16470 ImplementationGuide.ImplementationGuideDefinitionParameterComponent res = new ImplementationGuide.ImplementationGuideDefinitionParameterComponent(); 16471 parseElementAttributes(xpp, res); 16472 next(xpp); 16473 int eventType = nextNoWhitespace(xpp); 16474 while (eventType != XmlPullParser.END_TAG) { 16475 if (!parseImplementationGuideDefinitionParameterComponentContent(eventType, xpp, res)) 16476 unknownContent(xpp); 16477 eventType = nextNoWhitespace(xpp); 16478 } 16479 next(xpp); 16480 parseElementClose(res); 16481 return res; 16482 } 16483 16484 protected boolean parseImplementationGuideDefinitionParameterComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideDefinitionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16485 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 16486 res.setCode(parseCoding(xpp)); 16487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16488 res.setValueElement(parseString(xpp)); 16489 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16490 return false; 16491 } 16492 return true; 16493 } 16494 16495 protected ImplementationGuide.ImplementationGuideDefinitionTemplateComponent parseImplementationGuideDefinitionTemplateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16496 ImplementationGuide.ImplementationGuideDefinitionTemplateComponent res = new ImplementationGuide.ImplementationGuideDefinitionTemplateComponent(); 16497 parseElementAttributes(xpp, res); 16498 next(xpp); 16499 int eventType = nextNoWhitespace(xpp); 16500 while (eventType != XmlPullParser.END_TAG) { 16501 if (!parseImplementationGuideDefinitionTemplateComponentContent(eventType, xpp, res)) 16502 unknownContent(xpp); 16503 eventType = nextNoWhitespace(xpp); 16504 } 16505 next(xpp); 16506 parseElementClose(res); 16507 return res; 16508 } 16509 16510 protected boolean parseImplementationGuideDefinitionTemplateComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideDefinitionTemplateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16511 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 16512 res.setCodeElement(parseCode(xpp)); 16513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 16514 res.setSourceElement(parseString(xpp)); 16515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 16516 res.setScopeElement(parseString(xpp)); 16517 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16518 return false; 16519 } 16520 return true; 16521 } 16522 16523 protected ImplementationGuide.ImplementationGuideManifestComponent parseImplementationGuideManifestComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16524 ImplementationGuide.ImplementationGuideManifestComponent res = new ImplementationGuide.ImplementationGuideManifestComponent(); 16525 parseElementAttributes(xpp, res); 16526 next(xpp); 16527 int eventType = nextNoWhitespace(xpp); 16528 while (eventType != XmlPullParser.END_TAG) { 16529 if (!parseImplementationGuideManifestComponentContent(eventType, xpp, res)) 16530 unknownContent(xpp); 16531 eventType = nextNoWhitespace(xpp); 16532 } 16533 next(xpp); 16534 parseElementClose(res); 16535 return res; 16536 } 16537 16538 protected boolean parseImplementationGuideManifestComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ImplementationGuideManifestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16539 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rendering")) { 16540 res.setRenderingElement(parseUrl(xpp)); 16541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16542 res.getResource().add(parseImplementationGuideManifestResourceComponent(xpp)); 16543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 16544 res.getPage().add(parseImplementationGuideManifestPageComponent(xpp)); 16545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 16546 res.getImage().add(parseString(xpp)); 16547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("other")) { 16548 res.getOther().add(parseString(xpp)); 16549 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16550 return false; 16551 } 16552 return true; 16553 } 16554 16555 protected ImplementationGuide.ManifestResourceComponent parseImplementationGuideManifestResourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16556 ImplementationGuide.ManifestResourceComponent res = new ImplementationGuide.ManifestResourceComponent(); 16557 parseElementAttributes(xpp, res); 16558 next(xpp); 16559 int eventType = nextNoWhitespace(xpp); 16560 while (eventType != XmlPullParser.END_TAG) { 16561 if (!parseImplementationGuideManifestResourceComponentContent(eventType, xpp, res)) 16562 unknownContent(xpp); 16563 eventType = nextNoWhitespace(xpp); 16564 } 16565 next(xpp); 16566 parseElementClose(res); 16567 return res; 16568 } 16569 16570 protected boolean parseImplementationGuideManifestResourceComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ManifestResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16571 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 16572 res.setReference(parseReference(xpp)); 16573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isExample")) { 16574 res.setIsExampleElement(parseBoolean(xpp)); 16575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16576 res.getProfile().add(parseCanonical(xpp)); 16577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relativePath")) { 16578 res.setRelativePathElement(parseUrl(xpp)); 16579 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16580 return false; 16581 } 16582 return true; 16583 } 16584 16585 protected ImplementationGuide.ManifestPageComponent parseImplementationGuideManifestPageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16586 ImplementationGuide.ManifestPageComponent res = new ImplementationGuide.ManifestPageComponent(); 16587 parseElementAttributes(xpp, res); 16588 next(xpp); 16589 int eventType = nextNoWhitespace(xpp); 16590 while (eventType != XmlPullParser.END_TAG) { 16591 if (!parseImplementationGuideManifestPageComponentContent(eventType, xpp, res)) 16592 unknownContent(xpp); 16593 eventType = nextNoWhitespace(xpp); 16594 } 16595 next(xpp); 16596 parseElementClose(res); 16597 return res; 16598 } 16599 16600 protected boolean parseImplementationGuideManifestPageComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide.ManifestPageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16601 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16602 res.setNameElement(parseString(xpp)); 16603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 16604 res.setTitleElement(parseString(xpp)); 16605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("anchor")) { 16606 res.getAnchor().add(parseString(xpp)); 16607 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16608 return false; 16609 } 16610 return true; 16611 } 16612 16613 protected Ingredient parseIngredient(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16614 Ingredient res = new Ingredient(); 16615 parseResourceAttributes(xpp, res); 16616 next(xpp); 16617 int eventType = nextNoWhitespace(xpp); 16618 while (eventType != XmlPullParser.END_TAG) { 16619 if (!parseIngredientContent(eventType, xpp, res)) 16620 unknownContent(xpp); 16621 eventType = nextNoWhitespace(xpp); 16622 } 16623 next(xpp); 16624 parseElementClose(res); 16625 return res; 16626 } 16627 16628 protected boolean parseIngredientContent(int eventType, XmlPullParser xpp, Ingredient res) throws XmlPullParserException, IOException, FHIRFormatError { 16629 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16630 res.setIdentifier(parseIdentifier(xpp)); 16631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 16632 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 16633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("for")) { 16634 res.getFor().add(parseReference(xpp)); 16635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 16636 res.setRole(parseCodeableConcept(xpp)); 16637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 16638 res.getFunction().add(parseCodeableConcept(xpp)); 16639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 16640 res.setGroup(parseCodeableConcept(xpp)); 16641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allergenicIndicator")) { 16642 res.setAllergenicIndicatorElement(parseBoolean(xpp)); 16643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 16644 res.setCommentElement(parseMarkdown(xpp)); 16645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 16646 res.getManufacturer().add(parseIngredientManufacturerComponent(xpp)); 16647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 16648 res.setSubstance(parseIngredientSubstanceComponent(xpp)); 16649 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 16650 return false; 16651 } 16652 return true; 16653 } 16654 16655 protected Ingredient.IngredientManufacturerComponent parseIngredientManufacturerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16656 Ingredient.IngredientManufacturerComponent res = new Ingredient.IngredientManufacturerComponent(); 16657 parseElementAttributes(xpp, res); 16658 next(xpp); 16659 int eventType = nextNoWhitespace(xpp); 16660 while (eventType != XmlPullParser.END_TAG) { 16661 if (!parseIngredientManufacturerComponentContent(eventType, xpp, res)) 16662 unknownContent(xpp); 16663 eventType = nextNoWhitespace(xpp); 16664 } 16665 next(xpp); 16666 parseElementClose(res); 16667 return res; 16668 } 16669 16670 protected boolean parseIngredientManufacturerComponentContent(int eventType, XmlPullParser xpp, Ingredient.IngredientManufacturerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16671 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 16672 res.setRoleElement(parseEnumeration(xpp, Ingredient.IngredientManufacturerRole.NULL, new Ingredient.IngredientManufacturerRoleEnumFactory())); 16673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 16674 res.setManufacturer(parseReference(xpp)); 16675 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16676 return false; 16677 } 16678 return true; 16679 } 16680 16681 protected Ingredient.IngredientSubstanceComponent parseIngredientSubstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16682 Ingredient.IngredientSubstanceComponent res = new Ingredient.IngredientSubstanceComponent(); 16683 parseElementAttributes(xpp, res); 16684 next(xpp); 16685 int eventType = nextNoWhitespace(xpp); 16686 while (eventType != XmlPullParser.END_TAG) { 16687 if (!parseIngredientSubstanceComponentContent(eventType, xpp, res)) 16688 unknownContent(xpp); 16689 eventType = nextNoWhitespace(xpp); 16690 } 16691 next(xpp); 16692 parseElementClose(res); 16693 return res; 16694 } 16695 16696 protected boolean parseIngredientSubstanceComponentContent(int eventType, XmlPullParser xpp, Ingredient.IngredientSubstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16697 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 16698 res.setCode(parseCodeableReference(xpp)); 16699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 16700 res.getStrength().add(parseIngredientSubstanceStrengthComponent(xpp)); 16701 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16702 return false; 16703 } 16704 return true; 16705 } 16706 16707 protected Ingredient.IngredientSubstanceStrengthComponent parseIngredientSubstanceStrengthComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16708 Ingredient.IngredientSubstanceStrengthComponent res = new Ingredient.IngredientSubstanceStrengthComponent(); 16709 parseElementAttributes(xpp, res); 16710 next(xpp); 16711 int eventType = nextNoWhitespace(xpp); 16712 while (eventType != XmlPullParser.END_TAG) { 16713 if (!parseIngredientSubstanceStrengthComponentContent(eventType, xpp, res)) 16714 unknownContent(xpp); 16715 eventType = nextNoWhitespace(xpp); 16716 } 16717 next(xpp); 16718 parseElementClose(res); 16719 return res; 16720 } 16721 16722 protected boolean parseIngredientSubstanceStrengthComponentContent(int eventType, XmlPullParser xpp, Ingredient.IngredientSubstanceStrengthComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16723 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "presentation")) { 16724 res.setPresentation(parseType("presentation", xpp)); 16725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textPresentation")) { 16726 res.setTextPresentationElement(parseString(xpp)); 16727 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "concentration")) { 16728 res.setConcentration(parseType("concentration", xpp)); 16729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textConcentration")) { 16730 res.setTextConcentrationElement(parseString(xpp)); 16731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 16732 res.setBasis(parseCodeableConcept(xpp)); 16733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPoint")) { 16734 res.setMeasurementPointElement(parseString(xpp)); 16735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 16736 res.getCountry().add(parseCodeableConcept(xpp)); 16737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceStrength")) { 16738 res.getReferenceStrength().add(parseIngredientSubstanceStrengthReferenceStrengthComponent(xpp)); 16739 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16740 return false; 16741 } 16742 return true; 16743 } 16744 16745 protected Ingredient.IngredientSubstanceStrengthReferenceStrengthComponent parseIngredientSubstanceStrengthReferenceStrengthComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16746 Ingredient.IngredientSubstanceStrengthReferenceStrengthComponent res = new Ingredient.IngredientSubstanceStrengthReferenceStrengthComponent(); 16747 parseElementAttributes(xpp, res); 16748 next(xpp); 16749 int eventType = nextNoWhitespace(xpp); 16750 while (eventType != XmlPullParser.END_TAG) { 16751 if (!parseIngredientSubstanceStrengthReferenceStrengthComponentContent(eventType, xpp, res)) 16752 unknownContent(xpp); 16753 eventType = nextNoWhitespace(xpp); 16754 } 16755 next(xpp); 16756 parseElementClose(res); 16757 return res; 16758 } 16759 16760 protected boolean parseIngredientSubstanceStrengthReferenceStrengthComponentContent(int eventType, XmlPullParser xpp, Ingredient.IngredientSubstanceStrengthReferenceStrengthComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16761 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 16762 res.setSubstance(parseCodeableReference(xpp)); 16763 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "strength")) { 16764 res.setStrength(parseType("strength", xpp)); 16765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPoint")) { 16766 res.setMeasurementPointElement(parseString(xpp)); 16767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 16768 res.getCountry().add(parseCodeableConcept(xpp)); 16769 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16770 return false; 16771 } 16772 return true; 16773 } 16774 16775 protected InsurancePlan parseInsurancePlan(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16776 InsurancePlan res = new InsurancePlan(); 16777 parseResourceAttributes(xpp, res); 16778 next(xpp); 16779 int eventType = nextNoWhitespace(xpp); 16780 while (eventType != XmlPullParser.END_TAG) { 16781 if (!parseInsurancePlanContent(eventType, xpp, res)) 16782 unknownContent(xpp); 16783 eventType = nextNoWhitespace(xpp); 16784 } 16785 next(xpp); 16786 parseElementClose(res); 16787 return res; 16788 } 16789 16790 protected boolean parseInsurancePlanContent(int eventType, XmlPullParser xpp, InsurancePlan res) throws XmlPullParserException, IOException, FHIRFormatError { 16791 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16792 res.getIdentifier().add(parseIdentifier(xpp)); 16793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 16794 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 16795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16796 res.getType().add(parseCodeableConcept(xpp)); 16797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16798 res.setNameElement(parseString(xpp)); 16799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 16800 res.getAlias().add(parseString(xpp)); 16801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 16802 res.setPeriod(parsePeriod(xpp)); 16803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ownedBy")) { 16804 res.setOwnedBy(parseReference(xpp)); 16805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administeredBy")) { 16806 res.setAdministeredBy(parseReference(xpp)); 16807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverageArea")) { 16808 res.getCoverageArea().add(parseReference(xpp)); 16809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 16810 res.getContact().add(parseExtendedContactDetail(xpp)); 16811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 16812 res.getEndpoint().add(parseReference(xpp)); 16813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 16814 res.getNetwork().add(parseReference(xpp)); 16815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 16816 res.getCoverage().add(parseInsurancePlanCoverageComponent(xpp)); 16817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 16818 res.getPlan().add(parseInsurancePlanPlanComponent(xpp)); 16819 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 16820 return false; 16821 } 16822 return true; 16823 } 16824 16825 protected InsurancePlan.InsurancePlanCoverageComponent parseInsurancePlanCoverageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16826 InsurancePlan.InsurancePlanCoverageComponent res = new InsurancePlan.InsurancePlanCoverageComponent(); 16827 parseElementAttributes(xpp, res); 16828 next(xpp); 16829 int eventType = nextNoWhitespace(xpp); 16830 while (eventType != XmlPullParser.END_TAG) { 16831 if (!parseInsurancePlanCoverageComponentContent(eventType, xpp, res)) 16832 unknownContent(xpp); 16833 eventType = nextNoWhitespace(xpp); 16834 } 16835 next(xpp); 16836 parseElementClose(res); 16837 return res; 16838 } 16839 16840 protected boolean parseInsurancePlanCoverageComponentContent(int eventType, XmlPullParser xpp, InsurancePlan.InsurancePlanCoverageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16841 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16842 res.setType(parseCodeableConcept(xpp)); 16843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 16844 res.getNetwork().add(parseReference(xpp)); 16845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefit")) { 16846 res.getBenefit().add(parseInsurancePlanCoverageBenefitComponent(xpp)); 16847 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16848 return false; 16849 } 16850 return true; 16851 } 16852 16853 protected InsurancePlan.CoverageBenefitComponent parseInsurancePlanCoverageBenefitComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16854 InsurancePlan.CoverageBenefitComponent res = new InsurancePlan.CoverageBenefitComponent(); 16855 parseElementAttributes(xpp, res); 16856 next(xpp); 16857 int eventType = nextNoWhitespace(xpp); 16858 while (eventType != XmlPullParser.END_TAG) { 16859 if (!parseInsurancePlanCoverageBenefitComponentContent(eventType, xpp, res)) 16860 unknownContent(xpp); 16861 eventType = nextNoWhitespace(xpp); 16862 } 16863 next(xpp); 16864 parseElementClose(res); 16865 return res; 16866 } 16867 16868 protected boolean parseInsurancePlanCoverageBenefitComponentContent(int eventType, XmlPullParser xpp, InsurancePlan.CoverageBenefitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16869 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16870 res.setType(parseCodeableConcept(xpp)); 16871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 16872 res.setRequirementElement(parseString(xpp)); 16873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("limit")) { 16874 res.getLimit().add(parseInsurancePlanCoverageBenefitLimitComponent(xpp)); 16875 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16876 return false; 16877 } 16878 return true; 16879 } 16880 16881 protected InsurancePlan.CoverageBenefitLimitComponent parseInsurancePlanCoverageBenefitLimitComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16882 InsurancePlan.CoverageBenefitLimitComponent res = new InsurancePlan.CoverageBenefitLimitComponent(); 16883 parseElementAttributes(xpp, res); 16884 next(xpp); 16885 int eventType = nextNoWhitespace(xpp); 16886 while (eventType != XmlPullParser.END_TAG) { 16887 if (!parseInsurancePlanCoverageBenefitLimitComponentContent(eventType, xpp, res)) 16888 unknownContent(xpp); 16889 eventType = nextNoWhitespace(xpp); 16890 } 16891 next(xpp); 16892 parseElementClose(res); 16893 return res; 16894 } 16895 16896 protected boolean parseInsurancePlanCoverageBenefitLimitComponentContent(int eventType, XmlPullParser xpp, InsurancePlan.CoverageBenefitLimitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16897 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16898 res.setValue(parseQuantity(xpp)); 16899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 16900 res.setCode(parseCodeableConcept(xpp)); 16901 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16902 return false; 16903 } 16904 return true; 16905 } 16906 16907 protected InsurancePlan.InsurancePlanPlanComponent parseInsurancePlanPlanComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16908 InsurancePlan.InsurancePlanPlanComponent res = new InsurancePlan.InsurancePlanPlanComponent(); 16909 parseElementAttributes(xpp, res); 16910 next(xpp); 16911 int eventType = nextNoWhitespace(xpp); 16912 while (eventType != XmlPullParser.END_TAG) { 16913 if (!parseInsurancePlanPlanComponentContent(eventType, xpp, res)) 16914 unknownContent(xpp); 16915 eventType = nextNoWhitespace(xpp); 16916 } 16917 next(xpp); 16918 parseElementClose(res); 16919 return res; 16920 } 16921 16922 protected boolean parseInsurancePlanPlanComponentContent(int eventType, XmlPullParser xpp, InsurancePlan.InsurancePlanPlanComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16923 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16924 res.getIdentifier().add(parseIdentifier(xpp)); 16925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16926 res.setType(parseCodeableConcept(xpp)); 16927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverageArea")) { 16928 res.getCoverageArea().add(parseReference(xpp)); 16929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 16930 res.getNetwork().add(parseReference(xpp)); 16931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("generalCost")) { 16932 res.getGeneralCost().add(parseInsurancePlanPlanGeneralCostComponent(xpp)); 16933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specificCost")) { 16934 res.getSpecificCost().add(parseInsurancePlanPlanSpecificCostComponent(xpp)); 16935 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16936 return false; 16937 } 16938 return true; 16939 } 16940 16941 protected InsurancePlan.InsurancePlanPlanGeneralCostComponent parseInsurancePlanPlanGeneralCostComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16942 InsurancePlan.InsurancePlanPlanGeneralCostComponent res = new InsurancePlan.InsurancePlanPlanGeneralCostComponent(); 16943 parseElementAttributes(xpp, res); 16944 next(xpp); 16945 int eventType = nextNoWhitespace(xpp); 16946 while (eventType != XmlPullParser.END_TAG) { 16947 if (!parseInsurancePlanPlanGeneralCostComponentContent(eventType, xpp, res)) 16948 unknownContent(xpp); 16949 eventType = nextNoWhitespace(xpp); 16950 } 16951 next(xpp); 16952 parseElementClose(res); 16953 return res; 16954 } 16955 16956 protected boolean parseInsurancePlanPlanGeneralCostComponentContent(int eventType, XmlPullParser xpp, InsurancePlan.InsurancePlanPlanGeneralCostComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16957 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16958 res.setType(parseCodeableConcept(xpp)); 16959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupSize")) { 16960 res.setGroupSizeElement(parsePositiveInt(xpp)); 16961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cost")) { 16962 res.setCost(parseMoney(xpp)); 16963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 16964 res.setCommentElement(parseString(xpp)); 16965 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16966 return false; 16967 } 16968 return true; 16969 } 16970 16971 protected InsurancePlan.InsurancePlanPlanSpecificCostComponent parseInsurancePlanPlanSpecificCostComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16972 InsurancePlan.InsurancePlanPlanSpecificCostComponent res = new InsurancePlan.InsurancePlanPlanSpecificCostComponent(); 16973 parseElementAttributes(xpp, res); 16974 next(xpp); 16975 int eventType = nextNoWhitespace(xpp); 16976 while (eventType != XmlPullParser.END_TAG) { 16977 if (!parseInsurancePlanPlanSpecificCostComponentContent(eventType, xpp, res)) 16978 unknownContent(xpp); 16979 eventType = nextNoWhitespace(xpp); 16980 } 16981 next(xpp); 16982 parseElementClose(res); 16983 return res; 16984 } 16985 16986 protected boolean parseInsurancePlanPlanSpecificCostComponentContent(int eventType, XmlPullParser xpp, InsurancePlan.InsurancePlanPlanSpecificCostComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16987 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 16988 res.setCategory(parseCodeableConcept(xpp)); 16989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefit")) { 16990 res.getBenefit().add(parseInsurancePlanPlanBenefitComponent(xpp)); 16991 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 16992 return false; 16993 } 16994 return true; 16995 } 16996 16997 protected InsurancePlan.PlanBenefitComponent parseInsurancePlanPlanBenefitComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16998 InsurancePlan.PlanBenefitComponent res = new InsurancePlan.PlanBenefitComponent(); 16999 parseElementAttributes(xpp, res); 17000 next(xpp); 17001 int eventType = nextNoWhitespace(xpp); 17002 while (eventType != XmlPullParser.END_TAG) { 17003 if (!parseInsurancePlanPlanBenefitComponentContent(eventType, xpp, res)) 17004 unknownContent(xpp); 17005 eventType = nextNoWhitespace(xpp); 17006 } 17007 next(xpp); 17008 parseElementClose(res); 17009 return res; 17010 } 17011 17012 protected boolean parseInsurancePlanPlanBenefitComponentContent(int eventType, XmlPullParser xpp, InsurancePlan.PlanBenefitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17013 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 17014 res.setType(parseCodeableConcept(xpp)); 17015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cost")) { 17016 res.getCost().add(parseInsurancePlanPlanBenefitCostComponent(xpp)); 17017 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17018 return false; 17019 } 17020 return true; 17021 } 17022 17023 protected InsurancePlan.PlanBenefitCostComponent parseInsurancePlanPlanBenefitCostComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17024 InsurancePlan.PlanBenefitCostComponent res = new InsurancePlan.PlanBenefitCostComponent(); 17025 parseElementAttributes(xpp, res); 17026 next(xpp); 17027 int eventType = nextNoWhitespace(xpp); 17028 while (eventType != XmlPullParser.END_TAG) { 17029 if (!parseInsurancePlanPlanBenefitCostComponentContent(eventType, xpp, res)) 17030 unknownContent(xpp); 17031 eventType = nextNoWhitespace(xpp); 17032 } 17033 next(xpp); 17034 parseElementClose(res); 17035 return res; 17036 } 17037 17038 protected boolean parseInsurancePlanPlanBenefitCostComponentContent(int eventType, XmlPullParser xpp, InsurancePlan.PlanBenefitCostComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17039 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 17040 res.setType(parseCodeableConcept(xpp)); 17041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applicability")) { 17042 res.setApplicability(parseCodeableConcept(xpp)); 17043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualifiers")) { 17044 res.getQualifiers().add(parseCodeableConcept(xpp)); 17045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 17046 res.setValue(parseQuantity(xpp)); 17047 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17048 return false; 17049 } 17050 return true; 17051 } 17052 17053 protected InventoryItem parseInventoryItem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17054 InventoryItem res = new InventoryItem(); 17055 parseResourceAttributes(xpp, res); 17056 next(xpp); 17057 int eventType = nextNoWhitespace(xpp); 17058 while (eventType != XmlPullParser.END_TAG) { 17059 if (!parseInventoryItemContent(eventType, xpp, res)) 17060 unknownContent(xpp); 17061 eventType = nextNoWhitespace(xpp); 17062 } 17063 next(xpp); 17064 parseElementClose(res); 17065 return res; 17066 } 17067 17068 protected boolean parseInventoryItemContent(int eventType, XmlPullParser xpp, InventoryItem res) throws XmlPullParserException, IOException, FHIRFormatError { 17069 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17070 res.getIdentifier().add(parseIdentifier(xpp)); 17071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17072 res.setStatusElement(parseEnumeration(xpp, InventoryItem.InventoryItemStatusCodes.NULL, new InventoryItem.InventoryItemStatusCodesEnumFactory())); 17073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 17074 res.getCategory().add(parseCodeableConcept(xpp)); 17075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 17076 res.getCode().add(parseCodeableConcept(xpp)); 17077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17078 res.getName().add(parseInventoryItemNameComponent(xpp)); 17079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsibleOrganization")) { 17080 res.getResponsibleOrganization().add(parseInventoryItemResponsibleOrganizationComponent(xpp)); 17081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17082 res.setDescription(parseInventoryItemDescriptionComponent(xpp)); 17083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inventoryStatus")) { 17084 res.getInventoryStatus().add(parseCodeableConcept(xpp)); 17085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseUnit")) { 17086 res.setBaseUnit(parseCodeableConcept(xpp)); 17087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("netContent")) { 17088 res.setNetContent(parseQuantity(xpp)); 17089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("association")) { 17090 res.getAssociation().add(parseInventoryItemAssociationComponent(xpp)); 17091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 17092 res.getCharacteristic().add(parseInventoryItemCharacteristicComponent(xpp)); 17093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 17094 res.setInstance(parseInventoryItemInstanceComponent(xpp)); 17095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productReference")) { 17096 res.setProductReference(parseReference(xpp)); 17097 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 17098 return false; 17099 } 17100 return true; 17101 } 17102 17103 protected InventoryItem.InventoryItemNameComponent parseInventoryItemNameComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17104 InventoryItem.InventoryItemNameComponent res = new InventoryItem.InventoryItemNameComponent(); 17105 parseElementAttributes(xpp, res); 17106 next(xpp); 17107 int eventType = nextNoWhitespace(xpp); 17108 while (eventType != XmlPullParser.END_TAG) { 17109 if (!parseInventoryItemNameComponentContent(eventType, xpp, res)) 17110 unknownContent(xpp); 17111 eventType = nextNoWhitespace(xpp); 17112 } 17113 next(xpp); 17114 parseElementClose(res); 17115 return res; 17116 } 17117 17118 protected boolean parseInventoryItemNameComponentContent(int eventType, XmlPullParser xpp, InventoryItem.InventoryItemNameComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17119 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nameType")) { 17120 res.setNameType(parseCoding(xpp)); 17121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 17122 res.setLanguageElement(parseEnumeration(xpp, Enumerations.CommonLanguages.NULL, new Enumerations.CommonLanguagesEnumFactory())); 17123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17124 res.setNameElement(parseString(xpp)); 17125 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17126 return false; 17127 } 17128 return true; 17129 } 17130 17131 protected InventoryItem.InventoryItemResponsibleOrganizationComponent parseInventoryItemResponsibleOrganizationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17132 InventoryItem.InventoryItemResponsibleOrganizationComponent res = new InventoryItem.InventoryItemResponsibleOrganizationComponent(); 17133 parseElementAttributes(xpp, res); 17134 next(xpp); 17135 int eventType = nextNoWhitespace(xpp); 17136 while (eventType != XmlPullParser.END_TAG) { 17137 if (!parseInventoryItemResponsibleOrganizationComponentContent(eventType, xpp, res)) 17138 unknownContent(xpp); 17139 eventType = nextNoWhitespace(xpp); 17140 } 17141 next(xpp); 17142 parseElementClose(res); 17143 return res; 17144 } 17145 17146 protected boolean parseInventoryItemResponsibleOrganizationComponentContent(int eventType, XmlPullParser xpp, InventoryItem.InventoryItemResponsibleOrganizationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17147 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 17148 res.setRole(parseCodeableConcept(xpp)); 17149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 17150 res.setOrganization(parseReference(xpp)); 17151 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17152 return false; 17153 } 17154 return true; 17155 } 17156 17157 protected InventoryItem.InventoryItemDescriptionComponent parseInventoryItemDescriptionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17158 InventoryItem.InventoryItemDescriptionComponent res = new InventoryItem.InventoryItemDescriptionComponent(); 17159 parseElementAttributes(xpp, res); 17160 next(xpp); 17161 int eventType = nextNoWhitespace(xpp); 17162 while (eventType != XmlPullParser.END_TAG) { 17163 if (!parseInventoryItemDescriptionComponentContent(eventType, xpp, res)) 17164 unknownContent(xpp); 17165 eventType = nextNoWhitespace(xpp); 17166 } 17167 next(xpp); 17168 parseElementClose(res); 17169 return res; 17170 } 17171 17172 protected boolean parseInventoryItemDescriptionComponentContent(int eventType, XmlPullParser xpp, InventoryItem.InventoryItemDescriptionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17173 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 17174 res.setLanguageElement(parseEnumeration(xpp, Enumerations.CommonLanguages.NULL, new Enumerations.CommonLanguagesEnumFactory())); 17175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17176 res.setDescriptionElement(parseString(xpp)); 17177 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17178 return false; 17179 } 17180 return true; 17181 } 17182 17183 protected InventoryItem.InventoryItemAssociationComponent parseInventoryItemAssociationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17184 InventoryItem.InventoryItemAssociationComponent res = new InventoryItem.InventoryItemAssociationComponent(); 17185 parseElementAttributes(xpp, res); 17186 next(xpp); 17187 int eventType = nextNoWhitespace(xpp); 17188 while (eventType != XmlPullParser.END_TAG) { 17189 if (!parseInventoryItemAssociationComponentContent(eventType, xpp, res)) 17190 unknownContent(xpp); 17191 eventType = nextNoWhitespace(xpp); 17192 } 17193 next(xpp); 17194 parseElementClose(res); 17195 return res; 17196 } 17197 17198 protected boolean parseInventoryItemAssociationComponentContent(int eventType, XmlPullParser xpp, InventoryItem.InventoryItemAssociationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17199 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("associationType")) { 17200 res.setAssociationType(parseCodeableConcept(xpp)); 17201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedItem")) { 17202 res.setRelatedItem(parseReference(xpp)); 17203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 17204 res.setQuantity(parseRatio(xpp)); 17205 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17206 return false; 17207 } 17208 return true; 17209 } 17210 17211 protected InventoryItem.InventoryItemCharacteristicComponent parseInventoryItemCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17212 InventoryItem.InventoryItemCharacteristicComponent res = new InventoryItem.InventoryItemCharacteristicComponent(); 17213 parseElementAttributes(xpp, res); 17214 next(xpp); 17215 int eventType = nextNoWhitespace(xpp); 17216 while (eventType != XmlPullParser.END_TAG) { 17217 if (!parseInventoryItemCharacteristicComponentContent(eventType, xpp, res)) 17218 unknownContent(xpp); 17219 eventType = nextNoWhitespace(xpp); 17220 } 17221 next(xpp); 17222 parseElementClose(res); 17223 return res; 17224 } 17225 17226 protected boolean parseInventoryItemCharacteristicComponentContent(int eventType, XmlPullParser xpp, InventoryItem.InventoryItemCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17227 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristicType")) { 17228 res.setCharacteristicType(parseCodeableConcept(xpp)); 17229 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 17230 res.setValue(parseType("value", xpp)); 17231 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17232 return false; 17233 } 17234 return true; 17235 } 17236 17237 protected InventoryItem.InventoryItemInstanceComponent parseInventoryItemInstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17238 InventoryItem.InventoryItemInstanceComponent res = new InventoryItem.InventoryItemInstanceComponent(); 17239 parseElementAttributes(xpp, res); 17240 next(xpp); 17241 int eventType = nextNoWhitespace(xpp); 17242 while (eventType != XmlPullParser.END_TAG) { 17243 if (!parseInventoryItemInstanceComponentContent(eventType, xpp, res)) 17244 unknownContent(xpp); 17245 eventType = nextNoWhitespace(xpp); 17246 } 17247 next(xpp); 17248 parseElementClose(res); 17249 return res; 17250 } 17251 17252 protected boolean parseInventoryItemInstanceComponentContent(int eventType, XmlPullParser xpp, InventoryItem.InventoryItemInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17253 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17254 res.getIdentifier().add(parseIdentifier(xpp)); 17255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 17256 res.setLotNumberElement(parseString(xpp)); 17257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { 17258 res.setExpiryElement(parseDateTime(xpp)); 17259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 17260 res.setSubject(parseReference(xpp)); 17261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 17262 res.setLocation(parseReference(xpp)); 17263 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17264 return false; 17265 } 17266 return true; 17267 } 17268 17269 protected InventoryReport parseInventoryReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17270 InventoryReport res = new InventoryReport(); 17271 parseResourceAttributes(xpp, res); 17272 next(xpp); 17273 int eventType = nextNoWhitespace(xpp); 17274 while (eventType != XmlPullParser.END_TAG) { 17275 if (!parseInventoryReportContent(eventType, xpp, res)) 17276 unknownContent(xpp); 17277 eventType = nextNoWhitespace(xpp); 17278 } 17279 next(xpp); 17280 parseElementClose(res); 17281 return res; 17282 } 17283 17284 protected boolean parseInventoryReportContent(int eventType, XmlPullParser xpp, InventoryReport res) throws XmlPullParserException, IOException, FHIRFormatError { 17285 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17286 res.getIdentifier().add(parseIdentifier(xpp)); 17287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17288 res.setStatusElement(parseEnumeration(xpp, InventoryReport.InventoryReportStatus.NULL, new InventoryReport.InventoryReportStatusEnumFactory())); 17289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countType")) { 17290 res.setCountTypeElement(parseEnumeration(xpp, InventoryReport.InventoryCountType.NULL, new InventoryReport.InventoryCountTypeEnumFactory())); 17291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationType")) { 17292 res.setOperationType(parseCodeableConcept(xpp)); 17293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationTypeReason")) { 17294 res.setOperationTypeReason(parseCodeableConcept(xpp)); 17295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportedDateTime")) { 17296 res.setReportedDateTimeElement(parseDateTime(xpp)); 17297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reporter")) { 17298 res.setReporter(parseReference(xpp)); 17299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportingPeriod")) { 17300 res.setReportingPeriod(parsePeriod(xpp)); 17301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inventoryListing")) { 17302 res.getInventoryListing().add(parseInventoryReportInventoryListingComponent(xpp)); 17303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 17304 res.getNote().add(parseAnnotation(xpp)); 17305 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 17306 return false; 17307 } 17308 return true; 17309 } 17310 17311 protected InventoryReport.InventoryReportInventoryListingComponent parseInventoryReportInventoryListingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17312 InventoryReport.InventoryReportInventoryListingComponent res = new InventoryReport.InventoryReportInventoryListingComponent(); 17313 parseElementAttributes(xpp, res); 17314 next(xpp); 17315 int eventType = nextNoWhitespace(xpp); 17316 while (eventType != XmlPullParser.END_TAG) { 17317 if (!parseInventoryReportInventoryListingComponentContent(eventType, xpp, res)) 17318 unknownContent(xpp); 17319 eventType = nextNoWhitespace(xpp); 17320 } 17321 next(xpp); 17322 parseElementClose(res); 17323 return res; 17324 } 17325 17326 protected boolean parseInventoryReportInventoryListingComponentContent(int eventType, XmlPullParser xpp, InventoryReport.InventoryReportInventoryListingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17327 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 17328 res.setLocation(parseReference(xpp)); 17329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("itemStatus")) { 17330 res.setItemStatus(parseCodeableConcept(xpp)); 17331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countingDateTime")) { 17332 res.setCountingDateTimeElement(parseDateTime(xpp)); 17333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 17334 res.getItem().add(parseInventoryReportInventoryListingItemComponent(xpp)); 17335 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17336 return false; 17337 } 17338 return true; 17339 } 17340 17341 protected InventoryReport.InventoryReportInventoryListingItemComponent parseInventoryReportInventoryListingItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17342 InventoryReport.InventoryReportInventoryListingItemComponent res = new InventoryReport.InventoryReportInventoryListingItemComponent(); 17343 parseElementAttributes(xpp, res); 17344 next(xpp); 17345 int eventType = nextNoWhitespace(xpp); 17346 while (eventType != XmlPullParser.END_TAG) { 17347 if (!parseInventoryReportInventoryListingItemComponentContent(eventType, xpp, res)) 17348 unknownContent(xpp); 17349 eventType = nextNoWhitespace(xpp); 17350 } 17351 next(xpp); 17352 parseElementClose(res); 17353 return res; 17354 } 17355 17356 protected boolean parseInventoryReportInventoryListingItemComponentContent(int eventType, XmlPullParser xpp, InventoryReport.InventoryReportInventoryListingItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17357 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 17358 res.setCategory(parseCodeableConcept(xpp)); 17359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 17360 res.setQuantity(parseQuantity(xpp)); 17361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 17362 res.setItem(parseCodeableReference(xpp)); 17363 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17364 return false; 17365 } 17366 return true; 17367 } 17368 17369 protected Invoice parseInvoice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17370 Invoice res = new Invoice(); 17371 parseResourceAttributes(xpp, res); 17372 next(xpp); 17373 int eventType = nextNoWhitespace(xpp); 17374 while (eventType != XmlPullParser.END_TAG) { 17375 if (!parseInvoiceContent(eventType, xpp, res)) 17376 unknownContent(xpp); 17377 eventType = nextNoWhitespace(xpp); 17378 } 17379 next(xpp); 17380 parseElementClose(res); 17381 return res; 17382 } 17383 17384 protected boolean parseInvoiceContent(int eventType, XmlPullParser xpp, Invoice res) throws XmlPullParserException, IOException, FHIRFormatError { 17385 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17386 res.getIdentifier().add(parseIdentifier(xpp)); 17387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17388 res.setStatusElement(parseEnumeration(xpp, Invoice.InvoiceStatus.NULL, new Invoice.InvoiceStatusEnumFactory())); 17389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cancelledReason")) { 17390 res.setCancelledReasonElement(parseString(xpp)); 17391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 17392 res.setType(parseCodeableConcept(xpp)); 17393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 17394 res.setSubject(parseReference(xpp)); 17395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 17396 res.setRecipient(parseReference(xpp)); 17397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 17398 res.setDateElement(parseDateTime(xpp)); 17399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("creation")) { 17400 res.setCreationElement(parseDateTime(xpp)); 17401 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "period")) { 17402 res.setPeriod(parseType("period", xpp)); 17403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 17404 res.getParticipant().add(parseInvoiceParticipantComponent(xpp)); 17405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 17406 res.setIssuer(parseReference(xpp)); 17407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 17408 res.setAccount(parseReference(xpp)); 17409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lineItem")) { 17410 res.getLineItem().add(parseInvoiceLineItemComponent(xpp)); 17411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalPriceComponent")) { 17412 res.getTotalPriceComponent().add(parseMonetaryComponent(xpp)); 17413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalNet")) { 17414 res.setTotalNet(parseMoney(xpp)); 17415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalGross")) { 17416 res.setTotalGross(parseMoney(xpp)); 17417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentTerms")) { 17418 res.setPaymentTermsElement(parseMarkdown(xpp)); 17419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 17420 res.getNote().add(parseAnnotation(xpp)); 17421 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 17422 return false; 17423 } 17424 return true; 17425 } 17426 17427 protected Invoice.InvoiceParticipantComponent parseInvoiceParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17428 Invoice.InvoiceParticipantComponent res = new Invoice.InvoiceParticipantComponent(); 17429 parseElementAttributes(xpp, res); 17430 next(xpp); 17431 int eventType = nextNoWhitespace(xpp); 17432 while (eventType != XmlPullParser.END_TAG) { 17433 if (!parseInvoiceParticipantComponentContent(eventType, xpp, res)) 17434 unknownContent(xpp); 17435 eventType = nextNoWhitespace(xpp); 17436 } 17437 next(xpp); 17438 parseElementClose(res); 17439 return res; 17440 } 17441 17442 protected boolean parseInvoiceParticipantComponentContent(int eventType, XmlPullParser xpp, Invoice.InvoiceParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17443 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 17444 res.setRole(parseCodeableConcept(xpp)); 17445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 17446 res.setActor(parseReference(xpp)); 17447 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17448 return false; 17449 } 17450 return true; 17451 } 17452 17453 protected Invoice.InvoiceLineItemComponent parseInvoiceLineItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17454 Invoice.InvoiceLineItemComponent res = new Invoice.InvoiceLineItemComponent(); 17455 parseElementAttributes(xpp, res); 17456 next(xpp); 17457 int eventType = nextNoWhitespace(xpp); 17458 while (eventType != XmlPullParser.END_TAG) { 17459 if (!parseInvoiceLineItemComponentContent(eventType, xpp, res)) 17460 unknownContent(xpp); 17461 eventType = nextNoWhitespace(xpp); 17462 } 17463 next(xpp); 17464 parseElementClose(res); 17465 return res; 17466 } 17467 17468 protected boolean parseInvoiceLineItemComponentContent(int eventType, XmlPullParser xpp, Invoice.InvoiceLineItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17469 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 17470 res.setSequenceElement(parsePositiveInt(xpp)); 17471 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 17472 res.setServiced(parseType("serviced", xpp)); 17473 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "chargeItem")) { 17474 res.setChargeItem(parseType("chargeItem", xpp)); 17475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priceComponent")) { 17476 res.getPriceComponent().add(parseMonetaryComponent(xpp)); 17477 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17478 return false; 17479 } 17480 return true; 17481 } 17482 17483 protected Library parseLibrary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17484 Library res = new Library(); 17485 parseResourceAttributes(xpp, res); 17486 next(xpp); 17487 int eventType = nextNoWhitespace(xpp); 17488 while (eventType != XmlPullParser.END_TAG) { 17489 if (!parseLibraryContent(eventType, xpp, res)) 17490 unknownContent(xpp); 17491 eventType = nextNoWhitespace(xpp); 17492 } 17493 next(xpp); 17494 parseElementClose(res); 17495 return res; 17496 } 17497 17498 protected boolean parseLibraryContent(int eventType, XmlPullParser xpp, Library res) throws XmlPullParserException, IOException, FHIRFormatError { 17499 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 17500 res.setUrlElement(parseUri(xpp)); 17501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17502 res.getIdentifier().add(parseIdentifier(xpp)); 17503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 17504 res.setVersionElement(parseString(xpp)); 17505 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 17506 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 17507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17508 res.setNameElement(parseString(xpp)); 17509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 17510 res.setTitleElement(parseString(xpp)); 17511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtitle")) { 17512 res.setSubtitleElement(parseString(xpp)); 17513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17514 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 17515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 17516 res.setExperimentalElement(parseBoolean(xpp)); 17517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 17518 res.setType(parseCodeableConcept(xpp)); 17519 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 17520 res.setSubject(parseType("subject", xpp)); 17521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 17522 res.setDateElement(parseDateTime(xpp)); 17523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 17524 res.setPublisherElement(parseString(xpp)); 17525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 17526 res.getContact().add(parseContactDetail(xpp)); 17527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17528 res.setDescriptionElement(parseMarkdown(xpp)); 17529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 17530 res.getUseContext().add(parseUsageContext(xpp)); 17531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 17532 res.getJurisdiction().add(parseCodeableConcept(xpp)); 17533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 17534 res.setPurposeElement(parseMarkdown(xpp)); 17535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 17536 res.setUsageElement(parseMarkdown(xpp)); 17537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 17538 res.setCopyrightElement(parseMarkdown(xpp)); 17539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 17540 res.setCopyrightLabelElement(parseString(xpp)); 17541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 17542 res.setApprovalDateElement(parseDate(xpp)); 17543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 17544 res.setLastReviewDateElement(parseDate(xpp)); 17545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 17546 res.setEffectivePeriod(parsePeriod(xpp)); 17547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 17548 res.getTopic().add(parseCodeableConcept(xpp)); 17549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 17550 res.getAuthor().add(parseContactDetail(xpp)); 17551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 17552 res.getEditor().add(parseContactDetail(xpp)); 17553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 17554 res.getReviewer().add(parseContactDetail(xpp)); 17555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 17556 res.getEndorser().add(parseContactDetail(xpp)); 17557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 17558 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 17559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 17560 res.getParameter().add(parseParameterDefinition(xpp)); 17561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 17562 res.getDataRequirement().add(parseDataRequirement(xpp)); 17563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 17564 res.getContent().add(parseAttachment(xpp)); 17565 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 17566 return false; 17567 } 17568 return true; 17569 } 17570 17571 protected Linkage parseLinkage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17572 Linkage res = new Linkage(); 17573 parseResourceAttributes(xpp, res); 17574 next(xpp); 17575 int eventType = nextNoWhitespace(xpp); 17576 while (eventType != XmlPullParser.END_TAG) { 17577 if (!parseLinkageContent(eventType, xpp, res)) 17578 unknownContent(xpp); 17579 eventType = nextNoWhitespace(xpp); 17580 } 17581 next(xpp); 17582 parseElementClose(res); 17583 return res; 17584 } 17585 17586 protected boolean parseLinkageContent(int eventType, XmlPullParser xpp, Linkage res) throws XmlPullParserException, IOException, FHIRFormatError { 17587 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 17588 res.setActiveElement(parseBoolean(xpp)); 17589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 17590 res.setAuthor(parseReference(xpp)); 17591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 17592 res.getItem().add(parseLinkageItemComponent(xpp)); 17593 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 17594 return false; 17595 } 17596 return true; 17597 } 17598 17599 protected Linkage.LinkageItemComponent parseLinkageItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17600 Linkage.LinkageItemComponent res = new Linkage.LinkageItemComponent(); 17601 parseElementAttributes(xpp, res); 17602 next(xpp); 17603 int eventType = nextNoWhitespace(xpp); 17604 while (eventType != XmlPullParser.END_TAG) { 17605 if (!parseLinkageItemComponentContent(eventType, xpp, res)) 17606 unknownContent(xpp); 17607 eventType = nextNoWhitespace(xpp); 17608 } 17609 next(xpp); 17610 parseElementClose(res); 17611 return res; 17612 } 17613 17614 protected boolean parseLinkageItemComponentContent(int eventType, XmlPullParser xpp, Linkage.LinkageItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17615 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 17616 res.setTypeElement(parseEnumeration(xpp, Linkage.LinkageType.NULL, new Linkage.LinkageTypeEnumFactory())); 17617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 17618 res.setResource(parseReference(xpp)); 17619 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17620 return false; 17621 } 17622 return true; 17623 } 17624 17625 protected ListResource parseListResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17626 ListResource res = new ListResource(); 17627 parseResourceAttributes(xpp, res); 17628 next(xpp); 17629 int eventType = nextNoWhitespace(xpp); 17630 while (eventType != XmlPullParser.END_TAG) { 17631 if (!parseListResourceContent(eventType, xpp, res)) 17632 unknownContent(xpp); 17633 eventType = nextNoWhitespace(xpp); 17634 } 17635 next(xpp); 17636 parseElementClose(res); 17637 return res; 17638 } 17639 17640 protected boolean parseListResourceContent(int eventType, XmlPullParser xpp, ListResource res) throws XmlPullParserException, IOException, FHIRFormatError { 17641 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17642 res.getIdentifier().add(parseIdentifier(xpp)); 17643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17644 res.setStatusElement(parseEnumeration(xpp, ListResource.ListStatus.NULL, new ListResource.ListStatusEnumFactory())); 17645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 17646 res.setModeElement(parseEnumeration(xpp, Enumerations.ListMode.NULL, new Enumerations.ListModeEnumFactory())); 17647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 17648 res.setTitleElement(parseString(xpp)); 17649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 17650 res.setCode(parseCodeableConcept(xpp)); 17651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 17652 res.getSubject().add(parseReference(xpp)); 17653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 17654 res.setEncounter(parseReference(xpp)); 17655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 17656 res.setDateElement(parseDateTime(xpp)); 17657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 17658 res.setSource(parseReference(xpp)); 17659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 17660 res.setOrderedBy(parseCodeableConcept(xpp)); 17661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 17662 res.getNote().add(parseAnnotation(xpp)); 17663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 17664 res.getEntry().add(parseListResourceEntryComponent(xpp)); 17665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 17666 res.setEmptyReason(parseCodeableConcept(xpp)); 17667 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 17668 return false; 17669 } 17670 return true; 17671 } 17672 17673 protected ListResource.ListResourceEntryComponent parseListResourceEntryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17674 ListResource.ListResourceEntryComponent res = new ListResource.ListResourceEntryComponent(); 17675 parseElementAttributes(xpp, res); 17676 next(xpp); 17677 int eventType = nextNoWhitespace(xpp); 17678 while (eventType != XmlPullParser.END_TAG) { 17679 if (!parseListResourceEntryComponentContent(eventType, xpp, res)) 17680 unknownContent(xpp); 17681 eventType = nextNoWhitespace(xpp); 17682 } 17683 next(xpp); 17684 parseElementClose(res); 17685 return res; 17686 } 17687 17688 protected boolean parseListResourceEntryComponentContent(int eventType, XmlPullParser xpp, ListResource.ListResourceEntryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17689 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("flag")) { 17690 res.setFlag(parseCodeableConcept(xpp)); 17691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deleted")) { 17692 res.setDeletedElement(parseBoolean(xpp)); 17693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 17694 res.setDateElement(parseDateTime(xpp)); 17695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 17696 res.setItem(parseReference(xpp)); 17697 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17698 return false; 17699 } 17700 return true; 17701 } 17702 17703 protected Location parseLocation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17704 Location res = new Location(); 17705 parseResourceAttributes(xpp, res); 17706 next(xpp); 17707 int eventType = nextNoWhitespace(xpp); 17708 while (eventType != XmlPullParser.END_TAG) { 17709 if (!parseLocationContent(eventType, xpp, res)) 17710 unknownContent(xpp); 17711 eventType = nextNoWhitespace(xpp); 17712 } 17713 next(xpp); 17714 parseElementClose(res); 17715 return res; 17716 } 17717 17718 protected boolean parseLocationContent(int eventType, XmlPullParser xpp, Location res) throws XmlPullParserException, IOException, FHIRFormatError { 17719 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17720 res.getIdentifier().add(parseIdentifier(xpp)); 17721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17722 res.setStatusElement(parseEnumeration(xpp, Location.LocationStatus.NULL, new Location.LocationStatusEnumFactory())); 17723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 17724 res.setOperationalStatus(parseCoding(xpp)); 17725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17726 res.setNameElement(parseString(xpp)); 17727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 17728 res.getAlias().add(parseString(xpp)); 17729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17730 res.setDescriptionElement(parseMarkdown(xpp)); 17731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 17732 res.setModeElement(parseEnumeration(xpp, Location.LocationMode.NULL, new Location.LocationModeEnumFactory())); 17733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 17734 res.getType().add(parseCodeableConcept(xpp)); 17735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 17736 res.getContact().add(parseExtendedContactDetail(xpp)); 17737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 17738 res.setAddress(parseAddress(xpp)); 17739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 17740 res.setForm(parseCodeableConcept(xpp)); 17741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("position")) { 17742 res.setPosition(parseLocationPositionComponent(xpp)); 17743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 17744 res.setManagingOrganization(parseReference(xpp)); 17745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 17746 res.setPartOf(parseReference(xpp)); 17747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 17748 res.getCharacteristic().add(parseCodeableConcept(xpp)); 17749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hoursOfOperation")) { 17750 res.getHoursOfOperation().add(parseAvailability(xpp)); 17751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("virtualService")) { 17752 res.getVirtualService().add(parseVirtualServiceDetail(xpp)); 17753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 17754 res.getEndpoint().add(parseReference(xpp)); 17755 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 17756 return false; 17757 } 17758 return true; 17759 } 17760 17761 protected Location.LocationPositionComponent parseLocationPositionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17762 Location.LocationPositionComponent res = new Location.LocationPositionComponent(); 17763 parseElementAttributes(xpp, res); 17764 next(xpp); 17765 int eventType = nextNoWhitespace(xpp); 17766 while (eventType != XmlPullParser.END_TAG) { 17767 if (!parseLocationPositionComponentContent(eventType, xpp, res)) 17768 unknownContent(xpp); 17769 eventType = nextNoWhitespace(xpp); 17770 } 17771 next(xpp); 17772 parseElementClose(res); 17773 return res; 17774 } 17775 17776 protected boolean parseLocationPositionComponentContent(int eventType, XmlPullParser xpp, Location.LocationPositionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17777 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("longitude")) { 17778 res.setLongitudeElement(parseDecimal(xpp)); 17779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("latitude")) { 17780 res.setLatitudeElement(parseDecimal(xpp)); 17781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altitude")) { 17782 res.setAltitudeElement(parseDecimal(xpp)); 17783 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17784 return false; 17785 } 17786 return true; 17787 } 17788 17789 protected ManufacturedItemDefinition parseManufacturedItemDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17790 ManufacturedItemDefinition res = new ManufacturedItemDefinition(); 17791 parseResourceAttributes(xpp, res); 17792 next(xpp); 17793 int eventType = nextNoWhitespace(xpp); 17794 while (eventType != XmlPullParser.END_TAG) { 17795 if (!parseManufacturedItemDefinitionContent(eventType, xpp, res)) 17796 unknownContent(xpp); 17797 eventType = nextNoWhitespace(xpp); 17798 } 17799 next(xpp); 17800 parseElementClose(res); 17801 return res; 17802 } 17803 17804 protected boolean parseManufacturedItemDefinitionContent(int eventType, XmlPullParser xpp, ManufacturedItemDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 17805 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17806 res.getIdentifier().add(parseIdentifier(xpp)); 17807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17808 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 17809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17810 res.setNameElement(parseString(xpp)); 17811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturedDoseForm")) { 17812 res.setManufacturedDoseForm(parseCodeableConcept(xpp)); 17813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitOfPresentation")) { 17814 res.setUnitOfPresentation(parseCodeableConcept(xpp)); 17815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 17816 res.getManufacturer().add(parseReference(xpp)); 17817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketingStatus")) { 17818 res.getMarketingStatus().add(parseMarketingStatus(xpp)); 17819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 17820 res.getIngredient().add(parseCodeableConcept(xpp)); 17821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 17822 res.getProperty().add(parseManufacturedItemDefinitionPropertyComponent(xpp)); 17823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 17824 res.getComponent().add(parseManufacturedItemDefinitionComponentComponent(xpp)); 17825 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 17826 return false; 17827 } 17828 return true; 17829 } 17830 17831 protected ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent parseManufacturedItemDefinitionPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17832 ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent res = new ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent(); 17833 parseElementAttributes(xpp, res); 17834 next(xpp); 17835 int eventType = nextNoWhitespace(xpp); 17836 while (eventType != XmlPullParser.END_TAG) { 17837 if (!parseManufacturedItemDefinitionPropertyComponentContent(eventType, xpp, res)) 17838 unknownContent(xpp); 17839 eventType = nextNoWhitespace(xpp); 17840 } 17841 next(xpp); 17842 parseElementClose(res); 17843 return res; 17844 } 17845 17846 protected boolean parseManufacturedItemDefinitionPropertyComponentContent(int eventType, XmlPullParser xpp, ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17847 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 17848 res.setType(parseCodeableConcept(xpp)); 17849 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 17850 res.setValue(parseType("value", xpp)); 17851 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17852 return false; 17853 } 17854 return true; 17855 } 17856 17857 protected ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent parseManufacturedItemDefinitionComponentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17858 ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent res = new ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent(); 17859 parseElementAttributes(xpp, res); 17860 next(xpp); 17861 int eventType = nextNoWhitespace(xpp); 17862 while (eventType != XmlPullParser.END_TAG) { 17863 if (!parseManufacturedItemDefinitionComponentComponentContent(eventType, xpp, res)) 17864 unknownContent(xpp); 17865 eventType = nextNoWhitespace(xpp); 17866 } 17867 next(xpp); 17868 parseElementClose(res); 17869 return res; 17870 } 17871 17872 protected boolean parseManufacturedItemDefinitionComponentComponentContent(int eventType, XmlPullParser xpp, ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17873 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 17874 res.setType(parseCodeableConcept(xpp)); 17875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 17876 res.getFunction().add(parseCodeableConcept(xpp)); 17877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 17878 res.getAmount().add(parseQuantity(xpp)); 17879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("constituent")) { 17880 res.getConstituent().add(parseManufacturedItemDefinitionComponentConstituentComponent(xpp)); 17881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 17882 res.getProperty().add(parseManufacturedItemDefinitionPropertyComponent(xpp)); 17883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 17884 res.getComponent().add(parseManufacturedItemDefinitionComponentComponent(xpp)); 17885 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17886 return false; 17887 } 17888 return true; 17889 } 17890 17891 protected ManufacturedItemDefinition.ManufacturedItemDefinitionComponentConstituentComponent parseManufacturedItemDefinitionComponentConstituentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17892 ManufacturedItemDefinition.ManufacturedItemDefinitionComponentConstituentComponent res = new ManufacturedItemDefinition.ManufacturedItemDefinitionComponentConstituentComponent(); 17893 parseElementAttributes(xpp, res); 17894 next(xpp); 17895 int eventType = nextNoWhitespace(xpp); 17896 while (eventType != XmlPullParser.END_TAG) { 17897 if (!parseManufacturedItemDefinitionComponentConstituentComponentContent(eventType, xpp, res)) 17898 unknownContent(xpp); 17899 eventType = nextNoWhitespace(xpp); 17900 } 17901 next(xpp); 17902 parseElementClose(res); 17903 return res; 17904 } 17905 17906 protected boolean parseManufacturedItemDefinitionComponentConstituentComponentContent(int eventType, XmlPullParser xpp, ManufacturedItemDefinition.ManufacturedItemDefinitionComponentConstituentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17907 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 17908 res.getAmount().add(parseQuantity(xpp)); 17909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 17910 res.getLocation().add(parseCodeableConcept(xpp)); 17911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 17912 res.getFunction().add(parseCodeableConcept(xpp)); 17913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasIngredient")) { 17914 res.getHasIngredient().add(parseCodeableReference(xpp)); 17915 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 17916 return false; 17917 } 17918 return true; 17919 } 17920 17921 protected Measure parseMeasure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17922 Measure res = new Measure(); 17923 parseResourceAttributes(xpp, res); 17924 next(xpp); 17925 int eventType = nextNoWhitespace(xpp); 17926 while (eventType != XmlPullParser.END_TAG) { 17927 if (!parseMeasureContent(eventType, xpp, res)) 17928 unknownContent(xpp); 17929 eventType = nextNoWhitespace(xpp); 17930 } 17931 next(xpp); 17932 parseElementClose(res); 17933 return res; 17934 } 17935 17936 protected boolean parseMeasureContent(int eventType, XmlPullParser xpp, Measure res) throws XmlPullParserException, IOException, FHIRFormatError { 17937 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 17938 res.setUrlElement(parseUri(xpp)); 17939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17940 res.getIdentifier().add(parseIdentifier(xpp)); 17941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 17942 res.setVersionElement(parseString(xpp)); 17943 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 17944 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 17945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17946 res.setNameElement(parseString(xpp)); 17947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 17948 res.setTitleElement(parseString(xpp)); 17949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtitle")) { 17950 res.setSubtitleElement(parseString(xpp)); 17951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17952 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 17953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 17954 res.setExperimentalElement(parseBoolean(xpp)); 17955 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 17956 res.setSubject(parseType("subject", xpp)); 17957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 17958 res.setBasisElement(parseEnumeration(xpp, Enumerations.FHIRTypes.NULL, new Enumerations.FHIRTypesEnumFactory())); 17959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 17960 res.setDateElement(parseDateTime(xpp)); 17961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 17962 res.setPublisherElement(parseString(xpp)); 17963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 17964 res.getContact().add(parseContactDetail(xpp)); 17965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17966 res.setDescriptionElement(parseMarkdown(xpp)); 17967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 17968 res.getUseContext().add(parseUsageContext(xpp)); 17969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 17970 res.getJurisdiction().add(parseCodeableConcept(xpp)); 17971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 17972 res.setPurposeElement(parseMarkdown(xpp)); 17973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 17974 res.setUsageElement(parseMarkdown(xpp)); 17975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 17976 res.setCopyrightElement(parseMarkdown(xpp)); 17977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 17978 res.setCopyrightLabelElement(parseString(xpp)); 17979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 17980 res.setApprovalDateElement(parseDate(xpp)); 17981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 17982 res.setLastReviewDateElement(parseDate(xpp)); 17983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 17984 res.setEffectivePeriod(parsePeriod(xpp)); 17985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 17986 res.getTopic().add(parseCodeableConcept(xpp)); 17987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 17988 res.getAuthor().add(parseContactDetail(xpp)); 17989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 17990 res.getEditor().add(parseContactDetail(xpp)); 17991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 17992 res.getReviewer().add(parseContactDetail(xpp)); 17993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 17994 res.getEndorser().add(parseContactDetail(xpp)); 17995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 17996 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 17997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 17998 res.getLibrary().add(parseCanonical(xpp)); 17999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disclaimer")) { 18000 res.setDisclaimerElement(parseMarkdown(xpp)); 18001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scoring")) { 18002 res.setScoring(parseCodeableConcept(xpp)); 18003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scoringUnit")) { 18004 res.setScoringUnit(parseCodeableConcept(xpp)); 18005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compositeScoring")) { 18006 res.setCompositeScoring(parseCodeableConcept(xpp)); 18007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18008 res.getType().add(parseCodeableConcept(xpp)); 18009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("riskAdjustment")) { 18010 res.setRiskAdjustmentElement(parseMarkdown(xpp)); 18011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rateAggregation")) { 18012 res.setRateAggregationElement(parseMarkdown(xpp)); 18013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 18014 res.setRationaleElement(parseMarkdown(xpp)); 18015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalRecommendationStatement")) { 18016 res.setClinicalRecommendationStatementElement(parseMarkdown(xpp)); 18017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("improvementNotation")) { 18018 res.setImprovementNotation(parseCodeableConcept(xpp)); 18019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 18020 res.getTerm().add(parseMeasureTermComponent(xpp)); 18021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("guidance")) { 18022 res.setGuidanceElement(parseMarkdown(xpp)); 18023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 18024 res.getGroup().add(parseMeasureGroupComponent(xpp)); 18025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplementalData")) { 18026 res.getSupplementalData().add(parseMeasureSupplementalDataComponent(xpp)); 18027 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 18028 return false; 18029 } 18030 return true; 18031 } 18032 18033 protected Measure.MeasureTermComponent parseMeasureTermComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18034 Measure.MeasureTermComponent res = new Measure.MeasureTermComponent(); 18035 parseElementAttributes(xpp, res); 18036 next(xpp); 18037 int eventType = nextNoWhitespace(xpp); 18038 while (eventType != XmlPullParser.END_TAG) { 18039 if (!parseMeasureTermComponentContent(eventType, xpp, res)) 18040 unknownContent(xpp); 18041 eventType = nextNoWhitespace(xpp); 18042 } 18043 next(xpp); 18044 parseElementClose(res); 18045 return res; 18046 } 18047 18048 protected boolean parseMeasureTermComponentContent(int eventType, XmlPullParser xpp, Measure.MeasureTermComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18049 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18050 res.setCode(parseCodeableConcept(xpp)); 18051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 18052 res.setDefinitionElement(parseMarkdown(xpp)); 18053 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18054 return false; 18055 } 18056 return true; 18057 } 18058 18059 protected Measure.MeasureGroupComponent parseMeasureGroupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18060 Measure.MeasureGroupComponent res = new Measure.MeasureGroupComponent(); 18061 parseElementAttributes(xpp, res); 18062 next(xpp); 18063 int eventType = nextNoWhitespace(xpp); 18064 while (eventType != XmlPullParser.END_TAG) { 18065 if (!parseMeasureGroupComponentContent(eventType, xpp, res)) 18066 unknownContent(xpp); 18067 eventType = nextNoWhitespace(xpp); 18068 } 18069 next(xpp); 18070 parseElementClose(res); 18071 return res; 18072 } 18073 18074 protected boolean parseMeasureGroupComponentContent(int eventType, XmlPullParser xpp, Measure.MeasureGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18075 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18076 res.setLinkIdElement(parseString(xpp)); 18077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18078 res.setCode(parseCodeableConcept(xpp)); 18079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 18080 res.setDescriptionElement(parseMarkdown(xpp)); 18081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18082 res.getType().add(parseCodeableConcept(xpp)); 18083 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 18084 res.setSubject(parseType("subject", xpp)); 18085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 18086 res.setBasisElement(parseEnumeration(xpp, Enumerations.FHIRTypes.NULL, new Enumerations.FHIRTypesEnumFactory())); 18087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scoring")) { 18088 res.setScoring(parseCodeableConcept(xpp)); 18089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scoringUnit")) { 18090 res.setScoringUnit(parseCodeableConcept(xpp)); 18091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rateAggregation")) { 18092 res.setRateAggregationElement(parseMarkdown(xpp)); 18093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("improvementNotation")) { 18094 res.setImprovementNotation(parseCodeableConcept(xpp)); 18095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 18096 res.getLibrary().add(parseCanonical(xpp)); 18097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 18098 res.getPopulation().add(parseMeasureGroupPopulationComponent(xpp)); 18099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratifier")) { 18100 res.getStratifier().add(parseMeasureGroupStratifierComponent(xpp)); 18101 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18102 return false; 18103 } 18104 return true; 18105 } 18106 18107 protected Measure.MeasureGroupPopulationComponent parseMeasureGroupPopulationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18108 Measure.MeasureGroupPopulationComponent res = new Measure.MeasureGroupPopulationComponent(); 18109 parseElementAttributes(xpp, res); 18110 next(xpp); 18111 int eventType = nextNoWhitespace(xpp); 18112 while (eventType != XmlPullParser.END_TAG) { 18113 if (!parseMeasureGroupPopulationComponentContent(eventType, xpp, res)) 18114 unknownContent(xpp); 18115 eventType = nextNoWhitespace(xpp); 18116 } 18117 next(xpp); 18118 parseElementClose(res); 18119 return res; 18120 } 18121 18122 protected boolean parseMeasureGroupPopulationComponentContent(int eventType, XmlPullParser xpp, Measure.MeasureGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18123 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18124 res.setLinkIdElement(parseString(xpp)); 18125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18126 res.setCode(parseCodeableConcept(xpp)); 18127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 18128 res.setDescriptionElement(parseMarkdown(xpp)); 18129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 18130 res.setCriteria(parseExpression(xpp)); 18131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupDefinition")) { 18132 res.setGroupDefinition(parseReference(xpp)); 18133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inputPopulationId")) { 18134 res.setInputPopulationIdElement(parseString(xpp)); 18135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("aggregateMethod")) { 18136 res.setAggregateMethod(parseCodeableConcept(xpp)); 18137 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18138 return false; 18139 } 18140 return true; 18141 } 18142 18143 protected Measure.MeasureGroupStratifierComponent parseMeasureGroupStratifierComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18144 Measure.MeasureGroupStratifierComponent res = new Measure.MeasureGroupStratifierComponent(); 18145 parseElementAttributes(xpp, res); 18146 next(xpp); 18147 int eventType = nextNoWhitespace(xpp); 18148 while (eventType != XmlPullParser.END_TAG) { 18149 if (!parseMeasureGroupStratifierComponentContent(eventType, xpp, res)) 18150 unknownContent(xpp); 18151 eventType = nextNoWhitespace(xpp); 18152 } 18153 next(xpp); 18154 parseElementClose(res); 18155 return res; 18156 } 18157 18158 protected boolean parseMeasureGroupStratifierComponentContent(int eventType, XmlPullParser xpp, Measure.MeasureGroupStratifierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18159 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18160 res.setLinkIdElement(parseString(xpp)); 18161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18162 res.setCode(parseCodeableConcept(xpp)); 18163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 18164 res.setDescriptionElement(parseMarkdown(xpp)); 18165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 18166 res.setCriteria(parseExpression(xpp)); 18167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupDefinition")) { 18168 res.setGroupDefinition(parseReference(xpp)); 18169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 18170 res.getComponent().add(parseMeasureGroupStratifierComponentComponent(xpp)); 18171 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18172 return false; 18173 } 18174 return true; 18175 } 18176 18177 protected Measure.MeasureGroupStratifierComponentComponent parseMeasureGroupStratifierComponentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18178 Measure.MeasureGroupStratifierComponentComponent res = new Measure.MeasureGroupStratifierComponentComponent(); 18179 parseElementAttributes(xpp, res); 18180 next(xpp); 18181 int eventType = nextNoWhitespace(xpp); 18182 while (eventType != XmlPullParser.END_TAG) { 18183 if (!parseMeasureGroupStratifierComponentComponentContent(eventType, xpp, res)) 18184 unknownContent(xpp); 18185 eventType = nextNoWhitespace(xpp); 18186 } 18187 next(xpp); 18188 parseElementClose(res); 18189 return res; 18190 } 18191 18192 protected boolean parseMeasureGroupStratifierComponentComponentContent(int eventType, XmlPullParser xpp, Measure.MeasureGroupStratifierComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18193 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18194 res.setLinkIdElement(parseString(xpp)); 18195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18196 res.setCode(parseCodeableConcept(xpp)); 18197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 18198 res.setDescriptionElement(parseMarkdown(xpp)); 18199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 18200 res.setCriteria(parseExpression(xpp)); 18201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupDefinition")) { 18202 res.setGroupDefinition(parseReference(xpp)); 18203 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18204 return false; 18205 } 18206 return true; 18207 } 18208 18209 protected Measure.MeasureSupplementalDataComponent parseMeasureSupplementalDataComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18210 Measure.MeasureSupplementalDataComponent res = new Measure.MeasureSupplementalDataComponent(); 18211 parseElementAttributes(xpp, res); 18212 next(xpp); 18213 int eventType = nextNoWhitespace(xpp); 18214 while (eventType != XmlPullParser.END_TAG) { 18215 if (!parseMeasureSupplementalDataComponentContent(eventType, xpp, res)) 18216 unknownContent(xpp); 18217 eventType = nextNoWhitespace(xpp); 18218 } 18219 next(xpp); 18220 parseElementClose(res); 18221 return res; 18222 } 18223 18224 protected boolean parseMeasureSupplementalDataComponentContent(int eventType, XmlPullParser xpp, Measure.MeasureSupplementalDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18225 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18226 res.setLinkIdElement(parseString(xpp)); 18227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18228 res.setCode(parseCodeableConcept(xpp)); 18229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 18230 res.getUsage().add(parseCodeableConcept(xpp)); 18231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 18232 res.setDescriptionElement(parseMarkdown(xpp)); 18233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 18234 res.setCriteria(parseExpression(xpp)); 18235 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18236 return false; 18237 } 18238 return true; 18239 } 18240 18241 protected MeasureReport parseMeasureReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18242 MeasureReport res = new MeasureReport(); 18243 parseResourceAttributes(xpp, res); 18244 next(xpp); 18245 int eventType = nextNoWhitespace(xpp); 18246 while (eventType != XmlPullParser.END_TAG) { 18247 if (!parseMeasureReportContent(eventType, xpp, res)) 18248 unknownContent(xpp); 18249 eventType = nextNoWhitespace(xpp); 18250 } 18251 next(xpp); 18252 parseElementClose(res); 18253 return res; 18254 } 18255 18256 protected boolean parseMeasureReportContent(int eventType, XmlPullParser xpp, MeasureReport res) throws XmlPullParserException, IOException, FHIRFormatError { 18257 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 18258 res.getIdentifier().add(parseIdentifier(xpp)); 18259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 18260 res.setStatusElement(parseEnumeration(xpp, MeasureReport.MeasureReportStatus.NULL, new MeasureReport.MeasureReportStatusEnumFactory())); 18261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18262 res.setTypeElement(parseEnumeration(xpp, MeasureReport.MeasureReportType.NULL, new MeasureReport.MeasureReportTypeEnumFactory())); 18263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataUpdateType")) { 18264 res.setDataUpdateTypeElement(parseEnumeration(xpp, MeasureReport.SubmitDataUpdateType.NULL, new MeasureReport.SubmitDataUpdateTypeEnumFactory())); 18265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 18266 res.setMeasureElement(parseCanonical(xpp)); 18267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 18268 res.setSubject(parseReference(xpp)); 18269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 18270 res.setDateElement(parseDateTime(xpp)); 18271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reporter")) { 18272 res.setReporter(parseReference(xpp)); 18273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportingVendor")) { 18274 res.setReportingVendor(parseReference(xpp)); 18275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 18276 res.setLocation(parseReference(xpp)); 18277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 18278 res.setPeriod(parsePeriod(xpp)); 18279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inputParameters")) { 18280 res.setInputParameters(parseReference(xpp)); 18281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scoring")) { 18282 res.setScoring(parseCodeableConcept(xpp)); 18283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("improvementNotation")) { 18284 res.setImprovementNotation(parseCodeableConcept(xpp)); 18285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 18286 res.getGroup().add(parseMeasureReportGroupComponent(xpp)); 18287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplementalData")) { 18288 res.getSupplementalData().add(parseReference(xpp)); 18289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evaluatedResource")) { 18290 res.getEvaluatedResource().add(parseReference(xpp)); 18291 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 18292 return false; 18293 } 18294 return true; 18295 } 18296 18297 protected MeasureReport.MeasureReportGroupComponent parseMeasureReportGroupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18298 MeasureReport.MeasureReportGroupComponent res = new MeasureReport.MeasureReportGroupComponent(); 18299 parseElementAttributes(xpp, res); 18300 next(xpp); 18301 int eventType = nextNoWhitespace(xpp); 18302 while (eventType != XmlPullParser.END_TAG) { 18303 if (!parseMeasureReportGroupComponentContent(eventType, xpp, res)) 18304 unknownContent(xpp); 18305 eventType = nextNoWhitespace(xpp); 18306 } 18307 next(xpp); 18308 parseElementClose(res); 18309 return res; 18310 } 18311 18312 protected boolean parseMeasureReportGroupComponentContent(int eventType, XmlPullParser xpp, MeasureReport.MeasureReportGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18313 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18314 res.setLinkIdElement(parseString(xpp)); 18315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18316 res.setCode(parseCodeableConcept(xpp)); 18317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 18318 res.setSubject(parseReference(xpp)); 18319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 18320 res.getPopulation().add(parseMeasureReportGroupPopulationComponent(xpp)); 18321 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "measureScore")) { 18322 res.setMeasureScore(parseType("measureScore", xpp)); 18323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratifier")) { 18324 res.getStratifier().add(parseMeasureReportGroupStratifierComponent(xpp)); 18325 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18326 return false; 18327 } 18328 return true; 18329 } 18330 18331 protected MeasureReport.MeasureReportGroupPopulationComponent parseMeasureReportGroupPopulationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18332 MeasureReport.MeasureReportGroupPopulationComponent res = new MeasureReport.MeasureReportGroupPopulationComponent(); 18333 parseElementAttributes(xpp, res); 18334 next(xpp); 18335 int eventType = nextNoWhitespace(xpp); 18336 while (eventType != XmlPullParser.END_TAG) { 18337 if (!parseMeasureReportGroupPopulationComponentContent(eventType, xpp, res)) 18338 unknownContent(xpp); 18339 eventType = nextNoWhitespace(xpp); 18340 } 18341 next(xpp); 18342 parseElementClose(res); 18343 return res; 18344 } 18345 18346 protected boolean parseMeasureReportGroupPopulationComponentContent(int eventType, XmlPullParser xpp, MeasureReport.MeasureReportGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18347 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18348 res.setLinkIdElement(parseString(xpp)); 18349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18350 res.setCode(parseCodeableConcept(xpp)); 18351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 18352 res.setCountElement(parseInteger(xpp)); 18353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectResults")) { 18354 res.setSubjectResults(parseReference(xpp)); 18355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectReport")) { 18356 res.getSubjectReport().add(parseReference(xpp)); 18357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjects")) { 18358 res.setSubjects(parseReference(xpp)); 18359 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18360 return false; 18361 } 18362 return true; 18363 } 18364 18365 protected MeasureReport.MeasureReportGroupStratifierComponent parseMeasureReportGroupStratifierComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18366 MeasureReport.MeasureReportGroupStratifierComponent res = new MeasureReport.MeasureReportGroupStratifierComponent(); 18367 parseElementAttributes(xpp, res); 18368 next(xpp); 18369 int eventType = nextNoWhitespace(xpp); 18370 while (eventType != XmlPullParser.END_TAG) { 18371 if (!parseMeasureReportGroupStratifierComponentContent(eventType, xpp, res)) 18372 unknownContent(xpp); 18373 eventType = nextNoWhitespace(xpp); 18374 } 18375 next(xpp); 18376 parseElementClose(res); 18377 return res; 18378 } 18379 18380 protected boolean parseMeasureReportGroupStratifierComponentContent(int eventType, XmlPullParser xpp, MeasureReport.MeasureReportGroupStratifierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18381 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18382 res.setLinkIdElement(parseString(xpp)); 18383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18384 res.setCode(parseCodeableConcept(xpp)); 18385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratum")) { 18386 res.getStratum().add(parseMeasureReportStratifierGroupComponent(xpp)); 18387 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18388 return false; 18389 } 18390 return true; 18391 } 18392 18393 protected MeasureReport.StratifierGroupComponent parseMeasureReportStratifierGroupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18394 MeasureReport.StratifierGroupComponent res = new MeasureReport.StratifierGroupComponent(); 18395 parseElementAttributes(xpp, res); 18396 next(xpp); 18397 int eventType = nextNoWhitespace(xpp); 18398 while (eventType != XmlPullParser.END_TAG) { 18399 if (!parseMeasureReportStratifierGroupComponentContent(eventType, xpp, res)) 18400 unknownContent(xpp); 18401 eventType = nextNoWhitespace(xpp); 18402 } 18403 next(xpp); 18404 parseElementClose(res); 18405 return res; 18406 } 18407 18408 protected boolean parseMeasureReportStratifierGroupComponentContent(int eventType, XmlPullParser xpp, MeasureReport.StratifierGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18409 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 18410 res.setValue(parseType("value", xpp)); 18411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 18412 res.getComponent().add(parseMeasureReportStratifierGroupComponentComponent(xpp)); 18413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 18414 res.getPopulation().add(parseMeasureReportStratifierGroupPopulationComponent(xpp)); 18415 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "measureScore")) { 18416 res.setMeasureScore(parseType("measureScore", xpp)); 18417 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18418 return false; 18419 } 18420 return true; 18421 } 18422 18423 protected MeasureReport.StratifierGroupComponentComponent parseMeasureReportStratifierGroupComponentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18424 MeasureReport.StratifierGroupComponentComponent res = new MeasureReport.StratifierGroupComponentComponent(); 18425 parseElementAttributes(xpp, res); 18426 next(xpp); 18427 int eventType = nextNoWhitespace(xpp); 18428 while (eventType != XmlPullParser.END_TAG) { 18429 if (!parseMeasureReportStratifierGroupComponentComponentContent(eventType, xpp, res)) 18430 unknownContent(xpp); 18431 eventType = nextNoWhitespace(xpp); 18432 } 18433 next(xpp); 18434 parseElementClose(res); 18435 return res; 18436 } 18437 18438 protected boolean parseMeasureReportStratifierGroupComponentComponentContent(int eventType, XmlPullParser xpp, MeasureReport.StratifierGroupComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18439 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18440 res.setLinkIdElement(parseString(xpp)); 18441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18442 res.setCode(parseCodeableConcept(xpp)); 18443 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 18444 res.setValue(parseType("value", xpp)); 18445 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18446 return false; 18447 } 18448 return true; 18449 } 18450 18451 protected MeasureReport.StratifierGroupPopulationComponent parseMeasureReportStratifierGroupPopulationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18452 MeasureReport.StratifierGroupPopulationComponent res = new MeasureReport.StratifierGroupPopulationComponent(); 18453 parseElementAttributes(xpp, res); 18454 next(xpp); 18455 int eventType = nextNoWhitespace(xpp); 18456 while (eventType != XmlPullParser.END_TAG) { 18457 if (!parseMeasureReportStratifierGroupPopulationComponentContent(eventType, xpp, res)) 18458 unknownContent(xpp); 18459 eventType = nextNoWhitespace(xpp); 18460 } 18461 next(xpp); 18462 parseElementClose(res); 18463 return res; 18464 } 18465 18466 protected boolean parseMeasureReportStratifierGroupPopulationComponentContent(int eventType, XmlPullParser xpp, MeasureReport.StratifierGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18467 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 18468 res.setLinkIdElement(parseString(xpp)); 18469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18470 res.setCode(parseCodeableConcept(xpp)); 18471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 18472 res.setCountElement(parseInteger(xpp)); 18473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectResults")) { 18474 res.setSubjectResults(parseReference(xpp)); 18475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectReport")) { 18476 res.getSubjectReport().add(parseReference(xpp)); 18477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjects")) { 18478 res.setSubjects(parseReference(xpp)); 18479 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18480 return false; 18481 } 18482 return true; 18483 } 18484 18485 protected Medication parseMedication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18486 Medication res = new Medication(); 18487 parseResourceAttributes(xpp, res); 18488 next(xpp); 18489 int eventType = nextNoWhitespace(xpp); 18490 while (eventType != XmlPullParser.END_TAG) { 18491 if (!parseMedicationContent(eventType, xpp, res)) 18492 unknownContent(xpp); 18493 eventType = nextNoWhitespace(xpp); 18494 } 18495 next(xpp); 18496 parseElementClose(res); 18497 return res; 18498 } 18499 18500 protected boolean parseMedicationContent(int eventType, XmlPullParser xpp, Medication res) throws XmlPullParserException, IOException, FHIRFormatError { 18501 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 18502 res.getIdentifier().add(parseIdentifier(xpp)); 18503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18504 res.setCode(parseCodeableConcept(xpp)); 18505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 18506 res.setStatusElement(parseEnumeration(xpp, Medication.MedicationStatusCodes.NULL, new Medication.MedicationStatusCodesEnumFactory())); 18507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketingAuthorizationHolder")) { 18508 res.setMarketingAuthorizationHolder(parseReference(xpp)); 18509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseForm")) { 18510 res.setDoseForm(parseCodeableConcept(xpp)); 18511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalVolume")) { 18512 res.setTotalVolume(parseQuantity(xpp)); 18513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 18514 res.getIngredient().add(parseMedicationIngredientComponent(xpp)); 18515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("batch")) { 18516 res.setBatch(parseMedicationBatchComponent(xpp)); 18517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 18518 res.setDefinition(parseReference(xpp)); 18519 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 18520 return false; 18521 } 18522 return true; 18523 } 18524 18525 protected Medication.MedicationIngredientComponent parseMedicationIngredientComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18526 Medication.MedicationIngredientComponent res = new Medication.MedicationIngredientComponent(); 18527 parseElementAttributes(xpp, res); 18528 next(xpp); 18529 int eventType = nextNoWhitespace(xpp); 18530 while (eventType != XmlPullParser.END_TAG) { 18531 if (!parseMedicationIngredientComponentContent(eventType, xpp, res)) 18532 unknownContent(xpp); 18533 eventType = nextNoWhitespace(xpp); 18534 } 18535 next(xpp); 18536 parseElementClose(res); 18537 return res; 18538 } 18539 18540 protected boolean parseMedicationIngredientComponentContent(int eventType, XmlPullParser xpp, Medication.MedicationIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18541 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 18542 res.setItem(parseCodeableReference(xpp)); 18543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isActive")) { 18544 res.setIsActiveElement(parseBoolean(xpp)); 18545 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "strength")) { 18546 res.setStrength(parseType("strength", xpp)); 18547 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18548 return false; 18549 } 18550 return true; 18551 } 18552 18553 protected Medication.MedicationBatchComponent parseMedicationBatchComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18554 Medication.MedicationBatchComponent res = new Medication.MedicationBatchComponent(); 18555 parseElementAttributes(xpp, res); 18556 next(xpp); 18557 int eventType = nextNoWhitespace(xpp); 18558 while (eventType != XmlPullParser.END_TAG) { 18559 if (!parseMedicationBatchComponentContent(eventType, xpp, res)) 18560 unknownContent(xpp); 18561 eventType = nextNoWhitespace(xpp); 18562 } 18563 next(xpp); 18564 parseElementClose(res); 18565 return res; 18566 } 18567 18568 protected boolean parseMedicationBatchComponentContent(int eventType, XmlPullParser xpp, Medication.MedicationBatchComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18569 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 18570 res.setLotNumberElement(parseString(xpp)); 18571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 18572 res.setExpirationDateElement(parseDateTime(xpp)); 18573 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18574 return false; 18575 } 18576 return true; 18577 } 18578 18579 protected MedicationAdministration parseMedicationAdministration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18580 MedicationAdministration res = new MedicationAdministration(); 18581 parseResourceAttributes(xpp, res); 18582 next(xpp); 18583 int eventType = nextNoWhitespace(xpp); 18584 while (eventType != XmlPullParser.END_TAG) { 18585 if (!parseMedicationAdministrationContent(eventType, xpp, res)) 18586 unknownContent(xpp); 18587 eventType = nextNoWhitespace(xpp); 18588 } 18589 next(xpp); 18590 parseElementClose(res); 18591 return res; 18592 } 18593 18594 protected boolean parseMedicationAdministrationContent(int eventType, XmlPullParser xpp, MedicationAdministration res) throws XmlPullParserException, IOException, FHIRFormatError { 18595 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 18596 res.getIdentifier().add(parseIdentifier(xpp)); 18597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 18598 res.getBasedOn().add(parseReference(xpp)); 18599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 18600 res.getPartOf().add(parseReference(xpp)); 18601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 18602 res.setStatusElement(parseEnumeration(xpp, MedicationAdministration.MedicationAdministrationStatusCodes.NULL, new MedicationAdministration.MedicationAdministrationStatusCodesEnumFactory())); 18603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 18604 res.getStatusReason().add(parseCodeableConcept(xpp)); 18605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 18606 res.getCategory().add(parseCodeableConcept(xpp)); 18607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { 18608 res.setMedication(parseCodeableReference(xpp)); 18609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 18610 res.setSubject(parseReference(xpp)); 18611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 18612 res.setEncounter(parseReference(xpp)); 18613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 18614 res.getSupportingInformation().add(parseReference(xpp)); 18615 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurence")) { 18616 res.setOccurence(parseType("occurence", xpp)); 18617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 18618 res.setRecordedElement(parseDateTime(xpp)); 18619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isSubPotent")) { 18620 res.setIsSubPotentElement(parseBoolean(xpp)); 18621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subPotentReason")) { 18622 res.getSubPotentReason().add(parseCodeableConcept(xpp)); 18623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 18624 res.getPerformer().add(parseMedicationAdministrationPerformerComponent(xpp)); 18625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 18626 res.getReason().add(parseCodeableReference(xpp)); 18627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 18628 res.setRequest(parseReference(xpp)); 18629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 18630 res.getDevice().add(parseCodeableReference(xpp)); 18631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 18632 res.getNote().add(parseAnnotation(xpp)); 18633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 18634 res.setDosage(parseMedicationAdministrationDosageComponent(xpp)); 18635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 18636 res.getEventHistory().add(parseReference(xpp)); 18637 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 18638 return false; 18639 } 18640 return true; 18641 } 18642 18643 protected MedicationAdministration.MedicationAdministrationPerformerComponent parseMedicationAdministrationPerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18644 MedicationAdministration.MedicationAdministrationPerformerComponent res = new MedicationAdministration.MedicationAdministrationPerformerComponent(); 18645 parseElementAttributes(xpp, res); 18646 next(xpp); 18647 int eventType = nextNoWhitespace(xpp); 18648 while (eventType != XmlPullParser.END_TAG) { 18649 if (!parseMedicationAdministrationPerformerComponentContent(eventType, xpp, res)) 18650 unknownContent(xpp); 18651 eventType = nextNoWhitespace(xpp); 18652 } 18653 next(xpp); 18654 parseElementClose(res); 18655 return res; 18656 } 18657 18658 protected boolean parseMedicationAdministrationPerformerComponentContent(int eventType, XmlPullParser xpp, MedicationAdministration.MedicationAdministrationPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18659 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 18660 res.setFunction(parseCodeableConcept(xpp)); 18661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 18662 res.setActor(parseCodeableReference(xpp)); 18663 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18664 return false; 18665 } 18666 return true; 18667 } 18668 18669 protected MedicationAdministration.MedicationAdministrationDosageComponent parseMedicationAdministrationDosageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18670 MedicationAdministration.MedicationAdministrationDosageComponent res = new MedicationAdministration.MedicationAdministrationDosageComponent(); 18671 parseElementAttributes(xpp, res); 18672 next(xpp); 18673 int eventType = nextNoWhitespace(xpp); 18674 while (eventType != XmlPullParser.END_TAG) { 18675 if (!parseMedicationAdministrationDosageComponentContent(eventType, xpp, res)) 18676 unknownContent(xpp); 18677 eventType = nextNoWhitespace(xpp); 18678 } 18679 next(xpp); 18680 parseElementClose(res); 18681 return res; 18682 } 18683 18684 protected boolean parseMedicationAdministrationDosageComponentContent(int eventType, XmlPullParser xpp, MedicationAdministration.MedicationAdministrationDosageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18685 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 18686 res.setTextElement(parseString(xpp)); 18687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 18688 res.setSite(parseCodeableConcept(xpp)); 18689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 18690 res.setRoute(parseCodeableConcept(xpp)); 18691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 18692 res.setMethod(parseCodeableConcept(xpp)); 18693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dose")) { 18694 res.setDose(parseQuantity(xpp)); 18695 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 18696 res.setRate(parseType("rate", xpp)); 18697 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18698 return false; 18699 } 18700 return true; 18701 } 18702 18703 protected MedicationDispense parseMedicationDispense(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18704 MedicationDispense res = new MedicationDispense(); 18705 parseResourceAttributes(xpp, res); 18706 next(xpp); 18707 int eventType = nextNoWhitespace(xpp); 18708 while (eventType != XmlPullParser.END_TAG) { 18709 if (!parseMedicationDispenseContent(eventType, xpp, res)) 18710 unknownContent(xpp); 18711 eventType = nextNoWhitespace(xpp); 18712 } 18713 next(xpp); 18714 parseElementClose(res); 18715 return res; 18716 } 18717 18718 protected boolean parseMedicationDispenseContent(int eventType, XmlPullParser xpp, MedicationDispense res) throws XmlPullParserException, IOException, FHIRFormatError { 18719 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 18720 res.getIdentifier().add(parseIdentifier(xpp)); 18721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 18722 res.getBasedOn().add(parseReference(xpp)); 18723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 18724 res.getPartOf().add(parseReference(xpp)); 18725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 18726 res.setStatusElement(parseEnumeration(xpp, MedicationDispense.MedicationDispenseStatusCodes.NULL, new MedicationDispense.MedicationDispenseStatusCodesEnumFactory())); 18727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notPerformedReason")) { 18728 res.setNotPerformedReason(parseCodeableReference(xpp)); 18729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusChanged")) { 18730 res.setStatusChangedElement(parseDateTime(xpp)); 18731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 18732 res.getCategory().add(parseCodeableConcept(xpp)); 18733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { 18734 res.setMedication(parseCodeableReference(xpp)); 18735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 18736 res.setSubject(parseReference(xpp)); 18737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 18738 res.setEncounter(parseReference(xpp)); 18739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 18740 res.getSupportingInformation().add(parseReference(xpp)); 18741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 18742 res.getPerformer().add(parseMedicationDispensePerformerComponent(xpp)); 18743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 18744 res.setLocation(parseReference(xpp)); 18745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorizingPrescription")) { 18746 res.getAuthorizingPrescription().add(parseReference(xpp)); 18747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18748 res.setType(parseCodeableConcept(xpp)); 18749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 18750 res.setQuantity(parseQuantity(xpp)); 18751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysSupply")) { 18752 res.setDaysSupply(parseQuantity(xpp)); 18753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 18754 res.setRecordedElement(parseDateTime(xpp)); 18755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenPrepared")) { 18756 res.setWhenPreparedElement(parseDateTime(xpp)); 18757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenHandedOver")) { 18758 res.setWhenHandedOverElement(parseDateTime(xpp)); 18759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 18760 res.setDestination(parseReference(xpp)); 18761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 18762 res.getReceiver().add(parseReference(xpp)); 18763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 18764 res.getNote().add(parseAnnotation(xpp)); 18765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("renderedDosageInstruction")) { 18766 res.setRenderedDosageInstructionElement(parseMarkdown(xpp)); 18767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 18768 res.getDosageInstruction().add(parseDosage(xpp)); 18769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 18770 res.setSubstitution(parseMedicationDispenseSubstitutionComponent(xpp)); 18771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 18772 res.getEventHistory().add(parseReference(xpp)); 18773 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 18774 return false; 18775 } 18776 return true; 18777 } 18778 18779 protected MedicationDispense.MedicationDispensePerformerComponent parseMedicationDispensePerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18780 MedicationDispense.MedicationDispensePerformerComponent res = new MedicationDispense.MedicationDispensePerformerComponent(); 18781 parseElementAttributes(xpp, res); 18782 next(xpp); 18783 int eventType = nextNoWhitespace(xpp); 18784 while (eventType != XmlPullParser.END_TAG) { 18785 if (!parseMedicationDispensePerformerComponentContent(eventType, xpp, res)) 18786 unknownContent(xpp); 18787 eventType = nextNoWhitespace(xpp); 18788 } 18789 next(xpp); 18790 parseElementClose(res); 18791 return res; 18792 } 18793 18794 protected boolean parseMedicationDispensePerformerComponentContent(int eventType, XmlPullParser xpp, MedicationDispense.MedicationDispensePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18795 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 18796 res.setFunction(parseCodeableConcept(xpp)); 18797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 18798 res.setActor(parseReference(xpp)); 18799 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18800 return false; 18801 } 18802 return true; 18803 } 18804 18805 protected MedicationDispense.MedicationDispenseSubstitutionComponent parseMedicationDispenseSubstitutionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18806 MedicationDispense.MedicationDispenseSubstitutionComponent res = new MedicationDispense.MedicationDispenseSubstitutionComponent(); 18807 parseElementAttributes(xpp, res); 18808 next(xpp); 18809 int eventType = nextNoWhitespace(xpp); 18810 while (eventType != XmlPullParser.END_TAG) { 18811 if (!parseMedicationDispenseSubstitutionComponentContent(eventType, xpp, res)) 18812 unknownContent(xpp); 18813 eventType = nextNoWhitespace(xpp); 18814 } 18815 next(xpp); 18816 parseElementClose(res); 18817 return res; 18818 } 18819 18820 protected boolean parseMedicationDispenseSubstitutionComponentContent(int eventType, XmlPullParser xpp, MedicationDispense.MedicationDispenseSubstitutionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18821 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasSubstituted")) { 18822 res.setWasSubstitutedElement(parseBoolean(xpp)); 18823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18824 res.setType(parseCodeableConcept(xpp)); 18825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 18826 res.getReason().add(parseCodeableConcept(xpp)); 18827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsibleParty")) { 18828 res.setResponsibleParty(parseReference(xpp)); 18829 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18830 return false; 18831 } 18832 return true; 18833 } 18834 18835 protected MedicationKnowledge parseMedicationKnowledge(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18836 MedicationKnowledge res = new MedicationKnowledge(); 18837 parseResourceAttributes(xpp, res); 18838 next(xpp); 18839 int eventType = nextNoWhitespace(xpp); 18840 while (eventType != XmlPullParser.END_TAG) { 18841 if (!parseMedicationKnowledgeContent(eventType, xpp, res)) 18842 unknownContent(xpp); 18843 eventType = nextNoWhitespace(xpp); 18844 } 18845 next(xpp); 18846 parseElementClose(res); 18847 return res; 18848 } 18849 18850 protected boolean parseMedicationKnowledgeContent(int eventType, XmlPullParser xpp, MedicationKnowledge res) throws XmlPullParserException, IOException, FHIRFormatError { 18851 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 18852 res.getIdentifier().add(parseIdentifier(xpp)); 18853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 18854 res.setCode(parseCodeableConcept(xpp)); 18855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 18856 res.setStatusElement(parseEnumeration(xpp, MedicationKnowledge.MedicationKnowledgeStatusCodes.NULL, new MedicationKnowledge.MedicationKnowledgeStatusCodesEnumFactory())); 18857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 18858 res.setAuthor(parseReference(xpp)); 18859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedJurisdiction")) { 18860 res.getIntendedJurisdiction().add(parseCodeableConcept(xpp)); 18861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 18862 res.getName().add(parseString(xpp)); 18863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedMedicationKnowledge")) { 18864 res.getRelatedMedicationKnowledge().add(parseMedicationKnowledgeRelatedMedicationKnowledgeComponent(xpp)); 18865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("associatedMedication")) { 18866 res.getAssociatedMedication().add(parseReference(xpp)); 18867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productType")) { 18868 res.getProductType().add(parseCodeableConcept(xpp)); 18869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("monograph")) { 18870 res.getMonograph().add(parseMedicationKnowledgeMonographComponent(xpp)); 18871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preparationInstruction")) { 18872 res.setPreparationInstructionElement(parseMarkdown(xpp)); 18873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cost")) { 18874 res.getCost().add(parseMedicationKnowledgeCostComponent(xpp)); 18875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("monitoringProgram")) { 18876 res.getMonitoringProgram().add(parseMedicationKnowledgeMonitoringProgramComponent(xpp)); 18877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indicationGuideline")) { 18878 res.getIndicationGuideline().add(parseMedicationKnowledgeIndicationGuidelineComponent(xpp)); 18879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medicineClassification")) { 18880 res.getMedicineClassification().add(parseMedicationKnowledgeMedicineClassificationComponent(xpp)); 18881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packaging")) { 18882 res.getPackaging().add(parseMedicationKnowledgePackagingComponent(xpp)); 18883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalUseIssue")) { 18884 res.getClinicalUseIssue().add(parseReference(xpp)); 18885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("storageGuideline")) { 18886 res.getStorageGuideline().add(parseMedicationKnowledgeStorageGuidelineComponent(xpp)); 18887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regulatory")) { 18888 res.getRegulatory().add(parseMedicationKnowledgeRegulatoryComponent(xpp)); 18889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definitional")) { 18890 res.setDefinitional(parseMedicationKnowledgeDefinitionalComponent(xpp)); 18891 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 18892 return false; 18893 } 18894 return true; 18895 } 18896 18897 protected MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent parseMedicationKnowledgeRelatedMedicationKnowledgeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18898 MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent res = new MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent(); 18899 parseElementAttributes(xpp, res); 18900 next(xpp); 18901 int eventType = nextNoWhitespace(xpp); 18902 while (eventType != XmlPullParser.END_TAG) { 18903 if (!parseMedicationKnowledgeRelatedMedicationKnowledgeComponentContent(eventType, xpp, res)) 18904 unknownContent(xpp); 18905 eventType = nextNoWhitespace(xpp); 18906 } 18907 next(xpp); 18908 parseElementClose(res); 18909 return res; 18910 } 18911 18912 protected boolean parseMedicationKnowledgeRelatedMedicationKnowledgeComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18913 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18914 res.setType(parseCodeableConcept(xpp)); 18915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 18916 res.getReference().add(parseReference(xpp)); 18917 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18918 return false; 18919 } 18920 return true; 18921 } 18922 18923 protected MedicationKnowledge.MedicationKnowledgeMonographComponent parseMedicationKnowledgeMonographComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18924 MedicationKnowledge.MedicationKnowledgeMonographComponent res = new MedicationKnowledge.MedicationKnowledgeMonographComponent(); 18925 parseElementAttributes(xpp, res); 18926 next(xpp); 18927 int eventType = nextNoWhitespace(xpp); 18928 while (eventType != XmlPullParser.END_TAG) { 18929 if (!parseMedicationKnowledgeMonographComponentContent(eventType, xpp, res)) 18930 unknownContent(xpp); 18931 eventType = nextNoWhitespace(xpp); 18932 } 18933 next(xpp); 18934 parseElementClose(res); 18935 return res; 18936 } 18937 18938 protected boolean parseMedicationKnowledgeMonographComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeMonographComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18939 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18940 res.setType(parseCodeableConcept(xpp)); 18941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 18942 res.setSource(parseReference(xpp)); 18943 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18944 return false; 18945 } 18946 return true; 18947 } 18948 18949 protected MedicationKnowledge.MedicationKnowledgeCostComponent parseMedicationKnowledgeCostComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18950 MedicationKnowledge.MedicationKnowledgeCostComponent res = new MedicationKnowledge.MedicationKnowledgeCostComponent(); 18951 parseElementAttributes(xpp, res); 18952 next(xpp); 18953 int eventType = nextNoWhitespace(xpp); 18954 while (eventType != XmlPullParser.END_TAG) { 18955 if (!parseMedicationKnowledgeCostComponentContent(eventType, xpp, res)) 18956 unknownContent(xpp); 18957 eventType = nextNoWhitespace(xpp); 18958 } 18959 next(xpp); 18960 parseElementClose(res); 18961 return res; 18962 } 18963 18964 protected boolean parseMedicationKnowledgeCostComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeCostComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18965 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveDate")) { 18966 res.getEffectiveDate().add(parsePeriod(xpp)); 18967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18968 res.setType(parseCodeableConcept(xpp)); 18969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 18970 res.setSourceElement(parseString(xpp)); 18971 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "cost")) { 18972 res.setCost(parseType("cost", xpp)); 18973 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 18974 return false; 18975 } 18976 return true; 18977 } 18978 18979 protected MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent parseMedicationKnowledgeMonitoringProgramComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 18980 MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent res = new MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent(); 18981 parseElementAttributes(xpp, res); 18982 next(xpp); 18983 int eventType = nextNoWhitespace(xpp); 18984 while (eventType != XmlPullParser.END_TAG) { 18985 if (!parseMedicationKnowledgeMonitoringProgramComponentContent(eventType, xpp, res)) 18986 unknownContent(xpp); 18987 eventType = nextNoWhitespace(xpp); 18988 } 18989 next(xpp); 18990 parseElementClose(res); 18991 return res; 18992 } 18993 18994 protected boolean parseMedicationKnowledgeMonitoringProgramComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 18995 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 18996 res.setType(parseCodeableConcept(xpp)); 18997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 18998 res.setNameElement(parseString(xpp)); 18999 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19000 return false; 19001 } 19002 return true; 19003 } 19004 19005 protected MedicationKnowledge.MedicationKnowledgeIndicationGuidelineComponent parseMedicationKnowledgeIndicationGuidelineComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19006 MedicationKnowledge.MedicationKnowledgeIndicationGuidelineComponent res = new MedicationKnowledge.MedicationKnowledgeIndicationGuidelineComponent(); 19007 parseElementAttributes(xpp, res); 19008 next(xpp); 19009 int eventType = nextNoWhitespace(xpp); 19010 while (eventType != XmlPullParser.END_TAG) { 19011 if (!parseMedicationKnowledgeIndicationGuidelineComponentContent(eventType, xpp, res)) 19012 unknownContent(xpp); 19013 eventType = nextNoWhitespace(xpp); 19014 } 19015 next(xpp); 19016 parseElementClose(res); 19017 return res; 19018 } 19019 19020 protected boolean parseMedicationKnowledgeIndicationGuidelineComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19021 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 19022 res.getIndication().add(parseCodeableReference(xpp)); 19023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosingGuideline")) { 19024 res.getDosingGuideline().add(parseMedicationKnowledgeIndicationGuidelineDosingGuidelineComponent(xpp)); 19025 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19026 return false; 19027 } 19028 return true; 19029 } 19030 19031 protected MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent parseMedicationKnowledgeIndicationGuidelineDosingGuidelineComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19032 MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent res = new MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent(); 19033 parseElementAttributes(xpp, res); 19034 next(xpp); 19035 int eventType = nextNoWhitespace(xpp); 19036 while (eventType != XmlPullParser.END_TAG) { 19037 if (!parseMedicationKnowledgeIndicationGuidelineDosingGuidelineComponentContent(eventType, xpp, res)) 19038 unknownContent(xpp); 19039 eventType = nextNoWhitespace(xpp); 19040 } 19041 next(xpp); 19042 parseElementClose(res); 19043 return res; 19044 } 19045 19046 protected boolean parseMedicationKnowledgeIndicationGuidelineDosingGuidelineComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19047 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("treatmentIntent")) { 19048 res.setTreatmentIntent(parseCodeableConcept(xpp)); 19049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 19050 res.getDosage().add(parseMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent(xpp)); 19051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administrationTreatment")) { 19052 res.setAdministrationTreatment(parseCodeableConcept(xpp)); 19053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientCharacteristic")) { 19054 res.getPatientCharacteristic().add(parseMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent(xpp)); 19055 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19056 return false; 19057 } 19058 return true; 19059 } 19060 19061 protected MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent parseMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19062 MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent res = new MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent(); 19063 parseElementAttributes(xpp, res); 19064 next(xpp); 19065 int eventType = nextNoWhitespace(xpp); 19066 while (eventType != XmlPullParser.END_TAG) { 19067 if (!parseMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponentContent(eventType, xpp, res)) 19068 unknownContent(xpp); 19069 eventType = nextNoWhitespace(xpp); 19070 } 19071 next(xpp); 19072 parseElementClose(res); 19073 return res; 19074 } 19075 19076 protected boolean parseMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19077 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19078 res.setType(parseCodeableConcept(xpp)); 19079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 19080 res.getDosage().add(parseDosage(xpp)); 19081 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19082 return false; 19083 } 19084 return true; 19085 } 19086 19087 protected MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent parseMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19088 MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent res = new MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent(); 19089 parseElementAttributes(xpp, res); 19090 next(xpp); 19091 int eventType = nextNoWhitespace(xpp); 19092 while (eventType != XmlPullParser.END_TAG) { 19093 if (!parseMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponentContent(eventType, xpp, res)) 19094 unknownContent(xpp); 19095 eventType = nextNoWhitespace(xpp); 19096 } 19097 next(xpp); 19098 parseElementClose(res); 19099 return res; 19100 } 19101 19102 protected boolean parseMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19103 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19104 res.setType(parseCodeableConcept(xpp)); 19105 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 19106 res.setValue(parseType("value", xpp)); 19107 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19108 return false; 19109 } 19110 return true; 19111 } 19112 19113 protected MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent parseMedicationKnowledgeMedicineClassificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19114 MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent res = new MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent(); 19115 parseElementAttributes(xpp, res); 19116 next(xpp); 19117 int eventType = nextNoWhitespace(xpp); 19118 while (eventType != XmlPullParser.END_TAG) { 19119 if (!parseMedicationKnowledgeMedicineClassificationComponentContent(eventType, xpp, res)) 19120 unknownContent(xpp); 19121 eventType = nextNoWhitespace(xpp); 19122 } 19123 next(xpp); 19124 parseElementClose(res); 19125 return res; 19126 } 19127 19128 protected boolean parseMedicationKnowledgeMedicineClassificationComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19129 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19130 res.setType(parseCodeableConcept(xpp)); 19131 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 19132 res.setSource(parseType("source", xpp)); 19133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classification")) { 19134 res.getClassification().add(parseCodeableConcept(xpp)); 19135 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19136 return false; 19137 } 19138 return true; 19139 } 19140 19141 protected MedicationKnowledge.MedicationKnowledgePackagingComponent parseMedicationKnowledgePackagingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19142 MedicationKnowledge.MedicationKnowledgePackagingComponent res = new MedicationKnowledge.MedicationKnowledgePackagingComponent(); 19143 parseElementAttributes(xpp, res); 19144 next(xpp); 19145 int eventType = nextNoWhitespace(xpp); 19146 while (eventType != XmlPullParser.END_TAG) { 19147 if (!parseMedicationKnowledgePackagingComponentContent(eventType, xpp, res)) 19148 unknownContent(xpp); 19149 eventType = nextNoWhitespace(xpp); 19150 } 19151 next(xpp); 19152 parseElementClose(res); 19153 return res; 19154 } 19155 19156 protected boolean parseMedicationKnowledgePackagingComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgePackagingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19157 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cost")) { 19158 res.getCost().add(parseMedicationKnowledgeCostComponent(xpp)); 19159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packagedProduct")) { 19160 res.setPackagedProduct(parseReference(xpp)); 19161 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19162 return false; 19163 } 19164 return true; 19165 } 19166 19167 protected MedicationKnowledge.MedicationKnowledgeStorageGuidelineComponent parseMedicationKnowledgeStorageGuidelineComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19168 MedicationKnowledge.MedicationKnowledgeStorageGuidelineComponent res = new MedicationKnowledge.MedicationKnowledgeStorageGuidelineComponent(); 19169 parseElementAttributes(xpp, res); 19170 next(xpp); 19171 int eventType = nextNoWhitespace(xpp); 19172 while (eventType != XmlPullParser.END_TAG) { 19173 if (!parseMedicationKnowledgeStorageGuidelineComponentContent(eventType, xpp, res)) 19174 unknownContent(xpp); 19175 eventType = nextNoWhitespace(xpp); 19176 } 19177 next(xpp); 19178 parseElementClose(res); 19179 return res; 19180 } 19181 19182 protected boolean parseMedicationKnowledgeStorageGuidelineComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeStorageGuidelineComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19183 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 19184 res.setReferenceElement(parseUri(xpp)); 19185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 19186 res.getNote().add(parseAnnotation(xpp)); 19187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stabilityDuration")) { 19188 res.setStabilityDuration(parseDuration(xpp)); 19189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("environmentalSetting")) { 19190 res.getEnvironmentalSetting().add(parseMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent(xpp)); 19191 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19192 return false; 19193 } 19194 return true; 19195 } 19196 19197 protected MedicationKnowledge.MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent parseMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19198 MedicationKnowledge.MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent res = new MedicationKnowledge.MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent(); 19199 parseElementAttributes(xpp, res); 19200 next(xpp); 19201 int eventType = nextNoWhitespace(xpp); 19202 while (eventType != XmlPullParser.END_TAG) { 19203 if (!parseMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponentContent(eventType, xpp, res)) 19204 unknownContent(xpp); 19205 eventType = nextNoWhitespace(xpp); 19206 } 19207 next(xpp); 19208 parseElementClose(res); 19209 return res; 19210 } 19211 19212 protected boolean parseMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19213 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19214 res.setType(parseCodeableConcept(xpp)); 19215 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 19216 res.setValue(parseType("value", xpp)); 19217 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19218 return false; 19219 } 19220 return true; 19221 } 19222 19223 protected MedicationKnowledge.MedicationKnowledgeRegulatoryComponent parseMedicationKnowledgeRegulatoryComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19224 MedicationKnowledge.MedicationKnowledgeRegulatoryComponent res = new MedicationKnowledge.MedicationKnowledgeRegulatoryComponent(); 19225 parseElementAttributes(xpp, res); 19226 next(xpp); 19227 int eventType = nextNoWhitespace(xpp); 19228 while (eventType != XmlPullParser.END_TAG) { 19229 if (!parseMedicationKnowledgeRegulatoryComponentContent(eventType, xpp, res)) 19230 unknownContent(xpp); 19231 eventType = nextNoWhitespace(xpp); 19232 } 19233 next(xpp); 19234 parseElementClose(res); 19235 return res; 19236 } 19237 19238 protected boolean parseMedicationKnowledgeRegulatoryComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeRegulatoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19239 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regulatoryAuthority")) { 19240 res.setRegulatoryAuthority(parseReference(xpp)); 19241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 19242 res.getSubstitution().add(parseMedicationKnowledgeRegulatorySubstitutionComponent(xpp)); 19243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 19244 res.getSchedule().add(parseCodeableConcept(xpp)); 19245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDispense")) { 19246 res.setMaxDispense(parseMedicationKnowledgeRegulatoryMaxDispenseComponent(xpp)); 19247 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19248 return false; 19249 } 19250 return true; 19251 } 19252 19253 protected MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent parseMedicationKnowledgeRegulatorySubstitutionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19254 MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent res = new MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent(); 19255 parseElementAttributes(xpp, res); 19256 next(xpp); 19257 int eventType = nextNoWhitespace(xpp); 19258 while (eventType != XmlPullParser.END_TAG) { 19259 if (!parseMedicationKnowledgeRegulatorySubstitutionComponentContent(eventType, xpp, res)) 19260 unknownContent(xpp); 19261 eventType = nextNoWhitespace(xpp); 19262 } 19263 next(xpp); 19264 parseElementClose(res); 19265 return res; 19266 } 19267 19268 protected boolean parseMedicationKnowledgeRegulatorySubstitutionComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19269 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19270 res.setType(parseCodeableConcept(xpp)); 19271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allowed")) { 19272 res.setAllowedElement(parseBoolean(xpp)); 19273 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19274 return false; 19275 } 19276 return true; 19277 } 19278 19279 protected MedicationKnowledge.MedicationKnowledgeRegulatoryMaxDispenseComponent parseMedicationKnowledgeRegulatoryMaxDispenseComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19280 MedicationKnowledge.MedicationKnowledgeRegulatoryMaxDispenseComponent res = new MedicationKnowledge.MedicationKnowledgeRegulatoryMaxDispenseComponent(); 19281 parseElementAttributes(xpp, res); 19282 next(xpp); 19283 int eventType = nextNoWhitespace(xpp); 19284 while (eventType != XmlPullParser.END_TAG) { 19285 if (!parseMedicationKnowledgeRegulatoryMaxDispenseComponentContent(eventType, xpp, res)) 19286 unknownContent(xpp); 19287 eventType = nextNoWhitespace(xpp); 19288 } 19289 next(xpp); 19290 parseElementClose(res); 19291 return res; 19292 } 19293 19294 protected boolean parseMedicationKnowledgeRegulatoryMaxDispenseComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeRegulatoryMaxDispenseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19295 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 19296 res.setQuantity(parseQuantity(xpp)); 19297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 19298 res.setPeriod(parseDuration(xpp)); 19299 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19300 return false; 19301 } 19302 return true; 19303 } 19304 19305 protected MedicationKnowledge.MedicationKnowledgeDefinitionalComponent parseMedicationKnowledgeDefinitionalComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19306 MedicationKnowledge.MedicationKnowledgeDefinitionalComponent res = new MedicationKnowledge.MedicationKnowledgeDefinitionalComponent(); 19307 parseElementAttributes(xpp, res); 19308 next(xpp); 19309 int eventType = nextNoWhitespace(xpp); 19310 while (eventType != XmlPullParser.END_TAG) { 19311 if (!parseMedicationKnowledgeDefinitionalComponentContent(eventType, xpp, res)) 19312 unknownContent(xpp); 19313 eventType = nextNoWhitespace(xpp); 19314 } 19315 next(xpp); 19316 parseElementClose(res); 19317 return res; 19318 } 19319 19320 protected boolean parseMedicationKnowledgeDefinitionalComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeDefinitionalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19321 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 19322 res.getDefinition().add(parseReference(xpp)); 19323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseForm")) { 19324 res.setDoseForm(parseCodeableConcept(xpp)); 19325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedRoute")) { 19326 res.getIntendedRoute().add(parseCodeableConcept(xpp)); 19327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 19328 res.getIngredient().add(parseMedicationKnowledgeDefinitionalIngredientComponent(xpp)); 19329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("drugCharacteristic")) { 19330 res.getDrugCharacteristic().add(parseMedicationKnowledgeDefinitionalDrugCharacteristicComponent(xpp)); 19331 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19332 return false; 19333 } 19334 return true; 19335 } 19336 19337 protected MedicationKnowledge.MedicationKnowledgeDefinitionalIngredientComponent parseMedicationKnowledgeDefinitionalIngredientComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19338 MedicationKnowledge.MedicationKnowledgeDefinitionalIngredientComponent res = new MedicationKnowledge.MedicationKnowledgeDefinitionalIngredientComponent(); 19339 parseElementAttributes(xpp, res); 19340 next(xpp); 19341 int eventType = nextNoWhitespace(xpp); 19342 while (eventType != XmlPullParser.END_TAG) { 19343 if (!parseMedicationKnowledgeDefinitionalIngredientComponentContent(eventType, xpp, res)) 19344 unknownContent(xpp); 19345 eventType = nextNoWhitespace(xpp); 19346 } 19347 next(xpp); 19348 parseElementClose(res); 19349 return res; 19350 } 19351 19352 protected boolean parseMedicationKnowledgeDefinitionalIngredientComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeDefinitionalIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19353 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 19354 res.setItem(parseCodeableReference(xpp)); 19355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19356 res.setType(parseCodeableConcept(xpp)); 19357 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "strength")) { 19358 res.setStrength(parseType("strength", xpp)); 19359 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19360 return false; 19361 } 19362 return true; 19363 } 19364 19365 protected MedicationKnowledge.MedicationKnowledgeDefinitionalDrugCharacteristicComponent parseMedicationKnowledgeDefinitionalDrugCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19366 MedicationKnowledge.MedicationKnowledgeDefinitionalDrugCharacteristicComponent res = new MedicationKnowledge.MedicationKnowledgeDefinitionalDrugCharacteristicComponent(); 19367 parseElementAttributes(xpp, res); 19368 next(xpp); 19369 int eventType = nextNoWhitespace(xpp); 19370 while (eventType != XmlPullParser.END_TAG) { 19371 if (!parseMedicationKnowledgeDefinitionalDrugCharacteristicComponentContent(eventType, xpp, res)) 19372 unknownContent(xpp); 19373 eventType = nextNoWhitespace(xpp); 19374 } 19375 next(xpp); 19376 parseElementClose(res); 19377 return res; 19378 } 19379 19380 protected boolean parseMedicationKnowledgeDefinitionalDrugCharacteristicComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeDefinitionalDrugCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19381 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19382 res.setType(parseCodeableConcept(xpp)); 19383 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 19384 res.setValue(parseType("value", xpp)); 19385 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19386 return false; 19387 } 19388 return true; 19389 } 19390 19391 protected MedicationRequest parseMedicationRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19392 MedicationRequest res = new MedicationRequest(); 19393 parseResourceAttributes(xpp, res); 19394 next(xpp); 19395 int eventType = nextNoWhitespace(xpp); 19396 while (eventType != XmlPullParser.END_TAG) { 19397 if (!parseMedicationRequestContent(eventType, xpp, res)) 19398 unknownContent(xpp); 19399 eventType = nextNoWhitespace(xpp); 19400 } 19401 next(xpp); 19402 parseElementClose(res); 19403 return res; 19404 } 19405 19406 protected boolean parseMedicationRequestContent(int eventType, XmlPullParser xpp, MedicationRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 19407 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 19408 res.getIdentifier().add(parseIdentifier(xpp)); 19409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 19410 res.getBasedOn().add(parseReference(xpp)); 19411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorPrescription")) { 19412 res.setPriorPrescription(parseReference(xpp)); 19413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 19414 res.setGroupIdentifier(parseIdentifier(xpp)); 19415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 19416 res.setStatusElement(parseEnumeration(xpp, MedicationRequest.MedicationrequestStatus.NULL, new MedicationRequest.MedicationrequestStatusEnumFactory())); 19417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 19418 res.setStatusReason(parseCodeableConcept(xpp)); 19419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusChanged")) { 19420 res.setStatusChangedElement(parseDateTime(xpp)); 19421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 19422 res.setIntentElement(parseEnumeration(xpp, MedicationRequest.MedicationRequestIntent.NULL, new MedicationRequest.MedicationRequestIntentEnumFactory())); 19423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 19424 res.getCategory().add(parseCodeableConcept(xpp)); 19425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 19426 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 19427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 19428 res.setDoNotPerformElement(parseBoolean(xpp)); 19429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { 19430 res.setMedication(parseCodeableReference(xpp)); 19431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 19432 res.setSubject(parseReference(xpp)); 19433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 19434 res.getInformationSource().add(parseReference(xpp)); 19435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 19436 res.setEncounter(parseReference(xpp)); 19437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 19438 res.getSupportingInformation().add(parseReference(xpp)); 19439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 19440 res.setAuthoredOnElement(parseDateTime(xpp)); 19441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 19442 res.setRequester(parseReference(xpp)); 19443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reported")) { 19444 res.setReportedElement(parseBoolean(xpp)); 19445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 19446 res.setPerformerType(parseCodeableConcept(xpp)); 19447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 19448 res.getPerformer().add(parseReference(xpp)); 19449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 19450 res.getDevice().add(parseCodeableReference(xpp)); 19451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 19452 res.setRecorder(parseReference(xpp)); 19453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 19454 res.getReason().add(parseCodeableReference(xpp)); 19455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("courseOfTherapyType")) { 19456 res.setCourseOfTherapyType(parseCodeableConcept(xpp)); 19457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 19458 res.getInsurance().add(parseReference(xpp)); 19459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 19460 res.getNote().add(parseAnnotation(xpp)); 19461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("renderedDosageInstruction")) { 19462 res.setRenderedDosageInstructionElement(parseMarkdown(xpp)); 19463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveDosePeriod")) { 19464 res.setEffectiveDosePeriod(parsePeriod(xpp)); 19465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 19466 res.getDosageInstruction().add(parseDosage(xpp)); 19467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenseRequest")) { 19468 res.setDispenseRequest(parseMedicationRequestDispenseRequestComponent(xpp)); 19469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 19470 res.setSubstitution(parseMedicationRequestSubstitutionComponent(xpp)); 19471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 19472 res.getEventHistory().add(parseReference(xpp)); 19473 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 19474 return false; 19475 } 19476 return true; 19477 } 19478 19479 protected MedicationRequest.MedicationRequestDispenseRequestComponent parseMedicationRequestDispenseRequestComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19480 MedicationRequest.MedicationRequestDispenseRequestComponent res = new MedicationRequest.MedicationRequestDispenseRequestComponent(); 19481 parseElementAttributes(xpp, res); 19482 next(xpp); 19483 int eventType = nextNoWhitespace(xpp); 19484 while (eventType != XmlPullParser.END_TAG) { 19485 if (!parseMedicationRequestDispenseRequestComponentContent(eventType, xpp, res)) 19486 unknownContent(xpp); 19487 eventType = nextNoWhitespace(xpp); 19488 } 19489 next(xpp); 19490 parseElementClose(res); 19491 return res; 19492 } 19493 19494 protected boolean parseMedicationRequestDispenseRequestComponentContent(int eventType, XmlPullParser xpp, MedicationRequest.MedicationRequestDispenseRequestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19495 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initialFill")) { 19496 res.setInitialFill(parseMedicationRequestDispenseRequestInitialFillComponent(xpp)); 19497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenseInterval")) { 19498 res.setDispenseInterval(parseDuration(xpp)); 19499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validityPeriod")) { 19500 res.setValidityPeriod(parsePeriod(xpp)); 19501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfRepeatsAllowed")) { 19502 res.setNumberOfRepeatsAllowedElement(parseUnsignedInt(xpp)); 19503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 19504 res.setQuantity(parseQuantity(xpp)); 19505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expectedSupplyDuration")) { 19506 res.setExpectedSupplyDuration(parseDuration(xpp)); 19507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenser")) { 19508 res.setDispenser(parseReference(xpp)); 19509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenserInstruction")) { 19510 res.getDispenserInstruction().add(parseAnnotation(xpp)); 19511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseAdministrationAid")) { 19512 res.setDoseAdministrationAid(parseCodeableConcept(xpp)); 19513 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19514 return false; 19515 } 19516 return true; 19517 } 19518 19519 protected MedicationRequest.MedicationRequestDispenseRequestInitialFillComponent parseMedicationRequestDispenseRequestInitialFillComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19520 MedicationRequest.MedicationRequestDispenseRequestInitialFillComponent res = new MedicationRequest.MedicationRequestDispenseRequestInitialFillComponent(); 19521 parseElementAttributes(xpp, res); 19522 next(xpp); 19523 int eventType = nextNoWhitespace(xpp); 19524 while (eventType != XmlPullParser.END_TAG) { 19525 if (!parseMedicationRequestDispenseRequestInitialFillComponentContent(eventType, xpp, res)) 19526 unknownContent(xpp); 19527 eventType = nextNoWhitespace(xpp); 19528 } 19529 next(xpp); 19530 parseElementClose(res); 19531 return res; 19532 } 19533 19534 protected boolean parseMedicationRequestDispenseRequestInitialFillComponentContent(int eventType, XmlPullParser xpp, MedicationRequest.MedicationRequestDispenseRequestInitialFillComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19535 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 19536 res.setQuantity(parseQuantity(xpp)); 19537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 19538 res.setDuration(parseDuration(xpp)); 19539 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19540 return false; 19541 } 19542 return true; 19543 } 19544 19545 protected MedicationRequest.MedicationRequestSubstitutionComponent parseMedicationRequestSubstitutionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19546 MedicationRequest.MedicationRequestSubstitutionComponent res = new MedicationRequest.MedicationRequestSubstitutionComponent(); 19547 parseElementAttributes(xpp, res); 19548 next(xpp); 19549 int eventType = nextNoWhitespace(xpp); 19550 while (eventType != XmlPullParser.END_TAG) { 19551 if (!parseMedicationRequestSubstitutionComponentContent(eventType, xpp, res)) 19552 unknownContent(xpp); 19553 eventType = nextNoWhitespace(xpp); 19554 } 19555 next(xpp); 19556 parseElementClose(res); 19557 return res; 19558 } 19559 19560 protected boolean parseMedicationRequestSubstitutionComponentContent(int eventType, XmlPullParser xpp, MedicationRequest.MedicationRequestSubstitutionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19561 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "allowed")) { 19562 res.setAllowed(parseType("allowed", xpp)); 19563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 19564 res.setReason(parseCodeableConcept(xpp)); 19565 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19566 return false; 19567 } 19568 return true; 19569 } 19570 19571 protected MedicationStatement parseMedicationStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19572 MedicationStatement res = new MedicationStatement(); 19573 parseResourceAttributes(xpp, res); 19574 next(xpp); 19575 int eventType = nextNoWhitespace(xpp); 19576 while (eventType != XmlPullParser.END_TAG) { 19577 if (!parseMedicationStatementContent(eventType, xpp, res)) 19578 unknownContent(xpp); 19579 eventType = nextNoWhitespace(xpp); 19580 } 19581 next(xpp); 19582 parseElementClose(res); 19583 return res; 19584 } 19585 19586 protected boolean parseMedicationStatementContent(int eventType, XmlPullParser xpp, MedicationStatement res) throws XmlPullParserException, IOException, FHIRFormatError { 19587 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 19588 res.getIdentifier().add(parseIdentifier(xpp)); 19589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 19590 res.getPartOf().add(parseReference(xpp)); 19591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 19592 res.setStatusElement(parseEnumeration(xpp, MedicationStatement.MedicationStatementStatusCodes.NULL, new MedicationStatement.MedicationStatementStatusCodesEnumFactory())); 19593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 19594 res.getCategory().add(parseCodeableConcept(xpp)); 19595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { 19596 res.setMedication(parseCodeableReference(xpp)); 19597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 19598 res.setSubject(parseReference(xpp)); 19599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 19600 res.setEncounter(parseReference(xpp)); 19601 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 19602 res.setEffective(parseType("effective", xpp)); 19603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAsserted")) { 19604 res.setDateAssertedElement(parseDateTime(xpp)); 19605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 19606 res.getInformationSource().add(parseReference(xpp)); 19607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 19608 res.getDerivedFrom().add(parseReference(xpp)); 19609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 19610 res.getReason().add(parseCodeableReference(xpp)); 19611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 19612 res.getNote().add(parseAnnotation(xpp)); 19613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedClinicalInformation")) { 19614 res.getRelatedClinicalInformation().add(parseReference(xpp)); 19615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("renderedDosageInstruction")) { 19616 res.setRenderedDosageInstructionElement(parseMarkdown(xpp)); 19617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 19618 res.getDosage().add(parseDosage(xpp)); 19619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adherence")) { 19620 res.setAdherence(parseMedicationStatementAdherenceComponent(xpp)); 19621 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 19622 return false; 19623 } 19624 return true; 19625 } 19626 19627 protected MedicationStatement.MedicationStatementAdherenceComponent parseMedicationStatementAdherenceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19628 MedicationStatement.MedicationStatementAdherenceComponent res = new MedicationStatement.MedicationStatementAdherenceComponent(); 19629 parseElementAttributes(xpp, res); 19630 next(xpp); 19631 int eventType = nextNoWhitespace(xpp); 19632 while (eventType != XmlPullParser.END_TAG) { 19633 if (!parseMedicationStatementAdherenceComponentContent(eventType, xpp, res)) 19634 unknownContent(xpp); 19635 eventType = nextNoWhitespace(xpp); 19636 } 19637 next(xpp); 19638 parseElementClose(res); 19639 return res; 19640 } 19641 19642 protected boolean parseMedicationStatementAdherenceComponentContent(int eventType, XmlPullParser xpp, MedicationStatement.MedicationStatementAdherenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19643 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 19644 res.setCode(parseCodeableConcept(xpp)); 19645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 19646 res.setReason(parseCodeableConcept(xpp)); 19647 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19648 return false; 19649 } 19650 return true; 19651 } 19652 19653 protected MedicinalProductDefinition parseMedicinalProductDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19654 MedicinalProductDefinition res = new MedicinalProductDefinition(); 19655 parseResourceAttributes(xpp, res); 19656 next(xpp); 19657 int eventType = nextNoWhitespace(xpp); 19658 while (eventType != XmlPullParser.END_TAG) { 19659 if (!parseMedicinalProductDefinitionContent(eventType, xpp, res)) 19660 unknownContent(xpp); 19661 eventType = nextNoWhitespace(xpp); 19662 } 19663 next(xpp); 19664 parseElementClose(res); 19665 return res; 19666 } 19667 19668 protected boolean parseMedicinalProductDefinitionContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 19669 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 19670 res.getIdentifier().add(parseIdentifier(xpp)); 19671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19672 res.setType(parseCodeableConcept(xpp)); 19673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { 19674 res.setDomain(parseCodeableConcept(xpp)); 19675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 19676 res.setVersionElement(parseString(xpp)); 19677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 19678 res.setStatus(parseCodeableConcept(xpp)); 19679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 19680 res.setStatusDateElement(parseDateTime(xpp)); 19681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 19682 res.setDescriptionElement(parseMarkdown(xpp)); 19683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("combinedPharmaceuticalDoseForm")) { 19684 res.setCombinedPharmaceuticalDoseForm(parseCodeableConcept(xpp)); 19685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 19686 res.getRoute().add(parseCodeableConcept(xpp)); 19687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 19688 res.setIndicationElement(parseMarkdown(xpp)); 19689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legalStatusOfSupply")) { 19690 res.setLegalStatusOfSupply(parseCodeableConcept(xpp)); 19691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalMonitoringIndicator")) { 19692 res.setAdditionalMonitoringIndicator(parseCodeableConcept(xpp)); 19693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialMeasures")) { 19694 res.getSpecialMeasures().add(parseCodeableConcept(xpp)); 19695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pediatricUseIndicator")) { 19696 res.setPediatricUseIndicator(parseCodeableConcept(xpp)); 19697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classification")) { 19698 res.getClassification().add(parseCodeableConcept(xpp)); 19699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketingStatus")) { 19700 res.getMarketingStatus().add(parseMarketingStatus(xpp)); 19701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packagedMedicinalProduct")) { 19702 res.getPackagedMedicinalProduct().add(parseCodeableConcept(xpp)); 19703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comprisedOf")) { 19704 res.getComprisedOf().add(parseReference(xpp)); 19705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 19706 res.getIngredient().add(parseCodeableConcept(xpp)); 19707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("impurity")) { 19708 res.getImpurity().add(parseCodeableReference(xpp)); 19709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachedDocument")) { 19710 res.getAttachedDocument().add(parseReference(xpp)); 19711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterFile")) { 19712 res.getMasterFile().add(parseReference(xpp)); 19713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 19714 res.getContact().add(parseMedicinalProductDefinitionContactComponent(xpp)); 19715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalTrial")) { 19716 res.getClinicalTrial().add(parseReference(xpp)); 19717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 19718 res.getCode().add(parseCoding(xpp)); 19719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 19720 res.getName().add(parseMedicinalProductDefinitionNameComponent(xpp)); 19721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("crossReference")) { 19722 res.getCrossReference().add(parseMedicinalProductDefinitionCrossReferenceComponent(xpp)); 19723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 19724 res.getOperation().add(parseMedicinalProductDefinitionOperationComponent(xpp)); 19725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 19726 res.getCharacteristic().add(parseMedicinalProductDefinitionCharacteristicComponent(xpp)); 19727 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 19728 return false; 19729 } 19730 return true; 19731 } 19732 19733 protected MedicinalProductDefinition.MedicinalProductDefinitionContactComponent parseMedicinalProductDefinitionContactComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19734 MedicinalProductDefinition.MedicinalProductDefinitionContactComponent res = new MedicinalProductDefinition.MedicinalProductDefinitionContactComponent(); 19735 parseElementAttributes(xpp, res); 19736 next(xpp); 19737 int eventType = nextNoWhitespace(xpp); 19738 while (eventType != XmlPullParser.END_TAG) { 19739 if (!parseMedicinalProductDefinitionContactComponentContent(eventType, xpp, res)) 19740 unknownContent(xpp); 19741 eventType = nextNoWhitespace(xpp); 19742 } 19743 next(xpp); 19744 parseElementClose(res); 19745 return res; 19746 } 19747 19748 protected boolean parseMedicinalProductDefinitionContactComponentContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition.MedicinalProductDefinitionContactComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19749 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19750 res.setType(parseCodeableConcept(xpp)); 19751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 19752 res.setContact(parseReference(xpp)); 19753 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19754 return false; 19755 } 19756 return true; 19757 } 19758 19759 protected MedicinalProductDefinition.MedicinalProductDefinitionNameComponent parseMedicinalProductDefinitionNameComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19760 MedicinalProductDefinition.MedicinalProductDefinitionNameComponent res = new MedicinalProductDefinition.MedicinalProductDefinitionNameComponent(); 19761 parseElementAttributes(xpp, res); 19762 next(xpp); 19763 int eventType = nextNoWhitespace(xpp); 19764 while (eventType != XmlPullParser.END_TAG) { 19765 if (!parseMedicinalProductDefinitionNameComponentContent(eventType, xpp, res)) 19766 unknownContent(xpp); 19767 eventType = nextNoWhitespace(xpp); 19768 } 19769 next(xpp); 19770 parseElementClose(res); 19771 return res; 19772 } 19773 19774 protected boolean parseMedicinalProductDefinitionNameComponentContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition.MedicinalProductDefinitionNameComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19775 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productName")) { 19776 res.setProductNameElement(parseString(xpp)); 19777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19778 res.setType(parseCodeableConcept(xpp)); 19779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 19780 res.getPart().add(parseMedicinalProductDefinitionNamePartComponent(xpp)); 19781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 19782 res.getUsage().add(parseMedicinalProductDefinitionNameUsageComponent(xpp)); 19783 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19784 return false; 19785 } 19786 return true; 19787 } 19788 19789 protected MedicinalProductDefinition.MedicinalProductDefinitionNamePartComponent parseMedicinalProductDefinitionNamePartComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19790 MedicinalProductDefinition.MedicinalProductDefinitionNamePartComponent res = new MedicinalProductDefinition.MedicinalProductDefinitionNamePartComponent(); 19791 parseElementAttributes(xpp, res); 19792 next(xpp); 19793 int eventType = nextNoWhitespace(xpp); 19794 while (eventType != XmlPullParser.END_TAG) { 19795 if (!parseMedicinalProductDefinitionNamePartComponentContent(eventType, xpp, res)) 19796 unknownContent(xpp); 19797 eventType = nextNoWhitespace(xpp); 19798 } 19799 next(xpp); 19800 parseElementClose(res); 19801 return res; 19802 } 19803 19804 protected boolean parseMedicinalProductDefinitionNamePartComponentContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition.MedicinalProductDefinitionNamePartComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19805 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 19806 res.setPartElement(parseString(xpp)); 19807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19808 res.setType(parseCodeableConcept(xpp)); 19809 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19810 return false; 19811 } 19812 return true; 19813 } 19814 19815 protected MedicinalProductDefinition.MedicinalProductDefinitionNameUsageComponent parseMedicinalProductDefinitionNameUsageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19816 MedicinalProductDefinition.MedicinalProductDefinitionNameUsageComponent res = new MedicinalProductDefinition.MedicinalProductDefinitionNameUsageComponent(); 19817 parseElementAttributes(xpp, res); 19818 next(xpp); 19819 int eventType = nextNoWhitespace(xpp); 19820 while (eventType != XmlPullParser.END_TAG) { 19821 if (!parseMedicinalProductDefinitionNameUsageComponentContent(eventType, xpp, res)) 19822 unknownContent(xpp); 19823 eventType = nextNoWhitespace(xpp); 19824 } 19825 next(xpp); 19826 parseElementClose(res); 19827 return res; 19828 } 19829 19830 protected boolean parseMedicinalProductDefinitionNameUsageComponentContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition.MedicinalProductDefinitionNameUsageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19831 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 19832 res.setCountry(parseCodeableConcept(xpp)); 19833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 19834 res.setJurisdiction(parseCodeableConcept(xpp)); 19835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 19836 res.setLanguage(parseCodeableConcept(xpp)); 19837 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19838 return false; 19839 } 19840 return true; 19841 } 19842 19843 protected MedicinalProductDefinition.MedicinalProductDefinitionCrossReferenceComponent parseMedicinalProductDefinitionCrossReferenceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19844 MedicinalProductDefinition.MedicinalProductDefinitionCrossReferenceComponent res = new MedicinalProductDefinition.MedicinalProductDefinitionCrossReferenceComponent(); 19845 parseElementAttributes(xpp, res); 19846 next(xpp); 19847 int eventType = nextNoWhitespace(xpp); 19848 while (eventType != XmlPullParser.END_TAG) { 19849 if (!parseMedicinalProductDefinitionCrossReferenceComponentContent(eventType, xpp, res)) 19850 unknownContent(xpp); 19851 eventType = nextNoWhitespace(xpp); 19852 } 19853 next(xpp); 19854 parseElementClose(res); 19855 return res; 19856 } 19857 19858 protected boolean parseMedicinalProductDefinitionCrossReferenceComponentContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition.MedicinalProductDefinitionCrossReferenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19859 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 19860 res.setProduct(parseCodeableReference(xpp)); 19861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19862 res.setType(parseCodeableConcept(xpp)); 19863 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19864 return false; 19865 } 19866 return true; 19867 } 19868 19869 protected MedicinalProductDefinition.MedicinalProductDefinitionOperationComponent parseMedicinalProductDefinitionOperationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19870 MedicinalProductDefinition.MedicinalProductDefinitionOperationComponent res = new MedicinalProductDefinition.MedicinalProductDefinitionOperationComponent(); 19871 parseElementAttributes(xpp, res); 19872 next(xpp); 19873 int eventType = nextNoWhitespace(xpp); 19874 while (eventType != XmlPullParser.END_TAG) { 19875 if (!parseMedicinalProductDefinitionOperationComponentContent(eventType, xpp, res)) 19876 unknownContent(xpp); 19877 eventType = nextNoWhitespace(xpp); 19878 } 19879 next(xpp); 19880 parseElementClose(res); 19881 return res; 19882 } 19883 19884 protected boolean parseMedicinalProductDefinitionOperationComponentContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition.MedicinalProductDefinitionOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19885 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19886 res.setType(parseCodeableReference(xpp)); 19887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveDate")) { 19888 res.setEffectiveDate(parsePeriod(xpp)); 19889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 19890 res.getOrganization().add(parseReference(xpp)); 19891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("confidentialityIndicator")) { 19892 res.setConfidentialityIndicator(parseCodeableConcept(xpp)); 19893 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19894 return false; 19895 } 19896 return true; 19897 } 19898 19899 protected MedicinalProductDefinition.MedicinalProductDefinitionCharacteristicComponent parseMedicinalProductDefinitionCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19900 MedicinalProductDefinition.MedicinalProductDefinitionCharacteristicComponent res = new MedicinalProductDefinition.MedicinalProductDefinitionCharacteristicComponent(); 19901 parseElementAttributes(xpp, res); 19902 next(xpp); 19903 int eventType = nextNoWhitespace(xpp); 19904 while (eventType != XmlPullParser.END_TAG) { 19905 if (!parseMedicinalProductDefinitionCharacteristicComponentContent(eventType, xpp, res)) 19906 unknownContent(xpp); 19907 eventType = nextNoWhitespace(xpp); 19908 } 19909 next(xpp); 19910 parseElementClose(res); 19911 return res; 19912 } 19913 19914 protected boolean parseMedicinalProductDefinitionCharacteristicComponentContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition.MedicinalProductDefinitionCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 19915 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 19916 res.setType(parseCodeableConcept(xpp)); 19917 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 19918 res.setValue(parseType("value", xpp)); 19919 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 19920 return false; 19921 } 19922 return true; 19923 } 19924 19925 protected MessageDefinition parseMessageDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 19926 MessageDefinition res = new MessageDefinition(); 19927 parseResourceAttributes(xpp, res); 19928 next(xpp); 19929 int eventType = nextNoWhitespace(xpp); 19930 while (eventType != XmlPullParser.END_TAG) { 19931 if (!parseMessageDefinitionContent(eventType, xpp, res)) 19932 unknownContent(xpp); 19933 eventType = nextNoWhitespace(xpp); 19934 } 19935 next(xpp); 19936 parseElementClose(res); 19937 return res; 19938 } 19939 19940 protected boolean parseMessageDefinitionContent(int eventType, XmlPullParser xpp, MessageDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 19941 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 19942 res.setUrlElement(parseUri(xpp)); 19943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 19944 res.getIdentifier().add(parseIdentifier(xpp)); 19945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 19946 res.setVersionElement(parseString(xpp)); 19947 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 19948 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 19949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 19950 res.setNameElement(parseString(xpp)); 19951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 19952 res.setTitleElement(parseString(xpp)); 19953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 19954 res.getReplaces().add(parseCanonical(xpp)); 19955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 19956 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 19957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 19958 res.setExperimentalElement(parseBoolean(xpp)); 19959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 19960 res.setDateElement(parseDateTime(xpp)); 19961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 19962 res.setPublisherElement(parseString(xpp)); 19963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 19964 res.getContact().add(parseContactDetail(xpp)); 19965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 19966 res.setDescriptionElement(parseMarkdown(xpp)); 19967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 19968 res.getUseContext().add(parseUsageContext(xpp)); 19969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 19970 res.getJurisdiction().add(parseCodeableConcept(xpp)); 19971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 19972 res.setPurposeElement(parseMarkdown(xpp)); 19973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 19974 res.setCopyrightElement(parseMarkdown(xpp)); 19975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 19976 res.setCopyrightLabelElement(parseString(xpp)); 19977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 19978 res.setBaseElement(parseCanonical(xpp)); 19979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 19980 res.getParent().add(parseCanonical(xpp)); 19981 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "event")) { 19982 res.setEvent(parseType("event", xpp)); 19983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 19984 res.setCategoryElement(parseEnumeration(xpp, MessageDefinition.MessageSignificanceCategory.NULL, new MessageDefinition.MessageSignificanceCategoryEnumFactory())); 19985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 19986 res.getFocus().add(parseMessageDefinitionFocusComponent(xpp)); 19987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseRequired")) { 19988 res.setResponseRequiredElement(parseEnumeration(xpp, MessageDefinition.MessageheaderResponseRequest.NULL, new MessageDefinition.MessageheaderResponseRequestEnumFactory())); 19989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allowedResponse")) { 19990 res.getAllowedResponse().add(parseMessageDefinitionAllowedResponseComponent(xpp)); 19991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("graph")) { 19992 res.setGraphElement(parseCanonical(xpp)); 19993 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 19994 return false; 19995 } 19996 return true; 19997 } 19998 19999 protected MessageDefinition.MessageDefinitionFocusComponent parseMessageDefinitionFocusComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20000 MessageDefinition.MessageDefinitionFocusComponent res = new MessageDefinition.MessageDefinitionFocusComponent(); 20001 parseElementAttributes(xpp, res); 20002 next(xpp); 20003 int eventType = nextNoWhitespace(xpp); 20004 while (eventType != XmlPullParser.END_TAG) { 20005 if (!parseMessageDefinitionFocusComponentContent(eventType, xpp, res)) 20006 unknownContent(xpp); 20007 eventType = nextNoWhitespace(xpp); 20008 } 20009 next(xpp); 20010 parseElementClose(res); 20011 return res; 20012 } 20013 20014 protected boolean parseMessageDefinitionFocusComponentContent(int eventType, XmlPullParser xpp, MessageDefinition.MessageDefinitionFocusComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20015 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 20016 res.setCodeElement(parseCode(xpp)); 20017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 20018 res.setProfileElement(parseCanonical(xpp)); 20019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 20020 res.setMinElement(parseUnsignedInt(xpp)); 20021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 20022 res.setMaxElement(parseString(xpp)); 20023 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20024 return false; 20025 } 20026 return true; 20027 } 20028 20029 protected MessageDefinition.MessageDefinitionAllowedResponseComponent parseMessageDefinitionAllowedResponseComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20030 MessageDefinition.MessageDefinitionAllowedResponseComponent res = new MessageDefinition.MessageDefinitionAllowedResponseComponent(); 20031 parseElementAttributes(xpp, res); 20032 next(xpp); 20033 int eventType = nextNoWhitespace(xpp); 20034 while (eventType != XmlPullParser.END_TAG) { 20035 if (!parseMessageDefinitionAllowedResponseComponentContent(eventType, xpp, res)) 20036 unknownContent(xpp); 20037 eventType = nextNoWhitespace(xpp); 20038 } 20039 next(xpp); 20040 parseElementClose(res); 20041 return res; 20042 } 20043 20044 protected boolean parseMessageDefinitionAllowedResponseComponentContent(int eventType, XmlPullParser xpp, MessageDefinition.MessageDefinitionAllowedResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20045 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 20046 res.setMessageElement(parseCanonical(xpp)); 20047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("situation")) { 20048 res.setSituationElement(parseMarkdown(xpp)); 20049 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20050 return false; 20051 } 20052 return true; 20053 } 20054 20055 protected MessageHeader parseMessageHeader(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20056 MessageHeader res = new MessageHeader(); 20057 parseResourceAttributes(xpp, res); 20058 next(xpp); 20059 int eventType = nextNoWhitespace(xpp); 20060 while (eventType != XmlPullParser.END_TAG) { 20061 if (!parseMessageHeaderContent(eventType, xpp, res)) 20062 unknownContent(xpp); 20063 eventType = nextNoWhitespace(xpp); 20064 } 20065 next(xpp); 20066 parseElementClose(res); 20067 return res; 20068 } 20069 20070 protected boolean parseMessageHeaderContent(int eventType, XmlPullParser xpp, MessageHeader res) throws XmlPullParserException, IOException, FHIRFormatError { 20071 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "event")) { 20072 res.setEvent(parseType("event", xpp)); 20073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 20074 res.getDestination().add(parseMessageHeaderMessageDestinationComponent(xpp)); 20075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 20076 res.setSender(parseReference(xpp)); 20077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 20078 res.setAuthor(parseReference(xpp)); 20079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 20080 res.setSource(parseMessageHeaderMessageSourceComponent(xpp)); 20081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 20082 res.setResponsible(parseReference(xpp)); 20083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 20084 res.setReason(parseCodeableConcept(xpp)); 20085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 20086 res.setResponse(parseMessageHeaderResponseComponent(xpp)); 20087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 20088 res.getFocus().add(parseReference(xpp)); 20089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 20090 res.setDefinitionElement(parseCanonical(xpp)); 20091 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 20092 return false; 20093 } 20094 return true; 20095 } 20096 20097 protected MessageHeader.MessageDestinationComponent parseMessageHeaderMessageDestinationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20098 MessageHeader.MessageDestinationComponent res = new MessageHeader.MessageDestinationComponent(); 20099 parseElementAttributes(xpp, res); 20100 next(xpp); 20101 int eventType = nextNoWhitespace(xpp); 20102 while (eventType != XmlPullParser.END_TAG) { 20103 if (!parseMessageHeaderMessageDestinationComponentContent(eventType, xpp, res)) 20104 unknownContent(xpp); 20105 eventType = nextNoWhitespace(xpp); 20106 } 20107 next(xpp); 20108 parseElementClose(res); 20109 return res; 20110 } 20111 20112 protected boolean parseMessageHeaderMessageDestinationComponentContent(int eventType, XmlPullParser xpp, MessageHeader.MessageDestinationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20113 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "endpoint")) { 20114 res.setEndpoint(parseType("endpoint", xpp)); 20115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 20116 res.setNameElement(parseString(xpp)); 20117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 20118 res.setTarget(parseReference(xpp)); 20119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 20120 res.setReceiver(parseReference(xpp)); 20121 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20122 return false; 20123 } 20124 return true; 20125 } 20126 20127 protected MessageHeader.MessageSourceComponent parseMessageHeaderMessageSourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20128 MessageHeader.MessageSourceComponent res = new MessageHeader.MessageSourceComponent(); 20129 parseElementAttributes(xpp, res); 20130 next(xpp); 20131 int eventType = nextNoWhitespace(xpp); 20132 while (eventType != XmlPullParser.END_TAG) { 20133 if (!parseMessageHeaderMessageSourceComponentContent(eventType, xpp, res)) 20134 unknownContent(xpp); 20135 eventType = nextNoWhitespace(xpp); 20136 } 20137 next(xpp); 20138 parseElementClose(res); 20139 return res; 20140 } 20141 20142 protected boolean parseMessageHeaderMessageSourceComponentContent(int eventType, XmlPullParser xpp, MessageHeader.MessageSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20143 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "endpoint")) { 20144 res.setEndpoint(parseType("endpoint", xpp)); 20145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 20146 res.setNameElement(parseString(xpp)); 20147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 20148 res.setSoftwareElement(parseString(xpp)); 20149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 20150 res.setVersionElement(parseString(xpp)); 20151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 20152 res.setContact(parseContactPoint(xpp)); 20153 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20154 return false; 20155 } 20156 return true; 20157 } 20158 20159 protected MessageHeader.MessageHeaderResponseComponent parseMessageHeaderResponseComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20160 MessageHeader.MessageHeaderResponseComponent res = new MessageHeader.MessageHeaderResponseComponent(); 20161 parseElementAttributes(xpp, res); 20162 next(xpp); 20163 int eventType = nextNoWhitespace(xpp); 20164 while (eventType != XmlPullParser.END_TAG) { 20165 if (!parseMessageHeaderResponseComponentContent(eventType, xpp, res)) 20166 unknownContent(xpp); 20167 eventType = nextNoWhitespace(xpp); 20168 } 20169 next(xpp); 20170 parseElementClose(res); 20171 return res; 20172 } 20173 20174 protected boolean parseMessageHeaderResponseComponentContent(int eventType, XmlPullParser xpp, MessageHeader.MessageHeaderResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20175 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 20176 res.setIdentifier(parseIdentifier(xpp)); 20177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 20178 res.setCodeElement(parseEnumeration(xpp, MessageHeader.ResponseType.NULL, new MessageHeader.ResponseTypeEnumFactory())); 20179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 20180 res.setDetails(parseReference(xpp)); 20181 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20182 return false; 20183 } 20184 return true; 20185 } 20186 20187 protected MolecularSequence parseMolecularSequence(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20188 MolecularSequence res = new MolecularSequence(); 20189 parseResourceAttributes(xpp, res); 20190 next(xpp); 20191 int eventType = nextNoWhitespace(xpp); 20192 while (eventType != XmlPullParser.END_TAG) { 20193 if (!parseMolecularSequenceContent(eventType, xpp, res)) 20194 unknownContent(xpp); 20195 eventType = nextNoWhitespace(xpp); 20196 } 20197 next(xpp); 20198 parseElementClose(res); 20199 return res; 20200 } 20201 20202 protected boolean parseMolecularSequenceContent(int eventType, XmlPullParser xpp, MolecularSequence res) throws XmlPullParserException, IOException, FHIRFormatError { 20203 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 20204 res.getIdentifier().add(parseIdentifier(xpp)); 20205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 20206 res.setTypeElement(parseEnumeration(xpp, MolecularSequence.SequenceType.NULL, new MolecularSequence.SequenceTypeEnumFactory())); 20207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 20208 res.setSubject(parseReference(xpp)); 20209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 20210 res.getFocus().add(parseReference(xpp)); 20211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 20212 res.setSpecimen(parseReference(xpp)); 20213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 20214 res.setDevice(parseReference(xpp)); 20215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 20216 res.setPerformer(parseReference(xpp)); 20217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("literal")) { 20218 res.setLiteralElement(parseString(xpp)); 20219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("formatted")) { 20220 res.getFormatted().add(parseAttachment(xpp)); 20221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relative")) { 20222 res.getRelative().add(parseMolecularSequenceRelativeComponent(xpp)); 20223 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 20224 return false; 20225 } 20226 return true; 20227 } 20228 20229 protected MolecularSequence.MolecularSequenceRelativeComponent parseMolecularSequenceRelativeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20230 MolecularSequence.MolecularSequenceRelativeComponent res = new MolecularSequence.MolecularSequenceRelativeComponent(); 20231 parseElementAttributes(xpp, res); 20232 next(xpp); 20233 int eventType = nextNoWhitespace(xpp); 20234 while (eventType != XmlPullParser.END_TAG) { 20235 if (!parseMolecularSequenceRelativeComponentContent(eventType, xpp, res)) 20236 unknownContent(xpp); 20237 eventType = nextNoWhitespace(xpp); 20238 } 20239 next(xpp); 20240 parseElementClose(res); 20241 return res; 20242 } 20243 20244 protected boolean parseMolecularSequenceRelativeComponentContent(int eventType, XmlPullParser xpp, MolecularSequence.MolecularSequenceRelativeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20245 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coordinateSystem")) { 20246 res.setCoordinateSystem(parseCodeableConcept(xpp)); 20247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ordinalPosition")) { 20248 res.setOrdinalPositionElement(parseInteger(xpp)); 20249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceRange")) { 20250 res.setSequenceRange(parseRange(xpp)); 20251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("startingSequence")) { 20252 res.setStartingSequence(parseMolecularSequenceRelativeStartingSequenceComponent(xpp)); 20253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("edit")) { 20254 res.getEdit().add(parseMolecularSequenceRelativeEditComponent(xpp)); 20255 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20256 return false; 20257 } 20258 return true; 20259 } 20260 20261 protected MolecularSequence.MolecularSequenceRelativeStartingSequenceComponent parseMolecularSequenceRelativeStartingSequenceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20262 MolecularSequence.MolecularSequenceRelativeStartingSequenceComponent res = new MolecularSequence.MolecularSequenceRelativeStartingSequenceComponent(); 20263 parseElementAttributes(xpp, res); 20264 next(xpp); 20265 int eventType = nextNoWhitespace(xpp); 20266 while (eventType != XmlPullParser.END_TAG) { 20267 if (!parseMolecularSequenceRelativeStartingSequenceComponentContent(eventType, xpp, res)) 20268 unknownContent(xpp); 20269 eventType = nextNoWhitespace(xpp); 20270 } 20271 next(xpp); 20272 parseElementClose(res); 20273 return res; 20274 } 20275 20276 protected boolean parseMolecularSequenceRelativeStartingSequenceComponentContent(int eventType, XmlPullParser xpp, MolecularSequence.MolecularSequenceRelativeStartingSequenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20277 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genomeAssembly")) { 20278 res.setGenomeAssembly(parseCodeableConcept(xpp)); 20279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chromosome")) { 20280 res.setChromosome(parseCodeableConcept(xpp)); 20281 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "sequence")) { 20282 res.setSequence(parseType("sequence", xpp)); 20283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("windowStart")) { 20284 res.setWindowStartElement(parseInteger(xpp)); 20285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("windowEnd")) { 20286 res.setWindowEndElement(parseInteger(xpp)); 20287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orientation")) { 20288 res.setOrientationElement(parseEnumeration(xpp, MolecularSequence.OrientationType.NULL, new MolecularSequence.OrientationTypeEnumFactory())); 20289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strand")) { 20290 res.setStrandElement(parseEnumeration(xpp, MolecularSequence.StrandType.NULL, new MolecularSequence.StrandTypeEnumFactory())); 20291 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20292 return false; 20293 } 20294 return true; 20295 } 20296 20297 protected MolecularSequence.MolecularSequenceRelativeEditComponent parseMolecularSequenceRelativeEditComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20298 MolecularSequence.MolecularSequenceRelativeEditComponent res = new MolecularSequence.MolecularSequenceRelativeEditComponent(); 20299 parseElementAttributes(xpp, res); 20300 next(xpp); 20301 int eventType = nextNoWhitespace(xpp); 20302 while (eventType != XmlPullParser.END_TAG) { 20303 if (!parseMolecularSequenceRelativeEditComponentContent(eventType, xpp, res)) 20304 unknownContent(xpp); 20305 eventType = nextNoWhitespace(xpp); 20306 } 20307 next(xpp); 20308 parseElementClose(res); 20309 return res; 20310 } 20311 20312 protected boolean parseMolecularSequenceRelativeEditComponentContent(int eventType, XmlPullParser xpp, MolecularSequence.MolecularSequenceRelativeEditComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20313 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 20314 res.setStartElement(parseInteger(xpp)); 20315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 20316 res.setEndElement(parseInteger(xpp)); 20317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replacementSequence")) { 20318 res.setReplacementSequenceElement(parseString(xpp)); 20319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replacedSequence")) { 20320 res.setReplacedSequenceElement(parseString(xpp)); 20321 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20322 return false; 20323 } 20324 return true; 20325 } 20326 20327 protected NamingSystem parseNamingSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20328 NamingSystem res = new NamingSystem(); 20329 parseResourceAttributes(xpp, res); 20330 next(xpp); 20331 int eventType = nextNoWhitespace(xpp); 20332 while (eventType != XmlPullParser.END_TAG) { 20333 if (!parseNamingSystemContent(eventType, xpp, res)) 20334 unknownContent(xpp); 20335 eventType = nextNoWhitespace(xpp); 20336 } 20337 next(xpp); 20338 parseElementClose(res); 20339 return res; 20340 } 20341 20342 protected boolean parseNamingSystemContent(int eventType, XmlPullParser xpp, NamingSystem res) throws XmlPullParserException, IOException, FHIRFormatError { 20343 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 20344 res.setUrlElement(parseUri(xpp)); 20345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 20346 res.getIdentifier().add(parseIdentifier(xpp)); 20347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 20348 res.setVersionElement(parseString(xpp)); 20349 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 20350 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 20351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 20352 res.setNameElement(parseString(xpp)); 20353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 20354 res.setTitleElement(parseString(xpp)); 20355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 20356 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 20357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 20358 res.setKindElement(parseEnumeration(xpp, NamingSystem.NamingSystemType.NULL, new NamingSystem.NamingSystemTypeEnumFactory())); 20359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 20360 res.setExperimentalElement(parseBoolean(xpp)); 20361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 20362 res.setDateElement(parseDateTime(xpp)); 20363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 20364 res.setPublisherElement(parseString(xpp)); 20365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 20366 res.getContact().add(parseContactDetail(xpp)); 20367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 20368 res.setResponsibleElement(parseString(xpp)); 20369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 20370 res.setType(parseCodeableConcept(xpp)); 20371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 20372 res.setDescriptionElement(parseMarkdown(xpp)); 20373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 20374 res.getUseContext().add(parseUsageContext(xpp)); 20375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 20376 res.getJurisdiction().add(parseCodeableConcept(xpp)); 20377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 20378 res.setPurposeElement(parseMarkdown(xpp)); 20379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 20380 res.setCopyrightElement(parseMarkdown(xpp)); 20381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 20382 res.setCopyrightLabelElement(parseString(xpp)); 20383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 20384 res.setApprovalDateElement(parseDate(xpp)); 20385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 20386 res.setLastReviewDateElement(parseDate(xpp)); 20387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 20388 res.setEffectivePeriod(parsePeriod(xpp)); 20389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 20390 res.getTopic().add(parseCodeableConcept(xpp)); 20391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 20392 res.getAuthor().add(parseContactDetail(xpp)); 20393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 20394 res.getEditor().add(parseContactDetail(xpp)); 20395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 20396 res.getReviewer().add(parseContactDetail(xpp)); 20397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 20398 res.getEndorser().add(parseContactDetail(xpp)); 20399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 20400 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 20401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 20402 res.setUsageElement(parseString(xpp)); 20403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uniqueId")) { 20404 res.getUniqueId().add(parseNamingSystemUniqueIdComponent(xpp)); 20405 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 20406 return false; 20407 } 20408 return true; 20409 } 20410 20411 protected NamingSystem.NamingSystemUniqueIdComponent parseNamingSystemUniqueIdComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20412 NamingSystem.NamingSystemUniqueIdComponent res = new NamingSystem.NamingSystemUniqueIdComponent(); 20413 parseElementAttributes(xpp, res); 20414 next(xpp); 20415 int eventType = nextNoWhitespace(xpp); 20416 while (eventType != XmlPullParser.END_TAG) { 20417 if (!parseNamingSystemUniqueIdComponentContent(eventType, xpp, res)) 20418 unknownContent(xpp); 20419 eventType = nextNoWhitespace(xpp); 20420 } 20421 next(xpp); 20422 parseElementClose(res); 20423 return res; 20424 } 20425 20426 protected boolean parseNamingSystemUniqueIdComponentContent(int eventType, XmlPullParser xpp, NamingSystem.NamingSystemUniqueIdComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20427 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 20428 res.setTypeElement(parseEnumeration(xpp, NamingSystem.NamingSystemIdentifierType.NULL, new NamingSystem.NamingSystemIdentifierTypeEnumFactory())); 20429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 20430 res.setValueElement(parseString(xpp)); 20431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 20432 res.setPreferredElement(parseBoolean(xpp)); 20433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 20434 res.setCommentElement(parseString(xpp)); 20435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 20436 res.setPeriod(parsePeriod(xpp)); 20437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoritative")) { 20438 res.setAuthoritativeElement(parseBoolean(xpp)); 20439 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20440 return false; 20441 } 20442 return true; 20443 } 20444 20445 protected NutritionIntake parseNutritionIntake(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20446 NutritionIntake res = new NutritionIntake(); 20447 parseResourceAttributes(xpp, res); 20448 next(xpp); 20449 int eventType = nextNoWhitespace(xpp); 20450 while (eventType != XmlPullParser.END_TAG) { 20451 if (!parseNutritionIntakeContent(eventType, xpp, res)) 20452 unknownContent(xpp); 20453 eventType = nextNoWhitespace(xpp); 20454 } 20455 next(xpp); 20456 parseElementClose(res); 20457 return res; 20458 } 20459 20460 protected boolean parseNutritionIntakeContent(int eventType, XmlPullParser xpp, NutritionIntake res) throws XmlPullParserException, IOException, FHIRFormatError { 20461 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 20462 res.getIdentifier().add(parseIdentifier(xpp)); 20463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 20464 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 20465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 20466 res.getInstantiatesUri().add(parseUri(xpp)); 20467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 20468 res.getBasedOn().add(parseReference(xpp)); 20469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 20470 res.getPartOf().add(parseReference(xpp)); 20471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 20472 res.setStatusElement(parseEnumeration(xpp, Enumerations.EventStatus.NULL, new Enumerations.EventStatusEnumFactory())); 20473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 20474 res.getStatusReason().add(parseCodeableConcept(xpp)); 20475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 20476 res.setCode(parseCodeableConcept(xpp)); 20477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 20478 res.setSubject(parseReference(xpp)); 20479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 20480 res.setEncounter(parseReference(xpp)); 20481 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 20482 res.setOccurrence(parseType("occurrence", xpp)); 20483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 20484 res.setRecordedElement(parseDateTime(xpp)); 20485 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reported")) { 20486 res.setReported(parseType("reported", xpp)); 20487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("consumedItem")) { 20488 res.getConsumedItem().add(parseNutritionIntakeConsumedItemComponent(xpp)); 20489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredientLabel")) { 20490 res.getIngredientLabel().add(parseNutritionIntakeIngredientLabelComponent(xpp)); 20491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 20492 res.getPerformer().add(parseNutritionIntakePerformerComponent(xpp)); 20493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 20494 res.setLocation(parseReference(xpp)); 20495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 20496 res.getDerivedFrom().add(parseReference(xpp)); 20497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 20498 res.getReason().add(parseCodeableReference(xpp)); 20499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 20500 res.getNote().add(parseAnnotation(xpp)); 20501 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 20502 return false; 20503 } 20504 return true; 20505 } 20506 20507 protected NutritionIntake.NutritionIntakeConsumedItemComponent parseNutritionIntakeConsumedItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20508 NutritionIntake.NutritionIntakeConsumedItemComponent res = new NutritionIntake.NutritionIntakeConsumedItemComponent(); 20509 parseElementAttributes(xpp, res); 20510 next(xpp); 20511 int eventType = nextNoWhitespace(xpp); 20512 while (eventType != XmlPullParser.END_TAG) { 20513 if (!parseNutritionIntakeConsumedItemComponentContent(eventType, xpp, res)) 20514 unknownContent(xpp); 20515 eventType = nextNoWhitespace(xpp); 20516 } 20517 next(xpp); 20518 parseElementClose(res); 20519 return res; 20520 } 20521 20522 protected boolean parseNutritionIntakeConsumedItemComponentContent(int eventType, XmlPullParser xpp, NutritionIntake.NutritionIntakeConsumedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20523 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 20524 res.setType(parseCodeableConcept(xpp)); 20525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutritionProduct")) { 20526 res.setNutritionProduct(parseCodeableReference(xpp)); 20527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 20528 res.setSchedule(parseTiming(xpp)); 20529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 20530 res.setAmount(parseQuantity(xpp)); 20531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rate")) { 20532 res.setRate(parseQuantity(xpp)); 20533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notConsumed")) { 20534 res.setNotConsumedElement(parseBoolean(xpp)); 20535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notConsumedReason")) { 20536 res.setNotConsumedReason(parseCodeableConcept(xpp)); 20537 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20538 return false; 20539 } 20540 return true; 20541 } 20542 20543 protected NutritionIntake.NutritionIntakeIngredientLabelComponent parseNutritionIntakeIngredientLabelComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20544 NutritionIntake.NutritionIntakeIngredientLabelComponent res = new NutritionIntake.NutritionIntakeIngredientLabelComponent(); 20545 parseElementAttributes(xpp, res); 20546 next(xpp); 20547 int eventType = nextNoWhitespace(xpp); 20548 while (eventType != XmlPullParser.END_TAG) { 20549 if (!parseNutritionIntakeIngredientLabelComponentContent(eventType, xpp, res)) 20550 unknownContent(xpp); 20551 eventType = nextNoWhitespace(xpp); 20552 } 20553 next(xpp); 20554 parseElementClose(res); 20555 return res; 20556 } 20557 20558 protected boolean parseNutritionIntakeIngredientLabelComponentContent(int eventType, XmlPullParser xpp, NutritionIntake.NutritionIntakeIngredientLabelComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20559 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { 20560 res.setNutrient(parseCodeableReference(xpp)); 20561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 20562 res.setAmount(parseQuantity(xpp)); 20563 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20564 return false; 20565 } 20566 return true; 20567 } 20568 20569 protected NutritionIntake.NutritionIntakePerformerComponent parseNutritionIntakePerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20570 NutritionIntake.NutritionIntakePerformerComponent res = new NutritionIntake.NutritionIntakePerformerComponent(); 20571 parseElementAttributes(xpp, res); 20572 next(xpp); 20573 int eventType = nextNoWhitespace(xpp); 20574 while (eventType != XmlPullParser.END_TAG) { 20575 if (!parseNutritionIntakePerformerComponentContent(eventType, xpp, res)) 20576 unknownContent(xpp); 20577 eventType = nextNoWhitespace(xpp); 20578 } 20579 next(xpp); 20580 parseElementClose(res); 20581 return res; 20582 } 20583 20584 protected boolean parseNutritionIntakePerformerComponentContent(int eventType, XmlPullParser xpp, NutritionIntake.NutritionIntakePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20585 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 20586 res.setFunction(parseCodeableConcept(xpp)); 20587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 20588 res.setActor(parseReference(xpp)); 20589 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20590 return false; 20591 } 20592 return true; 20593 } 20594 20595 protected NutritionOrder parseNutritionOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20596 NutritionOrder res = new NutritionOrder(); 20597 parseResourceAttributes(xpp, res); 20598 next(xpp); 20599 int eventType = nextNoWhitespace(xpp); 20600 while (eventType != XmlPullParser.END_TAG) { 20601 if (!parseNutritionOrderContent(eventType, xpp, res)) 20602 unknownContent(xpp); 20603 eventType = nextNoWhitespace(xpp); 20604 } 20605 next(xpp); 20606 parseElementClose(res); 20607 return res; 20608 } 20609 20610 protected boolean parseNutritionOrderContent(int eventType, XmlPullParser xpp, NutritionOrder res) throws XmlPullParserException, IOException, FHIRFormatError { 20611 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 20612 res.getIdentifier().add(parseIdentifier(xpp)); 20613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 20614 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 20615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 20616 res.getInstantiatesUri().add(parseUri(xpp)); 20617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiates")) { 20618 res.getInstantiates().add(parseUri(xpp)); 20619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 20620 res.getBasedOn().add(parseReference(xpp)); 20621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 20622 res.setGroupIdentifier(parseIdentifier(xpp)); 20623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 20624 res.setStatusElement(parseEnumeration(xpp, Enumerations.RequestStatus.NULL, new Enumerations.RequestStatusEnumFactory())); 20625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 20626 res.setIntentElement(parseEnumeration(xpp, Enumerations.RequestIntent.NULL, new Enumerations.RequestIntentEnumFactory())); 20627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 20628 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 20629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 20630 res.setSubject(parseReference(xpp)); 20631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 20632 res.setEncounter(parseReference(xpp)); 20633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 20634 res.getSupportingInformation().add(parseReference(xpp)); 20635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 20636 res.setDateTimeElement(parseDateTime(xpp)); 20637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 20638 res.setOrderer(parseReference(xpp)); 20639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 20640 res.getPerformer().add(parseCodeableReference(xpp)); 20641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allergyIntolerance")) { 20642 res.getAllergyIntolerance().add(parseReference(xpp)); 20643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodPreferenceModifier")) { 20644 res.getFoodPreferenceModifier().add(parseCodeableConcept(xpp)); 20645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeFoodModifier")) { 20646 res.getExcludeFoodModifier().add(parseCodeableConcept(xpp)); 20647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outsideFoodAllowed")) { 20648 res.setOutsideFoodAllowedElement(parseBoolean(xpp)); 20649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("oralDiet")) { 20650 res.setOralDiet(parseNutritionOrderOralDietComponent(xpp)); 20651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplement")) { 20652 res.getSupplement().add(parseNutritionOrderSupplementComponent(xpp)); 20653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enteralFormula")) { 20654 res.setEnteralFormula(parseNutritionOrderEnteralFormulaComponent(xpp)); 20655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 20656 res.getNote().add(parseAnnotation(xpp)); 20657 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 20658 return false; 20659 } 20660 return true; 20661 } 20662 20663 protected NutritionOrder.NutritionOrderOralDietComponent parseNutritionOrderOralDietComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20664 NutritionOrder.NutritionOrderOralDietComponent res = new NutritionOrder.NutritionOrderOralDietComponent(); 20665 parseElementAttributes(xpp, res); 20666 next(xpp); 20667 int eventType = nextNoWhitespace(xpp); 20668 while (eventType != XmlPullParser.END_TAG) { 20669 if (!parseNutritionOrderOralDietComponentContent(eventType, xpp, res)) 20670 unknownContent(xpp); 20671 eventType = nextNoWhitespace(xpp); 20672 } 20673 next(xpp); 20674 parseElementClose(res); 20675 return res; 20676 } 20677 20678 protected boolean parseNutritionOrderOralDietComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.NutritionOrderOralDietComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20679 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 20680 res.getType().add(parseCodeableConcept(xpp)); 20681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 20682 res.setSchedule(parseNutritionOrderOralDietScheduleComponent(xpp)); 20683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { 20684 res.getNutrient().add(parseNutritionOrderOralDietNutrientComponent(xpp)); 20685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("texture")) { 20686 res.getTexture().add(parseNutritionOrderOralDietTextureComponent(xpp)); 20687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fluidConsistencyType")) { 20688 res.getFluidConsistencyType().add(parseCodeableConcept(xpp)); 20689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 20690 res.setInstructionElement(parseString(xpp)); 20691 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20692 return false; 20693 } 20694 return true; 20695 } 20696 20697 protected NutritionOrder.OralDietScheduleComponent parseNutritionOrderOralDietScheduleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20698 NutritionOrder.OralDietScheduleComponent res = new NutritionOrder.OralDietScheduleComponent(); 20699 parseElementAttributes(xpp, res); 20700 next(xpp); 20701 int eventType = nextNoWhitespace(xpp); 20702 while (eventType != XmlPullParser.END_TAG) { 20703 if (!parseNutritionOrderOralDietScheduleComponentContent(eventType, xpp, res)) 20704 unknownContent(xpp); 20705 eventType = nextNoWhitespace(xpp); 20706 } 20707 next(xpp); 20708 parseElementClose(res); 20709 return res; 20710 } 20711 20712 protected boolean parseNutritionOrderOralDietScheduleComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.OralDietScheduleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20713 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 20714 res.getTiming().add(parseTiming(xpp)); 20715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeeded")) { 20716 res.setAsNeededElement(parseBoolean(xpp)); 20717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeededFor")) { 20718 res.setAsNeededFor(parseCodeableConcept(xpp)); 20719 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20720 return false; 20721 } 20722 return true; 20723 } 20724 20725 protected NutritionOrder.NutritionOrderOralDietNutrientComponent parseNutritionOrderOralDietNutrientComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20726 NutritionOrder.NutritionOrderOralDietNutrientComponent res = new NutritionOrder.NutritionOrderOralDietNutrientComponent(); 20727 parseElementAttributes(xpp, res); 20728 next(xpp); 20729 int eventType = nextNoWhitespace(xpp); 20730 while (eventType != XmlPullParser.END_TAG) { 20731 if (!parseNutritionOrderOralDietNutrientComponentContent(eventType, xpp, res)) 20732 unknownContent(xpp); 20733 eventType = nextNoWhitespace(xpp); 20734 } 20735 next(xpp); 20736 parseElementClose(res); 20737 return res; 20738 } 20739 20740 protected boolean parseNutritionOrderOralDietNutrientComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.NutritionOrderOralDietNutrientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20741 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 20742 res.setModifier(parseCodeableConcept(xpp)); 20743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 20744 res.setAmount(parseQuantity(xpp)); 20745 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20746 return false; 20747 } 20748 return true; 20749 } 20750 20751 protected NutritionOrder.NutritionOrderOralDietTextureComponent parseNutritionOrderOralDietTextureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20752 NutritionOrder.NutritionOrderOralDietTextureComponent res = new NutritionOrder.NutritionOrderOralDietTextureComponent(); 20753 parseElementAttributes(xpp, res); 20754 next(xpp); 20755 int eventType = nextNoWhitespace(xpp); 20756 while (eventType != XmlPullParser.END_TAG) { 20757 if (!parseNutritionOrderOralDietTextureComponentContent(eventType, xpp, res)) 20758 unknownContent(xpp); 20759 eventType = nextNoWhitespace(xpp); 20760 } 20761 next(xpp); 20762 parseElementClose(res); 20763 return res; 20764 } 20765 20766 protected boolean parseNutritionOrderOralDietTextureComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.NutritionOrderOralDietTextureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20767 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 20768 res.setModifier(parseCodeableConcept(xpp)); 20769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodType")) { 20770 res.setFoodType(parseCodeableConcept(xpp)); 20771 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20772 return false; 20773 } 20774 return true; 20775 } 20776 20777 protected NutritionOrder.NutritionOrderSupplementComponent parseNutritionOrderSupplementComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20778 NutritionOrder.NutritionOrderSupplementComponent res = new NutritionOrder.NutritionOrderSupplementComponent(); 20779 parseElementAttributes(xpp, res); 20780 next(xpp); 20781 int eventType = nextNoWhitespace(xpp); 20782 while (eventType != XmlPullParser.END_TAG) { 20783 if (!parseNutritionOrderSupplementComponentContent(eventType, xpp, res)) 20784 unknownContent(xpp); 20785 eventType = nextNoWhitespace(xpp); 20786 } 20787 next(xpp); 20788 parseElementClose(res); 20789 return res; 20790 } 20791 20792 protected boolean parseNutritionOrderSupplementComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.NutritionOrderSupplementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20793 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 20794 res.setType(parseCodeableReference(xpp)); 20795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productName")) { 20796 res.setProductNameElement(parseString(xpp)); 20797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 20798 res.setSchedule(parseNutritionOrderSupplementScheduleComponent(xpp)); 20799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 20800 res.setQuantity(parseQuantity(xpp)); 20801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 20802 res.setInstructionElement(parseString(xpp)); 20803 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20804 return false; 20805 } 20806 return true; 20807 } 20808 20809 protected NutritionOrder.SupplementScheduleComponent parseNutritionOrderSupplementScheduleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20810 NutritionOrder.SupplementScheduleComponent res = new NutritionOrder.SupplementScheduleComponent(); 20811 parseElementAttributes(xpp, res); 20812 next(xpp); 20813 int eventType = nextNoWhitespace(xpp); 20814 while (eventType != XmlPullParser.END_TAG) { 20815 if (!parseNutritionOrderSupplementScheduleComponentContent(eventType, xpp, res)) 20816 unknownContent(xpp); 20817 eventType = nextNoWhitespace(xpp); 20818 } 20819 next(xpp); 20820 parseElementClose(res); 20821 return res; 20822 } 20823 20824 protected boolean parseNutritionOrderSupplementScheduleComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.SupplementScheduleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20825 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 20826 res.getTiming().add(parseTiming(xpp)); 20827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeeded")) { 20828 res.setAsNeededElement(parseBoolean(xpp)); 20829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeededFor")) { 20830 res.setAsNeededFor(parseCodeableConcept(xpp)); 20831 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20832 return false; 20833 } 20834 return true; 20835 } 20836 20837 protected NutritionOrder.NutritionOrderEnteralFormulaComponent parseNutritionOrderEnteralFormulaComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20838 NutritionOrder.NutritionOrderEnteralFormulaComponent res = new NutritionOrder.NutritionOrderEnteralFormulaComponent(); 20839 parseElementAttributes(xpp, res); 20840 next(xpp); 20841 int eventType = nextNoWhitespace(xpp); 20842 while (eventType != XmlPullParser.END_TAG) { 20843 if (!parseNutritionOrderEnteralFormulaComponentContent(eventType, xpp, res)) 20844 unknownContent(xpp); 20845 eventType = nextNoWhitespace(xpp); 20846 } 20847 next(xpp); 20848 parseElementClose(res); 20849 return res; 20850 } 20851 20852 protected boolean parseNutritionOrderEnteralFormulaComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.NutritionOrderEnteralFormulaComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20853 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaType")) { 20854 res.setBaseFormulaType(parseCodeableReference(xpp)); 20855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaProductName")) { 20856 res.setBaseFormulaProductNameElement(parseString(xpp)); 20857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deliveryDevice")) { 20858 res.getDeliveryDevice().add(parseCodeableReference(xpp)); 20859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additive")) { 20860 res.getAdditive().add(parseNutritionOrderEnteralFormulaAdditiveComponent(xpp)); 20861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caloricDensity")) { 20862 res.setCaloricDensity(parseQuantity(xpp)); 20863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("routeOfAdministration")) { 20864 res.setRouteOfAdministration(parseCodeableConcept(xpp)); 20865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administration")) { 20866 res.getAdministration().add(parseNutritionOrderEnteralFormulaAdministrationComponent(xpp)); 20867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxVolumeToDeliver")) { 20868 res.setMaxVolumeToDeliver(parseQuantity(xpp)); 20869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administrationInstruction")) { 20870 res.setAdministrationInstructionElement(parseMarkdown(xpp)); 20871 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20872 return false; 20873 } 20874 return true; 20875 } 20876 20877 protected NutritionOrder.NutritionOrderEnteralFormulaAdditiveComponent parseNutritionOrderEnteralFormulaAdditiveComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20878 NutritionOrder.NutritionOrderEnteralFormulaAdditiveComponent res = new NutritionOrder.NutritionOrderEnteralFormulaAdditiveComponent(); 20879 parseElementAttributes(xpp, res); 20880 next(xpp); 20881 int eventType = nextNoWhitespace(xpp); 20882 while (eventType != XmlPullParser.END_TAG) { 20883 if (!parseNutritionOrderEnteralFormulaAdditiveComponentContent(eventType, xpp, res)) 20884 unknownContent(xpp); 20885 eventType = nextNoWhitespace(xpp); 20886 } 20887 next(xpp); 20888 parseElementClose(res); 20889 return res; 20890 } 20891 20892 protected boolean parseNutritionOrderEnteralFormulaAdditiveComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.NutritionOrderEnteralFormulaAdditiveComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20893 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 20894 res.setType(parseCodeableReference(xpp)); 20895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productName")) { 20896 res.setProductNameElement(parseString(xpp)); 20897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 20898 res.setQuantity(parseQuantity(xpp)); 20899 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20900 return false; 20901 } 20902 return true; 20903 } 20904 20905 protected NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent parseNutritionOrderEnteralFormulaAdministrationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20906 NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent res = new NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); 20907 parseElementAttributes(xpp, res); 20908 next(xpp); 20909 int eventType = nextNoWhitespace(xpp); 20910 while (eventType != XmlPullParser.END_TAG) { 20911 if (!parseNutritionOrderEnteralFormulaAdministrationComponentContent(eventType, xpp, res)) 20912 unknownContent(xpp); 20913 eventType = nextNoWhitespace(xpp); 20914 } 20915 next(xpp); 20916 parseElementClose(res); 20917 return res; 20918 } 20919 20920 protected boolean parseNutritionOrderEnteralFormulaAdministrationComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20921 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 20922 res.setSchedule(parseNutritionOrderEnteralFormulaScheduleComponent(xpp)); 20923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 20924 res.setQuantity(parseQuantity(xpp)); 20925 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 20926 res.setRate(parseType("rate", xpp)); 20927 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20928 return false; 20929 } 20930 return true; 20931 } 20932 20933 protected NutritionOrder.EnteralFormulaScheduleComponent parseNutritionOrderEnteralFormulaScheduleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20934 NutritionOrder.EnteralFormulaScheduleComponent res = new NutritionOrder.EnteralFormulaScheduleComponent(); 20935 parseElementAttributes(xpp, res); 20936 next(xpp); 20937 int eventType = nextNoWhitespace(xpp); 20938 while (eventType != XmlPullParser.END_TAG) { 20939 if (!parseNutritionOrderEnteralFormulaScheduleComponentContent(eventType, xpp, res)) 20940 unknownContent(xpp); 20941 eventType = nextNoWhitespace(xpp); 20942 } 20943 next(xpp); 20944 parseElementClose(res); 20945 return res; 20946 } 20947 20948 protected boolean parseNutritionOrderEnteralFormulaScheduleComponentContent(int eventType, XmlPullParser xpp, NutritionOrder.EnteralFormulaScheduleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 20949 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 20950 res.getTiming().add(parseTiming(xpp)); 20951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeeded")) { 20952 res.setAsNeededElement(parseBoolean(xpp)); 20953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asNeededFor")) { 20954 res.setAsNeededFor(parseCodeableConcept(xpp)); 20955 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 20956 return false; 20957 } 20958 return true; 20959 } 20960 20961 protected NutritionProduct parseNutritionProduct(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 20962 NutritionProduct res = new NutritionProduct(); 20963 parseResourceAttributes(xpp, res); 20964 next(xpp); 20965 int eventType = nextNoWhitespace(xpp); 20966 while (eventType != XmlPullParser.END_TAG) { 20967 if (!parseNutritionProductContent(eventType, xpp, res)) 20968 unknownContent(xpp); 20969 eventType = nextNoWhitespace(xpp); 20970 } 20971 next(xpp); 20972 parseElementClose(res); 20973 return res; 20974 } 20975 20976 protected boolean parseNutritionProductContent(int eventType, XmlPullParser xpp, NutritionProduct res) throws XmlPullParserException, IOException, FHIRFormatError { 20977 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 20978 res.setCode(parseCodeableConcept(xpp)); 20979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 20980 res.setStatusElement(parseEnumeration(xpp, NutritionProduct.NutritionProductStatus.NULL, new NutritionProduct.NutritionProductStatusEnumFactory())); 20981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 20982 res.getCategory().add(parseCodeableConcept(xpp)); 20983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 20984 res.getManufacturer().add(parseReference(xpp)); 20985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { 20986 res.getNutrient().add(parseNutritionProductNutrientComponent(xpp)); 20987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 20988 res.getIngredient().add(parseNutritionProductIngredientComponent(xpp)); 20989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("knownAllergen")) { 20990 res.getKnownAllergen().add(parseCodeableReference(xpp)); 20991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 20992 res.getCharacteristic().add(parseNutritionProductCharacteristicComponent(xpp)); 20993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 20994 res.getInstance().add(parseNutritionProductInstanceComponent(xpp)); 20995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 20996 res.getNote().add(parseAnnotation(xpp)); 20997 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 20998 return false; 20999 } 21000 return true; 21001 } 21002 21003 protected NutritionProduct.NutritionProductNutrientComponent parseNutritionProductNutrientComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21004 NutritionProduct.NutritionProductNutrientComponent res = new NutritionProduct.NutritionProductNutrientComponent(); 21005 parseElementAttributes(xpp, res); 21006 next(xpp); 21007 int eventType = nextNoWhitespace(xpp); 21008 while (eventType != XmlPullParser.END_TAG) { 21009 if (!parseNutritionProductNutrientComponentContent(eventType, xpp, res)) 21010 unknownContent(xpp); 21011 eventType = nextNoWhitespace(xpp); 21012 } 21013 next(xpp); 21014 parseElementClose(res); 21015 return res; 21016 } 21017 21018 protected boolean parseNutritionProductNutrientComponentContent(int eventType, XmlPullParser xpp, NutritionProduct.NutritionProductNutrientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21019 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 21020 res.setItem(parseCodeableReference(xpp)); 21021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 21022 res.getAmount().add(parseRatio(xpp)); 21023 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21024 return false; 21025 } 21026 return true; 21027 } 21028 21029 protected NutritionProduct.NutritionProductIngredientComponent parseNutritionProductIngredientComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21030 NutritionProduct.NutritionProductIngredientComponent res = new NutritionProduct.NutritionProductIngredientComponent(); 21031 parseElementAttributes(xpp, res); 21032 next(xpp); 21033 int eventType = nextNoWhitespace(xpp); 21034 while (eventType != XmlPullParser.END_TAG) { 21035 if (!parseNutritionProductIngredientComponentContent(eventType, xpp, res)) 21036 unknownContent(xpp); 21037 eventType = nextNoWhitespace(xpp); 21038 } 21039 next(xpp); 21040 parseElementClose(res); 21041 return res; 21042 } 21043 21044 protected boolean parseNutritionProductIngredientComponentContent(int eventType, XmlPullParser xpp, NutritionProduct.NutritionProductIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21045 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 21046 res.setItem(parseCodeableReference(xpp)); 21047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 21048 res.getAmount().add(parseRatio(xpp)); 21049 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21050 return false; 21051 } 21052 return true; 21053 } 21054 21055 protected NutritionProduct.NutritionProductCharacteristicComponent parseNutritionProductCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21056 NutritionProduct.NutritionProductCharacteristicComponent res = new NutritionProduct.NutritionProductCharacteristicComponent(); 21057 parseElementAttributes(xpp, res); 21058 next(xpp); 21059 int eventType = nextNoWhitespace(xpp); 21060 while (eventType != XmlPullParser.END_TAG) { 21061 if (!parseNutritionProductCharacteristicComponentContent(eventType, xpp, res)) 21062 unknownContent(xpp); 21063 eventType = nextNoWhitespace(xpp); 21064 } 21065 next(xpp); 21066 parseElementClose(res); 21067 return res; 21068 } 21069 21070 protected boolean parseNutritionProductCharacteristicComponentContent(int eventType, XmlPullParser xpp, NutritionProduct.NutritionProductCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21071 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21072 res.setType(parseCodeableConcept(xpp)); 21073 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 21074 res.setValue(parseType("value", xpp)); 21075 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21076 return false; 21077 } 21078 return true; 21079 } 21080 21081 protected NutritionProduct.NutritionProductInstanceComponent parseNutritionProductInstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21082 NutritionProduct.NutritionProductInstanceComponent res = new NutritionProduct.NutritionProductInstanceComponent(); 21083 parseElementAttributes(xpp, res); 21084 next(xpp); 21085 int eventType = nextNoWhitespace(xpp); 21086 while (eventType != XmlPullParser.END_TAG) { 21087 if (!parseNutritionProductInstanceComponentContent(eventType, xpp, res)) 21088 unknownContent(xpp); 21089 eventType = nextNoWhitespace(xpp); 21090 } 21091 next(xpp); 21092 parseElementClose(res); 21093 return res; 21094 } 21095 21096 protected boolean parseNutritionProductInstanceComponentContent(int eventType, XmlPullParser xpp, NutritionProduct.NutritionProductInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21097 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 21098 res.setQuantity(parseQuantity(xpp)); 21099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21100 res.getIdentifier().add(parseIdentifier(xpp)); 21101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 21102 res.setNameElement(parseString(xpp)); 21103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 21104 res.setLotNumberElement(parseString(xpp)); 21105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { 21106 res.setExpiryElement(parseDateTime(xpp)); 21107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useBy")) { 21108 res.setUseByElement(parseDateTime(xpp)); 21109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("biologicalSourceEvent")) { 21110 res.setBiologicalSourceEvent(parseIdentifier(xpp)); 21111 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21112 return false; 21113 } 21114 return true; 21115 } 21116 21117 protected Observation parseObservation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21118 Observation res = new Observation(); 21119 parseResourceAttributes(xpp, res); 21120 next(xpp); 21121 int eventType = nextNoWhitespace(xpp); 21122 while (eventType != XmlPullParser.END_TAG) { 21123 if (!parseObservationContent(eventType, xpp, res)) 21124 unknownContent(xpp); 21125 eventType = nextNoWhitespace(xpp); 21126 } 21127 next(xpp); 21128 parseElementClose(res); 21129 return res; 21130 } 21131 21132 protected boolean parseObservationContent(int eventType, XmlPullParser xpp, Observation res) throws XmlPullParserException, IOException, FHIRFormatError { 21133 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21134 res.getIdentifier().add(parseIdentifier(xpp)); 21135 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "instantiates")) { 21136 res.setInstantiates(parseType("instantiates", xpp)); 21137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 21138 res.getBasedOn().add(parseReference(xpp)); 21139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("triggeredBy")) { 21140 res.getTriggeredBy().add(parseObservationTriggeredByComponent(xpp)); 21141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 21142 res.getPartOf().add(parseReference(xpp)); 21143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 21144 res.setStatusElement(parseEnumeration(xpp, Enumerations.ObservationStatus.NULL, new Enumerations.ObservationStatusEnumFactory())); 21145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 21146 res.getCategory().add(parseCodeableConcept(xpp)); 21147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21148 res.setCode(parseCodeableConcept(xpp)); 21149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 21150 res.setSubject(parseReference(xpp)); 21151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 21152 res.getFocus().add(parseReference(xpp)); 21153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 21154 res.setEncounter(parseReference(xpp)); 21155 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 21156 res.setEffective(parseType("effective", xpp)); 21157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 21158 res.setIssuedElement(parseInstant(xpp)); 21159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 21160 res.getPerformer().add(parseReference(xpp)); 21161 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 21162 res.setValue(parseType("value", xpp)); 21163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 21164 res.setDataAbsentReason(parseCodeableConcept(xpp)); 21165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpretation")) { 21166 res.getInterpretation().add(parseCodeableConcept(xpp)); 21167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 21168 res.getNote().add(parseAnnotation(xpp)); 21169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 21170 res.setBodySite(parseCodeableConcept(xpp)); 21171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodyStructure")) { 21172 res.setBodyStructure(parseReference(xpp)); 21173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 21174 res.setMethod(parseCodeableConcept(xpp)); 21175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 21176 res.setSpecimen(parseReference(xpp)); 21177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 21178 res.setDevice(parseReference(xpp)); 21179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 21180 res.getReferenceRange().add(parseObservationReferenceRangeComponent(xpp)); 21181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasMember")) { 21182 res.getHasMember().add(parseReference(xpp)); 21183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 21184 res.getDerivedFrom().add(parseReference(xpp)); 21185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 21186 res.getComponent().add(parseObservationComponentComponent(xpp)); 21187 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 21188 return false; 21189 } 21190 return true; 21191 } 21192 21193 protected Observation.ObservationTriggeredByComponent parseObservationTriggeredByComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21194 Observation.ObservationTriggeredByComponent res = new Observation.ObservationTriggeredByComponent(); 21195 parseElementAttributes(xpp, res); 21196 next(xpp); 21197 int eventType = nextNoWhitespace(xpp); 21198 while (eventType != XmlPullParser.END_TAG) { 21199 if (!parseObservationTriggeredByComponentContent(eventType, xpp, res)) 21200 unknownContent(xpp); 21201 eventType = nextNoWhitespace(xpp); 21202 } 21203 next(xpp); 21204 parseElementClose(res); 21205 return res; 21206 } 21207 21208 protected boolean parseObservationTriggeredByComponentContent(int eventType, XmlPullParser xpp, Observation.ObservationTriggeredByComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21209 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observation")) { 21210 res.setObservation(parseReference(xpp)); 21211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21212 res.setTypeElement(parseEnumeration(xpp, Observation.TriggeredBytype.NULL, new Observation.TriggeredBytypeEnumFactory())); 21213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 21214 res.setReasonElement(parseString(xpp)); 21215 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21216 return false; 21217 } 21218 return true; 21219 } 21220 21221 protected Observation.ObservationReferenceRangeComponent parseObservationReferenceRangeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21222 Observation.ObservationReferenceRangeComponent res = new Observation.ObservationReferenceRangeComponent(); 21223 parseElementAttributes(xpp, res); 21224 next(xpp); 21225 int eventType = nextNoWhitespace(xpp); 21226 while (eventType != XmlPullParser.END_TAG) { 21227 if (!parseObservationReferenceRangeComponentContent(eventType, xpp, res)) 21228 unknownContent(xpp); 21229 eventType = nextNoWhitespace(xpp); 21230 } 21231 next(xpp); 21232 parseElementClose(res); 21233 return res; 21234 } 21235 21236 protected boolean parseObservationReferenceRangeComponentContent(int eventType, XmlPullParser xpp, Observation.ObservationReferenceRangeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21237 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 21238 res.setLow(parseQuantity(xpp)); 21239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 21240 res.setHigh(parseQuantity(xpp)); 21241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("normalValue")) { 21242 res.setNormalValue(parseCodeableConcept(xpp)); 21243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21244 res.setType(parseCodeableConcept(xpp)); 21245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appliesTo")) { 21246 res.getAppliesTo().add(parseCodeableConcept(xpp)); 21247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("age")) { 21248 res.setAge(parseRange(xpp)); 21249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 21250 res.setTextElement(parseMarkdown(xpp)); 21251 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21252 return false; 21253 } 21254 return true; 21255 } 21256 21257 protected Observation.ObservationComponentComponent parseObservationComponentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21258 Observation.ObservationComponentComponent res = new Observation.ObservationComponentComponent(); 21259 parseElementAttributes(xpp, res); 21260 next(xpp); 21261 int eventType = nextNoWhitespace(xpp); 21262 while (eventType != XmlPullParser.END_TAG) { 21263 if (!parseObservationComponentComponentContent(eventType, xpp, res)) 21264 unknownContent(xpp); 21265 eventType = nextNoWhitespace(xpp); 21266 } 21267 next(xpp); 21268 parseElementClose(res); 21269 return res; 21270 } 21271 21272 protected boolean parseObservationComponentComponentContent(int eventType, XmlPullParser xpp, Observation.ObservationComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21273 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21274 res.setCode(parseCodeableConcept(xpp)); 21275 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 21276 res.setValue(parseType("value", xpp)); 21277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 21278 res.setDataAbsentReason(parseCodeableConcept(xpp)); 21279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpretation")) { 21280 res.getInterpretation().add(parseCodeableConcept(xpp)); 21281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 21282 res.getReferenceRange().add(parseObservationReferenceRangeComponent(xpp)); 21283 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21284 return false; 21285 } 21286 return true; 21287 } 21288 21289 protected ObservationDefinition parseObservationDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21290 ObservationDefinition res = new ObservationDefinition(); 21291 parseResourceAttributes(xpp, res); 21292 next(xpp); 21293 int eventType = nextNoWhitespace(xpp); 21294 while (eventType != XmlPullParser.END_TAG) { 21295 if (!parseObservationDefinitionContent(eventType, xpp, res)) 21296 unknownContent(xpp); 21297 eventType = nextNoWhitespace(xpp); 21298 } 21299 next(xpp); 21300 parseElementClose(res); 21301 return res; 21302 } 21303 21304 protected boolean parseObservationDefinitionContent(int eventType, XmlPullParser xpp, ObservationDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 21305 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 21306 res.setUrlElement(parseUri(xpp)); 21307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21308 res.setIdentifier(parseIdentifier(xpp)); 21309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 21310 res.setVersionElement(parseString(xpp)); 21311 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 21312 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 21313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 21314 res.setNameElement(parseString(xpp)); 21315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 21316 res.setTitleElement(parseString(xpp)); 21317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 21318 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 21319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 21320 res.setExperimentalElement(parseBoolean(xpp)); 21321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 21322 res.setDateElement(parseDateTime(xpp)); 21323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 21324 res.setPublisherElement(parseString(xpp)); 21325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 21326 res.getContact().add(parseContactDetail(xpp)); 21327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 21328 res.setDescriptionElement(parseMarkdown(xpp)); 21329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 21330 res.getUseContext().add(parseUsageContext(xpp)); 21331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 21332 res.getJurisdiction().add(parseCodeableConcept(xpp)); 21333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 21334 res.setPurposeElement(parseMarkdown(xpp)); 21335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 21336 res.setCopyrightElement(parseMarkdown(xpp)); 21337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 21338 res.setCopyrightLabelElement(parseString(xpp)); 21339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 21340 res.setApprovalDateElement(parseDate(xpp)); 21341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 21342 res.setLastReviewDateElement(parseDate(xpp)); 21343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 21344 res.setEffectivePeriod(parsePeriod(xpp)); 21345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromCanonical")) { 21346 res.getDerivedFromCanonical().add(parseCanonical(xpp)); 21347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromUri")) { 21348 res.getDerivedFromUri().add(parseUri(xpp)); 21349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 21350 res.getSubject().add(parseCodeableConcept(xpp)); 21351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 21352 res.setPerformerType(parseCodeableConcept(xpp)); 21353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 21354 res.getCategory().add(parseCodeableConcept(xpp)); 21355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21356 res.setCode(parseCodeableConcept(xpp)); 21357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("permittedDataType")) { 21358 res.getPermittedDataType().add(parseEnumeration(xpp, ObservationDefinition.ObservationDataType.NULL, new ObservationDefinition.ObservationDataTypeEnumFactory())); 21359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("multipleResultsAllowed")) { 21360 res.setMultipleResultsAllowedElement(parseBoolean(xpp)); 21361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 21362 res.setBodySite(parseCodeableConcept(xpp)); 21363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 21364 res.setMethod(parseCodeableConcept(xpp)); 21365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 21366 res.getSpecimen().add(parseReference(xpp)); 21367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 21368 res.getDevice().add(parseReference(xpp)); 21369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferredReportName")) { 21370 res.setPreferredReportNameElement(parseString(xpp)); 21371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("permittedUnit")) { 21372 res.getPermittedUnit().add(parseCoding(xpp)); 21373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualifiedValue")) { 21374 res.getQualifiedValue().add(parseObservationDefinitionQualifiedValueComponent(xpp)); 21375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasMember")) { 21376 res.getHasMember().add(parseReference(xpp)); 21377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 21378 res.getComponent().add(parseObservationDefinitionComponentComponent(xpp)); 21379 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 21380 return false; 21381 } 21382 return true; 21383 } 21384 21385 protected ObservationDefinition.ObservationDefinitionQualifiedValueComponent parseObservationDefinitionQualifiedValueComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21386 ObservationDefinition.ObservationDefinitionQualifiedValueComponent res = new ObservationDefinition.ObservationDefinitionQualifiedValueComponent(); 21387 parseElementAttributes(xpp, res); 21388 next(xpp); 21389 int eventType = nextNoWhitespace(xpp); 21390 while (eventType != XmlPullParser.END_TAG) { 21391 if (!parseObservationDefinitionQualifiedValueComponentContent(eventType, xpp, res)) 21392 unknownContent(xpp); 21393 eventType = nextNoWhitespace(xpp); 21394 } 21395 next(xpp); 21396 parseElementClose(res); 21397 return res; 21398 } 21399 21400 protected boolean parseObservationDefinitionQualifiedValueComponentContent(int eventType, XmlPullParser xpp, ObservationDefinition.ObservationDefinitionQualifiedValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21401 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 21402 res.setContext(parseCodeableConcept(xpp)); 21403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appliesTo")) { 21404 res.getAppliesTo().add(parseCodeableConcept(xpp)); 21405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 21406 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 21407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("age")) { 21408 res.setAge(parseRange(xpp)); 21409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gestationalAge")) { 21410 res.setGestationalAge(parseRange(xpp)); 21411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 21412 res.setConditionElement(parseString(xpp)); 21413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rangeCategory")) { 21414 res.setRangeCategoryElement(parseEnumeration(xpp, ObservationDefinition.ObservationRangeCategory.NULL, new ObservationDefinition.ObservationRangeCategoryEnumFactory())); 21415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("range")) { 21416 res.setRange(parseRange(xpp)); 21417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validCodedValueSet")) { 21418 res.setValidCodedValueSetElement(parseCanonical(xpp)); 21419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("normalCodedValueSet")) { 21420 res.setNormalCodedValueSetElement(parseCanonical(xpp)); 21421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abnormalCodedValueSet")) { 21422 res.setAbnormalCodedValueSetElement(parseCanonical(xpp)); 21423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criticalCodedValueSet")) { 21424 res.setCriticalCodedValueSetElement(parseCanonical(xpp)); 21425 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21426 return false; 21427 } 21428 return true; 21429 } 21430 21431 protected ObservationDefinition.ObservationDefinitionComponentComponent parseObservationDefinitionComponentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21432 ObservationDefinition.ObservationDefinitionComponentComponent res = new ObservationDefinition.ObservationDefinitionComponentComponent(); 21433 parseElementAttributes(xpp, res); 21434 next(xpp); 21435 int eventType = nextNoWhitespace(xpp); 21436 while (eventType != XmlPullParser.END_TAG) { 21437 if (!parseObservationDefinitionComponentComponentContent(eventType, xpp, res)) 21438 unknownContent(xpp); 21439 eventType = nextNoWhitespace(xpp); 21440 } 21441 next(xpp); 21442 parseElementClose(res); 21443 return res; 21444 } 21445 21446 protected boolean parseObservationDefinitionComponentComponentContent(int eventType, XmlPullParser xpp, ObservationDefinition.ObservationDefinitionComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21447 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21448 res.setCode(parseCodeableConcept(xpp)); 21449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("permittedDataType")) { 21450 res.getPermittedDataType().add(parseEnumeration(xpp, ObservationDefinition.ObservationDataType.NULL, new ObservationDefinition.ObservationDataTypeEnumFactory())); 21451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("permittedUnit")) { 21452 res.getPermittedUnit().add(parseCoding(xpp)); 21453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualifiedValue")) { 21454 res.getQualifiedValue().add(parseObservationDefinitionQualifiedValueComponent(xpp)); 21455 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21456 return false; 21457 } 21458 return true; 21459 } 21460 21461 protected OperationDefinition parseOperationDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21462 OperationDefinition res = new OperationDefinition(); 21463 parseResourceAttributes(xpp, res); 21464 next(xpp); 21465 int eventType = nextNoWhitespace(xpp); 21466 while (eventType != XmlPullParser.END_TAG) { 21467 if (!parseOperationDefinitionContent(eventType, xpp, res)) 21468 unknownContent(xpp); 21469 eventType = nextNoWhitespace(xpp); 21470 } 21471 next(xpp); 21472 parseElementClose(res); 21473 return res; 21474 } 21475 21476 protected boolean parseOperationDefinitionContent(int eventType, XmlPullParser xpp, OperationDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 21477 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 21478 res.setUrlElement(parseUri(xpp)); 21479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21480 res.getIdentifier().add(parseIdentifier(xpp)); 21481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 21482 res.setVersionElement(parseString(xpp)); 21483 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 21484 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 21485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 21486 res.setNameElement(parseString(xpp)); 21487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 21488 res.setTitleElement(parseString(xpp)); 21489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 21490 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 21491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 21492 res.setKindElement(parseEnumeration(xpp, OperationDefinition.OperationKind.NULL, new OperationDefinition.OperationKindEnumFactory())); 21493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 21494 res.setExperimentalElement(parseBoolean(xpp)); 21495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 21496 res.setDateElement(parseDateTime(xpp)); 21497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 21498 res.setPublisherElement(parseString(xpp)); 21499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 21500 res.getContact().add(parseContactDetail(xpp)); 21501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 21502 res.setDescriptionElement(parseMarkdown(xpp)); 21503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 21504 res.getUseContext().add(parseUsageContext(xpp)); 21505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 21506 res.getJurisdiction().add(parseCodeableConcept(xpp)); 21507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 21508 res.setPurposeElement(parseMarkdown(xpp)); 21509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 21510 res.setCopyrightElement(parseMarkdown(xpp)); 21511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 21512 res.setCopyrightLabelElement(parseString(xpp)); 21513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("affectsState")) { 21514 res.setAffectsStateElement(parseBoolean(xpp)); 21515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21516 res.setCodeElement(parseCode(xpp)); 21517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 21518 res.setCommentElement(parseMarkdown(xpp)); 21519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 21520 res.setBaseElement(parseCanonical(xpp)); 21521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 21522 res.getResource().add(parseEnumeration(xpp, Enumerations.VersionIndependentResourceTypesAll.NULL, new Enumerations.VersionIndependentResourceTypesAllEnumFactory())); 21523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 21524 res.setSystemElement(parseBoolean(xpp)); 21525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21526 res.setTypeElement(parseBoolean(xpp)); 21527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 21528 res.setInstanceElement(parseBoolean(xpp)); 21529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inputProfile")) { 21530 res.setInputProfileElement(parseCanonical(xpp)); 21531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outputProfile")) { 21532 res.setOutputProfileElement(parseCanonical(xpp)); 21533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 21534 res.getParameter().add(parseOperationDefinitionParameterComponent(xpp)); 21535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overload")) { 21536 res.getOverload().add(parseOperationDefinitionOverloadComponent(xpp)); 21537 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 21538 return false; 21539 } 21540 return true; 21541 } 21542 21543 protected OperationDefinition.OperationDefinitionParameterComponent parseOperationDefinitionParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21544 OperationDefinition.OperationDefinitionParameterComponent res = new OperationDefinition.OperationDefinitionParameterComponent(); 21545 parseElementAttributes(xpp, res); 21546 next(xpp); 21547 int eventType = nextNoWhitespace(xpp); 21548 while (eventType != XmlPullParser.END_TAG) { 21549 if (!parseOperationDefinitionParameterComponentContent(eventType, xpp, res)) 21550 unknownContent(xpp); 21551 eventType = nextNoWhitespace(xpp); 21552 } 21553 next(xpp); 21554 parseElementClose(res); 21555 return res; 21556 } 21557 21558 protected boolean parseOperationDefinitionParameterComponentContent(int eventType, XmlPullParser xpp, OperationDefinition.OperationDefinitionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21559 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 21560 res.setNameElement(parseCode(xpp)); 21561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 21562 res.setUseElement(parseEnumeration(xpp, Enumerations.OperationParameterUse.NULL, new Enumerations.OperationParameterUseEnumFactory())); 21563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 21564 res.getScope().add(parseEnumeration(xpp, OperationDefinition.OperationParameterScope.NULL, new OperationDefinition.OperationParameterScopeEnumFactory())); 21565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 21566 res.setMinElement(parseInteger(xpp)); 21567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 21568 res.setMaxElement(parseString(xpp)); 21569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 21570 res.setDocumentationElement(parseMarkdown(xpp)); 21571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21572 res.setTypeElement(parseEnumeration(xpp, Enumerations.FHIRTypes.NULL, new Enumerations.FHIRTypesEnumFactory())); 21573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allowedType")) { 21574 res.getAllowedType().add(parseEnumeration(xpp, Enumerations.FHIRTypes.NULL, new Enumerations.FHIRTypesEnumFactory())); 21575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetProfile")) { 21576 res.getTargetProfile().add(parseCanonical(xpp)); 21577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchType")) { 21578 res.setSearchTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 21579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 21580 res.setBinding(parseOperationDefinitionParameterBindingComponent(xpp)); 21581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referencedFrom")) { 21582 res.getReferencedFrom().add(parseOperationDefinitionParameterReferencedFromComponent(xpp)); 21583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 21584 res.getPart().add(parseOperationDefinitionParameterComponent(xpp)); 21585 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21586 return false; 21587 } 21588 return true; 21589 } 21590 21591 protected OperationDefinition.OperationDefinitionParameterBindingComponent parseOperationDefinitionParameterBindingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21592 OperationDefinition.OperationDefinitionParameterBindingComponent res = new OperationDefinition.OperationDefinitionParameterBindingComponent(); 21593 parseElementAttributes(xpp, res); 21594 next(xpp); 21595 int eventType = nextNoWhitespace(xpp); 21596 while (eventType != XmlPullParser.END_TAG) { 21597 if (!parseOperationDefinitionParameterBindingComponentContent(eventType, xpp, res)) 21598 unknownContent(xpp); 21599 eventType = nextNoWhitespace(xpp); 21600 } 21601 next(xpp); 21602 parseElementClose(res); 21603 return res; 21604 } 21605 21606 protected boolean parseOperationDefinitionParameterBindingComponentContent(int eventType, XmlPullParser xpp, OperationDefinition.OperationDefinitionParameterBindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21607 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 21608 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 21609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 21610 res.setValueSetElement(parseCanonical(xpp)); 21611 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21612 return false; 21613 } 21614 return true; 21615 } 21616 21617 protected OperationDefinition.OperationDefinitionParameterReferencedFromComponent parseOperationDefinitionParameterReferencedFromComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21618 OperationDefinition.OperationDefinitionParameterReferencedFromComponent res = new OperationDefinition.OperationDefinitionParameterReferencedFromComponent(); 21619 parseElementAttributes(xpp, res); 21620 next(xpp); 21621 int eventType = nextNoWhitespace(xpp); 21622 while (eventType != XmlPullParser.END_TAG) { 21623 if (!parseOperationDefinitionParameterReferencedFromComponentContent(eventType, xpp, res)) 21624 unknownContent(xpp); 21625 eventType = nextNoWhitespace(xpp); 21626 } 21627 next(xpp); 21628 parseElementClose(res); 21629 return res; 21630 } 21631 21632 protected boolean parseOperationDefinitionParameterReferencedFromComponentContent(int eventType, XmlPullParser xpp, OperationDefinition.OperationDefinitionParameterReferencedFromComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21633 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 21634 res.setSourceElement(parseString(xpp)); 21635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 21636 res.setSourceIdElement(parseString(xpp)); 21637 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21638 return false; 21639 } 21640 return true; 21641 } 21642 21643 protected OperationDefinition.OperationDefinitionOverloadComponent parseOperationDefinitionOverloadComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21644 OperationDefinition.OperationDefinitionOverloadComponent res = new OperationDefinition.OperationDefinitionOverloadComponent(); 21645 parseElementAttributes(xpp, res); 21646 next(xpp); 21647 int eventType = nextNoWhitespace(xpp); 21648 while (eventType != XmlPullParser.END_TAG) { 21649 if (!parseOperationDefinitionOverloadComponentContent(eventType, xpp, res)) 21650 unknownContent(xpp); 21651 eventType = nextNoWhitespace(xpp); 21652 } 21653 next(xpp); 21654 parseElementClose(res); 21655 return res; 21656 } 21657 21658 protected boolean parseOperationDefinitionOverloadComponentContent(int eventType, XmlPullParser xpp, OperationDefinition.OperationDefinitionOverloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21659 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameterName")) { 21660 res.getParameterName().add(parseString(xpp)); 21661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 21662 res.setCommentElement(parseString(xpp)); 21663 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21664 return false; 21665 } 21666 return true; 21667 } 21668 21669 protected OperationOutcome parseOperationOutcome(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21670 OperationOutcome res = new OperationOutcome(); 21671 parseResourceAttributes(xpp, res); 21672 next(xpp); 21673 int eventType = nextNoWhitespace(xpp); 21674 while (eventType != XmlPullParser.END_TAG) { 21675 if (!parseOperationOutcomeContent(eventType, xpp, res)) 21676 unknownContent(xpp); 21677 eventType = nextNoWhitespace(xpp); 21678 } 21679 next(xpp); 21680 parseElementClose(res); 21681 return res; 21682 } 21683 21684 protected boolean parseOperationOutcomeContent(int eventType, XmlPullParser xpp, OperationOutcome res) throws XmlPullParserException, IOException, FHIRFormatError { 21685 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issue")) { 21686 res.getIssue().add(parseOperationOutcomeIssueComponent(xpp)); 21687 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 21688 return false; 21689 } 21690 return true; 21691 } 21692 21693 protected OperationOutcome.OperationOutcomeIssueComponent parseOperationOutcomeIssueComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21694 OperationOutcome.OperationOutcomeIssueComponent res = new OperationOutcome.OperationOutcomeIssueComponent(); 21695 parseElementAttributes(xpp, res); 21696 next(xpp); 21697 int eventType = nextNoWhitespace(xpp); 21698 while (eventType != XmlPullParser.END_TAG) { 21699 if (!parseOperationOutcomeIssueComponentContent(eventType, xpp, res)) 21700 unknownContent(xpp); 21701 eventType = nextNoWhitespace(xpp); 21702 } 21703 next(xpp); 21704 parseElementClose(res); 21705 return res; 21706 } 21707 21708 protected boolean parseOperationOutcomeIssueComponentContent(int eventType, XmlPullParser xpp, OperationOutcome.OperationOutcomeIssueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21709 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 21710 res.setSeverityElement(parseEnumeration(xpp, OperationOutcome.IssueSeverity.NULL, new OperationOutcome.IssueSeverityEnumFactory())); 21711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21712 res.setCodeElement(parseEnumeration(xpp, OperationOutcome.IssueType.NULL, new OperationOutcome.IssueTypeEnumFactory())); 21713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 21714 res.setDetails(parseCodeableConcept(xpp)); 21715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnostics")) { 21716 res.setDiagnosticsElement(parseString(xpp)); 21717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 21718 res.getLocation().add(parseString(xpp)); 21719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 21720 res.getExpression().add(parseString(xpp)); 21721 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21722 return false; 21723 } 21724 return true; 21725 } 21726 21727 protected Organization parseOrganization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21728 Organization res = new Organization(); 21729 parseResourceAttributes(xpp, res); 21730 next(xpp); 21731 int eventType = nextNoWhitespace(xpp); 21732 while (eventType != XmlPullParser.END_TAG) { 21733 if (!parseOrganizationContent(eventType, xpp, res)) 21734 unknownContent(xpp); 21735 eventType = nextNoWhitespace(xpp); 21736 } 21737 next(xpp); 21738 parseElementClose(res); 21739 return res; 21740 } 21741 21742 protected boolean parseOrganizationContent(int eventType, XmlPullParser xpp, Organization res) throws XmlPullParserException, IOException, FHIRFormatError { 21743 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21744 res.getIdentifier().add(parseIdentifier(xpp)); 21745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 21746 res.setActiveElement(parseBoolean(xpp)); 21747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21748 res.getType().add(parseCodeableConcept(xpp)); 21749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 21750 res.setNameElement(parseString(xpp)); 21751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 21752 res.getAlias().add(parseString(xpp)); 21753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 21754 res.setDescriptionElement(parseMarkdown(xpp)); 21755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 21756 res.getContact().add(parseExtendedContactDetail(xpp)); 21757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 21758 res.setPartOf(parseReference(xpp)); 21759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 21760 res.getEndpoint().add(parseReference(xpp)); 21761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 21762 res.getQualification().add(parseOrganizationQualificationComponent(xpp)); 21763 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 21764 return false; 21765 } 21766 return true; 21767 } 21768 21769 protected Organization.OrganizationQualificationComponent parseOrganizationQualificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21770 Organization.OrganizationQualificationComponent res = new Organization.OrganizationQualificationComponent(); 21771 parseElementAttributes(xpp, res); 21772 next(xpp); 21773 int eventType = nextNoWhitespace(xpp); 21774 while (eventType != XmlPullParser.END_TAG) { 21775 if (!parseOrganizationQualificationComponentContent(eventType, xpp, res)) 21776 unknownContent(xpp); 21777 eventType = nextNoWhitespace(xpp); 21778 } 21779 next(xpp); 21780 parseElementClose(res); 21781 return res; 21782 } 21783 21784 protected boolean parseOrganizationQualificationComponentContent(int eventType, XmlPullParser xpp, Organization.OrganizationQualificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21785 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21786 res.getIdentifier().add(parseIdentifier(xpp)); 21787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21788 res.setCode(parseCodeableConcept(xpp)); 21789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 21790 res.setPeriod(parsePeriod(xpp)); 21791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 21792 res.setIssuer(parseReference(xpp)); 21793 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21794 return false; 21795 } 21796 return true; 21797 } 21798 21799 protected OrganizationAffiliation parseOrganizationAffiliation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21800 OrganizationAffiliation res = new OrganizationAffiliation(); 21801 parseResourceAttributes(xpp, res); 21802 next(xpp); 21803 int eventType = nextNoWhitespace(xpp); 21804 while (eventType != XmlPullParser.END_TAG) { 21805 if (!parseOrganizationAffiliationContent(eventType, xpp, res)) 21806 unknownContent(xpp); 21807 eventType = nextNoWhitespace(xpp); 21808 } 21809 next(xpp); 21810 parseElementClose(res); 21811 return res; 21812 } 21813 21814 protected boolean parseOrganizationAffiliationContent(int eventType, XmlPullParser xpp, OrganizationAffiliation res) throws XmlPullParserException, IOException, FHIRFormatError { 21815 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21816 res.getIdentifier().add(parseIdentifier(xpp)); 21817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 21818 res.setActiveElement(parseBoolean(xpp)); 21819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 21820 res.setPeriod(parsePeriod(xpp)); 21821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 21822 res.setOrganization(parseReference(xpp)); 21823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participatingOrganization")) { 21824 res.setParticipatingOrganization(parseReference(xpp)); 21825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 21826 res.getNetwork().add(parseReference(xpp)); 21827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21828 res.getCode().add(parseCodeableConcept(xpp)); 21829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 21830 res.getSpecialty().add(parseCodeableConcept(xpp)); 21831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 21832 res.getLocation().add(parseReference(xpp)); 21833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("healthcareService")) { 21834 res.getHealthcareService().add(parseReference(xpp)); 21835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 21836 res.getContact().add(parseExtendedContactDetail(xpp)); 21837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 21838 res.getEndpoint().add(parseReference(xpp)); 21839 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 21840 return false; 21841 } 21842 return true; 21843 } 21844 21845 protected PackagedProductDefinition parsePackagedProductDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21846 PackagedProductDefinition res = new PackagedProductDefinition(); 21847 parseResourceAttributes(xpp, res); 21848 next(xpp); 21849 int eventType = nextNoWhitespace(xpp); 21850 while (eventType != XmlPullParser.END_TAG) { 21851 if (!parsePackagedProductDefinitionContent(eventType, xpp, res)) 21852 unknownContent(xpp); 21853 eventType = nextNoWhitespace(xpp); 21854 } 21855 next(xpp); 21856 parseElementClose(res); 21857 return res; 21858 } 21859 21860 protected boolean parsePackagedProductDefinitionContent(int eventType, XmlPullParser xpp, PackagedProductDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 21861 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21862 res.getIdentifier().add(parseIdentifier(xpp)); 21863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 21864 res.setNameElement(parseString(xpp)); 21865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21866 res.setType(parseCodeableConcept(xpp)); 21867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageFor")) { 21868 res.getPackageFor().add(parseReference(xpp)); 21869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 21870 res.setStatus(parseCodeableConcept(xpp)); 21871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 21872 res.setStatusDateElement(parseDateTime(xpp)); 21873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("containedItemQuantity")) { 21874 res.getContainedItemQuantity().add(parseQuantity(xpp)); 21875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 21876 res.setDescriptionElement(parseMarkdown(xpp)); 21877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legalStatusOfSupply")) { 21878 res.getLegalStatusOfSupply().add(parsePackagedProductDefinitionLegalStatusOfSupplyComponent(xpp)); 21879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketingStatus")) { 21880 res.getMarketingStatus().add(parseMarketingStatus(xpp)); 21881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copackagedIndicator")) { 21882 res.setCopackagedIndicatorElement(parseBoolean(xpp)); 21883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 21884 res.getManufacturer().add(parseReference(xpp)); 21885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachedDocument")) { 21886 res.getAttachedDocument().add(parseReference(xpp)); 21887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packaging")) { 21888 res.setPackaging(parsePackagedProductDefinitionPackagingComponent(xpp)); 21889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 21890 res.getCharacteristic().add(parsePackagedProductDefinitionPackagingPropertyComponent(xpp)); 21891 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 21892 return false; 21893 } 21894 return true; 21895 } 21896 21897 protected PackagedProductDefinition.PackagedProductDefinitionLegalStatusOfSupplyComponent parsePackagedProductDefinitionLegalStatusOfSupplyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21898 PackagedProductDefinition.PackagedProductDefinitionLegalStatusOfSupplyComponent res = new PackagedProductDefinition.PackagedProductDefinitionLegalStatusOfSupplyComponent(); 21899 parseElementAttributes(xpp, res); 21900 next(xpp); 21901 int eventType = nextNoWhitespace(xpp); 21902 while (eventType != XmlPullParser.END_TAG) { 21903 if (!parsePackagedProductDefinitionLegalStatusOfSupplyComponentContent(eventType, xpp, res)) 21904 unknownContent(xpp); 21905 eventType = nextNoWhitespace(xpp); 21906 } 21907 next(xpp); 21908 parseElementClose(res); 21909 return res; 21910 } 21911 21912 protected boolean parsePackagedProductDefinitionLegalStatusOfSupplyComponentContent(int eventType, XmlPullParser xpp, PackagedProductDefinition.PackagedProductDefinitionLegalStatusOfSupplyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21913 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 21914 res.setCode(parseCodeableConcept(xpp)); 21915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 21916 res.setJurisdiction(parseCodeableConcept(xpp)); 21917 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21918 return false; 21919 } 21920 return true; 21921 } 21922 21923 protected PackagedProductDefinition.PackagedProductDefinitionPackagingComponent parsePackagedProductDefinitionPackagingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21924 PackagedProductDefinition.PackagedProductDefinitionPackagingComponent res = new PackagedProductDefinition.PackagedProductDefinitionPackagingComponent(); 21925 parseElementAttributes(xpp, res); 21926 next(xpp); 21927 int eventType = nextNoWhitespace(xpp); 21928 while (eventType != XmlPullParser.END_TAG) { 21929 if (!parsePackagedProductDefinitionPackagingComponentContent(eventType, xpp, res)) 21930 unknownContent(xpp); 21931 eventType = nextNoWhitespace(xpp); 21932 } 21933 next(xpp); 21934 parseElementClose(res); 21935 return res; 21936 } 21937 21938 protected boolean parsePackagedProductDefinitionPackagingComponentContent(int eventType, XmlPullParser xpp, PackagedProductDefinition.PackagedProductDefinitionPackagingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21939 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 21940 res.getIdentifier().add(parseIdentifier(xpp)); 21941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21942 res.setType(parseCodeableConcept(xpp)); 21943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("componentPart")) { 21944 res.setComponentPartElement(parseBoolean(xpp)); 21945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 21946 res.setQuantityElement(parseInteger(xpp)); 21947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("material")) { 21948 res.getMaterial().add(parseCodeableConcept(xpp)); 21949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alternateMaterial")) { 21950 res.getAlternateMaterial().add(parseCodeableConcept(xpp)); 21951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("shelfLifeStorage")) { 21952 res.getShelfLifeStorage().add(parseProductShelfLife(xpp)); 21953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 21954 res.getManufacturer().add(parseReference(xpp)); 21955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 21956 res.getProperty().add(parsePackagedProductDefinitionPackagingPropertyComponent(xpp)); 21957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("containedItem")) { 21958 res.getContainedItem().add(parsePackagedProductDefinitionPackagingContainedItemComponent(xpp)); 21959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packaging")) { 21960 res.getPackaging().add(parsePackagedProductDefinitionPackagingComponent(xpp)); 21961 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21962 return false; 21963 } 21964 return true; 21965 } 21966 21967 protected PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent parsePackagedProductDefinitionPackagingPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21968 PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent res = new PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent(); 21969 parseElementAttributes(xpp, res); 21970 next(xpp); 21971 int eventType = nextNoWhitespace(xpp); 21972 while (eventType != XmlPullParser.END_TAG) { 21973 if (!parsePackagedProductDefinitionPackagingPropertyComponentContent(eventType, xpp, res)) 21974 unknownContent(xpp); 21975 eventType = nextNoWhitespace(xpp); 21976 } 21977 next(xpp); 21978 parseElementClose(res); 21979 return res; 21980 } 21981 21982 protected boolean parsePackagedProductDefinitionPackagingPropertyComponentContent(int eventType, XmlPullParser xpp, PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 21983 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 21984 res.setType(parseCodeableConcept(xpp)); 21985 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 21986 res.setValue(parseType("value", xpp)); 21987 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 21988 return false; 21989 } 21990 return true; 21991 } 21992 21993 protected PackagedProductDefinition.PackagedProductDefinitionPackagingContainedItemComponent parsePackagedProductDefinitionPackagingContainedItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 21994 PackagedProductDefinition.PackagedProductDefinitionPackagingContainedItemComponent res = new PackagedProductDefinition.PackagedProductDefinitionPackagingContainedItemComponent(); 21995 parseElementAttributes(xpp, res); 21996 next(xpp); 21997 int eventType = nextNoWhitespace(xpp); 21998 while (eventType != XmlPullParser.END_TAG) { 21999 if (!parsePackagedProductDefinitionPackagingContainedItemComponentContent(eventType, xpp, res)) 22000 unknownContent(xpp); 22001 eventType = nextNoWhitespace(xpp); 22002 } 22003 next(xpp); 22004 parseElementClose(res); 22005 return res; 22006 } 22007 22008 protected boolean parsePackagedProductDefinitionPackagingContainedItemComponentContent(int eventType, XmlPullParser xpp, PackagedProductDefinition.PackagedProductDefinitionPackagingContainedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22009 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 22010 res.setItem(parseCodeableReference(xpp)); 22011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 22012 res.setAmount(parseQuantity(xpp)); 22013 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22014 return false; 22015 } 22016 return true; 22017 } 22018 22019 protected Parameters parseParameters(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22020 Parameters res = new Parameters(); 22021 parseResourceAttributes(xpp, res); 22022 next(xpp); 22023 int eventType = nextNoWhitespace(xpp); 22024 while (eventType != XmlPullParser.END_TAG) { 22025 if (!parseParametersContent(eventType, xpp, res)) 22026 unknownContent(xpp); 22027 eventType = nextNoWhitespace(xpp); 22028 } 22029 next(xpp); 22030 parseElementClose(res); 22031 return res; 22032 } 22033 22034 protected boolean parseParametersContent(int eventType, XmlPullParser xpp, Parameters res) throws XmlPullParserException, IOException, FHIRFormatError { 22035 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 22036 res.getParameter().add(parseParametersParameterComponent(xpp)); 22037 } else if (!parseResourceContent(eventType, xpp, res)){ 22038 return false; 22039 } 22040 return true; 22041 } 22042 22043 protected Parameters.ParametersParameterComponent parseParametersParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22044 Parameters.ParametersParameterComponent res = new Parameters.ParametersParameterComponent(); 22045 parseElementAttributes(xpp, res); 22046 next(xpp); 22047 int eventType = nextNoWhitespace(xpp); 22048 while (eventType != XmlPullParser.END_TAG) { 22049 if (!parseParametersParameterComponentContent(eventType, xpp, res)) 22050 unknownContent(xpp); 22051 eventType = nextNoWhitespace(xpp); 22052 } 22053 next(xpp); 22054 parseElementClose(res); 22055 return res; 22056 } 22057 22058 protected boolean parseParametersParameterComponentContent(int eventType, XmlPullParser xpp, Parameters.ParametersParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22059 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 22060 res.setNameElement(parseString(xpp)); 22061 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 22062 res.setValue(parseType("value", xpp)); 22063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 22064 res.setResource(parseResourceContained(xpp)); 22065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 22066 res.getPart().add(parseParametersParameterComponent(xpp)); 22067 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22068 return false; 22069 } 22070 return true; 22071 } 22072 22073 protected Patient parsePatient(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22074 Patient res = new Patient(); 22075 parseResourceAttributes(xpp, res); 22076 next(xpp); 22077 int eventType = nextNoWhitespace(xpp); 22078 while (eventType != XmlPullParser.END_TAG) { 22079 if (!parsePatientContent(eventType, xpp, res)) 22080 unknownContent(xpp); 22081 eventType = nextNoWhitespace(xpp); 22082 } 22083 next(xpp); 22084 parseElementClose(res); 22085 return res; 22086 } 22087 22088 protected boolean parsePatientContent(int eventType, XmlPullParser xpp, Patient res) throws XmlPullParserException, IOException, FHIRFormatError { 22089 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 22090 res.getIdentifier().add(parseIdentifier(xpp)); 22091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 22092 res.setActiveElement(parseBoolean(xpp)); 22093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 22094 res.getName().add(parseHumanName(xpp)); 22095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 22096 res.getTelecom().add(parseContactPoint(xpp)); 22097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 22098 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 22099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 22100 res.setBirthDateElement(parseDate(xpp)); 22101 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 22102 res.setDeceased(parseType("deceased", xpp)); 22103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 22104 res.getAddress().add(parseAddress(xpp)); 22105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maritalStatus")) { 22106 res.setMaritalStatus(parseCodeableConcept(xpp)); 22107 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "multipleBirth")) { 22108 res.setMultipleBirth(parseType("multipleBirth", xpp)); 22109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 22110 res.getPhoto().add(parseAttachment(xpp)); 22111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 22112 res.getContact().add(parsePatientContactComponent(xpp)); 22113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 22114 res.getCommunication().add(parsePatientCommunicationComponent(xpp)); 22115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("generalPractitioner")) { 22116 res.getGeneralPractitioner().add(parseReference(xpp)); 22117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 22118 res.setManagingOrganization(parseReference(xpp)); 22119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 22120 res.getLink().add(parsePatientLinkComponent(xpp)); 22121 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 22122 return false; 22123 } 22124 return true; 22125 } 22126 22127 protected Patient.ContactComponent parsePatientContactComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22128 Patient.ContactComponent res = new Patient.ContactComponent(); 22129 parseElementAttributes(xpp, res); 22130 next(xpp); 22131 int eventType = nextNoWhitespace(xpp); 22132 while (eventType != XmlPullParser.END_TAG) { 22133 if (!parsePatientContactComponentContent(eventType, xpp, res)) 22134 unknownContent(xpp); 22135 eventType = nextNoWhitespace(xpp); 22136 } 22137 next(xpp); 22138 parseElementClose(res); 22139 return res; 22140 } 22141 22142 protected boolean parsePatientContactComponentContent(int eventType, XmlPullParser xpp, Patient.ContactComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22143 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 22144 res.getRelationship().add(parseCodeableConcept(xpp)); 22145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 22146 res.setName(parseHumanName(xpp)); 22147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 22148 res.getTelecom().add(parseContactPoint(xpp)); 22149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 22150 res.setAddress(parseAddress(xpp)); 22151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 22152 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 22153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 22154 res.setOrganization(parseReference(xpp)); 22155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 22156 res.setPeriod(parsePeriod(xpp)); 22157 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22158 return false; 22159 } 22160 return true; 22161 } 22162 22163 protected Patient.PatientCommunicationComponent parsePatientCommunicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22164 Patient.PatientCommunicationComponent res = new Patient.PatientCommunicationComponent(); 22165 parseElementAttributes(xpp, res); 22166 next(xpp); 22167 int eventType = nextNoWhitespace(xpp); 22168 while (eventType != XmlPullParser.END_TAG) { 22169 if (!parsePatientCommunicationComponentContent(eventType, xpp, res)) 22170 unknownContent(xpp); 22171 eventType = nextNoWhitespace(xpp); 22172 } 22173 next(xpp); 22174 parseElementClose(res); 22175 return res; 22176 } 22177 22178 protected boolean parsePatientCommunicationComponentContent(int eventType, XmlPullParser xpp, Patient.PatientCommunicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22179 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 22180 res.setLanguage(parseCodeableConcept(xpp)); 22181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 22182 res.setPreferredElement(parseBoolean(xpp)); 22183 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22184 return false; 22185 } 22186 return true; 22187 } 22188 22189 protected Patient.PatientLinkComponent parsePatientLinkComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22190 Patient.PatientLinkComponent res = new Patient.PatientLinkComponent(); 22191 parseElementAttributes(xpp, res); 22192 next(xpp); 22193 int eventType = nextNoWhitespace(xpp); 22194 while (eventType != XmlPullParser.END_TAG) { 22195 if (!parsePatientLinkComponentContent(eventType, xpp, res)) 22196 unknownContent(xpp); 22197 eventType = nextNoWhitespace(xpp); 22198 } 22199 next(xpp); 22200 parseElementClose(res); 22201 return res; 22202 } 22203 22204 protected boolean parsePatientLinkComponentContent(int eventType, XmlPullParser xpp, Patient.PatientLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22205 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("other")) { 22206 res.setOther(parseReference(xpp)); 22207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 22208 res.setTypeElement(parseEnumeration(xpp, Patient.LinkType.NULL, new Patient.LinkTypeEnumFactory())); 22209 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22210 return false; 22211 } 22212 return true; 22213 } 22214 22215 protected PaymentNotice parsePaymentNotice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22216 PaymentNotice res = new PaymentNotice(); 22217 parseResourceAttributes(xpp, res); 22218 next(xpp); 22219 int eventType = nextNoWhitespace(xpp); 22220 while (eventType != XmlPullParser.END_TAG) { 22221 if (!parsePaymentNoticeContent(eventType, xpp, res)) 22222 unknownContent(xpp); 22223 eventType = nextNoWhitespace(xpp); 22224 } 22225 next(xpp); 22226 parseElementClose(res); 22227 return res; 22228 } 22229 22230 protected boolean parsePaymentNoticeContent(int eventType, XmlPullParser xpp, PaymentNotice res) throws XmlPullParserException, IOException, FHIRFormatError { 22231 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 22232 res.getIdentifier().add(parseIdentifier(xpp)); 22233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 22234 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 22235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 22236 res.setRequest(parseReference(xpp)); 22237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 22238 res.setResponse(parseReference(xpp)); 22239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 22240 res.setCreatedElement(parseDateTime(xpp)); 22241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reporter")) { 22242 res.setReporter(parseReference(xpp)); 22243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payment")) { 22244 res.setPayment(parseReference(xpp)); 22245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentDate")) { 22246 res.setPaymentDateElement(parseDate(xpp)); 22247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 22248 res.setPayee(parseReference(xpp)); 22249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 22250 res.setRecipient(parseReference(xpp)); 22251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 22252 res.setAmount(parseMoney(xpp)); 22253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentStatus")) { 22254 res.setPaymentStatus(parseCodeableConcept(xpp)); 22255 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 22256 return false; 22257 } 22258 return true; 22259 } 22260 22261 protected PaymentReconciliation parsePaymentReconciliation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22262 PaymentReconciliation res = new PaymentReconciliation(); 22263 parseResourceAttributes(xpp, res); 22264 next(xpp); 22265 int eventType = nextNoWhitespace(xpp); 22266 while (eventType != XmlPullParser.END_TAG) { 22267 if (!parsePaymentReconciliationContent(eventType, xpp, res)) 22268 unknownContent(xpp); 22269 eventType = nextNoWhitespace(xpp); 22270 } 22271 next(xpp); 22272 parseElementClose(res); 22273 return res; 22274 } 22275 22276 protected boolean parsePaymentReconciliationContent(int eventType, XmlPullParser xpp, PaymentReconciliation res) throws XmlPullParserException, IOException, FHIRFormatError { 22277 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 22278 res.getIdentifier().add(parseIdentifier(xpp)); 22279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 22280 res.setType(parseCodeableConcept(xpp)); 22281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 22282 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 22283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 22284 res.setKind(parseCodeableConcept(xpp)); 22285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 22286 res.setPeriod(parsePeriod(xpp)); 22287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 22288 res.setCreatedElement(parseDateTime(xpp)); 22289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 22290 res.setEnterer(parseReference(xpp)); 22291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuerType")) { 22292 res.setIssuerType(parseCodeableConcept(xpp)); 22293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentIssuer")) { 22294 res.setPaymentIssuer(parseReference(xpp)); 22295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 22296 res.setRequest(parseReference(xpp)); 22297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestor")) { 22298 res.setRequestor(parseReference(xpp)); 22299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 22300 res.setOutcomeElement(parseEnumeration(xpp, PaymentReconciliation.PaymentOutcome.NULL, new PaymentReconciliation.PaymentOutcomeEnumFactory())); 22301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 22302 res.setDispositionElement(parseString(xpp)); 22303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 22304 res.setDateElement(parseDate(xpp)); 22305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 22306 res.setLocation(parseReference(xpp)); 22307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 22308 res.setMethod(parseCodeableConcept(xpp)); 22309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cardBrand")) { 22310 res.setCardBrandElement(parseString(xpp)); 22311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accountNumber")) { 22312 res.setAccountNumberElement(parseString(xpp)); 22313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 22314 res.setExpirationDateElement(parseDate(xpp)); 22315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processor")) { 22316 res.setProcessorElement(parseString(xpp)); 22317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceNumber")) { 22318 res.setReferenceNumberElement(parseString(xpp)); 22319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorization")) { 22320 res.setAuthorizationElement(parseString(xpp)); 22321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tenderedAmount")) { 22322 res.setTenderedAmount(parseMoney(xpp)); 22323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("returnedAmount")) { 22324 res.setReturnedAmount(parseMoney(xpp)); 22325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 22326 res.setAmount(parseMoney(xpp)); 22327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentIdentifier")) { 22328 res.setPaymentIdentifier(parseIdentifier(xpp)); 22329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allocation")) { 22330 res.getAllocation().add(parsePaymentReconciliationAllocationComponent(xpp)); 22331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("formCode")) { 22332 res.setFormCode(parseCodeableConcept(xpp)); 22333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 22334 res.getProcessNote().add(parsePaymentReconciliationNotesComponent(xpp)); 22335 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 22336 return false; 22337 } 22338 return true; 22339 } 22340 22341 protected PaymentReconciliation.PaymentReconciliationAllocationComponent parsePaymentReconciliationAllocationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22342 PaymentReconciliation.PaymentReconciliationAllocationComponent res = new PaymentReconciliation.PaymentReconciliationAllocationComponent(); 22343 parseElementAttributes(xpp, res); 22344 next(xpp); 22345 int eventType = nextNoWhitespace(xpp); 22346 while (eventType != XmlPullParser.END_TAG) { 22347 if (!parsePaymentReconciliationAllocationComponentContent(eventType, xpp, res)) 22348 unknownContent(xpp); 22349 eventType = nextNoWhitespace(xpp); 22350 } 22351 next(xpp); 22352 parseElementClose(res); 22353 return res; 22354 } 22355 22356 protected boolean parsePaymentReconciliationAllocationComponentContent(int eventType, XmlPullParser xpp, PaymentReconciliation.PaymentReconciliationAllocationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22357 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 22358 res.setIdentifier(parseIdentifier(xpp)); 22359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("predecessor")) { 22360 res.setPredecessor(parseIdentifier(xpp)); 22361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 22362 res.setTarget(parseReference(xpp)); 22363 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "targetItem")) { 22364 res.setTargetItem(parseType("targetItem", xpp)); 22365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 22366 res.setEncounter(parseReference(xpp)); 22367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 22368 res.setAccount(parseReference(xpp)); 22369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 22370 res.setType(parseCodeableConcept(xpp)); 22371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("submitter")) { 22372 res.setSubmitter(parseReference(xpp)); 22373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 22374 res.setResponse(parseReference(xpp)); 22375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 22376 res.setDateElement(parseDate(xpp)); 22377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 22378 res.setResponsible(parseReference(xpp)); 22379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 22380 res.setPayee(parseReference(xpp)); 22381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 22382 res.setAmount(parseMoney(xpp)); 22383 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22384 return false; 22385 } 22386 return true; 22387 } 22388 22389 protected PaymentReconciliation.NotesComponent parsePaymentReconciliationNotesComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22390 PaymentReconciliation.NotesComponent res = new PaymentReconciliation.NotesComponent(); 22391 parseElementAttributes(xpp, res); 22392 next(xpp); 22393 int eventType = nextNoWhitespace(xpp); 22394 while (eventType != XmlPullParser.END_TAG) { 22395 if (!parsePaymentReconciliationNotesComponentContent(eventType, xpp, res)) 22396 unknownContent(xpp); 22397 eventType = nextNoWhitespace(xpp); 22398 } 22399 next(xpp); 22400 parseElementClose(res); 22401 return res; 22402 } 22403 22404 protected boolean parsePaymentReconciliationNotesComponentContent(int eventType, XmlPullParser xpp, PaymentReconciliation.NotesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22405 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 22406 res.setTypeElement(parseEnumeration(xpp, PaymentReconciliation.NoteType.NULL, new PaymentReconciliation.NoteTypeEnumFactory())); 22407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 22408 res.setTextElement(parseString(xpp)); 22409 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22410 return false; 22411 } 22412 return true; 22413 } 22414 22415 protected Permission parsePermission(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22416 Permission res = new Permission(); 22417 parseResourceAttributes(xpp, res); 22418 next(xpp); 22419 int eventType = nextNoWhitespace(xpp); 22420 while (eventType != XmlPullParser.END_TAG) { 22421 if (!parsePermissionContent(eventType, xpp, res)) 22422 unknownContent(xpp); 22423 eventType = nextNoWhitespace(xpp); 22424 } 22425 next(xpp); 22426 parseElementClose(res); 22427 return res; 22428 } 22429 22430 protected boolean parsePermissionContent(int eventType, XmlPullParser xpp, Permission res) throws XmlPullParserException, IOException, FHIRFormatError { 22431 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 22432 res.setStatusElement(parseEnumeration(xpp, Permission.PermissionStatus.NULL, new Permission.PermissionStatusEnumFactory())); 22433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asserter")) { 22434 res.setAsserter(parseReference(xpp)); 22435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 22436 res.getDate().add(parseDateTime(xpp)); 22437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validity")) { 22438 res.setValidity(parsePeriod(xpp)); 22439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("justification")) { 22440 res.setJustification(parsePermissionJustificationComponent(xpp)); 22441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("combining")) { 22442 res.setCombiningElement(parseEnumeration(xpp, Permission.PermissionRuleCombining.NULL, new Permission.PermissionRuleCombiningEnumFactory())); 22443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 22444 res.getRule().add(parsePermissionRuleComponent(xpp)); 22445 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 22446 return false; 22447 } 22448 return true; 22449 } 22450 22451 protected Permission.PermissionJustificationComponent parsePermissionJustificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22452 Permission.PermissionJustificationComponent res = new Permission.PermissionJustificationComponent(); 22453 parseElementAttributes(xpp, res); 22454 next(xpp); 22455 int eventType = nextNoWhitespace(xpp); 22456 while (eventType != XmlPullParser.END_TAG) { 22457 if (!parsePermissionJustificationComponentContent(eventType, xpp, res)) 22458 unknownContent(xpp); 22459 eventType = nextNoWhitespace(xpp); 22460 } 22461 next(xpp); 22462 parseElementClose(res); 22463 return res; 22464 } 22465 22466 protected boolean parsePermissionJustificationComponentContent(int eventType, XmlPullParser xpp, Permission.PermissionJustificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22467 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 22468 res.getBasis().add(parseCodeableConcept(xpp)); 22469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidence")) { 22470 res.getEvidence().add(parseReference(xpp)); 22471 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22472 return false; 22473 } 22474 return true; 22475 } 22476 22477 protected Permission.RuleComponent parsePermissionRuleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22478 Permission.RuleComponent res = new Permission.RuleComponent(); 22479 parseElementAttributes(xpp, res); 22480 next(xpp); 22481 int eventType = nextNoWhitespace(xpp); 22482 while (eventType != XmlPullParser.END_TAG) { 22483 if (!parsePermissionRuleComponentContent(eventType, xpp, res)) 22484 unknownContent(xpp); 22485 eventType = nextNoWhitespace(xpp); 22486 } 22487 next(xpp); 22488 parseElementClose(res); 22489 return res; 22490 } 22491 22492 protected boolean parsePermissionRuleComponentContent(int eventType, XmlPullParser xpp, Permission.RuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22493 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 22494 res.setTypeElement(parseEnumeration(xpp, Enumerations.ConsentProvisionType.NULL, new Enumerations.ConsentProvisionTypeEnumFactory())); 22495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 22496 res.getData().add(parsePermissionRuleDataComponent(xpp)); 22497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 22498 res.getActivity().add(parsePermissionRuleActivityComponent(xpp)); 22499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("limit")) { 22500 res.getLimit().add(parseCodeableConcept(xpp)); 22501 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22502 return false; 22503 } 22504 return true; 22505 } 22506 22507 protected Permission.RuleDataComponent parsePermissionRuleDataComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22508 Permission.RuleDataComponent res = new Permission.RuleDataComponent(); 22509 parseElementAttributes(xpp, res); 22510 next(xpp); 22511 int eventType = nextNoWhitespace(xpp); 22512 while (eventType != XmlPullParser.END_TAG) { 22513 if (!parsePermissionRuleDataComponentContent(eventType, xpp, res)) 22514 unknownContent(xpp); 22515 eventType = nextNoWhitespace(xpp); 22516 } 22517 next(xpp); 22518 parseElementClose(res); 22519 return res; 22520 } 22521 22522 protected boolean parsePermissionRuleDataComponentContent(int eventType, XmlPullParser xpp, Permission.RuleDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22523 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 22524 res.getResource().add(parsePermissionRuleDataResourceComponent(xpp)); 22525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 22526 res.getSecurity().add(parseCoding(xpp)); 22527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 22528 res.getPeriod().add(parsePeriod(xpp)); 22529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 22530 res.setExpression(parseExpression(xpp)); 22531 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22532 return false; 22533 } 22534 return true; 22535 } 22536 22537 protected Permission.RuleDataResourceComponent parsePermissionRuleDataResourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22538 Permission.RuleDataResourceComponent res = new Permission.RuleDataResourceComponent(); 22539 parseElementAttributes(xpp, res); 22540 next(xpp); 22541 int eventType = nextNoWhitespace(xpp); 22542 while (eventType != XmlPullParser.END_TAG) { 22543 if (!parsePermissionRuleDataResourceComponentContent(eventType, xpp, res)) 22544 unknownContent(xpp); 22545 eventType = nextNoWhitespace(xpp); 22546 } 22547 next(xpp); 22548 parseElementClose(res); 22549 return res; 22550 } 22551 22552 protected boolean parsePermissionRuleDataResourceComponentContent(int eventType, XmlPullParser xpp, Permission.RuleDataResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22553 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaning")) { 22554 res.setMeaningElement(parseEnumeration(xpp, Enumerations.ConsentDataMeaning.NULL, new Enumerations.ConsentDataMeaningEnumFactory())); 22555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 22556 res.setReference(parseReference(xpp)); 22557 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22558 return false; 22559 } 22560 return true; 22561 } 22562 22563 protected Permission.RuleActivityComponent parsePermissionRuleActivityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22564 Permission.RuleActivityComponent res = new Permission.RuleActivityComponent(); 22565 parseElementAttributes(xpp, res); 22566 next(xpp); 22567 int eventType = nextNoWhitespace(xpp); 22568 while (eventType != XmlPullParser.END_TAG) { 22569 if (!parsePermissionRuleActivityComponentContent(eventType, xpp, res)) 22570 unknownContent(xpp); 22571 eventType = nextNoWhitespace(xpp); 22572 } 22573 next(xpp); 22574 parseElementClose(res); 22575 return res; 22576 } 22577 22578 protected boolean parsePermissionRuleActivityComponentContent(int eventType, XmlPullParser xpp, Permission.RuleActivityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22579 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 22580 res.getActor().add(parseReference(xpp)); 22581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 22582 res.getAction().add(parseCodeableConcept(xpp)); 22583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 22584 res.getPurpose().add(parseCodeableConcept(xpp)); 22585 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22586 return false; 22587 } 22588 return true; 22589 } 22590 22591 protected Person parsePerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22592 Person res = new Person(); 22593 parseResourceAttributes(xpp, res); 22594 next(xpp); 22595 int eventType = nextNoWhitespace(xpp); 22596 while (eventType != XmlPullParser.END_TAG) { 22597 if (!parsePersonContent(eventType, xpp, res)) 22598 unknownContent(xpp); 22599 eventType = nextNoWhitespace(xpp); 22600 } 22601 next(xpp); 22602 parseElementClose(res); 22603 return res; 22604 } 22605 22606 protected boolean parsePersonContent(int eventType, XmlPullParser xpp, Person res) throws XmlPullParserException, IOException, FHIRFormatError { 22607 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 22608 res.getIdentifier().add(parseIdentifier(xpp)); 22609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 22610 res.setActiveElement(parseBoolean(xpp)); 22611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 22612 res.getName().add(parseHumanName(xpp)); 22613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 22614 res.getTelecom().add(parseContactPoint(xpp)); 22615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 22616 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 22617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 22618 res.setBirthDateElement(parseDate(xpp)); 22619 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 22620 res.setDeceased(parseType("deceased", xpp)); 22621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 22622 res.getAddress().add(parseAddress(xpp)); 22623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maritalStatus")) { 22624 res.setMaritalStatus(parseCodeableConcept(xpp)); 22625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 22626 res.getPhoto().add(parseAttachment(xpp)); 22627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 22628 res.getCommunication().add(parsePersonCommunicationComponent(xpp)); 22629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 22630 res.setManagingOrganization(parseReference(xpp)); 22631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 22632 res.getLink().add(parsePersonLinkComponent(xpp)); 22633 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 22634 return false; 22635 } 22636 return true; 22637 } 22638 22639 protected Person.PersonCommunicationComponent parsePersonCommunicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22640 Person.PersonCommunicationComponent res = new Person.PersonCommunicationComponent(); 22641 parseElementAttributes(xpp, res); 22642 next(xpp); 22643 int eventType = nextNoWhitespace(xpp); 22644 while (eventType != XmlPullParser.END_TAG) { 22645 if (!parsePersonCommunicationComponentContent(eventType, xpp, res)) 22646 unknownContent(xpp); 22647 eventType = nextNoWhitespace(xpp); 22648 } 22649 next(xpp); 22650 parseElementClose(res); 22651 return res; 22652 } 22653 22654 protected boolean parsePersonCommunicationComponentContent(int eventType, XmlPullParser xpp, Person.PersonCommunicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22655 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 22656 res.setLanguage(parseCodeableConcept(xpp)); 22657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 22658 res.setPreferredElement(parseBoolean(xpp)); 22659 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22660 return false; 22661 } 22662 return true; 22663 } 22664 22665 protected Person.PersonLinkComponent parsePersonLinkComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22666 Person.PersonLinkComponent res = new Person.PersonLinkComponent(); 22667 parseElementAttributes(xpp, res); 22668 next(xpp); 22669 int eventType = nextNoWhitespace(xpp); 22670 while (eventType != XmlPullParser.END_TAG) { 22671 if (!parsePersonLinkComponentContent(eventType, xpp, res)) 22672 unknownContent(xpp); 22673 eventType = nextNoWhitespace(xpp); 22674 } 22675 next(xpp); 22676 parseElementClose(res); 22677 return res; 22678 } 22679 22680 protected boolean parsePersonLinkComponentContent(int eventType, XmlPullParser xpp, Person.PersonLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22681 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 22682 res.setTarget(parseReference(xpp)); 22683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assurance")) { 22684 res.setAssuranceElement(parseEnumeration(xpp, Person.IdentityAssuranceLevel.NULL, new Person.IdentityAssuranceLevelEnumFactory())); 22685 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22686 return false; 22687 } 22688 return true; 22689 } 22690 22691 protected PlanDefinition parsePlanDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22692 PlanDefinition res = new PlanDefinition(); 22693 parseResourceAttributes(xpp, res); 22694 next(xpp); 22695 int eventType = nextNoWhitespace(xpp); 22696 while (eventType != XmlPullParser.END_TAG) { 22697 if (!parsePlanDefinitionContent(eventType, xpp, res)) 22698 unknownContent(xpp); 22699 eventType = nextNoWhitespace(xpp); 22700 } 22701 next(xpp); 22702 parseElementClose(res); 22703 return res; 22704 } 22705 22706 protected boolean parsePlanDefinitionContent(int eventType, XmlPullParser xpp, PlanDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 22707 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 22708 res.setUrlElement(parseUri(xpp)); 22709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 22710 res.getIdentifier().add(parseIdentifier(xpp)); 22711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 22712 res.setVersionElement(parseString(xpp)); 22713 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 22714 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 22715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 22716 res.setNameElement(parseString(xpp)); 22717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 22718 res.setTitleElement(parseString(xpp)); 22719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtitle")) { 22720 res.setSubtitleElement(parseString(xpp)); 22721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 22722 res.setType(parseCodeableConcept(xpp)); 22723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 22724 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 22725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 22726 res.setExperimentalElement(parseBoolean(xpp)); 22727 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 22728 res.setSubject(parseType("subject", xpp)); 22729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 22730 res.setDateElement(parseDateTime(xpp)); 22731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 22732 res.setPublisherElement(parseString(xpp)); 22733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 22734 res.getContact().add(parseContactDetail(xpp)); 22735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 22736 res.setDescriptionElement(parseMarkdown(xpp)); 22737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 22738 res.getUseContext().add(parseUsageContext(xpp)); 22739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 22740 res.getJurisdiction().add(parseCodeableConcept(xpp)); 22741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 22742 res.setPurposeElement(parseMarkdown(xpp)); 22743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 22744 res.setUsageElement(parseMarkdown(xpp)); 22745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 22746 res.setCopyrightElement(parseMarkdown(xpp)); 22747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 22748 res.setCopyrightLabelElement(parseString(xpp)); 22749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 22750 res.setApprovalDateElement(parseDate(xpp)); 22751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 22752 res.setLastReviewDateElement(parseDate(xpp)); 22753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 22754 res.setEffectivePeriod(parsePeriod(xpp)); 22755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 22756 res.getTopic().add(parseCodeableConcept(xpp)); 22757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 22758 res.getAuthor().add(parseContactDetail(xpp)); 22759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 22760 res.getEditor().add(parseContactDetail(xpp)); 22761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 22762 res.getReviewer().add(parseContactDetail(xpp)); 22763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 22764 res.getEndorser().add(parseContactDetail(xpp)); 22765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 22766 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 22767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 22768 res.getLibrary().add(parseCanonical(xpp)); 22769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 22770 res.getGoal().add(parsePlanDefinitionGoalComponent(xpp)); 22771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 22772 res.getActor().add(parsePlanDefinitionActorComponent(xpp)); 22773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 22774 res.getAction().add(parsePlanDefinitionActionComponent(xpp)); 22775 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 22776 res.setAsNeeded(parseType("asNeeded", xpp)); 22777 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 22778 return false; 22779 } 22780 return true; 22781 } 22782 22783 protected PlanDefinition.PlanDefinitionGoalComponent parsePlanDefinitionGoalComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22784 PlanDefinition.PlanDefinitionGoalComponent res = new PlanDefinition.PlanDefinitionGoalComponent(); 22785 parseElementAttributes(xpp, res); 22786 next(xpp); 22787 int eventType = nextNoWhitespace(xpp); 22788 while (eventType != XmlPullParser.END_TAG) { 22789 if (!parsePlanDefinitionGoalComponentContent(eventType, xpp, res)) 22790 unknownContent(xpp); 22791 eventType = nextNoWhitespace(xpp); 22792 } 22793 next(xpp); 22794 parseElementClose(res); 22795 return res; 22796 } 22797 22798 protected boolean parsePlanDefinitionGoalComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionGoalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22799 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 22800 res.setCategory(parseCodeableConcept(xpp)); 22801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 22802 res.setDescription(parseCodeableConcept(xpp)); 22803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 22804 res.setPriority(parseCodeableConcept(xpp)); 22805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 22806 res.setStart(parseCodeableConcept(xpp)); 22807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 22808 res.getAddresses().add(parseCodeableConcept(xpp)); 22809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 22810 res.getDocumentation().add(parseRelatedArtifact(xpp)); 22811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 22812 res.getTarget().add(parsePlanDefinitionGoalTargetComponent(xpp)); 22813 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22814 return false; 22815 } 22816 return true; 22817 } 22818 22819 protected PlanDefinition.PlanDefinitionGoalTargetComponent parsePlanDefinitionGoalTargetComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22820 PlanDefinition.PlanDefinitionGoalTargetComponent res = new PlanDefinition.PlanDefinitionGoalTargetComponent(); 22821 parseElementAttributes(xpp, res); 22822 next(xpp); 22823 int eventType = nextNoWhitespace(xpp); 22824 while (eventType != XmlPullParser.END_TAG) { 22825 if (!parsePlanDefinitionGoalTargetComponentContent(eventType, xpp, res)) 22826 unknownContent(xpp); 22827 eventType = nextNoWhitespace(xpp); 22828 } 22829 next(xpp); 22830 parseElementClose(res); 22831 return res; 22832 } 22833 22834 protected boolean parsePlanDefinitionGoalTargetComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionGoalTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22835 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 22836 res.setMeasure(parseCodeableConcept(xpp)); 22837 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "detail")) { 22838 res.setDetail(parseType("detail", xpp)); 22839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("due")) { 22840 res.setDue(parseDuration(xpp)); 22841 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22842 return false; 22843 } 22844 return true; 22845 } 22846 22847 protected PlanDefinition.PlanDefinitionActorComponent parsePlanDefinitionActorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22848 PlanDefinition.PlanDefinitionActorComponent res = new PlanDefinition.PlanDefinitionActorComponent(); 22849 parseElementAttributes(xpp, res); 22850 next(xpp); 22851 int eventType = nextNoWhitespace(xpp); 22852 while (eventType != XmlPullParser.END_TAG) { 22853 if (!parsePlanDefinitionActorComponentContent(eventType, xpp, res)) 22854 unknownContent(xpp); 22855 eventType = nextNoWhitespace(xpp); 22856 } 22857 next(xpp); 22858 parseElementClose(res); 22859 return res; 22860 } 22861 22862 protected boolean parsePlanDefinitionActorComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22863 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 22864 res.setTitleElement(parseString(xpp)); 22865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 22866 res.setDescriptionElement(parseMarkdown(xpp)); 22867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("option")) { 22868 res.getOption().add(parsePlanDefinitionActorOptionComponent(xpp)); 22869 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22870 return false; 22871 } 22872 return true; 22873 } 22874 22875 protected PlanDefinition.PlanDefinitionActorOptionComponent parsePlanDefinitionActorOptionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22876 PlanDefinition.PlanDefinitionActorOptionComponent res = new PlanDefinition.PlanDefinitionActorOptionComponent(); 22877 parseElementAttributes(xpp, res); 22878 next(xpp); 22879 int eventType = nextNoWhitespace(xpp); 22880 while (eventType != XmlPullParser.END_TAG) { 22881 if (!parsePlanDefinitionActorOptionComponentContent(eventType, xpp, res)) 22882 unknownContent(xpp); 22883 eventType = nextNoWhitespace(xpp); 22884 } 22885 next(xpp); 22886 parseElementClose(res); 22887 return res; 22888 } 22889 22890 protected boolean parsePlanDefinitionActorOptionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActorOptionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22891 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 22892 res.setTypeElement(parseEnumeration(xpp, Enumerations.ActionParticipantType.NULL, new Enumerations.ActionParticipantTypeEnumFactory())); 22893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeCanonical")) { 22894 res.setTypeCanonicalElement(parseCanonical(xpp)); 22895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeReference")) { 22896 res.setTypeReference(parseReference(xpp)); 22897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 22898 res.setRole(parseCodeableConcept(xpp)); 22899 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22900 return false; 22901 } 22902 return true; 22903 } 22904 22905 protected PlanDefinition.PlanDefinitionActionComponent parsePlanDefinitionActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22906 PlanDefinition.PlanDefinitionActionComponent res = new PlanDefinition.PlanDefinitionActionComponent(); 22907 parseElementAttributes(xpp, res); 22908 next(xpp); 22909 int eventType = nextNoWhitespace(xpp); 22910 while (eventType != XmlPullParser.END_TAG) { 22911 if (!parsePlanDefinitionActionComponentContent(eventType, xpp, res)) 22912 unknownContent(xpp); 22913 eventType = nextNoWhitespace(xpp); 22914 } 22915 next(xpp); 22916 parseElementClose(res); 22917 return res; 22918 } 22919 22920 protected boolean parsePlanDefinitionActionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 22921 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 22922 res.setLinkIdElement(parseString(xpp)); 22923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 22924 res.setPrefixElement(parseString(xpp)); 22925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 22926 res.setTitleElement(parseString(xpp)); 22927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 22928 res.setDescriptionElement(parseMarkdown(xpp)); 22929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textEquivalent")) { 22930 res.setTextEquivalentElement(parseMarkdown(xpp)); 22931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 22932 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 22933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 22934 res.setCode(parseCodeableConcept(xpp)); 22935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 22936 res.getReason().add(parseCodeableConcept(xpp)); 22937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 22938 res.getDocumentation().add(parseRelatedArtifact(xpp)); 22939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goalId")) { 22940 res.getGoalId().add(parseId(xpp)); 22941 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 22942 res.setSubject(parseType("subject", xpp)); 22943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("trigger")) { 22944 res.getTrigger().add(parseTriggerDefinition(xpp)); 22945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 22946 res.getCondition().add(parsePlanDefinitionActionConditionComponent(xpp)); 22947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 22948 res.getInput().add(parsePlanDefinitionActionInputComponent(xpp)); 22949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 22950 res.getOutput().add(parsePlanDefinitionActionOutputComponent(xpp)); 22951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAction")) { 22952 res.getRelatedAction().add(parsePlanDefinitionActionRelatedActionComponent(xpp)); 22953 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 22954 res.setTiming(parseType("timing", xpp)); 22955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 22956 res.setLocation(parseCodeableReference(xpp)); 22957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 22958 res.getParticipant().add(parsePlanDefinitionActionParticipantComponent(xpp)); 22959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 22960 res.setType(parseCodeableConcept(xpp)); 22961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupingBehavior")) { 22962 res.setGroupingBehaviorElement(parseEnumeration(xpp, Enumerations.ActionGroupingBehavior.NULL, new Enumerations.ActionGroupingBehaviorEnumFactory())); 22963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("selectionBehavior")) { 22964 res.setSelectionBehaviorElement(parseEnumeration(xpp, Enumerations.ActionSelectionBehavior.NULL, new Enumerations.ActionSelectionBehaviorEnumFactory())); 22965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requiredBehavior")) { 22966 res.setRequiredBehaviorElement(parseEnumeration(xpp, Enumerations.ActionRequiredBehavior.NULL, new Enumerations.ActionRequiredBehaviorEnumFactory())); 22967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precheckBehavior")) { 22968 res.setPrecheckBehaviorElement(parseEnumeration(xpp, Enumerations.ActionPrecheckBehavior.NULL, new Enumerations.ActionPrecheckBehaviorEnumFactory())); 22969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cardinalityBehavior")) { 22970 res.setCardinalityBehaviorElement(parseEnumeration(xpp, Enumerations.ActionCardinalityBehavior.NULL, new Enumerations.ActionCardinalityBehaviorEnumFactory())); 22971 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "definition")) { 22972 res.setDefinition(parseType("definition", xpp)); 22973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 22974 res.setTransformElement(parseCanonical(xpp)); 22975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dynamicValue")) { 22976 res.getDynamicValue().add(parsePlanDefinitionActionDynamicValueComponent(xpp)); 22977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 22978 res.getAction().add(parsePlanDefinitionActionComponent(xpp)); 22979 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 22980 return false; 22981 } 22982 return true; 22983 } 22984 22985 protected PlanDefinition.PlanDefinitionActionConditionComponent parsePlanDefinitionActionConditionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 22986 PlanDefinition.PlanDefinitionActionConditionComponent res = new PlanDefinition.PlanDefinitionActionConditionComponent(); 22987 parseElementAttributes(xpp, res); 22988 next(xpp); 22989 int eventType = nextNoWhitespace(xpp); 22990 while (eventType != XmlPullParser.END_TAG) { 22991 if (!parsePlanDefinitionActionConditionComponentContent(eventType, xpp, res)) 22992 unknownContent(xpp); 22993 eventType = nextNoWhitespace(xpp); 22994 } 22995 next(xpp); 22996 parseElementClose(res); 22997 return res; 22998 } 22999 23000 protected boolean parsePlanDefinitionActionConditionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActionConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23001 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 23002 res.setKindElement(parseEnumeration(xpp, Enumerations.ActionConditionKind.NULL, new Enumerations.ActionConditionKindEnumFactory())); 23003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 23004 res.setExpression(parseExpression(xpp)); 23005 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23006 return false; 23007 } 23008 return true; 23009 } 23010 23011 protected PlanDefinition.PlanDefinitionActionInputComponent parsePlanDefinitionActionInputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23012 PlanDefinition.PlanDefinitionActionInputComponent res = new PlanDefinition.PlanDefinitionActionInputComponent(); 23013 parseElementAttributes(xpp, res); 23014 next(xpp); 23015 int eventType = nextNoWhitespace(xpp); 23016 while (eventType != XmlPullParser.END_TAG) { 23017 if (!parsePlanDefinitionActionInputComponentContent(eventType, xpp, res)) 23018 unknownContent(xpp); 23019 eventType = nextNoWhitespace(xpp); 23020 } 23021 next(xpp); 23022 parseElementClose(res); 23023 return res; 23024 } 23025 23026 protected boolean parsePlanDefinitionActionInputComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActionInputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23027 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 23028 res.setTitleElement(parseString(xpp)); 23029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 23030 res.setRequirement(parseDataRequirement(xpp)); 23031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedData")) { 23032 res.setRelatedDataElement(parseId(xpp)); 23033 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23034 return false; 23035 } 23036 return true; 23037 } 23038 23039 protected PlanDefinition.PlanDefinitionActionOutputComponent parsePlanDefinitionActionOutputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23040 PlanDefinition.PlanDefinitionActionOutputComponent res = new PlanDefinition.PlanDefinitionActionOutputComponent(); 23041 parseElementAttributes(xpp, res); 23042 next(xpp); 23043 int eventType = nextNoWhitespace(xpp); 23044 while (eventType != XmlPullParser.END_TAG) { 23045 if (!parsePlanDefinitionActionOutputComponentContent(eventType, xpp, res)) 23046 unknownContent(xpp); 23047 eventType = nextNoWhitespace(xpp); 23048 } 23049 next(xpp); 23050 parseElementClose(res); 23051 return res; 23052 } 23053 23054 protected boolean parsePlanDefinitionActionOutputComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActionOutputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23055 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 23056 res.setTitleElement(parseString(xpp)); 23057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 23058 res.setRequirement(parseDataRequirement(xpp)); 23059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedData")) { 23060 res.setRelatedDataElement(parseString(xpp)); 23061 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23062 return false; 23063 } 23064 return true; 23065 } 23066 23067 protected PlanDefinition.PlanDefinitionActionRelatedActionComponent parsePlanDefinitionActionRelatedActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23068 PlanDefinition.PlanDefinitionActionRelatedActionComponent res = new PlanDefinition.PlanDefinitionActionRelatedActionComponent(); 23069 parseElementAttributes(xpp, res); 23070 next(xpp); 23071 int eventType = nextNoWhitespace(xpp); 23072 while (eventType != XmlPullParser.END_TAG) { 23073 if (!parsePlanDefinitionActionRelatedActionComponentContent(eventType, xpp, res)) 23074 unknownContent(xpp); 23075 eventType = nextNoWhitespace(xpp); 23076 } 23077 next(xpp); 23078 parseElementClose(res); 23079 return res; 23080 } 23081 23082 protected boolean parsePlanDefinitionActionRelatedActionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActionRelatedActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23083 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetId")) { 23084 res.setTargetIdElement(parseId(xpp)); 23085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 23086 res.setRelationshipElement(parseEnumeration(xpp, Enumerations.ActionRelationshipType.NULL, new Enumerations.ActionRelationshipTypeEnumFactory())); 23087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endRelationship")) { 23088 res.setEndRelationshipElement(parseEnumeration(xpp, Enumerations.ActionRelationshipType.NULL, new Enumerations.ActionRelationshipTypeEnumFactory())); 23089 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "offset")) { 23090 res.setOffset(parseType("offset", xpp)); 23091 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23092 return false; 23093 } 23094 return true; 23095 } 23096 23097 protected PlanDefinition.PlanDefinitionActionParticipantComponent parsePlanDefinitionActionParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23098 PlanDefinition.PlanDefinitionActionParticipantComponent res = new PlanDefinition.PlanDefinitionActionParticipantComponent(); 23099 parseElementAttributes(xpp, res); 23100 next(xpp); 23101 int eventType = nextNoWhitespace(xpp); 23102 while (eventType != XmlPullParser.END_TAG) { 23103 if (!parsePlanDefinitionActionParticipantComponentContent(eventType, xpp, res)) 23104 unknownContent(xpp); 23105 eventType = nextNoWhitespace(xpp); 23106 } 23107 next(xpp); 23108 parseElementClose(res); 23109 return res; 23110 } 23111 23112 protected boolean parsePlanDefinitionActionParticipantComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActionParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23113 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actorId")) { 23114 res.setActorIdElement(parseString(xpp)); 23115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 23116 res.setTypeElement(parseEnumeration(xpp, Enumerations.ActionParticipantType.NULL, new Enumerations.ActionParticipantTypeEnumFactory())); 23117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeCanonical")) { 23118 res.setTypeCanonicalElement(parseCanonical(xpp)); 23119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeReference")) { 23120 res.setTypeReference(parseReference(xpp)); 23121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 23122 res.setRole(parseCodeableConcept(xpp)); 23123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 23124 res.setFunction(parseCodeableConcept(xpp)); 23125 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23126 return false; 23127 } 23128 return true; 23129 } 23130 23131 protected PlanDefinition.PlanDefinitionActionDynamicValueComponent parsePlanDefinitionActionDynamicValueComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23132 PlanDefinition.PlanDefinitionActionDynamicValueComponent res = new PlanDefinition.PlanDefinitionActionDynamicValueComponent(); 23133 parseElementAttributes(xpp, res); 23134 next(xpp); 23135 int eventType = nextNoWhitespace(xpp); 23136 while (eventType != XmlPullParser.END_TAG) { 23137 if (!parsePlanDefinitionActionDynamicValueComponentContent(eventType, xpp, res)) 23138 unknownContent(xpp); 23139 eventType = nextNoWhitespace(xpp); 23140 } 23141 next(xpp); 23142 parseElementClose(res); 23143 return res; 23144 } 23145 23146 protected boolean parsePlanDefinitionActionDynamicValueComponentContent(int eventType, XmlPullParser xpp, PlanDefinition.PlanDefinitionActionDynamicValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23147 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 23148 res.setPathElement(parseString(xpp)); 23149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 23150 res.setExpression(parseExpression(xpp)); 23151 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23152 return false; 23153 } 23154 return true; 23155 } 23156 23157 protected Practitioner parsePractitioner(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23158 Practitioner res = new Practitioner(); 23159 parseResourceAttributes(xpp, res); 23160 next(xpp); 23161 int eventType = nextNoWhitespace(xpp); 23162 while (eventType != XmlPullParser.END_TAG) { 23163 if (!parsePractitionerContent(eventType, xpp, res)) 23164 unknownContent(xpp); 23165 eventType = nextNoWhitespace(xpp); 23166 } 23167 next(xpp); 23168 parseElementClose(res); 23169 return res; 23170 } 23171 23172 protected boolean parsePractitionerContent(int eventType, XmlPullParser xpp, Practitioner res) throws XmlPullParserException, IOException, FHIRFormatError { 23173 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23174 res.getIdentifier().add(parseIdentifier(xpp)); 23175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 23176 res.setActiveElement(parseBoolean(xpp)); 23177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 23178 res.getName().add(parseHumanName(xpp)); 23179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 23180 res.getTelecom().add(parseContactPoint(xpp)); 23181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 23182 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 23183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 23184 res.setBirthDateElement(parseDate(xpp)); 23185 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 23186 res.setDeceased(parseType("deceased", xpp)); 23187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 23188 res.getAddress().add(parseAddress(xpp)); 23189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 23190 res.getPhoto().add(parseAttachment(xpp)); 23191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 23192 res.getQualification().add(parsePractitionerQualificationComponent(xpp)); 23193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 23194 res.getCommunication().add(parsePractitionerCommunicationComponent(xpp)); 23195 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 23196 return false; 23197 } 23198 return true; 23199 } 23200 23201 protected Practitioner.PractitionerQualificationComponent parsePractitionerQualificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23202 Practitioner.PractitionerQualificationComponent res = new Practitioner.PractitionerQualificationComponent(); 23203 parseElementAttributes(xpp, res); 23204 next(xpp); 23205 int eventType = nextNoWhitespace(xpp); 23206 while (eventType != XmlPullParser.END_TAG) { 23207 if (!parsePractitionerQualificationComponentContent(eventType, xpp, res)) 23208 unknownContent(xpp); 23209 eventType = nextNoWhitespace(xpp); 23210 } 23211 next(xpp); 23212 parseElementClose(res); 23213 return res; 23214 } 23215 23216 protected boolean parsePractitionerQualificationComponentContent(int eventType, XmlPullParser xpp, Practitioner.PractitionerQualificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23217 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23218 res.getIdentifier().add(parseIdentifier(xpp)); 23219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 23220 res.setCode(parseCodeableConcept(xpp)); 23221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 23222 res.setPeriod(parsePeriod(xpp)); 23223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 23224 res.setIssuer(parseReference(xpp)); 23225 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23226 return false; 23227 } 23228 return true; 23229 } 23230 23231 protected Practitioner.PractitionerCommunicationComponent parsePractitionerCommunicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23232 Practitioner.PractitionerCommunicationComponent res = new Practitioner.PractitionerCommunicationComponent(); 23233 parseElementAttributes(xpp, res); 23234 next(xpp); 23235 int eventType = nextNoWhitespace(xpp); 23236 while (eventType != XmlPullParser.END_TAG) { 23237 if (!parsePractitionerCommunicationComponentContent(eventType, xpp, res)) 23238 unknownContent(xpp); 23239 eventType = nextNoWhitespace(xpp); 23240 } 23241 next(xpp); 23242 parseElementClose(res); 23243 return res; 23244 } 23245 23246 protected boolean parsePractitionerCommunicationComponentContent(int eventType, XmlPullParser xpp, Practitioner.PractitionerCommunicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23247 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 23248 res.setLanguage(parseCodeableConcept(xpp)); 23249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 23250 res.setPreferredElement(parseBoolean(xpp)); 23251 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23252 return false; 23253 } 23254 return true; 23255 } 23256 23257 protected PractitionerRole parsePractitionerRole(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23258 PractitionerRole res = new PractitionerRole(); 23259 parseResourceAttributes(xpp, res); 23260 next(xpp); 23261 int eventType = nextNoWhitespace(xpp); 23262 while (eventType != XmlPullParser.END_TAG) { 23263 if (!parsePractitionerRoleContent(eventType, xpp, res)) 23264 unknownContent(xpp); 23265 eventType = nextNoWhitespace(xpp); 23266 } 23267 next(xpp); 23268 parseElementClose(res); 23269 return res; 23270 } 23271 23272 protected boolean parsePractitionerRoleContent(int eventType, XmlPullParser xpp, PractitionerRole res) throws XmlPullParserException, IOException, FHIRFormatError { 23273 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23274 res.getIdentifier().add(parseIdentifier(xpp)); 23275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 23276 res.setActiveElement(parseBoolean(xpp)); 23277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 23278 res.setPeriod(parsePeriod(xpp)); 23279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitioner")) { 23280 res.setPractitioner(parseReference(xpp)); 23281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 23282 res.setOrganization(parseReference(xpp)); 23283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 23284 res.getCode().add(parseCodeableConcept(xpp)); 23285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 23286 res.getSpecialty().add(parseCodeableConcept(xpp)); 23287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 23288 res.getLocation().add(parseReference(xpp)); 23289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("healthcareService")) { 23290 res.getHealthcareService().add(parseReference(xpp)); 23291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 23292 res.getContact().add(parseExtendedContactDetail(xpp)); 23293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 23294 res.getCharacteristic().add(parseCodeableConcept(xpp)); 23295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 23296 res.getCommunication().add(parseCodeableConcept(xpp)); 23297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 23298 res.getAvailability().add(parseAvailability(xpp)); 23299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 23300 res.getEndpoint().add(parseReference(xpp)); 23301 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 23302 return false; 23303 } 23304 return true; 23305 } 23306 23307 protected Procedure parseProcedure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23308 Procedure res = new Procedure(); 23309 parseResourceAttributes(xpp, res); 23310 next(xpp); 23311 int eventType = nextNoWhitespace(xpp); 23312 while (eventType != XmlPullParser.END_TAG) { 23313 if (!parseProcedureContent(eventType, xpp, res)) 23314 unknownContent(xpp); 23315 eventType = nextNoWhitespace(xpp); 23316 } 23317 next(xpp); 23318 parseElementClose(res); 23319 return res; 23320 } 23321 23322 protected boolean parseProcedureContent(int eventType, XmlPullParser xpp, Procedure res) throws XmlPullParserException, IOException, FHIRFormatError { 23323 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23324 res.getIdentifier().add(parseIdentifier(xpp)); 23325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 23326 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 23327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 23328 res.getInstantiatesUri().add(parseUri(xpp)); 23329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 23330 res.getBasedOn().add(parseReference(xpp)); 23331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 23332 res.getPartOf().add(parseReference(xpp)); 23333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 23334 res.setStatusElement(parseEnumeration(xpp, Enumerations.EventStatus.NULL, new Enumerations.EventStatusEnumFactory())); 23335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 23336 res.setStatusReason(parseCodeableConcept(xpp)); 23337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 23338 res.getCategory().add(parseCodeableConcept(xpp)); 23339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 23340 res.setCode(parseCodeableConcept(xpp)); 23341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 23342 res.setSubject(parseReference(xpp)); 23343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 23344 res.setFocus(parseReference(xpp)); 23345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 23346 res.setEncounter(parseReference(xpp)); 23347 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 23348 res.setOccurrence(parseType("occurrence", xpp)); 23349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 23350 res.setRecordedElement(parseDateTime(xpp)); 23351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 23352 res.setRecorder(parseReference(xpp)); 23353 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reported")) { 23354 res.setReported(parseType("reported", xpp)); 23355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 23356 res.getPerformer().add(parseProcedurePerformerComponent(xpp)); 23357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 23358 res.setLocation(parseReference(xpp)); 23359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 23360 res.getReason().add(parseCodeableReference(xpp)); 23361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 23362 res.getBodySite().add(parseCodeableConcept(xpp)); 23363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 23364 res.setOutcome(parseCodeableConcept(xpp)); 23365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("report")) { 23366 res.getReport().add(parseReference(xpp)); 23367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complication")) { 23368 res.getComplication().add(parseCodeableReference(xpp)); 23369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("followUp")) { 23370 res.getFollowUp().add(parseCodeableConcept(xpp)); 23371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 23372 res.getNote().add(parseAnnotation(xpp)); 23373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focalDevice")) { 23374 res.getFocalDevice().add(parseProcedureFocalDeviceComponent(xpp)); 23375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("used")) { 23376 res.getUsed().add(parseCodeableReference(xpp)); 23377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 23378 res.getSupportingInfo().add(parseReference(xpp)); 23379 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 23380 return false; 23381 } 23382 return true; 23383 } 23384 23385 protected Procedure.ProcedurePerformerComponent parseProcedurePerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23386 Procedure.ProcedurePerformerComponent res = new Procedure.ProcedurePerformerComponent(); 23387 parseElementAttributes(xpp, res); 23388 next(xpp); 23389 int eventType = nextNoWhitespace(xpp); 23390 while (eventType != XmlPullParser.END_TAG) { 23391 if (!parseProcedurePerformerComponentContent(eventType, xpp, res)) 23392 unknownContent(xpp); 23393 eventType = nextNoWhitespace(xpp); 23394 } 23395 next(xpp); 23396 parseElementClose(res); 23397 return res; 23398 } 23399 23400 protected boolean parseProcedurePerformerComponentContent(int eventType, XmlPullParser xpp, Procedure.ProcedurePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23401 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 23402 res.setFunction(parseCodeableConcept(xpp)); 23403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 23404 res.setActor(parseReference(xpp)); 23405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 23406 res.setOnBehalfOf(parseReference(xpp)); 23407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 23408 res.setPeriod(parsePeriod(xpp)); 23409 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23410 return false; 23411 } 23412 return true; 23413 } 23414 23415 protected Procedure.ProcedureFocalDeviceComponent parseProcedureFocalDeviceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23416 Procedure.ProcedureFocalDeviceComponent res = new Procedure.ProcedureFocalDeviceComponent(); 23417 parseElementAttributes(xpp, res); 23418 next(xpp); 23419 int eventType = nextNoWhitespace(xpp); 23420 while (eventType != XmlPullParser.END_TAG) { 23421 if (!parseProcedureFocalDeviceComponentContent(eventType, xpp, res)) 23422 unknownContent(xpp); 23423 eventType = nextNoWhitespace(xpp); 23424 } 23425 next(xpp); 23426 parseElementClose(res); 23427 return res; 23428 } 23429 23430 protected boolean parseProcedureFocalDeviceComponentContent(int eventType, XmlPullParser xpp, Procedure.ProcedureFocalDeviceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23431 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 23432 res.setAction(parseCodeableConcept(xpp)); 23433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manipulated")) { 23434 res.setManipulated(parseReference(xpp)); 23435 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23436 return false; 23437 } 23438 return true; 23439 } 23440 23441 protected Provenance parseProvenance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23442 Provenance res = new Provenance(); 23443 parseResourceAttributes(xpp, res); 23444 next(xpp); 23445 int eventType = nextNoWhitespace(xpp); 23446 while (eventType != XmlPullParser.END_TAG) { 23447 if (!parseProvenanceContent(eventType, xpp, res)) 23448 unknownContent(xpp); 23449 eventType = nextNoWhitespace(xpp); 23450 } 23451 next(xpp); 23452 parseElementClose(res); 23453 return res; 23454 } 23455 23456 protected boolean parseProvenanceContent(int eventType, XmlPullParser xpp, Provenance res) throws XmlPullParserException, IOException, FHIRFormatError { 23457 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 23458 res.getTarget().add(parseReference(xpp)); 23459 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurred")) { 23460 res.setOccurred(parseType("occurred", xpp)); 23461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 23462 res.setRecordedElement(parseInstant(xpp)); 23463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 23464 res.getPolicy().add(parseUri(xpp)); 23465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 23466 res.setLocation(parseReference(xpp)); 23467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorization")) { 23468 res.getAuthorization().add(parseCodeableReference(xpp)); 23469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 23470 res.setActivity(parseCodeableConcept(xpp)); 23471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 23472 res.getBasedOn().add(parseReference(xpp)); 23473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 23474 res.setPatient(parseReference(xpp)); 23475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 23476 res.setEncounter(parseReference(xpp)); 23477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 23478 res.getAgent().add(parseProvenanceAgentComponent(xpp)); 23479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 23480 res.getEntity().add(parseProvenanceEntityComponent(xpp)); 23481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 23482 res.getSignature().add(parseSignature(xpp)); 23483 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 23484 return false; 23485 } 23486 return true; 23487 } 23488 23489 protected Provenance.ProvenanceAgentComponent parseProvenanceAgentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23490 Provenance.ProvenanceAgentComponent res = new Provenance.ProvenanceAgentComponent(); 23491 parseElementAttributes(xpp, res); 23492 next(xpp); 23493 int eventType = nextNoWhitespace(xpp); 23494 while (eventType != XmlPullParser.END_TAG) { 23495 if (!parseProvenanceAgentComponentContent(eventType, xpp, res)) 23496 unknownContent(xpp); 23497 eventType = nextNoWhitespace(xpp); 23498 } 23499 next(xpp); 23500 parseElementClose(res); 23501 return res; 23502 } 23503 23504 protected boolean parseProvenanceAgentComponentContent(int eventType, XmlPullParser xpp, Provenance.ProvenanceAgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23505 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 23506 res.setType(parseCodeableConcept(xpp)); 23507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 23508 res.getRole().add(parseCodeableConcept(xpp)); 23509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("who")) { 23510 res.setWho(parseReference(xpp)); 23511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 23512 res.setOnBehalfOf(parseReference(xpp)); 23513 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23514 return false; 23515 } 23516 return true; 23517 } 23518 23519 protected Provenance.ProvenanceEntityComponent parseProvenanceEntityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23520 Provenance.ProvenanceEntityComponent res = new Provenance.ProvenanceEntityComponent(); 23521 parseElementAttributes(xpp, res); 23522 next(xpp); 23523 int eventType = nextNoWhitespace(xpp); 23524 while (eventType != XmlPullParser.END_TAG) { 23525 if (!parseProvenanceEntityComponentContent(eventType, xpp, res)) 23526 unknownContent(xpp); 23527 eventType = nextNoWhitespace(xpp); 23528 } 23529 next(xpp); 23530 parseElementClose(res); 23531 return res; 23532 } 23533 23534 protected boolean parseProvenanceEntityComponentContent(int eventType, XmlPullParser xpp, Provenance.ProvenanceEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23535 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 23536 res.setRoleElement(parseEnumeration(xpp, Provenance.ProvenanceEntityRole.NULL, new Provenance.ProvenanceEntityRoleEnumFactory())); 23537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("what")) { 23538 res.setWhat(parseReference(xpp)); 23539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 23540 res.getAgent().add(parseProvenanceAgentComponent(xpp)); 23541 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23542 return false; 23543 } 23544 return true; 23545 } 23546 23547 protected Questionnaire parseQuestionnaire(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23548 Questionnaire res = new Questionnaire(); 23549 parseResourceAttributes(xpp, res); 23550 next(xpp); 23551 int eventType = nextNoWhitespace(xpp); 23552 while (eventType != XmlPullParser.END_TAG) { 23553 if (!parseQuestionnaireContent(eventType, xpp, res)) 23554 unknownContent(xpp); 23555 eventType = nextNoWhitespace(xpp); 23556 } 23557 next(xpp); 23558 parseElementClose(res); 23559 return res; 23560 } 23561 23562 protected boolean parseQuestionnaireContent(int eventType, XmlPullParser xpp, Questionnaire res) throws XmlPullParserException, IOException, FHIRFormatError { 23563 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 23564 res.setUrlElement(parseUri(xpp)); 23565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23566 res.getIdentifier().add(parseIdentifier(xpp)); 23567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 23568 res.setVersionElement(parseString(xpp)); 23569 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 23570 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 23571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 23572 res.setNameElement(parseString(xpp)); 23573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 23574 res.setTitleElement(parseString(xpp)); 23575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 23576 res.getDerivedFrom().add(parseCanonical(xpp)); 23577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 23578 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 23579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 23580 res.setExperimentalElement(parseBoolean(xpp)); 23581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectType")) { 23582 res.getSubjectType().add(parseCode(xpp)); 23583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 23584 res.setDateElement(parseDateTime(xpp)); 23585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 23586 res.setPublisherElement(parseString(xpp)); 23587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 23588 res.getContact().add(parseContactDetail(xpp)); 23589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 23590 res.setDescriptionElement(parseMarkdown(xpp)); 23591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 23592 res.getUseContext().add(parseUsageContext(xpp)); 23593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 23594 res.getJurisdiction().add(parseCodeableConcept(xpp)); 23595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 23596 res.setPurposeElement(parseMarkdown(xpp)); 23597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 23598 res.setCopyrightElement(parseMarkdown(xpp)); 23599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 23600 res.setCopyrightLabelElement(parseString(xpp)); 23601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 23602 res.setApprovalDateElement(parseDate(xpp)); 23603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 23604 res.setLastReviewDateElement(parseDate(xpp)); 23605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 23606 res.setEffectivePeriod(parsePeriod(xpp)); 23607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 23608 res.getCode().add(parseCoding(xpp)); 23609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 23610 res.getItem().add(parseQuestionnaireItemComponent(xpp)); 23611 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 23612 return false; 23613 } 23614 return true; 23615 } 23616 23617 protected Questionnaire.QuestionnaireItemComponent parseQuestionnaireItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23618 Questionnaire.QuestionnaireItemComponent res = new Questionnaire.QuestionnaireItemComponent(); 23619 parseElementAttributes(xpp, res); 23620 next(xpp); 23621 int eventType = nextNoWhitespace(xpp); 23622 while (eventType != XmlPullParser.END_TAG) { 23623 if (!parseQuestionnaireItemComponentContent(eventType, xpp, res)) 23624 unknownContent(xpp); 23625 eventType = nextNoWhitespace(xpp); 23626 } 23627 next(xpp); 23628 parseElementClose(res); 23629 return res; 23630 } 23631 23632 protected boolean parseQuestionnaireItemComponentContent(int eventType, XmlPullParser xpp, Questionnaire.QuestionnaireItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23633 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 23634 res.setLinkIdElement(parseString(xpp)); 23635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 23636 res.setDefinitionElement(parseUri(xpp)); 23637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 23638 res.getCode().add(parseCoding(xpp)); 23639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 23640 res.setPrefixElement(parseString(xpp)); 23641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 23642 res.setTextElement(parseString(xpp)); 23643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 23644 res.setTypeElement(parseEnumeration(xpp, Questionnaire.QuestionnaireItemType.NULL, new Questionnaire.QuestionnaireItemTypeEnumFactory())); 23645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enableWhen")) { 23646 res.getEnableWhen().add(parseQuestionnaireItemEnableWhenComponent(xpp)); 23647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enableBehavior")) { 23648 res.setEnableBehaviorElement(parseEnumeration(xpp, Questionnaire.EnableWhenBehavior.NULL, new Questionnaire.EnableWhenBehaviorEnumFactory())); 23649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disabledDisplay")) { 23650 res.setDisabledDisplayElement(parseEnumeration(xpp, Questionnaire.QuestionnaireItemDisabledDisplay.NULL, new Questionnaire.QuestionnaireItemDisabledDisplayEnumFactory())); 23651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 23652 res.setRequiredElement(parseBoolean(xpp)); 23653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeats")) { 23654 res.setRepeatsElement(parseBoolean(xpp)); 23655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readOnly")) { 23656 res.setReadOnlyElement(parseBoolean(xpp)); 23657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 23658 res.setMaxLengthElement(parseInteger(xpp)); 23659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answerConstraint")) { 23660 res.setAnswerConstraintElement(parseEnumeration(xpp, Questionnaire.QuestionnaireAnswerConstraint.NULL, new Questionnaire.QuestionnaireAnswerConstraintEnumFactory())); 23661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answerValueSet")) { 23662 res.setAnswerValueSetElement(parseCanonical(xpp)); 23663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answerOption")) { 23664 res.getAnswerOption().add(parseQuestionnaireItemAnswerOptionComponent(xpp)); 23665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initial")) { 23666 res.getInitial().add(parseQuestionnaireItemInitialComponent(xpp)); 23667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 23668 res.getItem().add(parseQuestionnaireItemComponent(xpp)); 23669 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23670 return false; 23671 } 23672 return true; 23673 } 23674 23675 protected Questionnaire.QuestionnaireItemEnableWhenComponent parseQuestionnaireItemEnableWhenComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23676 Questionnaire.QuestionnaireItemEnableWhenComponent res = new Questionnaire.QuestionnaireItemEnableWhenComponent(); 23677 parseElementAttributes(xpp, res); 23678 next(xpp); 23679 int eventType = nextNoWhitespace(xpp); 23680 while (eventType != XmlPullParser.END_TAG) { 23681 if (!parseQuestionnaireItemEnableWhenComponentContent(eventType, xpp, res)) 23682 unknownContent(xpp); 23683 eventType = nextNoWhitespace(xpp); 23684 } 23685 next(xpp); 23686 parseElementClose(res); 23687 return res; 23688 } 23689 23690 protected boolean parseQuestionnaireItemEnableWhenComponentContent(int eventType, XmlPullParser xpp, Questionnaire.QuestionnaireItemEnableWhenComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23691 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("question")) { 23692 res.setQuestionElement(parseString(xpp)); 23693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 23694 res.setOperatorElement(parseEnumeration(xpp, Questionnaire.QuestionnaireItemOperator.NULL, new Questionnaire.QuestionnaireItemOperatorEnumFactory())); 23695 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "answer")) { 23696 res.setAnswer(parseType("answer", xpp)); 23697 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23698 return false; 23699 } 23700 return true; 23701 } 23702 23703 protected Questionnaire.QuestionnaireItemAnswerOptionComponent parseQuestionnaireItemAnswerOptionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23704 Questionnaire.QuestionnaireItemAnswerOptionComponent res = new Questionnaire.QuestionnaireItemAnswerOptionComponent(); 23705 parseElementAttributes(xpp, res); 23706 next(xpp); 23707 int eventType = nextNoWhitespace(xpp); 23708 while (eventType != XmlPullParser.END_TAG) { 23709 if (!parseQuestionnaireItemAnswerOptionComponentContent(eventType, xpp, res)) 23710 unknownContent(xpp); 23711 eventType = nextNoWhitespace(xpp); 23712 } 23713 next(xpp); 23714 parseElementClose(res); 23715 return res; 23716 } 23717 23718 protected boolean parseQuestionnaireItemAnswerOptionComponentContent(int eventType, XmlPullParser xpp, Questionnaire.QuestionnaireItemAnswerOptionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23719 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 23720 res.setValue(parseType("value", xpp)); 23721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initialSelected")) { 23722 res.setInitialSelectedElement(parseBoolean(xpp)); 23723 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23724 return false; 23725 } 23726 return true; 23727 } 23728 23729 protected Questionnaire.QuestionnaireItemInitialComponent parseQuestionnaireItemInitialComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23730 Questionnaire.QuestionnaireItemInitialComponent res = new Questionnaire.QuestionnaireItemInitialComponent(); 23731 parseElementAttributes(xpp, res); 23732 next(xpp); 23733 int eventType = nextNoWhitespace(xpp); 23734 while (eventType != XmlPullParser.END_TAG) { 23735 if (!parseQuestionnaireItemInitialComponentContent(eventType, xpp, res)) 23736 unknownContent(xpp); 23737 eventType = nextNoWhitespace(xpp); 23738 } 23739 next(xpp); 23740 parseElementClose(res); 23741 return res; 23742 } 23743 23744 protected boolean parseQuestionnaireItemInitialComponentContent(int eventType, XmlPullParser xpp, Questionnaire.QuestionnaireItemInitialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23745 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 23746 res.setValue(parseType("value", xpp)); 23747 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23748 return false; 23749 } 23750 return true; 23751 } 23752 23753 protected QuestionnaireResponse parseQuestionnaireResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23754 QuestionnaireResponse res = new QuestionnaireResponse(); 23755 parseResourceAttributes(xpp, res); 23756 next(xpp); 23757 int eventType = nextNoWhitespace(xpp); 23758 while (eventType != XmlPullParser.END_TAG) { 23759 if (!parseQuestionnaireResponseContent(eventType, xpp, res)) 23760 unknownContent(xpp); 23761 eventType = nextNoWhitespace(xpp); 23762 } 23763 next(xpp); 23764 parseElementClose(res); 23765 return res; 23766 } 23767 23768 protected boolean parseQuestionnaireResponseContent(int eventType, XmlPullParser xpp, QuestionnaireResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 23769 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23770 res.getIdentifier().add(parseIdentifier(xpp)); 23771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 23772 res.getBasedOn().add(parseReference(xpp)); 23773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 23774 res.getPartOf().add(parseReference(xpp)); 23775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("questionnaire")) { 23776 res.setQuestionnaireElement(parseCanonical(xpp)); 23777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 23778 res.setStatusElement(parseEnumeration(xpp, QuestionnaireResponse.QuestionnaireResponseStatus.NULL, new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory())); 23779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 23780 res.setSubject(parseReference(xpp)); 23781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 23782 res.setEncounter(parseReference(xpp)); 23783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authored")) { 23784 res.setAuthoredElement(parseDateTime(xpp)); 23785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 23786 res.setAuthor(parseReference(xpp)); 23787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 23788 res.setSource(parseReference(xpp)); 23789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 23790 res.getItem().add(parseQuestionnaireResponseItemComponent(xpp)); 23791 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 23792 return false; 23793 } 23794 return true; 23795 } 23796 23797 protected QuestionnaireResponse.QuestionnaireResponseItemComponent parseQuestionnaireResponseItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23798 QuestionnaireResponse.QuestionnaireResponseItemComponent res = new QuestionnaireResponse.QuestionnaireResponseItemComponent(); 23799 parseElementAttributes(xpp, res); 23800 next(xpp); 23801 int eventType = nextNoWhitespace(xpp); 23802 while (eventType != XmlPullParser.END_TAG) { 23803 if (!parseQuestionnaireResponseItemComponentContent(eventType, xpp, res)) 23804 unknownContent(xpp); 23805 eventType = nextNoWhitespace(xpp); 23806 } 23807 next(xpp); 23808 parseElementClose(res); 23809 return res; 23810 } 23811 23812 protected boolean parseQuestionnaireResponseItemComponentContent(int eventType, XmlPullParser xpp, QuestionnaireResponse.QuestionnaireResponseItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23813 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 23814 res.setLinkIdElement(parseString(xpp)); 23815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 23816 res.setDefinitionElement(parseUri(xpp)); 23817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 23818 res.setTextElement(parseString(xpp)); 23819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answer")) { 23820 res.getAnswer().add(parseQuestionnaireResponseItemAnswerComponent(xpp)); 23821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 23822 res.getItem().add(parseQuestionnaireResponseItemComponent(xpp)); 23823 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23824 return false; 23825 } 23826 return true; 23827 } 23828 23829 protected QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent parseQuestionnaireResponseItemAnswerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23830 QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent res = new QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); 23831 parseElementAttributes(xpp, res); 23832 next(xpp); 23833 int eventType = nextNoWhitespace(xpp); 23834 while (eventType != XmlPullParser.END_TAG) { 23835 if (!parseQuestionnaireResponseItemAnswerComponentContent(eventType, xpp, res)) 23836 unknownContent(xpp); 23837 eventType = nextNoWhitespace(xpp); 23838 } 23839 next(xpp); 23840 parseElementClose(res); 23841 return res; 23842 } 23843 23844 protected boolean parseQuestionnaireResponseItemAnswerComponentContent(int eventType, XmlPullParser xpp, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23845 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 23846 res.setValue(parseType("value", xpp)); 23847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 23848 res.getItem().add(parseQuestionnaireResponseItemComponent(xpp)); 23849 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23850 return false; 23851 } 23852 return true; 23853 } 23854 23855 protected RegulatedAuthorization parseRegulatedAuthorization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23856 RegulatedAuthorization res = new RegulatedAuthorization(); 23857 parseResourceAttributes(xpp, res); 23858 next(xpp); 23859 int eventType = nextNoWhitespace(xpp); 23860 while (eventType != XmlPullParser.END_TAG) { 23861 if (!parseRegulatedAuthorizationContent(eventType, xpp, res)) 23862 unknownContent(xpp); 23863 eventType = nextNoWhitespace(xpp); 23864 } 23865 next(xpp); 23866 parseElementClose(res); 23867 return res; 23868 } 23869 23870 protected boolean parseRegulatedAuthorizationContent(int eventType, XmlPullParser xpp, RegulatedAuthorization res) throws XmlPullParserException, IOException, FHIRFormatError { 23871 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23872 res.getIdentifier().add(parseIdentifier(xpp)); 23873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 23874 res.getSubject().add(parseReference(xpp)); 23875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 23876 res.setType(parseCodeableConcept(xpp)); 23877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 23878 res.setDescriptionElement(parseMarkdown(xpp)); 23879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("region")) { 23880 res.getRegion().add(parseCodeableConcept(xpp)); 23881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 23882 res.setStatus(parseCodeableConcept(xpp)); 23883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 23884 res.setStatusDateElement(parseDateTime(xpp)); 23885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validityPeriod")) { 23886 res.setValidityPeriod(parsePeriod(xpp)); 23887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 23888 res.getIndication().add(parseCodeableReference(xpp)); 23889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedUse")) { 23890 res.setIntendedUse(parseCodeableConcept(xpp)); 23891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 23892 res.getBasis().add(parseCodeableConcept(xpp)); 23893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("holder")) { 23894 res.setHolder(parseReference(xpp)); 23895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("regulator")) { 23896 res.setRegulator(parseReference(xpp)); 23897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachedDocument")) { 23898 res.getAttachedDocument().add(parseReference(xpp)); 23899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("case")) { 23900 res.setCase(parseRegulatedAuthorizationCaseComponent(xpp)); 23901 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 23902 return false; 23903 } 23904 return true; 23905 } 23906 23907 protected RegulatedAuthorization.RegulatedAuthorizationCaseComponent parseRegulatedAuthorizationCaseComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23908 RegulatedAuthorization.RegulatedAuthorizationCaseComponent res = new RegulatedAuthorization.RegulatedAuthorizationCaseComponent(); 23909 parseElementAttributes(xpp, res); 23910 next(xpp); 23911 int eventType = nextNoWhitespace(xpp); 23912 while (eventType != XmlPullParser.END_TAG) { 23913 if (!parseRegulatedAuthorizationCaseComponentContent(eventType, xpp, res)) 23914 unknownContent(xpp); 23915 eventType = nextNoWhitespace(xpp); 23916 } 23917 next(xpp); 23918 parseElementClose(res); 23919 return res; 23920 } 23921 23922 protected boolean parseRegulatedAuthorizationCaseComponentContent(int eventType, XmlPullParser xpp, RegulatedAuthorization.RegulatedAuthorizationCaseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 23923 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23924 res.setIdentifier(parseIdentifier(xpp)); 23925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 23926 res.setType(parseCodeableConcept(xpp)); 23927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 23928 res.setStatus(parseCodeableConcept(xpp)); 23929 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "date")) { 23930 res.setDate(parseType("date", xpp)); 23931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("application")) { 23932 res.getApplication().add(parseRegulatedAuthorizationCaseComponent(xpp)); 23933 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 23934 return false; 23935 } 23936 return true; 23937 } 23938 23939 protected RelatedPerson parseRelatedPerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23940 RelatedPerson res = new RelatedPerson(); 23941 parseResourceAttributes(xpp, res); 23942 next(xpp); 23943 int eventType = nextNoWhitespace(xpp); 23944 while (eventType != XmlPullParser.END_TAG) { 23945 if (!parseRelatedPersonContent(eventType, xpp, res)) 23946 unknownContent(xpp); 23947 eventType = nextNoWhitespace(xpp); 23948 } 23949 next(xpp); 23950 parseElementClose(res); 23951 return res; 23952 } 23953 23954 protected boolean parseRelatedPersonContent(int eventType, XmlPullParser xpp, RelatedPerson res) throws XmlPullParserException, IOException, FHIRFormatError { 23955 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 23956 res.getIdentifier().add(parseIdentifier(xpp)); 23957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 23958 res.setActiveElement(parseBoolean(xpp)); 23959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 23960 res.setPatient(parseReference(xpp)); 23961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 23962 res.getRelationship().add(parseCodeableConcept(xpp)); 23963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 23964 res.getName().add(parseHumanName(xpp)); 23965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 23966 res.getTelecom().add(parseContactPoint(xpp)); 23967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 23968 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 23969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 23970 res.setBirthDateElement(parseDate(xpp)); 23971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 23972 res.getAddress().add(parseAddress(xpp)); 23973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 23974 res.getPhoto().add(parseAttachment(xpp)); 23975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 23976 res.setPeriod(parsePeriod(xpp)); 23977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 23978 res.getCommunication().add(parseRelatedPersonCommunicationComponent(xpp)); 23979 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 23980 return false; 23981 } 23982 return true; 23983 } 23984 23985 protected RelatedPerson.RelatedPersonCommunicationComponent parseRelatedPersonCommunicationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 23986 RelatedPerson.RelatedPersonCommunicationComponent res = new RelatedPerson.RelatedPersonCommunicationComponent(); 23987 parseElementAttributes(xpp, res); 23988 next(xpp); 23989 int eventType = nextNoWhitespace(xpp); 23990 while (eventType != XmlPullParser.END_TAG) { 23991 if (!parseRelatedPersonCommunicationComponentContent(eventType, xpp, res)) 23992 unknownContent(xpp); 23993 eventType = nextNoWhitespace(xpp); 23994 } 23995 next(xpp); 23996 parseElementClose(res); 23997 return res; 23998 } 23999 24000 protected boolean parseRelatedPersonCommunicationComponentContent(int eventType, XmlPullParser xpp, RelatedPerson.RelatedPersonCommunicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24001 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 24002 res.setLanguage(parseCodeableConcept(xpp)); 24003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 24004 res.setPreferredElement(parseBoolean(xpp)); 24005 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24006 return false; 24007 } 24008 return true; 24009 } 24010 24011 protected RequestOrchestration parseRequestOrchestration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24012 RequestOrchestration res = new RequestOrchestration(); 24013 parseResourceAttributes(xpp, res); 24014 next(xpp); 24015 int eventType = nextNoWhitespace(xpp); 24016 while (eventType != XmlPullParser.END_TAG) { 24017 if (!parseRequestOrchestrationContent(eventType, xpp, res)) 24018 unknownContent(xpp); 24019 eventType = nextNoWhitespace(xpp); 24020 } 24021 next(xpp); 24022 parseElementClose(res); 24023 return res; 24024 } 24025 24026 protected boolean parseRequestOrchestrationContent(int eventType, XmlPullParser xpp, RequestOrchestration res) throws XmlPullParserException, IOException, FHIRFormatError { 24027 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 24028 res.getIdentifier().add(parseIdentifier(xpp)); 24029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 24030 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 24031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 24032 res.getInstantiatesUri().add(parseUri(xpp)); 24033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 24034 res.getBasedOn().add(parseReference(xpp)); 24035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 24036 res.getReplaces().add(parseReference(xpp)); 24037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 24038 res.setGroupIdentifier(parseIdentifier(xpp)); 24039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 24040 res.setStatusElement(parseEnumeration(xpp, Enumerations.RequestStatus.NULL, new Enumerations.RequestStatusEnumFactory())); 24041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 24042 res.setIntentElement(parseEnumeration(xpp, Enumerations.RequestIntent.NULL, new Enumerations.RequestIntentEnumFactory())); 24043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 24044 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 24045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 24046 res.setCode(parseCodeableConcept(xpp)); 24047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 24048 res.setSubject(parseReference(xpp)); 24049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 24050 res.setEncounter(parseReference(xpp)); 24051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 24052 res.setAuthoredOnElement(parseDateTime(xpp)); 24053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 24054 res.setAuthor(parseReference(xpp)); 24055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 24056 res.getReason().add(parseCodeableReference(xpp)); 24057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 24058 res.getGoal().add(parseReference(xpp)); 24059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 24060 res.getNote().add(parseAnnotation(xpp)); 24061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 24062 res.getAction().add(parseRequestOrchestrationActionComponent(xpp)); 24063 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 24064 return false; 24065 } 24066 return true; 24067 } 24068 24069 protected RequestOrchestration.RequestOrchestrationActionComponent parseRequestOrchestrationActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24070 RequestOrchestration.RequestOrchestrationActionComponent res = new RequestOrchestration.RequestOrchestrationActionComponent(); 24071 parseElementAttributes(xpp, res); 24072 next(xpp); 24073 int eventType = nextNoWhitespace(xpp); 24074 while (eventType != XmlPullParser.END_TAG) { 24075 if (!parseRequestOrchestrationActionComponentContent(eventType, xpp, res)) 24076 unknownContent(xpp); 24077 eventType = nextNoWhitespace(xpp); 24078 } 24079 next(xpp); 24080 parseElementClose(res); 24081 return res; 24082 } 24083 24084 protected boolean parseRequestOrchestrationActionComponentContent(int eventType, XmlPullParser xpp, RequestOrchestration.RequestOrchestrationActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24085 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 24086 res.setLinkIdElement(parseString(xpp)); 24087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 24088 res.setPrefixElement(parseString(xpp)); 24089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 24090 res.setTitleElement(parseString(xpp)); 24091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 24092 res.setDescriptionElement(parseMarkdown(xpp)); 24093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textEquivalent")) { 24094 res.setTextEquivalentElement(parseMarkdown(xpp)); 24095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 24096 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 24097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 24098 res.getCode().add(parseCodeableConcept(xpp)); 24099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 24100 res.getDocumentation().add(parseRelatedArtifact(xpp)); 24101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 24102 res.getGoal().add(parseReference(xpp)); 24103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 24104 res.getCondition().add(parseRequestOrchestrationActionConditionComponent(xpp)); 24105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 24106 res.getInput().add(parseRequestOrchestrationActionInputComponent(xpp)); 24107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 24108 res.getOutput().add(parseRequestOrchestrationActionOutputComponent(xpp)); 24109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAction")) { 24110 res.getRelatedAction().add(parseRequestOrchestrationActionRelatedActionComponent(xpp)); 24111 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 24112 res.setTiming(parseType("timing", xpp)); 24113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 24114 res.setLocation(parseCodeableReference(xpp)); 24115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 24116 res.getParticipant().add(parseRequestOrchestrationActionParticipantComponent(xpp)); 24117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 24118 res.setType(parseCodeableConcept(xpp)); 24119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupingBehavior")) { 24120 res.setGroupingBehaviorElement(parseEnumeration(xpp, Enumerations.ActionGroupingBehavior.NULL, new Enumerations.ActionGroupingBehaviorEnumFactory())); 24121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("selectionBehavior")) { 24122 res.setSelectionBehaviorElement(parseEnumeration(xpp, Enumerations.ActionSelectionBehavior.NULL, new Enumerations.ActionSelectionBehaviorEnumFactory())); 24123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requiredBehavior")) { 24124 res.setRequiredBehaviorElement(parseEnumeration(xpp, Enumerations.ActionRequiredBehavior.NULL, new Enumerations.ActionRequiredBehaviorEnumFactory())); 24125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precheckBehavior")) { 24126 res.setPrecheckBehaviorElement(parseEnumeration(xpp, Enumerations.ActionPrecheckBehavior.NULL, new Enumerations.ActionPrecheckBehaviorEnumFactory())); 24127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cardinalityBehavior")) { 24128 res.setCardinalityBehaviorElement(parseEnumeration(xpp, Enumerations.ActionCardinalityBehavior.NULL, new Enumerations.ActionCardinalityBehaviorEnumFactory())); 24129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 24130 res.setResource(parseReference(xpp)); 24131 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "definition")) { 24132 res.setDefinition(parseType("definition", xpp)); 24133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 24134 res.setTransformElement(parseCanonical(xpp)); 24135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dynamicValue")) { 24136 res.getDynamicValue().add(parseRequestOrchestrationActionDynamicValueComponent(xpp)); 24137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 24138 res.getAction().add(parseRequestOrchestrationActionComponent(xpp)); 24139 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24140 return false; 24141 } 24142 return true; 24143 } 24144 24145 protected RequestOrchestration.RequestOrchestrationActionConditionComponent parseRequestOrchestrationActionConditionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24146 RequestOrchestration.RequestOrchestrationActionConditionComponent res = new RequestOrchestration.RequestOrchestrationActionConditionComponent(); 24147 parseElementAttributes(xpp, res); 24148 next(xpp); 24149 int eventType = nextNoWhitespace(xpp); 24150 while (eventType != XmlPullParser.END_TAG) { 24151 if (!parseRequestOrchestrationActionConditionComponentContent(eventType, xpp, res)) 24152 unknownContent(xpp); 24153 eventType = nextNoWhitespace(xpp); 24154 } 24155 next(xpp); 24156 parseElementClose(res); 24157 return res; 24158 } 24159 24160 protected boolean parseRequestOrchestrationActionConditionComponentContent(int eventType, XmlPullParser xpp, RequestOrchestration.RequestOrchestrationActionConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24161 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 24162 res.setKindElement(parseEnumeration(xpp, Enumerations.ActionConditionKind.NULL, new Enumerations.ActionConditionKindEnumFactory())); 24163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 24164 res.setExpression(parseExpression(xpp)); 24165 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24166 return false; 24167 } 24168 return true; 24169 } 24170 24171 protected RequestOrchestration.RequestOrchestrationActionInputComponent parseRequestOrchestrationActionInputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24172 RequestOrchestration.RequestOrchestrationActionInputComponent res = new RequestOrchestration.RequestOrchestrationActionInputComponent(); 24173 parseElementAttributes(xpp, res); 24174 next(xpp); 24175 int eventType = nextNoWhitespace(xpp); 24176 while (eventType != XmlPullParser.END_TAG) { 24177 if (!parseRequestOrchestrationActionInputComponentContent(eventType, xpp, res)) 24178 unknownContent(xpp); 24179 eventType = nextNoWhitespace(xpp); 24180 } 24181 next(xpp); 24182 parseElementClose(res); 24183 return res; 24184 } 24185 24186 protected boolean parseRequestOrchestrationActionInputComponentContent(int eventType, XmlPullParser xpp, RequestOrchestration.RequestOrchestrationActionInputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24187 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 24188 res.setTitleElement(parseString(xpp)); 24189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 24190 res.setRequirement(parseDataRequirement(xpp)); 24191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedData")) { 24192 res.setRelatedDataElement(parseId(xpp)); 24193 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24194 return false; 24195 } 24196 return true; 24197 } 24198 24199 protected RequestOrchestration.RequestOrchestrationActionOutputComponent parseRequestOrchestrationActionOutputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24200 RequestOrchestration.RequestOrchestrationActionOutputComponent res = new RequestOrchestration.RequestOrchestrationActionOutputComponent(); 24201 parseElementAttributes(xpp, res); 24202 next(xpp); 24203 int eventType = nextNoWhitespace(xpp); 24204 while (eventType != XmlPullParser.END_TAG) { 24205 if (!parseRequestOrchestrationActionOutputComponentContent(eventType, xpp, res)) 24206 unknownContent(xpp); 24207 eventType = nextNoWhitespace(xpp); 24208 } 24209 next(xpp); 24210 parseElementClose(res); 24211 return res; 24212 } 24213 24214 protected boolean parseRequestOrchestrationActionOutputComponentContent(int eventType, XmlPullParser xpp, RequestOrchestration.RequestOrchestrationActionOutputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24215 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 24216 res.setTitleElement(parseString(xpp)); 24217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 24218 res.setRequirement(parseDataRequirement(xpp)); 24219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedData")) { 24220 res.setRelatedDataElement(parseString(xpp)); 24221 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24222 return false; 24223 } 24224 return true; 24225 } 24226 24227 protected RequestOrchestration.RequestOrchestrationActionRelatedActionComponent parseRequestOrchestrationActionRelatedActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24228 RequestOrchestration.RequestOrchestrationActionRelatedActionComponent res = new RequestOrchestration.RequestOrchestrationActionRelatedActionComponent(); 24229 parseElementAttributes(xpp, res); 24230 next(xpp); 24231 int eventType = nextNoWhitespace(xpp); 24232 while (eventType != XmlPullParser.END_TAG) { 24233 if (!parseRequestOrchestrationActionRelatedActionComponentContent(eventType, xpp, res)) 24234 unknownContent(xpp); 24235 eventType = nextNoWhitespace(xpp); 24236 } 24237 next(xpp); 24238 parseElementClose(res); 24239 return res; 24240 } 24241 24242 protected boolean parseRequestOrchestrationActionRelatedActionComponentContent(int eventType, XmlPullParser xpp, RequestOrchestration.RequestOrchestrationActionRelatedActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24243 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetId")) { 24244 res.setTargetIdElement(parseId(xpp)); 24245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 24246 res.setRelationshipElement(parseEnumeration(xpp, Enumerations.ActionRelationshipType.NULL, new Enumerations.ActionRelationshipTypeEnumFactory())); 24247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endRelationship")) { 24248 res.setEndRelationshipElement(parseEnumeration(xpp, Enumerations.ActionRelationshipType.NULL, new Enumerations.ActionRelationshipTypeEnumFactory())); 24249 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "offset")) { 24250 res.setOffset(parseType("offset", xpp)); 24251 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24252 return false; 24253 } 24254 return true; 24255 } 24256 24257 protected RequestOrchestration.RequestOrchestrationActionParticipantComponent parseRequestOrchestrationActionParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24258 RequestOrchestration.RequestOrchestrationActionParticipantComponent res = new RequestOrchestration.RequestOrchestrationActionParticipantComponent(); 24259 parseElementAttributes(xpp, res); 24260 next(xpp); 24261 int eventType = nextNoWhitespace(xpp); 24262 while (eventType != XmlPullParser.END_TAG) { 24263 if (!parseRequestOrchestrationActionParticipantComponentContent(eventType, xpp, res)) 24264 unknownContent(xpp); 24265 eventType = nextNoWhitespace(xpp); 24266 } 24267 next(xpp); 24268 parseElementClose(res); 24269 return res; 24270 } 24271 24272 protected boolean parseRequestOrchestrationActionParticipantComponentContent(int eventType, XmlPullParser xpp, RequestOrchestration.RequestOrchestrationActionParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24273 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 24274 res.setTypeElement(parseEnumeration(xpp, Enumerations.ActionParticipantType.NULL, new Enumerations.ActionParticipantTypeEnumFactory())); 24275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeCanonical")) { 24276 res.setTypeCanonicalElement(parseCanonical(xpp)); 24277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeReference")) { 24278 res.setTypeReference(parseReference(xpp)); 24279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 24280 res.setRole(parseCodeableConcept(xpp)); 24281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 24282 res.setFunction(parseCodeableConcept(xpp)); 24283 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "actor")) { 24284 res.setActor(parseType("actor", xpp)); 24285 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24286 return false; 24287 } 24288 return true; 24289 } 24290 24291 protected RequestOrchestration.RequestOrchestrationActionDynamicValueComponent parseRequestOrchestrationActionDynamicValueComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24292 RequestOrchestration.RequestOrchestrationActionDynamicValueComponent res = new RequestOrchestration.RequestOrchestrationActionDynamicValueComponent(); 24293 parseElementAttributes(xpp, res); 24294 next(xpp); 24295 int eventType = nextNoWhitespace(xpp); 24296 while (eventType != XmlPullParser.END_TAG) { 24297 if (!parseRequestOrchestrationActionDynamicValueComponentContent(eventType, xpp, res)) 24298 unknownContent(xpp); 24299 eventType = nextNoWhitespace(xpp); 24300 } 24301 next(xpp); 24302 parseElementClose(res); 24303 return res; 24304 } 24305 24306 protected boolean parseRequestOrchestrationActionDynamicValueComponentContent(int eventType, XmlPullParser xpp, RequestOrchestration.RequestOrchestrationActionDynamicValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24307 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 24308 res.setPathElement(parseString(xpp)); 24309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 24310 res.setExpression(parseExpression(xpp)); 24311 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24312 return false; 24313 } 24314 return true; 24315 } 24316 24317 protected Requirements parseRequirements(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24318 Requirements res = new Requirements(); 24319 parseResourceAttributes(xpp, res); 24320 next(xpp); 24321 int eventType = nextNoWhitespace(xpp); 24322 while (eventType != XmlPullParser.END_TAG) { 24323 if (!parseRequirementsContent(eventType, xpp, res)) 24324 unknownContent(xpp); 24325 eventType = nextNoWhitespace(xpp); 24326 } 24327 next(xpp); 24328 parseElementClose(res); 24329 return res; 24330 } 24331 24332 protected boolean parseRequirementsContent(int eventType, XmlPullParser xpp, Requirements res) throws XmlPullParserException, IOException, FHIRFormatError { 24333 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 24334 res.setUrlElement(parseUri(xpp)); 24335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 24336 res.getIdentifier().add(parseIdentifier(xpp)); 24337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 24338 res.setVersionElement(parseString(xpp)); 24339 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 24340 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 24341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 24342 res.setNameElement(parseString(xpp)); 24343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 24344 res.setTitleElement(parseString(xpp)); 24345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 24346 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 24347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 24348 res.setExperimentalElement(parseBoolean(xpp)); 24349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 24350 res.setDateElement(parseDateTime(xpp)); 24351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 24352 res.setPublisherElement(parseString(xpp)); 24353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 24354 res.getContact().add(parseContactDetail(xpp)); 24355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 24356 res.setDescriptionElement(parseMarkdown(xpp)); 24357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 24358 res.getUseContext().add(parseUsageContext(xpp)); 24359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 24360 res.getJurisdiction().add(parseCodeableConcept(xpp)); 24361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 24362 res.setPurposeElement(parseMarkdown(xpp)); 24363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 24364 res.setCopyrightElement(parseMarkdown(xpp)); 24365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 24366 res.setCopyrightLabelElement(parseString(xpp)); 24367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 24368 res.getDerivedFrom().add(parseCanonical(xpp)); 24369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 24370 res.getReference().add(parseUrl(xpp)); 24371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 24372 res.getActor().add(parseCanonical(xpp)); 24373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statement")) { 24374 res.getStatement().add(parseRequirementsStatementComponent(xpp)); 24375 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 24376 return false; 24377 } 24378 return true; 24379 } 24380 24381 protected Requirements.RequirementsStatementComponent parseRequirementsStatementComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24382 Requirements.RequirementsStatementComponent res = new Requirements.RequirementsStatementComponent(); 24383 parseElementAttributes(xpp, res); 24384 next(xpp); 24385 int eventType = nextNoWhitespace(xpp); 24386 while (eventType != XmlPullParser.END_TAG) { 24387 if (!parseRequirementsStatementComponentContent(eventType, xpp, res)) 24388 unknownContent(xpp); 24389 eventType = nextNoWhitespace(xpp); 24390 } 24391 next(xpp); 24392 parseElementClose(res); 24393 return res; 24394 } 24395 24396 protected boolean parseRequirementsStatementComponentContent(int eventType, XmlPullParser xpp, Requirements.RequirementsStatementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24397 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 24398 res.setKeyElement(parseId(xpp)); 24399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 24400 res.setLabelElement(parseString(xpp)); 24401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conformance")) { 24402 res.getConformance().add(parseEnumeration(xpp, Requirements.ConformanceExpectation.NULL, new Requirements.ConformanceExpectationEnumFactory())); 24403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionality")) { 24404 res.setConditionalityElement(parseBoolean(xpp)); 24405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 24406 res.setRequirementElement(parseMarkdown(xpp)); 24407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 24408 res.setDerivedFromElement(parseString(xpp)); 24409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 24410 res.setParentElement(parseString(xpp)); 24411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("satisfiedBy")) { 24412 res.getSatisfiedBy().add(parseUrl(xpp)); 24413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 24414 res.getReference().add(parseUrl(xpp)); 24415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 24416 res.getSource().add(parseReference(xpp)); 24417 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24418 return false; 24419 } 24420 return true; 24421 } 24422 24423 protected ResearchStudy parseResearchStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24424 ResearchStudy res = new ResearchStudy(); 24425 parseResourceAttributes(xpp, res); 24426 next(xpp); 24427 int eventType = nextNoWhitespace(xpp); 24428 while (eventType != XmlPullParser.END_TAG) { 24429 if (!parseResearchStudyContent(eventType, xpp, res)) 24430 unknownContent(xpp); 24431 eventType = nextNoWhitespace(xpp); 24432 } 24433 next(xpp); 24434 parseElementClose(res); 24435 return res; 24436 } 24437 24438 protected boolean parseResearchStudyContent(int eventType, XmlPullParser xpp, ResearchStudy res) throws XmlPullParserException, IOException, FHIRFormatError { 24439 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 24440 res.setUrlElement(parseUri(xpp)); 24441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 24442 res.getIdentifier().add(parseIdentifier(xpp)); 24443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 24444 res.setVersionElement(parseString(xpp)); 24445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 24446 res.setNameElement(parseString(xpp)); 24447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 24448 res.setTitleElement(parseString(xpp)); 24449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 24450 res.getLabel().add(parseResearchStudyLabelComponent(xpp)); 24451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 24452 res.getProtocol().add(parseReference(xpp)); 24453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 24454 res.getPartOf().add(parseReference(xpp)); 24455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 24456 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 24457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 24458 res.setDateElement(parseDateTime(xpp)); 24459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 24460 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 24461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("primaryPurposeType")) { 24462 res.setPrimaryPurposeType(parseCodeableConcept(xpp)); 24463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("phase")) { 24464 res.setPhase(parseCodeableConcept(xpp)); 24465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("studyDesign")) { 24466 res.getStudyDesign().add(parseCodeableConcept(xpp)); 24467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 24468 res.getFocus().add(parseCodeableReference(xpp)); 24469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 24470 res.getCondition().add(parseCodeableConcept(xpp)); 24471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("keyword")) { 24472 res.getKeyword().add(parseCodeableConcept(xpp)); 24473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("region")) { 24474 res.getRegion().add(parseCodeableConcept(xpp)); 24475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("descriptionSummary")) { 24476 res.setDescriptionSummaryElement(parseMarkdown(xpp)); 24477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 24478 res.setDescriptionElement(parseMarkdown(xpp)); 24479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 24480 res.setPeriod(parsePeriod(xpp)); 24481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 24482 res.getSite().add(parseReference(xpp)); 24483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 24484 res.getNote().add(parseAnnotation(xpp)); 24485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { 24486 res.getClassifier().add(parseCodeableConcept(xpp)); 24487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("associatedParty")) { 24488 res.getAssociatedParty().add(parseResearchStudyAssociatedPartyComponent(xpp)); 24489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("progressStatus")) { 24490 res.getProgressStatus().add(parseResearchStudyProgressStatusComponent(xpp)); 24491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whyStopped")) { 24492 res.setWhyStopped(parseCodeableConcept(xpp)); 24493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recruitment")) { 24494 res.setRecruitment(parseResearchStudyRecruitmentComponent(xpp)); 24495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparisonGroup")) { 24496 res.getComparisonGroup().add(parseResearchStudyComparisonGroupComponent(xpp)); 24497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("objective")) { 24498 res.getObjective().add(parseResearchStudyObjectiveComponent(xpp)); 24499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeMeasure")) { 24500 res.getOutcomeMeasure().add(parseResearchStudyOutcomeMeasureComponent(xpp)); 24501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 24502 res.getResult().add(parseReference(xpp)); 24503 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 24504 return false; 24505 } 24506 return true; 24507 } 24508 24509 protected ResearchStudy.ResearchStudyLabelComponent parseResearchStudyLabelComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24510 ResearchStudy.ResearchStudyLabelComponent res = new ResearchStudy.ResearchStudyLabelComponent(); 24511 parseElementAttributes(xpp, res); 24512 next(xpp); 24513 int eventType = nextNoWhitespace(xpp); 24514 while (eventType != XmlPullParser.END_TAG) { 24515 if (!parseResearchStudyLabelComponentContent(eventType, xpp, res)) 24516 unknownContent(xpp); 24517 eventType = nextNoWhitespace(xpp); 24518 } 24519 next(xpp); 24520 parseElementClose(res); 24521 return res; 24522 } 24523 24524 protected boolean parseResearchStudyLabelComponentContent(int eventType, XmlPullParser xpp, ResearchStudy.ResearchStudyLabelComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24525 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 24526 res.setType(parseCodeableConcept(xpp)); 24527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 24528 res.setValueElement(parseString(xpp)); 24529 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24530 return false; 24531 } 24532 return true; 24533 } 24534 24535 protected ResearchStudy.ResearchStudyAssociatedPartyComponent parseResearchStudyAssociatedPartyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24536 ResearchStudy.ResearchStudyAssociatedPartyComponent res = new ResearchStudy.ResearchStudyAssociatedPartyComponent(); 24537 parseElementAttributes(xpp, res); 24538 next(xpp); 24539 int eventType = nextNoWhitespace(xpp); 24540 while (eventType != XmlPullParser.END_TAG) { 24541 if (!parseResearchStudyAssociatedPartyComponentContent(eventType, xpp, res)) 24542 unknownContent(xpp); 24543 eventType = nextNoWhitespace(xpp); 24544 } 24545 next(xpp); 24546 parseElementClose(res); 24547 return res; 24548 } 24549 24550 protected boolean parseResearchStudyAssociatedPartyComponentContent(int eventType, XmlPullParser xpp, ResearchStudy.ResearchStudyAssociatedPartyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24551 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 24552 res.setNameElement(parseString(xpp)); 24553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 24554 res.setRole(parseCodeableConcept(xpp)); 24555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 24556 res.getPeriod().add(parsePeriod(xpp)); 24557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { 24558 res.getClassifier().add(parseCodeableConcept(xpp)); 24559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 24560 res.setParty(parseReference(xpp)); 24561 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24562 return false; 24563 } 24564 return true; 24565 } 24566 24567 protected ResearchStudy.ResearchStudyProgressStatusComponent parseResearchStudyProgressStatusComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24568 ResearchStudy.ResearchStudyProgressStatusComponent res = new ResearchStudy.ResearchStudyProgressStatusComponent(); 24569 parseElementAttributes(xpp, res); 24570 next(xpp); 24571 int eventType = nextNoWhitespace(xpp); 24572 while (eventType != XmlPullParser.END_TAG) { 24573 if (!parseResearchStudyProgressStatusComponentContent(eventType, xpp, res)) 24574 unknownContent(xpp); 24575 eventType = nextNoWhitespace(xpp); 24576 } 24577 next(xpp); 24578 parseElementClose(res); 24579 return res; 24580 } 24581 24582 protected boolean parseResearchStudyProgressStatusComponentContent(int eventType, XmlPullParser xpp, ResearchStudy.ResearchStudyProgressStatusComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24583 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 24584 res.setState(parseCodeableConcept(xpp)); 24585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { 24586 res.setActualElement(parseBoolean(xpp)); 24587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 24588 res.setPeriod(parsePeriod(xpp)); 24589 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24590 return false; 24591 } 24592 return true; 24593 } 24594 24595 protected ResearchStudy.ResearchStudyRecruitmentComponent parseResearchStudyRecruitmentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24596 ResearchStudy.ResearchStudyRecruitmentComponent res = new ResearchStudy.ResearchStudyRecruitmentComponent(); 24597 parseElementAttributes(xpp, res); 24598 next(xpp); 24599 int eventType = nextNoWhitespace(xpp); 24600 while (eventType != XmlPullParser.END_TAG) { 24601 if (!parseResearchStudyRecruitmentComponentContent(eventType, xpp, res)) 24602 unknownContent(xpp); 24603 eventType = nextNoWhitespace(xpp); 24604 } 24605 next(xpp); 24606 parseElementClose(res); 24607 return res; 24608 } 24609 24610 protected boolean parseResearchStudyRecruitmentComponentContent(int eventType, XmlPullParser xpp, ResearchStudy.ResearchStudyRecruitmentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24611 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetNumber")) { 24612 res.setTargetNumberElement(parseUnsignedInt(xpp)); 24613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actualNumber")) { 24614 res.setActualNumberElement(parseUnsignedInt(xpp)); 24615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibility")) { 24616 res.setEligibility(parseReference(xpp)); 24617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actualGroup")) { 24618 res.setActualGroup(parseReference(xpp)); 24619 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24620 return false; 24621 } 24622 return true; 24623 } 24624 24625 protected ResearchStudy.ResearchStudyComparisonGroupComponent parseResearchStudyComparisonGroupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24626 ResearchStudy.ResearchStudyComparisonGroupComponent res = new ResearchStudy.ResearchStudyComparisonGroupComponent(); 24627 parseElementAttributes(xpp, res); 24628 next(xpp); 24629 int eventType = nextNoWhitespace(xpp); 24630 while (eventType != XmlPullParser.END_TAG) { 24631 if (!parseResearchStudyComparisonGroupComponentContent(eventType, xpp, res)) 24632 unknownContent(xpp); 24633 eventType = nextNoWhitespace(xpp); 24634 } 24635 next(xpp); 24636 parseElementClose(res); 24637 return res; 24638 } 24639 24640 protected boolean parseResearchStudyComparisonGroupComponentContent(int eventType, XmlPullParser xpp, ResearchStudy.ResearchStudyComparisonGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24641 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 24642 res.setLinkIdElement(parseId(xpp)); 24643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 24644 res.setNameElement(parseString(xpp)); 24645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 24646 res.setType(parseCodeableConcept(xpp)); 24647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 24648 res.setDescriptionElement(parseMarkdown(xpp)); 24649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedExposure")) { 24650 res.getIntendedExposure().add(parseReference(xpp)); 24651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observedGroup")) { 24652 res.setObservedGroup(parseReference(xpp)); 24653 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24654 return false; 24655 } 24656 return true; 24657 } 24658 24659 protected ResearchStudy.ResearchStudyObjectiveComponent parseResearchStudyObjectiveComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24660 ResearchStudy.ResearchStudyObjectiveComponent res = new ResearchStudy.ResearchStudyObjectiveComponent(); 24661 parseElementAttributes(xpp, res); 24662 next(xpp); 24663 int eventType = nextNoWhitespace(xpp); 24664 while (eventType != XmlPullParser.END_TAG) { 24665 if (!parseResearchStudyObjectiveComponentContent(eventType, xpp, res)) 24666 unknownContent(xpp); 24667 eventType = nextNoWhitespace(xpp); 24668 } 24669 next(xpp); 24670 parseElementClose(res); 24671 return res; 24672 } 24673 24674 protected boolean parseResearchStudyObjectiveComponentContent(int eventType, XmlPullParser xpp, ResearchStudy.ResearchStudyObjectiveComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24675 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 24676 res.setNameElement(parseString(xpp)); 24677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 24678 res.setType(parseCodeableConcept(xpp)); 24679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 24680 res.setDescriptionElement(parseMarkdown(xpp)); 24681 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24682 return false; 24683 } 24684 return true; 24685 } 24686 24687 protected ResearchStudy.ResearchStudyOutcomeMeasureComponent parseResearchStudyOutcomeMeasureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24688 ResearchStudy.ResearchStudyOutcomeMeasureComponent res = new ResearchStudy.ResearchStudyOutcomeMeasureComponent(); 24689 parseElementAttributes(xpp, res); 24690 next(xpp); 24691 int eventType = nextNoWhitespace(xpp); 24692 while (eventType != XmlPullParser.END_TAG) { 24693 if (!parseResearchStudyOutcomeMeasureComponentContent(eventType, xpp, res)) 24694 unknownContent(xpp); 24695 eventType = nextNoWhitespace(xpp); 24696 } 24697 next(xpp); 24698 parseElementClose(res); 24699 return res; 24700 } 24701 24702 protected boolean parseResearchStudyOutcomeMeasureComponentContent(int eventType, XmlPullParser xpp, ResearchStudy.ResearchStudyOutcomeMeasureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24703 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 24704 res.setNameElement(parseString(xpp)); 24705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 24706 res.getType().add(parseCodeableConcept(xpp)); 24707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 24708 res.setDescriptionElement(parseMarkdown(xpp)); 24709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 24710 res.setReference(parseReference(xpp)); 24711 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24712 return false; 24713 } 24714 return true; 24715 } 24716 24717 protected ResearchSubject parseResearchSubject(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24718 ResearchSubject res = new ResearchSubject(); 24719 parseResourceAttributes(xpp, res); 24720 next(xpp); 24721 int eventType = nextNoWhitespace(xpp); 24722 while (eventType != XmlPullParser.END_TAG) { 24723 if (!parseResearchSubjectContent(eventType, xpp, res)) 24724 unknownContent(xpp); 24725 eventType = nextNoWhitespace(xpp); 24726 } 24727 next(xpp); 24728 parseElementClose(res); 24729 return res; 24730 } 24731 24732 protected boolean parseResearchSubjectContent(int eventType, XmlPullParser xpp, ResearchSubject res) throws XmlPullParserException, IOException, FHIRFormatError { 24733 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 24734 res.getIdentifier().add(parseIdentifier(xpp)); 24735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 24736 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 24737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("progress")) { 24738 res.getProgress().add(parseResearchSubjectProgressComponent(xpp)); 24739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 24740 res.setPeriod(parsePeriod(xpp)); 24741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 24742 res.setStudy(parseReference(xpp)); 24743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 24744 res.setSubject(parseReference(xpp)); 24745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assignedComparisonGroup")) { 24746 res.setAssignedComparisonGroupElement(parseId(xpp)); 24747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actualComparisonGroup")) { 24748 res.setActualComparisonGroupElement(parseId(xpp)); 24749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("consent")) { 24750 res.getConsent().add(parseReference(xpp)); 24751 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 24752 return false; 24753 } 24754 return true; 24755 } 24756 24757 protected ResearchSubject.ResearchSubjectProgressComponent parseResearchSubjectProgressComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24758 ResearchSubject.ResearchSubjectProgressComponent res = new ResearchSubject.ResearchSubjectProgressComponent(); 24759 parseElementAttributes(xpp, res); 24760 next(xpp); 24761 int eventType = nextNoWhitespace(xpp); 24762 while (eventType != XmlPullParser.END_TAG) { 24763 if (!parseResearchSubjectProgressComponentContent(eventType, xpp, res)) 24764 unknownContent(xpp); 24765 eventType = nextNoWhitespace(xpp); 24766 } 24767 next(xpp); 24768 parseElementClose(res); 24769 return res; 24770 } 24771 24772 protected boolean parseResearchSubjectProgressComponentContent(int eventType, XmlPullParser xpp, ResearchSubject.ResearchSubjectProgressComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24773 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 24774 res.setType(parseCodeableConcept(xpp)); 24775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectState")) { 24776 res.setSubjectState(parseCodeableConcept(xpp)); 24777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("milestone")) { 24778 res.setMilestone(parseCodeableConcept(xpp)); 24779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 24780 res.setReason(parseCodeableConcept(xpp)); 24781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("startDate")) { 24782 res.setStartDateElement(parseDateTime(xpp)); 24783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endDate")) { 24784 res.setEndDateElement(parseDateTime(xpp)); 24785 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24786 return false; 24787 } 24788 return true; 24789 } 24790 24791 protected RiskAssessment parseRiskAssessment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24792 RiskAssessment res = new RiskAssessment(); 24793 parseResourceAttributes(xpp, res); 24794 next(xpp); 24795 int eventType = nextNoWhitespace(xpp); 24796 while (eventType != XmlPullParser.END_TAG) { 24797 if (!parseRiskAssessmentContent(eventType, xpp, res)) 24798 unknownContent(xpp); 24799 eventType = nextNoWhitespace(xpp); 24800 } 24801 next(xpp); 24802 parseElementClose(res); 24803 return res; 24804 } 24805 24806 protected boolean parseRiskAssessmentContent(int eventType, XmlPullParser xpp, RiskAssessment res) throws XmlPullParserException, IOException, FHIRFormatError { 24807 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 24808 res.getIdentifier().add(parseIdentifier(xpp)); 24809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 24810 res.setBasedOn(parseReference(xpp)); 24811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 24812 res.setParent(parseReference(xpp)); 24813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 24814 res.setStatusElement(parseEnumeration(xpp, Enumerations.ObservationStatus.NULL, new Enumerations.ObservationStatusEnumFactory())); 24815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 24816 res.setMethod(parseCodeableConcept(xpp)); 24817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 24818 res.setCode(parseCodeableConcept(xpp)); 24819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 24820 res.setSubject(parseReference(xpp)); 24821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 24822 res.setEncounter(parseReference(xpp)); 24823 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 24824 res.setOccurrence(parseType("occurrence", xpp)); 24825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 24826 res.setCondition(parseReference(xpp)); 24827 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 24828 res.setPerformer(parseReference(xpp)); 24829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 24830 res.getReason().add(parseCodeableReference(xpp)); 24831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 24832 res.getBasis().add(parseReference(xpp)); 24833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prediction")) { 24834 res.getPrediction().add(parseRiskAssessmentPredictionComponent(xpp)); 24835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 24836 res.setMitigationElement(parseString(xpp)); 24837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 24838 res.getNote().add(parseAnnotation(xpp)); 24839 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 24840 return false; 24841 } 24842 return true; 24843 } 24844 24845 protected RiskAssessment.RiskAssessmentPredictionComponent parseRiskAssessmentPredictionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24846 RiskAssessment.RiskAssessmentPredictionComponent res = new RiskAssessment.RiskAssessmentPredictionComponent(); 24847 parseElementAttributes(xpp, res); 24848 next(xpp); 24849 int eventType = nextNoWhitespace(xpp); 24850 while (eventType != XmlPullParser.END_TAG) { 24851 if (!parseRiskAssessmentPredictionComponentContent(eventType, xpp, res)) 24852 unknownContent(xpp); 24853 eventType = nextNoWhitespace(xpp); 24854 } 24855 next(xpp); 24856 parseElementClose(res); 24857 return res; 24858 } 24859 24860 protected boolean parseRiskAssessmentPredictionComponentContent(int eventType, XmlPullParser xpp, RiskAssessment.RiskAssessmentPredictionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 24861 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 24862 res.setOutcome(parseCodeableConcept(xpp)); 24863 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "probability")) { 24864 res.setProbability(parseType("probability", xpp)); 24865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualitativeRisk")) { 24866 res.setQualitativeRisk(parseCodeableConcept(xpp)); 24867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relativeRisk")) { 24868 res.setRelativeRiskElement(parseDecimal(xpp)); 24869 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 24870 res.setWhen(parseType("when", xpp)); 24871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 24872 res.setRationaleElement(parseString(xpp)); 24873 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 24874 return false; 24875 } 24876 return true; 24877 } 24878 24879 protected Schedule parseSchedule(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24880 Schedule res = new Schedule(); 24881 parseResourceAttributes(xpp, res); 24882 next(xpp); 24883 int eventType = nextNoWhitespace(xpp); 24884 while (eventType != XmlPullParser.END_TAG) { 24885 if (!parseScheduleContent(eventType, xpp, res)) 24886 unknownContent(xpp); 24887 eventType = nextNoWhitespace(xpp); 24888 } 24889 next(xpp); 24890 parseElementClose(res); 24891 return res; 24892 } 24893 24894 protected boolean parseScheduleContent(int eventType, XmlPullParser xpp, Schedule res) throws XmlPullParserException, IOException, FHIRFormatError { 24895 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 24896 res.getIdentifier().add(parseIdentifier(xpp)); 24897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 24898 res.setActiveElement(parseBoolean(xpp)); 24899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 24900 res.getServiceCategory().add(parseCodeableConcept(xpp)); 24901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 24902 res.getServiceType().add(parseCodeableReference(xpp)); 24903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 24904 res.getSpecialty().add(parseCodeableConcept(xpp)); 24905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 24906 res.setNameElement(parseString(xpp)); 24907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 24908 res.getActor().add(parseReference(xpp)); 24909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("planningHorizon")) { 24910 res.setPlanningHorizon(parsePeriod(xpp)); 24911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 24912 res.setCommentElement(parseMarkdown(xpp)); 24913 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 24914 return false; 24915 } 24916 return true; 24917 } 24918 24919 protected SearchParameter parseSearchParameter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 24920 SearchParameter res = new SearchParameter(); 24921 parseResourceAttributes(xpp, res); 24922 next(xpp); 24923 int eventType = nextNoWhitespace(xpp); 24924 while (eventType != XmlPullParser.END_TAG) { 24925 if (!parseSearchParameterContent(eventType, xpp, res)) 24926 unknownContent(xpp); 24927 eventType = nextNoWhitespace(xpp); 24928 } 24929 next(xpp); 24930 parseElementClose(res); 24931 return res; 24932 } 24933 24934 protected boolean parseSearchParameterContent(int eventType, XmlPullParser xpp, SearchParameter res) throws XmlPullParserException, IOException, FHIRFormatError { 24935 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 24936 res.setUrlElement(parseUri(xpp)); 24937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 24938 res.getIdentifier().add(parseIdentifier(xpp)); 24939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 24940 res.setVersionElement(parseString(xpp)); 24941 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 24942 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 24943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 24944 res.setNameElement(parseString(xpp)); 24945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 24946 res.setTitleElement(parseString(xpp)); 24947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 24948 res.setDerivedFromElement(parseCanonical(xpp)); 24949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 24950 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 24951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 24952 res.setExperimentalElement(parseBoolean(xpp)); 24953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 24954 res.setDateElement(parseDateTime(xpp)); 24955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 24956 res.setPublisherElement(parseString(xpp)); 24957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 24958 res.getContact().add(parseContactDetail(xpp)); 24959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 24960 res.setDescriptionElement(parseMarkdown(xpp)); 24961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 24962 res.getUseContext().add(parseUsageContext(xpp)); 24963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 24964 res.getJurisdiction().add(parseCodeableConcept(xpp)); 24965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 24966 res.setPurposeElement(parseMarkdown(xpp)); 24967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 24968 res.setCopyrightElement(parseMarkdown(xpp)); 24969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 24970 res.setCopyrightLabelElement(parseString(xpp)); 24971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 24972 res.setCodeElement(parseCode(xpp)); 24973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 24974 res.getBase().add(parseEnumeration(xpp, Enumerations.VersionIndependentResourceTypesAll.NULL, new Enumerations.VersionIndependentResourceTypesAllEnumFactory())); 24975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 24976 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 24977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 24978 res.setExpressionElement(parseString(xpp)); 24979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processingMode")) { 24980 res.setProcessingModeElement(parseEnumeration(xpp, SearchParameter.SearchProcessingModeType.NULL, new SearchParameter.SearchProcessingModeTypeEnumFactory())); 24981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("constraint")) { 24982 res.setConstraintElement(parseString(xpp)); 24983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 24984 res.getTarget().add(parseEnumeration(xpp, Enumerations.VersionIndependentResourceTypesAll.NULL, new Enumerations.VersionIndependentResourceTypesAllEnumFactory())); 24985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("multipleOr")) { 24986 res.setMultipleOrElement(parseBoolean(xpp)); 24987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("multipleAnd")) { 24988 res.setMultipleAndElement(parseBoolean(xpp)); 24989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 24990 res.getComparator().add(parseEnumeration(xpp, Enumerations.SearchComparator.NULL, new Enumerations.SearchComparatorEnumFactory())); 24991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 24992 res.getModifier().add(parseEnumeration(xpp, Enumerations.SearchModifierCode.NULL, new Enumerations.SearchModifierCodeEnumFactory())); 24993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chain")) { 24994 res.getChain().add(parseString(xpp)); 24995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 24996 res.getComponent().add(parseSearchParameterComponentComponent(xpp)); 24997 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 24998 return false; 24999 } 25000 return true; 25001 } 25002 25003 protected SearchParameter.SearchParameterComponentComponent parseSearchParameterComponentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25004 SearchParameter.SearchParameterComponentComponent res = new SearchParameter.SearchParameterComponentComponent(); 25005 parseElementAttributes(xpp, res); 25006 next(xpp); 25007 int eventType = nextNoWhitespace(xpp); 25008 while (eventType != XmlPullParser.END_TAG) { 25009 if (!parseSearchParameterComponentComponentContent(eventType, xpp, res)) 25010 unknownContent(xpp); 25011 eventType = nextNoWhitespace(xpp); 25012 } 25013 next(xpp); 25014 parseElementClose(res); 25015 return res; 25016 } 25017 25018 protected boolean parseSearchParameterComponentComponentContent(int eventType, XmlPullParser xpp, SearchParameter.SearchParameterComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25019 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 25020 res.setDefinitionElement(parseCanonical(xpp)); 25021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 25022 res.setExpressionElement(parseString(xpp)); 25023 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25024 return false; 25025 } 25026 return true; 25027 } 25028 25029 protected ServiceRequest parseServiceRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25030 ServiceRequest res = new ServiceRequest(); 25031 parseResourceAttributes(xpp, res); 25032 next(xpp); 25033 int eventType = nextNoWhitespace(xpp); 25034 while (eventType != XmlPullParser.END_TAG) { 25035 if (!parseServiceRequestContent(eventType, xpp, res)) 25036 unknownContent(xpp); 25037 eventType = nextNoWhitespace(xpp); 25038 } 25039 next(xpp); 25040 parseElementClose(res); 25041 return res; 25042 } 25043 25044 protected boolean parseServiceRequestContent(int eventType, XmlPullParser xpp, ServiceRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 25045 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 25046 res.getIdentifier().add(parseIdentifier(xpp)); 25047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 25048 res.getInstantiatesCanonical().add(parseCanonical(xpp)); 25049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 25050 res.getInstantiatesUri().add(parseUri(xpp)); 25051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 25052 res.getBasedOn().add(parseReference(xpp)); 25053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 25054 res.getReplaces().add(parseReference(xpp)); 25055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requisition")) { 25056 res.setRequisition(parseIdentifier(xpp)); 25057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 25058 res.setStatusElement(parseEnumeration(xpp, Enumerations.RequestStatus.NULL, new Enumerations.RequestStatusEnumFactory())); 25059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 25060 res.setIntentElement(parseEnumeration(xpp, Enumerations.RequestIntent.NULL, new Enumerations.RequestIntentEnumFactory())); 25061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 25062 res.getCategory().add(parseCodeableConcept(xpp)); 25063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 25064 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 25065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 25066 res.setDoNotPerformElement(parseBoolean(xpp)); 25067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 25068 res.setCode(parseCodeableReference(xpp)); 25069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderDetail")) { 25070 res.getOrderDetail().add(parseServiceRequestOrderDetailComponent(xpp)); 25071 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "quantity")) { 25072 res.setQuantity(parseType("quantity", xpp)); 25073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 25074 res.setSubject(parseReference(xpp)); 25075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 25076 res.getFocus().add(parseReference(xpp)); 25077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 25078 res.setEncounter(parseReference(xpp)); 25079 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 25080 res.setOccurrence(parseType("occurrence", xpp)); 25081 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 25082 res.setAsNeeded(parseType("asNeeded", xpp)); 25083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 25084 res.setAuthoredOnElement(parseDateTime(xpp)); 25085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 25086 res.setRequester(parseReference(xpp)); 25087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 25088 res.setPerformerType(parseCodeableConcept(xpp)); 25089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 25090 res.getPerformer().add(parseReference(xpp)); 25091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 25092 res.getLocation().add(parseCodeableReference(xpp)); 25093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 25094 res.getReason().add(parseCodeableReference(xpp)); 25095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 25096 res.getInsurance().add(parseReference(xpp)); 25097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 25098 res.getSupportingInfo().add(parseCodeableReference(xpp)); 25099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 25100 res.getSpecimen().add(parseReference(xpp)); 25101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 25102 res.getBodySite().add(parseCodeableConcept(xpp)); 25103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodyStructure")) { 25104 res.setBodyStructure(parseReference(xpp)); 25105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 25106 res.getNote().add(parseAnnotation(xpp)); 25107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientInstruction")) { 25108 res.getPatientInstruction().add(parseServiceRequestPatientInstructionComponent(xpp)); 25109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 25110 res.getRelevantHistory().add(parseReference(xpp)); 25111 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 25112 return false; 25113 } 25114 return true; 25115 } 25116 25117 protected ServiceRequest.ServiceRequestOrderDetailComponent parseServiceRequestOrderDetailComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25118 ServiceRequest.ServiceRequestOrderDetailComponent res = new ServiceRequest.ServiceRequestOrderDetailComponent(); 25119 parseElementAttributes(xpp, res); 25120 next(xpp); 25121 int eventType = nextNoWhitespace(xpp); 25122 while (eventType != XmlPullParser.END_TAG) { 25123 if (!parseServiceRequestOrderDetailComponentContent(eventType, xpp, res)) 25124 unknownContent(xpp); 25125 eventType = nextNoWhitespace(xpp); 25126 } 25127 next(xpp); 25128 parseElementClose(res); 25129 return res; 25130 } 25131 25132 protected boolean parseServiceRequestOrderDetailComponentContent(int eventType, XmlPullParser xpp, ServiceRequest.ServiceRequestOrderDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25133 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameterFocus")) { 25134 res.setParameterFocus(parseCodeableReference(xpp)); 25135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 25136 res.getParameter().add(parseServiceRequestOrderDetailParameterComponent(xpp)); 25137 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25138 return false; 25139 } 25140 return true; 25141 } 25142 25143 protected ServiceRequest.ServiceRequestOrderDetailParameterComponent parseServiceRequestOrderDetailParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25144 ServiceRequest.ServiceRequestOrderDetailParameterComponent res = new ServiceRequest.ServiceRequestOrderDetailParameterComponent(); 25145 parseElementAttributes(xpp, res); 25146 next(xpp); 25147 int eventType = nextNoWhitespace(xpp); 25148 while (eventType != XmlPullParser.END_TAG) { 25149 if (!parseServiceRequestOrderDetailParameterComponentContent(eventType, xpp, res)) 25150 unknownContent(xpp); 25151 eventType = nextNoWhitespace(xpp); 25152 } 25153 next(xpp); 25154 parseElementClose(res); 25155 return res; 25156 } 25157 25158 protected boolean parseServiceRequestOrderDetailParameterComponentContent(int eventType, XmlPullParser xpp, ServiceRequest.ServiceRequestOrderDetailParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25159 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 25160 res.setCode(parseCodeableConcept(xpp)); 25161 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 25162 res.setValue(parseType("value", xpp)); 25163 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25164 return false; 25165 } 25166 return true; 25167 } 25168 25169 protected ServiceRequest.ServiceRequestPatientInstructionComponent parseServiceRequestPatientInstructionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25170 ServiceRequest.ServiceRequestPatientInstructionComponent res = new ServiceRequest.ServiceRequestPatientInstructionComponent(); 25171 parseElementAttributes(xpp, res); 25172 next(xpp); 25173 int eventType = nextNoWhitespace(xpp); 25174 while (eventType != XmlPullParser.END_TAG) { 25175 if (!parseServiceRequestPatientInstructionComponentContent(eventType, xpp, res)) 25176 unknownContent(xpp); 25177 eventType = nextNoWhitespace(xpp); 25178 } 25179 next(xpp); 25180 parseElementClose(res); 25181 return res; 25182 } 25183 25184 protected boolean parseServiceRequestPatientInstructionComponentContent(int eventType, XmlPullParser xpp, ServiceRequest.ServiceRequestPatientInstructionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25185 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "instruction")) { 25186 res.setInstruction(parseType("instruction", xpp)); 25187 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25188 return false; 25189 } 25190 return true; 25191 } 25192 25193 protected Slot parseSlot(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25194 Slot res = new Slot(); 25195 parseResourceAttributes(xpp, res); 25196 next(xpp); 25197 int eventType = nextNoWhitespace(xpp); 25198 while (eventType != XmlPullParser.END_TAG) { 25199 if (!parseSlotContent(eventType, xpp, res)) 25200 unknownContent(xpp); 25201 eventType = nextNoWhitespace(xpp); 25202 } 25203 next(xpp); 25204 parseElementClose(res); 25205 return res; 25206 } 25207 25208 protected boolean parseSlotContent(int eventType, XmlPullParser xpp, Slot res) throws XmlPullParserException, IOException, FHIRFormatError { 25209 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 25210 res.getIdentifier().add(parseIdentifier(xpp)); 25211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 25212 res.getServiceCategory().add(parseCodeableConcept(xpp)); 25213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 25214 res.getServiceType().add(parseCodeableReference(xpp)); 25215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 25216 res.getSpecialty().add(parseCodeableConcept(xpp)); 25217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentType")) { 25218 res.getAppointmentType().add(parseCodeableConcept(xpp)); 25219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 25220 res.setSchedule(parseReference(xpp)); 25221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 25222 res.setStatusElement(parseEnumeration(xpp, Slot.SlotStatus.NULL, new Slot.SlotStatusEnumFactory())); 25223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 25224 res.setStartElement(parseInstant(xpp)); 25225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 25226 res.setEndElement(parseInstant(xpp)); 25227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overbooked")) { 25228 res.setOverbookedElement(parseBoolean(xpp)); 25229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 25230 res.setCommentElement(parseString(xpp)); 25231 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 25232 return false; 25233 } 25234 return true; 25235 } 25236 25237 protected Specimen parseSpecimen(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25238 Specimen res = new Specimen(); 25239 parseResourceAttributes(xpp, res); 25240 next(xpp); 25241 int eventType = nextNoWhitespace(xpp); 25242 while (eventType != XmlPullParser.END_TAG) { 25243 if (!parseSpecimenContent(eventType, xpp, res)) 25244 unknownContent(xpp); 25245 eventType = nextNoWhitespace(xpp); 25246 } 25247 next(xpp); 25248 parseElementClose(res); 25249 return res; 25250 } 25251 25252 protected boolean parseSpecimenContent(int eventType, XmlPullParser xpp, Specimen res) throws XmlPullParserException, IOException, FHIRFormatError { 25253 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 25254 res.getIdentifier().add(parseIdentifier(xpp)); 25255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accessionIdentifier")) { 25256 res.setAccessionIdentifier(parseIdentifier(xpp)); 25257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 25258 res.setStatusElement(parseEnumeration(xpp, Specimen.SpecimenStatus.NULL, new Specimen.SpecimenStatusEnumFactory())); 25259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 25260 res.setType(parseCodeableConcept(xpp)); 25261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 25262 res.setSubject(parseReference(xpp)); 25263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receivedTime")) { 25264 res.setReceivedTimeElement(parseDateTime(xpp)); 25265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 25266 res.getParent().add(parseReference(xpp)); 25267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 25268 res.getRequest().add(parseReference(xpp)); 25269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("combined")) { 25270 res.setCombinedElement(parseEnumeration(xpp, Specimen.SpecimenCombined.NULL, new Specimen.SpecimenCombinedEnumFactory())); 25271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 25272 res.getRole().add(parseCodeableConcept(xpp)); 25273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("feature")) { 25274 res.getFeature().add(parseSpecimenFeatureComponent(xpp)); 25275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collection")) { 25276 res.setCollection(parseSpecimenCollectionComponent(xpp)); 25277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processing")) { 25278 res.getProcessing().add(parseSpecimenProcessingComponent(xpp)); 25279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 25280 res.getContainer().add(parseSpecimenContainerComponent(xpp)); 25281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 25282 res.getCondition().add(parseCodeableConcept(xpp)); 25283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 25284 res.getNote().add(parseAnnotation(xpp)); 25285 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 25286 return false; 25287 } 25288 return true; 25289 } 25290 25291 protected Specimen.SpecimenFeatureComponent parseSpecimenFeatureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25292 Specimen.SpecimenFeatureComponent res = new Specimen.SpecimenFeatureComponent(); 25293 parseElementAttributes(xpp, res); 25294 next(xpp); 25295 int eventType = nextNoWhitespace(xpp); 25296 while (eventType != XmlPullParser.END_TAG) { 25297 if (!parseSpecimenFeatureComponentContent(eventType, xpp, res)) 25298 unknownContent(xpp); 25299 eventType = nextNoWhitespace(xpp); 25300 } 25301 next(xpp); 25302 parseElementClose(res); 25303 return res; 25304 } 25305 25306 protected boolean parseSpecimenFeatureComponentContent(int eventType, XmlPullParser xpp, Specimen.SpecimenFeatureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25307 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 25308 res.setType(parseCodeableConcept(xpp)); 25309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 25310 res.setDescriptionElement(parseString(xpp)); 25311 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25312 return false; 25313 } 25314 return true; 25315 } 25316 25317 protected Specimen.SpecimenCollectionComponent parseSpecimenCollectionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25318 Specimen.SpecimenCollectionComponent res = new Specimen.SpecimenCollectionComponent(); 25319 parseElementAttributes(xpp, res); 25320 next(xpp); 25321 int eventType = nextNoWhitespace(xpp); 25322 while (eventType != XmlPullParser.END_TAG) { 25323 if (!parseSpecimenCollectionComponentContent(eventType, xpp, res)) 25324 unknownContent(xpp); 25325 eventType = nextNoWhitespace(xpp); 25326 } 25327 next(xpp); 25328 parseElementClose(res); 25329 return res; 25330 } 25331 25332 protected boolean parseSpecimenCollectionComponentContent(int eventType, XmlPullParser xpp, Specimen.SpecimenCollectionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25333 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collector")) { 25334 res.setCollector(parseReference(xpp)); 25335 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "collected")) { 25336 res.setCollected(parseType("collected", xpp)); 25337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 25338 res.setDuration(parseDuration(xpp)); 25339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 25340 res.setQuantity(parseQuantity(xpp)); 25341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 25342 res.setMethod(parseCodeableConcept(xpp)); 25343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 25344 res.setDevice(parseCodeableReference(xpp)); 25345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 25346 res.setProcedure(parseReference(xpp)); 25347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 25348 res.setBodySite(parseCodeableReference(xpp)); 25349 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "fastingStatus")) { 25350 res.setFastingStatus(parseType("fastingStatus", xpp)); 25351 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25352 return false; 25353 } 25354 return true; 25355 } 25356 25357 protected Specimen.SpecimenProcessingComponent parseSpecimenProcessingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25358 Specimen.SpecimenProcessingComponent res = new Specimen.SpecimenProcessingComponent(); 25359 parseElementAttributes(xpp, res); 25360 next(xpp); 25361 int eventType = nextNoWhitespace(xpp); 25362 while (eventType != XmlPullParser.END_TAG) { 25363 if (!parseSpecimenProcessingComponentContent(eventType, xpp, res)) 25364 unknownContent(xpp); 25365 eventType = nextNoWhitespace(xpp); 25366 } 25367 next(xpp); 25368 parseElementClose(res); 25369 return res; 25370 } 25371 25372 protected boolean parseSpecimenProcessingComponentContent(int eventType, XmlPullParser xpp, Specimen.SpecimenProcessingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25373 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 25374 res.setDescriptionElement(parseString(xpp)); 25375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 25376 res.setMethod(parseCodeableConcept(xpp)); 25377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additive")) { 25378 res.getAdditive().add(parseReference(xpp)); 25379 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "time")) { 25380 res.setTime(parseType("time", xpp)); 25381 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25382 return false; 25383 } 25384 return true; 25385 } 25386 25387 protected Specimen.SpecimenContainerComponent parseSpecimenContainerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25388 Specimen.SpecimenContainerComponent res = new Specimen.SpecimenContainerComponent(); 25389 parseElementAttributes(xpp, res); 25390 next(xpp); 25391 int eventType = nextNoWhitespace(xpp); 25392 while (eventType != XmlPullParser.END_TAG) { 25393 if (!parseSpecimenContainerComponentContent(eventType, xpp, res)) 25394 unknownContent(xpp); 25395 eventType = nextNoWhitespace(xpp); 25396 } 25397 next(xpp); 25398 parseElementClose(res); 25399 return res; 25400 } 25401 25402 protected boolean parseSpecimenContainerComponentContent(int eventType, XmlPullParser xpp, Specimen.SpecimenContainerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25403 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 25404 res.setDevice(parseReference(xpp)); 25405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 25406 res.setLocation(parseReference(xpp)); 25407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimenQuantity")) { 25408 res.setSpecimenQuantity(parseQuantity(xpp)); 25409 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25410 return false; 25411 } 25412 return true; 25413 } 25414 25415 protected SpecimenDefinition parseSpecimenDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25416 SpecimenDefinition res = new SpecimenDefinition(); 25417 parseResourceAttributes(xpp, res); 25418 next(xpp); 25419 int eventType = nextNoWhitespace(xpp); 25420 while (eventType != XmlPullParser.END_TAG) { 25421 if (!parseSpecimenDefinitionContent(eventType, xpp, res)) 25422 unknownContent(xpp); 25423 eventType = nextNoWhitespace(xpp); 25424 } 25425 next(xpp); 25426 parseElementClose(res); 25427 return res; 25428 } 25429 25430 protected boolean parseSpecimenDefinitionContent(int eventType, XmlPullParser xpp, SpecimenDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 25431 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 25432 res.setUrlElement(parseUri(xpp)); 25433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 25434 res.setIdentifier(parseIdentifier(xpp)); 25435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 25436 res.setVersionElement(parseString(xpp)); 25437 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 25438 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 25439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 25440 res.setNameElement(parseString(xpp)); 25441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 25442 res.setTitleElement(parseString(xpp)); 25443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromCanonical")) { 25444 res.getDerivedFromCanonical().add(parseCanonical(xpp)); 25445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromUri")) { 25446 res.getDerivedFromUri().add(parseUri(xpp)); 25447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 25448 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 25449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 25450 res.setExperimentalElement(parseBoolean(xpp)); 25451 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "subject")) { 25452 res.setSubject(parseType("subject", xpp)); 25453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 25454 res.setDateElement(parseDateTime(xpp)); 25455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 25456 res.setPublisherElement(parseString(xpp)); 25457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 25458 res.getContact().add(parseContactDetail(xpp)); 25459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 25460 res.setDescriptionElement(parseMarkdown(xpp)); 25461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 25462 res.getUseContext().add(parseUsageContext(xpp)); 25463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 25464 res.getJurisdiction().add(parseCodeableConcept(xpp)); 25465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 25466 res.setPurposeElement(parseMarkdown(xpp)); 25467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 25468 res.setCopyrightElement(parseMarkdown(xpp)); 25469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 25470 res.setCopyrightLabelElement(parseString(xpp)); 25471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 25472 res.setApprovalDateElement(parseDate(xpp)); 25473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 25474 res.setLastReviewDateElement(parseDate(xpp)); 25475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 25476 res.setEffectivePeriod(parsePeriod(xpp)); 25477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeCollected")) { 25478 res.setTypeCollected(parseCodeableConcept(xpp)); 25479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientPreparation")) { 25480 res.getPatientPreparation().add(parseCodeableConcept(xpp)); 25481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timeAspect")) { 25482 res.setTimeAspectElement(parseString(xpp)); 25483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collection")) { 25484 res.getCollection().add(parseCodeableConcept(xpp)); 25485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeTested")) { 25486 res.getTypeTested().add(parseSpecimenDefinitionTypeTestedComponent(xpp)); 25487 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 25488 return false; 25489 } 25490 return true; 25491 } 25492 25493 protected SpecimenDefinition.SpecimenDefinitionTypeTestedComponent parseSpecimenDefinitionTypeTestedComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25494 SpecimenDefinition.SpecimenDefinitionTypeTestedComponent res = new SpecimenDefinition.SpecimenDefinitionTypeTestedComponent(); 25495 parseElementAttributes(xpp, res); 25496 next(xpp); 25497 int eventType = nextNoWhitespace(xpp); 25498 while (eventType != XmlPullParser.END_TAG) { 25499 if (!parseSpecimenDefinitionTypeTestedComponentContent(eventType, xpp, res)) 25500 unknownContent(xpp); 25501 eventType = nextNoWhitespace(xpp); 25502 } 25503 next(xpp); 25504 parseElementClose(res); 25505 return res; 25506 } 25507 25508 protected boolean parseSpecimenDefinitionTypeTestedComponentContent(int eventType, XmlPullParser xpp, SpecimenDefinition.SpecimenDefinitionTypeTestedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25509 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isDerived")) { 25510 res.setIsDerivedElement(parseBoolean(xpp)); 25511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 25512 res.setType(parseCodeableConcept(xpp)); 25513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preference")) { 25514 res.setPreferenceElement(parseEnumeration(xpp, SpecimenDefinition.SpecimenContainedPreference.NULL, new SpecimenDefinition.SpecimenContainedPreferenceEnumFactory())); 25515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 25516 res.setContainer(parseSpecimenDefinitionTypeTestedContainerComponent(xpp)); 25517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 25518 res.setRequirementElement(parseMarkdown(xpp)); 25519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("retentionTime")) { 25520 res.setRetentionTime(parseDuration(xpp)); 25521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("singleUse")) { 25522 res.setSingleUseElement(parseBoolean(xpp)); 25523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rejectionCriterion")) { 25524 res.getRejectionCriterion().add(parseCodeableConcept(xpp)); 25525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("handling")) { 25526 res.getHandling().add(parseSpecimenDefinitionTypeTestedHandlingComponent(xpp)); 25527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("testingDestination")) { 25528 res.getTestingDestination().add(parseCodeableConcept(xpp)); 25529 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25530 return false; 25531 } 25532 return true; 25533 } 25534 25535 protected SpecimenDefinition.SpecimenDefinitionTypeTestedContainerComponent parseSpecimenDefinitionTypeTestedContainerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25536 SpecimenDefinition.SpecimenDefinitionTypeTestedContainerComponent res = new SpecimenDefinition.SpecimenDefinitionTypeTestedContainerComponent(); 25537 parseElementAttributes(xpp, res); 25538 next(xpp); 25539 int eventType = nextNoWhitespace(xpp); 25540 while (eventType != XmlPullParser.END_TAG) { 25541 if (!parseSpecimenDefinitionTypeTestedContainerComponentContent(eventType, xpp, res)) 25542 unknownContent(xpp); 25543 eventType = nextNoWhitespace(xpp); 25544 } 25545 next(xpp); 25546 parseElementClose(res); 25547 return res; 25548 } 25549 25550 protected boolean parseSpecimenDefinitionTypeTestedContainerComponentContent(int eventType, XmlPullParser xpp, SpecimenDefinition.SpecimenDefinitionTypeTestedContainerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25551 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("material")) { 25552 res.setMaterial(parseCodeableConcept(xpp)); 25553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 25554 res.setType(parseCodeableConcept(xpp)); 25555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cap")) { 25556 res.setCap(parseCodeableConcept(xpp)); 25557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 25558 res.setDescriptionElement(parseMarkdown(xpp)); 25559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capacity")) { 25560 res.setCapacity(parseQuantity(xpp)); 25561 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "minimumVolume")) { 25562 res.setMinimumVolume(parseType("minimumVolume", xpp)); 25563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additive")) { 25564 res.getAdditive().add(parseSpecimenDefinitionTypeTestedContainerAdditiveComponent(xpp)); 25565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preparation")) { 25566 res.setPreparationElement(parseMarkdown(xpp)); 25567 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25568 return false; 25569 } 25570 return true; 25571 } 25572 25573 protected SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent parseSpecimenDefinitionTypeTestedContainerAdditiveComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25574 SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent res = new SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent(); 25575 parseElementAttributes(xpp, res); 25576 next(xpp); 25577 int eventType = nextNoWhitespace(xpp); 25578 while (eventType != XmlPullParser.END_TAG) { 25579 if (!parseSpecimenDefinitionTypeTestedContainerAdditiveComponentContent(eventType, xpp, res)) 25580 unknownContent(xpp); 25581 eventType = nextNoWhitespace(xpp); 25582 } 25583 next(xpp); 25584 parseElementClose(res); 25585 return res; 25586 } 25587 25588 protected boolean parseSpecimenDefinitionTypeTestedContainerAdditiveComponentContent(int eventType, XmlPullParser xpp, SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25589 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "additive")) { 25590 res.setAdditive(parseType("additive", xpp)); 25591 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25592 return false; 25593 } 25594 return true; 25595 } 25596 25597 protected SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent parseSpecimenDefinitionTypeTestedHandlingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25598 SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent res = new SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent(); 25599 parseElementAttributes(xpp, res); 25600 next(xpp); 25601 int eventType = nextNoWhitespace(xpp); 25602 while (eventType != XmlPullParser.END_TAG) { 25603 if (!parseSpecimenDefinitionTypeTestedHandlingComponentContent(eventType, xpp, res)) 25604 unknownContent(xpp); 25605 eventType = nextNoWhitespace(xpp); 25606 } 25607 next(xpp); 25608 parseElementClose(res); 25609 return res; 25610 } 25611 25612 protected boolean parseSpecimenDefinitionTypeTestedHandlingComponentContent(int eventType, XmlPullParser xpp, SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25613 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("temperatureQualifier")) { 25614 res.setTemperatureQualifier(parseCodeableConcept(xpp)); 25615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("temperatureRange")) { 25616 res.setTemperatureRange(parseRange(xpp)); 25617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDuration")) { 25618 res.setMaxDuration(parseDuration(xpp)); 25619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 25620 res.setInstructionElement(parseMarkdown(xpp)); 25621 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25622 return false; 25623 } 25624 return true; 25625 } 25626 25627 protected StructureDefinition parseStructureDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25628 StructureDefinition res = new StructureDefinition(); 25629 parseResourceAttributes(xpp, res); 25630 next(xpp); 25631 int eventType = nextNoWhitespace(xpp); 25632 while (eventType != XmlPullParser.END_TAG) { 25633 if (!parseStructureDefinitionContent(eventType, xpp, res)) 25634 unknownContent(xpp); 25635 eventType = nextNoWhitespace(xpp); 25636 } 25637 next(xpp); 25638 parseElementClose(res); 25639 return res; 25640 } 25641 25642 protected boolean parseStructureDefinitionContent(int eventType, XmlPullParser xpp, StructureDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 25643 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 25644 res.setUrlElement(parseUri(xpp)); 25645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 25646 res.getIdentifier().add(parseIdentifier(xpp)); 25647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 25648 res.setVersionElement(parseString(xpp)); 25649 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 25650 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 25651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 25652 res.setNameElement(parseString(xpp)); 25653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 25654 res.setTitleElement(parseString(xpp)); 25655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 25656 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 25657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 25658 res.setExperimentalElement(parseBoolean(xpp)); 25659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 25660 res.setDateElement(parseDateTime(xpp)); 25661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 25662 res.setPublisherElement(parseString(xpp)); 25663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 25664 res.getContact().add(parseContactDetail(xpp)); 25665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 25666 res.setDescriptionElement(parseMarkdown(xpp)); 25667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 25668 res.getUseContext().add(parseUsageContext(xpp)); 25669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 25670 res.getJurisdiction().add(parseCodeableConcept(xpp)); 25671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 25672 res.setPurposeElement(parseMarkdown(xpp)); 25673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 25674 res.setCopyrightElement(parseMarkdown(xpp)); 25675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 25676 res.setCopyrightLabelElement(parseString(xpp)); 25677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("keyword")) { 25678 res.getKeyword().add(parseCoding(xpp)); 25679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 25680 res.setFhirVersionElement(parseEnumeration(xpp, Enumerations.FHIRVersion.NULL, new Enumerations.FHIRVersionEnumFactory())); 25681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 25682 res.getMapping().add(parseStructureDefinitionMappingComponent(xpp)); 25683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 25684 res.setKindElement(parseEnumeration(xpp, StructureDefinition.StructureDefinitionKind.NULL, new StructureDefinition.StructureDefinitionKindEnumFactory())); 25685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 25686 res.setAbstractElement(parseBoolean(xpp)); 25687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 25688 res.getContext().add(parseStructureDefinitionContextComponent(xpp)); 25689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextInvariant")) { 25690 res.getContextInvariant().add(parseString(xpp)); 25691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 25692 res.setTypeElement(parseUri(xpp)); 25693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseDefinition")) { 25694 res.setBaseDefinitionElement(parseCanonical(xpp)); 25695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivation")) { 25696 res.setDerivationElement(parseEnumeration(xpp, StructureDefinition.TypeDerivationRule.NULL, new StructureDefinition.TypeDerivationRuleEnumFactory())); 25697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("snapshot")) { 25698 res.setSnapshot(parseStructureDefinitionSnapshotComponent(xpp)); 25699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("differential")) { 25700 res.setDifferential(parseStructureDefinitionDifferentialComponent(xpp)); 25701 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 25702 return false; 25703 } 25704 return true; 25705 } 25706 25707 protected StructureDefinition.StructureDefinitionMappingComponent parseStructureDefinitionMappingComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25708 StructureDefinition.StructureDefinitionMappingComponent res = new StructureDefinition.StructureDefinitionMappingComponent(); 25709 parseElementAttributes(xpp, res); 25710 next(xpp); 25711 int eventType = nextNoWhitespace(xpp); 25712 while (eventType != XmlPullParser.END_TAG) { 25713 if (!parseStructureDefinitionMappingComponentContent(eventType, xpp, res)) 25714 unknownContent(xpp); 25715 eventType = nextNoWhitespace(xpp); 25716 } 25717 next(xpp); 25718 parseElementClose(res); 25719 return res; 25720 } 25721 25722 protected boolean parseStructureDefinitionMappingComponentContent(int eventType, XmlPullParser xpp, StructureDefinition.StructureDefinitionMappingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25723 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 25724 res.setIdentityElement(parseId(xpp)); 25725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 25726 res.setUriElement(parseUri(xpp)); 25727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 25728 res.setNameElement(parseString(xpp)); 25729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 25730 res.setCommentElement(parseString(xpp)); 25731 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25732 return false; 25733 } 25734 return true; 25735 } 25736 25737 protected StructureDefinition.StructureDefinitionContextComponent parseStructureDefinitionContextComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25738 StructureDefinition.StructureDefinitionContextComponent res = new StructureDefinition.StructureDefinitionContextComponent(); 25739 parseElementAttributes(xpp, res); 25740 next(xpp); 25741 int eventType = nextNoWhitespace(xpp); 25742 while (eventType != XmlPullParser.END_TAG) { 25743 if (!parseStructureDefinitionContextComponentContent(eventType, xpp, res)) 25744 unknownContent(xpp); 25745 eventType = nextNoWhitespace(xpp); 25746 } 25747 next(xpp); 25748 parseElementClose(res); 25749 return res; 25750 } 25751 25752 protected boolean parseStructureDefinitionContextComponentContent(int eventType, XmlPullParser xpp, StructureDefinition.StructureDefinitionContextComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25753 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 25754 res.setTypeElement(parseEnumeration(xpp, StructureDefinition.ExtensionContextType.NULL, new StructureDefinition.ExtensionContextTypeEnumFactory())); 25755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 25756 res.setExpressionElement(parseString(xpp)); 25757 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25758 return false; 25759 } 25760 return true; 25761 } 25762 25763 protected StructureDefinition.StructureDefinitionSnapshotComponent parseStructureDefinitionSnapshotComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25764 StructureDefinition.StructureDefinitionSnapshotComponent res = new StructureDefinition.StructureDefinitionSnapshotComponent(); 25765 parseElementAttributes(xpp, res); 25766 next(xpp); 25767 int eventType = nextNoWhitespace(xpp); 25768 while (eventType != XmlPullParser.END_TAG) { 25769 if (!parseStructureDefinitionSnapshotComponentContent(eventType, xpp, res)) 25770 unknownContent(xpp); 25771 eventType = nextNoWhitespace(xpp); 25772 } 25773 next(xpp); 25774 parseElementClose(res); 25775 return res; 25776 } 25777 25778 protected boolean parseStructureDefinitionSnapshotComponentContent(int eventType, XmlPullParser xpp, StructureDefinition.StructureDefinitionSnapshotComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25779 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 25780 res.getElement().add(parseElementDefinition(xpp)); 25781 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25782 return false; 25783 } 25784 return true; 25785 } 25786 25787 protected StructureDefinition.StructureDefinitionDifferentialComponent parseStructureDefinitionDifferentialComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25788 StructureDefinition.StructureDefinitionDifferentialComponent res = new StructureDefinition.StructureDefinitionDifferentialComponent(); 25789 parseElementAttributes(xpp, res); 25790 next(xpp); 25791 int eventType = nextNoWhitespace(xpp); 25792 while (eventType != XmlPullParser.END_TAG) { 25793 if (!parseStructureDefinitionDifferentialComponentContent(eventType, xpp, res)) 25794 unknownContent(xpp); 25795 eventType = nextNoWhitespace(xpp); 25796 } 25797 next(xpp); 25798 parseElementClose(res); 25799 return res; 25800 } 25801 25802 protected boolean parseStructureDefinitionDifferentialComponentContent(int eventType, XmlPullParser xpp, StructureDefinition.StructureDefinitionDifferentialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25803 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 25804 res.getElement().add(parseElementDefinition(xpp)); 25805 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25806 return false; 25807 } 25808 return true; 25809 } 25810 25811 protected StructureMap parseStructureMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25812 StructureMap res = new StructureMap(); 25813 parseResourceAttributes(xpp, res); 25814 next(xpp); 25815 int eventType = nextNoWhitespace(xpp); 25816 while (eventType != XmlPullParser.END_TAG) { 25817 if (!parseStructureMapContent(eventType, xpp, res)) 25818 unknownContent(xpp); 25819 eventType = nextNoWhitespace(xpp); 25820 } 25821 next(xpp); 25822 parseElementClose(res); 25823 return res; 25824 } 25825 25826 protected boolean parseStructureMapContent(int eventType, XmlPullParser xpp, StructureMap res) throws XmlPullParserException, IOException, FHIRFormatError { 25827 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 25828 res.setUrlElement(parseUri(xpp)); 25829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 25830 res.getIdentifier().add(parseIdentifier(xpp)); 25831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 25832 res.setVersionElement(parseString(xpp)); 25833 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 25834 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 25835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 25836 res.setNameElement(parseString(xpp)); 25837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 25838 res.setTitleElement(parseString(xpp)); 25839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 25840 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 25841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 25842 res.setExperimentalElement(parseBoolean(xpp)); 25843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 25844 res.setDateElement(parseDateTime(xpp)); 25845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 25846 res.setPublisherElement(parseString(xpp)); 25847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 25848 res.getContact().add(parseContactDetail(xpp)); 25849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 25850 res.setDescriptionElement(parseMarkdown(xpp)); 25851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 25852 res.getUseContext().add(parseUsageContext(xpp)); 25853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 25854 res.getJurisdiction().add(parseCodeableConcept(xpp)); 25855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 25856 res.setPurposeElement(parseMarkdown(xpp)); 25857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 25858 res.setCopyrightElement(parseMarkdown(xpp)); 25859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 25860 res.setCopyrightLabelElement(parseString(xpp)); 25861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structure")) { 25862 res.getStructure().add(parseStructureMapStructureComponent(xpp)); 25863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("import")) { 25864 res.getImport().add(parseCanonical(xpp)); 25865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("const")) { 25866 res.getConst().add(parseStructureMapConstComponent(xpp)); 25867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 25868 res.getGroup().add(parseStructureMapGroupComponent(xpp)); 25869 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 25870 return false; 25871 } 25872 return true; 25873 } 25874 25875 protected StructureMap.StructureMapStructureComponent parseStructureMapStructureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25876 StructureMap.StructureMapStructureComponent res = new StructureMap.StructureMapStructureComponent(); 25877 parseElementAttributes(xpp, res); 25878 next(xpp); 25879 int eventType = nextNoWhitespace(xpp); 25880 while (eventType != XmlPullParser.END_TAG) { 25881 if (!parseStructureMapStructureComponentContent(eventType, xpp, res)) 25882 unknownContent(xpp); 25883 eventType = nextNoWhitespace(xpp); 25884 } 25885 next(xpp); 25886 parseElementClose(res); 25887 return res; 25888 } 25889 25890 protected boolean parseStructureMapStructureComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapStructureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25891 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 25892 res.setUrlElement(parseCanonical(xpp)); 25893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 25894 res.setModeElement(parseEnumeration(xpp, StructureMap.StructureMapModelMode.NULL, new StructureMap.StructureMapModelModeEnumFactory())); 25895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 25896 res.setAliasElement(parseString(xpp)); 25897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 25898 res.setDocumentationElement(parseString(xpp)); 25899 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25900 return false; 25901 } 25902 return true; 25903 } 25904 25905 protected StructureMap.StructureMapConstComponent parseStructureMapConstComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25906 StructureMap.StructureMapConstComponent res = new StructureMap.StructureMapConstComponent(); 25907 parseElementAttributes(xpp, res); 25908 next(xpp); 25909 int eventType = nextNoWhitespace(xpp); 25910 while (eventType != XmlPullParser.END_TAG) { 25911 if (!parseStructureMapConstComponentContent(eventType, xpp, res)) 25912 unknownContent(xpp); 25913 eventType = nextNoWhitespace(xpp); 25914 } 25915 next(xpp); 25916 parseElementClose(res); 25917 return res; 25918 } 25919 25920 protected boolean parseStructureMapConstComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapConstComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25921 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 25922 res.setNameElement(parseId(xpp)); 25923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 25924 res.setValueElement(parseString(xpp)); 25925 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25926 return false; 25927 } 25928 return true; 25929 } 25930 25931 protected StructureMap.StructureMapGroupComponent parseStructureMapGroupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25932 StructureMap.StructureMapGroupComponent res = new StructureMap.StructureMapGroupComponent(); 25933 parseElementAttributes(xpp, res); 25934 next(xpp); 25935 int eventType = nextNoWhitespace(xpp); 25936 while (eventType != XmlPullParser.END_TAG) { 25937 if (!parseStructureMapGroupComponentContent(eventType, xpp, res)) 25938 unknownContent(xpp); 25939 eventType = nextNoWhitespace(xpp); 25940 } 25941 next(xpp); 25942 parseElementClose(res); 25943 return res; 25944 } 25945 25946 protected boolean parseStructureMapGroupComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25947 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 25948 res.setNameElement(parseId(xpp)); 25949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extends")) { 25950 res.setExtendsElement(parseId(xpp)); 25951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeMode")) { 25952 res.setTypeModeElement(parseEnumeration(xpp, StructureMap.StructureMapGroupTypeMode.NULL, new StructureMap.StructureMapGroupTypeModeEnumFactory())); 25953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 25954 res.setDocumentationElement(parseString(xpp)); 25955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 25956 res.getInput().add(parseStructureMapGroupInputComponent(xpp)); 25957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 25958 res.getRule().add(parseStructureMapGroupRuleComponent(xpp)); 25959 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25960 return false; 25961 } 25962 return true; 25963 } 25964 25965 protected StructureMap.StructureMapGroupInputComponent parseStructureMapGroupInputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25966 StructureMap.StructureMapGroupInputComponent res = new StructureMap.StructureMapGroupInputComponent(); 25967 parseElementAttributes(xpp, res); 25968 next(xpp); 25969 int eventType = nextNoWhitespace(xpp); 25970 while (eventType != XmlPullParser.END_TAG) { 25971 if (!parseStructureMapGroupInputComponentContent(eventType, xpp, res)) 25972 unknownContent(xpp); 25973 eventType = nextNoWhitespace(xpp); 25974 } 25975 next(xpp); 25976 parseElementClose(res); 25977 return res; 25978 } 25979 25980 protected boolean parseStructureMapGroupInputComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapGroupInputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 25981 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 25982 res.setNameElement(parseId(xpp)); 25983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 25984 res.setTypeElement(parseString(xpp)); 25985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 25986 res.setModeElement(parseEnumeration(xpp, StructureMap.StructureMapInputMode.NULL, new StructureMap.StructureMapInputModeEnumFactory())); 25987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 25988 res.setDocumentationElement(parseString(xpp)); 25989 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 25990 return false; 25991 } 25992 return true; 25993 } 25994 25995 protected StructureMap.StructureMapGroupRuleComponent parseStructureMapGroupRuleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 25996 StructureMap.StructureMapGroupRuleComponent res = new StructureMap.StructureMapGroupRuleComponent(); 25997 parseElementAttributes(xpp, res); 25998 next(xpp); 25999 int eventType = nextNoWhitespace(xpp); 26000 while (eventType != XmlPullParser.END_TAG) { 26001 if (!parseStructureMapGroupRuleComponentContent(eventType, xpp, res)) 26002 unknownContent(xpp); 26003 eventType = nextNoWhitespace(xpp); 26004 } 26005 next(xpp); 26006 parseElementClose(res); 26007 return res; 26008 } 26009 26010 protected boolean parseStructureMapGroupRuleComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapGroupRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26011 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 26012 res.setNameElement(parseId(xpp)); 26013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 26014 res.getSource().add(parseStructureMapGroupRuleSourceComponent(xpp)); 26015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 26016 res.getTarget().add(parseStructureMapGroupRuleTargetComponent(xpp)); 26017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 26018 res.getRule().add(parseStructureMapGroupRuleComponent(xpp)); 26019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 26020 res.getDependent().add(parseStructureMapGroupRuleDependentComponent(xpp)); 26021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 26022 res.setDocumentationElement(parseString(xpp)); 26023 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26024 return false; 26025 } 26026 return true; 26027 } 26028 26029 protected StructureMap.StructureMapGroupRuleSourceComponent parseStructureMapGroupRuleSourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26030 StructureMap.StructureMapGroupRuleSourceComponent res = new StructureMap.StructureMapGroupRuleSourceComponent(); 26031 parseElementAttributes(xpp, res); 26032 next(xpp); 26033 int eventType = nextNoWhitespace(xpp); 26034 while (eventType != XmlPullParser.END_TAG) { 26035 if (!parseStructureMapGroupRuleSourceComponentContent(eventType, xpp, res)) 26036 unknownContent(xpp); 26037 eventType = nextNoWhitespace(xpp); 26038 } 26039 next(xpp); 26040 parseElementClose(res); 26041 return res; 26042 } 26043 26044 protected boolean parseStructureMapGroupRuleSourceComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapGroupRuleSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26045 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 26046 res.setContextElement(parseId(xpp)); 26047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 26048 res.setMinElement(parseInteger(xpp)); 26049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 26050 res.setMaxElement(parseString(xpp)); 26051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 26052 res.setTypeElement(parseString(xpp)); 26053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("defaultValue")) { 26054 res.setDefaultValueElement(parseString(xpp)); 26055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 26056 res.setElementElement(parseString(xpp)); 26057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listMode")) { 26058 res.setListModeElement(parseEnumeration(xpp, StructureMap.StructureMapSourceListMode.NULL, new StructureMap.StructureMapSourceListModeEnumFactory())); 26059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 26060 res.setVariableElement(parseId(xpp)); 26061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 26062 res.setConditionElement(parseString(xpp)); 26063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("check")) { 26064 res.setCheckElement(parseString(xpp)); 26065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("logMessage")) { 26066 res.setLogMessageElement(parseString(xpp)); 26067 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26068 return false; 26069 } 26070 return true; 26071 } 26072 26073 protected StructureMap.StructureMapGroupRuleTargetComponent parseStructureMapGroupRuleTargetComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26074 StructureMap.StructureMapGroupRuleTargetComponent res = new StructureMap.StructureMapGroupRuleTargetComponent(); 26075 parseElementAttributes(xpp, res); 26076 next(xpp); 26077 int eventType = nextNoWhitespace(xpp); 26078 while (eventType != XmlPullParser.END_TAG) { 26079 if (!parseStructureMapGroupRuleTargetComponentContent(eventType, xpp, res)) 26080 unknownContent(xpp); 26081 eventType = nextNoWhitespace(xpp); 26082 } 26083 next(xpp); 26084 parseElementClose(res); 26085 return res; 26086 } 26087 26088 protected boolean parseStructureMapGroupRuleTargetComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapGroupRuleTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26089 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 26090 res.setContextElement(parseString(xpp)); 26091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 26092 res.setElementElement(parseString(xpp)); 26093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 26094 res.setVariableElement(parseId(xpp)); 26095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listMode")) { 26096 res.getListMode().add(parseEnumeration(xpp, StructureMap.StructureMapTargetListMode.NULL, new StructureMap.StructureMapTargetListModeEnumFactory())); 26097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listRuleId")) { 26098 res.setListRuleIdElement(parseId(xpp)); 26099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 26100 res.setTransformElement(parseEnumeration(xpp, StructureMap.StructureMapTransform.NULL, new StructureMap.StructureMapTransformEnumFactory())); 26101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 26102 res.getParameter().add(parseStructureMapGroupRuleTargetParameterComponent(xpp)); 26103 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26104 return false; 26105 } 26106 return true; 26107 } 26108 26109 protected StructureMap.StructureMapGroupRuleTargetParameterComponent parseStructureMapGroupRuleTargetParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26110 StructureMap.StructureMapGroupRuleTargetParameterComponent res = new StructureMap.StructureMapGroupRuleTargetParameterComponent(); 26111 parseElementAttributes(xpp, res); 26112 next(xpp); 26113 int eventType = nextNoWhitespace(xpp); 26114 while (eventType != XmlPullParser.END_TAG) { 26115 if (!parseStructureMapGroupRuleTargetParameterComponentContent(eventType, xpp, res)) 26116 unknownContent(xpp); 26117 eventType = nextNoWhitespace(xpp); 26118 } 26119 next(xpp); 26120 parseElementClose(res); 26121 return res; 26122 } 26123 26124 protected boolean parseStructureMapGroupRuleTargetParameterComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapGroupRuleTargetParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26125 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 26126 res.setValue(parseType("value", xpp)); 26127 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26128 return false; 26129 } 26130 return true; 26131 } 26132 26133 protected StructureMap.StructureMapGroupRuleDependentComponent parseStructureMapGroupRuleDependentComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26134 StructureMap.StructureMapGroupRuleDependentComponent res = new StructureMap.StructureMapGroupRuleDependentComponent(); 26135 parseElementAttributes(xpp, res); 26136 next(xpp); 26137 int eventType = nextNoWhitespace(xpp); 26138 while (eventType != XmlPullParser.END_TAG) { 26139 if (!parseStructureMapGroupRuleDependentComponentContent(eventType, xpp, res)) 26140 unknownContent(xpp); 26141 eventType = nextNoWhitespace(xpp); 26142 } 26143 next(xpp); 26144 parseElementClose(res); 26145 return res; 26146 } 26147 26148 protected boolean parseStructureMapGroupRuleDependentComponentContent(int eventType, XmlPullParser xpp, StructureMap.StructureMapGroupRuleDependentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26149 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 26150 res.setNameElement(parseId(xpp)); 26151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 26152 res.getParameter().add(parseStructureMapGroupRuleTargetParameterComponent(xpp)); 26153 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26154 return false; 26155 } 26156 return true; 26157 } 26158 26159 protected Subscription parseSubscription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26160 Subscription res = new Subscription(); 26161 parseResourceAttributes(xpp, res); 26162 next(xpp); 26163 int eventType = nextNoWhitespace(xpp); 26164 while (eventType != XmlPullParser.END_TAG) { 26165 if (!parseSubscriptionContent(eventType, xpp, res)) 26166 unknownContent(xpp); 26167 eventType = nextNoWhitespace(xpp); 26168 } 26169 next(xpp); 26170 parseElementClose(res); 26171 return res; 26172 } 26173 26174 protected boolean parseSubscriptionContent(int eventType, XmlPullParser xpp, Subscription res) throws XmlPullParserException, IOException, FHIRFormatError { 26175 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 26176 res.getIdentifier().add(parseIdentifier(xpp)); 26177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 26178 res.setNameElement(parseString(xpp)); 26179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 26180 res.setStatusElement(parseEnumeration(xpp, Enumerations.SubscriptionStatusCodes.NULL, new Enumerations.SubscriptionStatusCodesEnumFactory())); 26181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 26182 res.setTopicElement(parseCanonical(xpp)); 26183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 26184 res.getContact().add(parseContactPoint(xpp)); 26185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 26186 res.setEndElement(parseInstant(xpp)); 26187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingEntity")) { 26188 res.setManagingEntity(parseReference(xpp)); 26189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 26190 res.setReasonElement(parseString(xpp)); 26191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filterBy")) { 26192 res.getFilterBy().add(parseSubscriptionFilterByComponent(xpp)); 26193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("channelType")) { 26194 res.setChannelType(parseCoding(xpp)); 26195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 26196 res.setEndpointElement(parseUrl(xpp)); 26197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 26198 res.getParameter().add(parseSubscriptionParameterComponent(xpp)); 26199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("heartbeatPeriod")) { 26200 res.setHeartbeatPeriodElement(parseUnsignedInt(xpp)); 26201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timeout")) { 26202 res.setTimeoutElement(parseUnsignedInt(xpp)); 26203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 26204 res.setContentTypeElement(parseCode(xpp)); 26205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 26206 res.setContentElement(parseEnumeration(xpp, Subscription.SubscriptionPayloadContent.NULL, new Subscription.SubscriptionPayloadContentEnumFactory())); 26207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxCount")) { 26208 res.setMaxCountElement(parsePositiveInt(xpp)); 26209 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 26210 return false; 26211 } 26212 return true; 26213 } 26214 26215 protected Subscription.SubscriptionFilterByComponent parseSubscriptionFilterByComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26216 Subscription.SubscriptionFilterByComponent res = new Subscription.SubscriptionFilterByComponent(); 26217 parseElementAttributes(xpp, res); 26218 next(xpp); 26219 int eventType = nextNoWhitespace(xpp); 26220 while (eventType != XmlPullParser.END_TAG) { 26221 if (!parseSubscriptionFilterByComponentContent(eventType, xpp, res)) 26222 unknownContent(xpp); 26223 eventType = nextNoWhitespace(xpp); 26224 } 26225 next(xpp); 26226 parseElementClose(res); 26227 return res; 26228 } 26229 26230 protected boolean parseSubscriptionFilterByComponentContent(int eventType, XmlPullParser xpp, Subscription.SubscriptionFilterByComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26231 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceType")) { 26232 res.setResourceTypeElement(parseUri(xpp)); 26233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filterParameter")) { 26234 res.setFilterParameterElement(parseString(xpp)); 26235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 26236 res.setComparatorElement(parseEnumeration(xpp, Enumerations.SearchComparator.NULL, new Enumerations.SearchComparatorEnumFactory())); 26237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 26238 res.setModifierElement(parseEnumeration(xpp, Enumerations.SearchModifierCode.NULL, new Enumerations.SearchModifierCodeEnumFactory())); 26239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 26240 res.setValueElement(parseString(xpp)); 26241 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26242 return false; 26243 } 26244 return true; 26245 } 26246 26247 protected Subscription.SubscriptionParameterComponent parseSubscriptionParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26248 Subscription.SubscriptionParameterComponent res = new Subscription.SubscriptionParameterComponent(); 26249 parseElementAttributes(xpp, res); 26250 next(xpp); 26251 int eventType = nextNoWhitespace(xpp); 26252 while (eventType != XmlPullParser.END_TAG) { 26253 if (!parseSubscriptionParameterComponentContent(eventType, xpp, res)) 26254 unknownContent(xpp); 26255 eventType = nextNoWhitespace(xpp); 26256 } 26257 next(xpp); 26258 parseElementClose(res); 26259 return res; 26260 } 26261 26262 protected boolean parseSubscriptionParameterComponentContent(int eventType, XmlPullParser xpp, Subscription.SubscriptionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26263 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 26264 res.setNameElement(parseString(xpp)); 26265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 26266 res.setValueElement(parseString(xpp)); 26267 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26268 return false; 26269 } 26270 return true; 26271 } 26272 26273 protected SubscriptionStatus parseSubscriptionStatus(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26274 SubscriptionStatus res = new SubscriptionStatus(); 26275 parseResourceAttributes(xpp, res); 26276 next(xpp); 26277 int eventType = nextNoWhitespace(xpp); 26278 while (eventType != XmlPullParser.END_TAG) { 26279 if (!parseSubscriptionStatusContent(eventType, xpp, res)) 26280 unknownContent(xpp); 26281 eventType = nextNoWhitespace(xpp); 26282 } 26283 next(xpp); 26284 parseElementClose(res); 26285 return res; 26286 } 26287 26288 protected boolean parseSubscriptionStatusContent(int eventType, XmlPullParser xpp, SubscriptionStatus res) throws XmlPullParserException, IOException, FHIRFormatError { 26289 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 26290 res.setStatusElement(parseEnumeration(xpp, Enumerations.SubscriptionStatusCodes.NULL, new Enumerations.SubscriptionStatusCodesEnumFactory())); 26291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 26292 res.setTypeElement(parseEnumeration(xpp, SubscriptionStatus.SubscriptionNotificationType.NULL, new SubscriptionStatus.SubscriptionNotificationTypeEnumFactory())); 26293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventsSinceSubscriptionStart")) { 26294 res.setEventsSinceSubscriptionStartElement(parseInteger64(xpp)); 26295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notificationEvent")) { 26296 res.getNotificationEvent().add(parseSubscriptionStatusNotificationEventComponent(xpp)); 26297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscription")) { 26298 res.setSubscription(parseReference(xpp)); 26299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 26300 res.setTopicElement(parseCanonical(xpp)); 26301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 26302 res.getError().add(parseCodeableConcept(xpp)); 26303 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 26304 return false; 26305 } 26306 return true; 26307 } 26308 26309 protected SubscriptionStatus.SubscriptionStatusNotificationEventComponent parseSubscriptionStatusNotificationEventComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26310 SubscriptionStatus.SubscriptionStatusNotificationEventComponent res = new SubscriptionStatus.SubscriptionStatusNotificationEventComponent(); 26311 parseElementAttributes(xpp, res); 26312 next(xpp); 26313 int eventType = nextNoWhitespace(xpp); 26314 while (eventType != XmlPullParser.END_TAG) { 26315 if (!parseSubscriptionStatusNotificationEventComponentContent(eventType, xpp, res)) 26316 unknownContent(xpp); 26317 eventType = nextNoWhitespace(xpp); 26318 } 26319 next(xpp); 26320 parseElementClose(res); 26321 return res; 26322 } 26323 26324 protected boolean parseSubscriptionStatusNotificationEventComponentContent(int eventType, XmlPullParser xpp, SubscriptionStatus.SubscriptionStatusNotificationEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26325 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventNumber")) { 26326 res.setEventNumberElement(parseInteger64(xpp)); 26327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 26328 res.setTimestampElement(parseInstant(xpp)); 26329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 26330 res.setFocus(parseReference(xpp)); 26331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalContext")) { 26332 res.getAdditionalContext().add(parseReference(xpp)); 26333 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26334 return false; 26335 } 26336 return true; 26337 } 26338 26339 protected SubscriptionTopic parseSubscriptionTopic(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26340 SubscriptionTopic res = new SubscriptionTopic(); 26341 parseResourceAttributes(xpp, res); 26342 next(xpp); 26343 int eventType = nextNoWhitespace(xpp); 26344 while (eventType != XmlPullParser.END_TAG) { 26345 if (!parseSubscriptionTopicContent(eventType, xpp, res)) 26346 unknownContent(xpp); 26347 eventType = nextNoWhitespace(xpp); 26348 } 26349 next(xpp); 26350 parseElementClose(res); 26351 return res; 26352 } 26353 26354 protected boolean parseSubscriptionTopicContent(int eventType, XmlPullParser xpp, SubscriptionTopic res) throws XmlPullParserException, IOException, FHIRFormatError { 26355 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 26356 res.setUrlElement(parseUri(xpp)); 26357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 26358 res.getIdentifier().add(parseIdentifier(xpp)); 26359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 26360 res.setVersionElement(parseString(xpp)); 26361 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 26362 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 26363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 26364 res.setNameElement(parseString(xpp)); 26365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 26366 res.setTitleElement(parseString(xpp)); 26367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 26368 res.getDerivedFrom().add(parseCanonical(xpp)); 26369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 26370 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 26371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 26372 res.setExperimentalElement(parseBoolean(xpp)); 26373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 26374 res.setDateElement(parseDateTime(xpp)); 26375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 26376 res.setPublisherElement(parseString(xpp)); 26377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 26378 res.getContact().add(parseContactDetail(xpp)); 26379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 26380 res.setDescriptionElement(parseMarkdown(xpp)); 26381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 26382 res.getUseContext().add(parseUsageContext(xpp)); 26383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 26384 res.getJurisdiction().add(parseCodeableConcept(xpp)); 26385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 26386 res.setPurposeElement(parseMarkdown(xpp)); 26387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 26388 res.setCopyrightElement(parseMarkdown(xpp)); 26389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 26390 res.setCopyrightLabelElement(parseString(xpp)); 26391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 26392 res.setApprovalDateElement(parseDate(xpp)); 26393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 26394 res.setLastReviewDateElement(parseDate(xpp)); 26395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 26396 res.setEffectivePeriod(parsePeriod(xpp)); 26397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceTrigger")) { 26398 res.getResourceTrigger().add(parseSubscriptionTopicResourceTriggerComponent(xpp)); 26399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventTrigger")) { 26400 res.getEventTrigger().add(parseSubscriptionTopicEventTriggerComponent(xpp)); 26401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("canFilterBy")) { 26402 res.getCanFilterBy().add(parseSubscriptionTopicCanFilterByComponent(xpp)); 26403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notificationShape")) { 26404 res.getNotificationShape().add(parseSubscriptionTopicNotificationShapeComponent(xpp)); 26405 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 26406 return false; 26407 } 26408 return true; 26409 } 26410 26411 protected SubscriptionTopic.SubscriptionTopicResourceTriggerComponent parseSubscriptionTopicResourceTriggerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26412 SubscriptionTopic.SubscriptionTopicResourceTriggerComponent res = new SubscriptionTopic.SubscriptionTopicResourceTriggerComponent(); 26413 parseElementAttributes(xpp, res); 26414 next(xpp); 26415 int eventType = nextNoWhitespace(xpp); 26416 while (eventType != XmlPullParser.END_TAG) { 26417 if (!parseSubscriptionTopicResourceTriggerComponentContent(eventType, xpp, res)) 26418 unknownContent(xpp); 26419 eventType = nextNoWhitespace(xpp); 26420 } 26421 next(xpp); 26422 parseElementClose(res); 26423 return res; 26424 } 26425 26426 protected boolean parseSubscriptionTopicResourceTriggerComponentContent(int eventType, XmlPullParser xpp, SubscriptionTopic.SubscriptionTopicResourceTriggerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26427 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 26428 res.setDescriptionElement(parseMarkdown(xpp)); 26429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 26430 res.setResourceElement(parseUri(xpp)); 26431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportedInteraction")) { 26432 res.getSupportedInteraction().add(parseEnumeration(xpp, SubscriptionTopic.InteractionTrigger.NULL, new SubscriptionTopic.InteractionTriggerEnumFactory())); 26433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("queryCriteria")) { 26434 res.setQueryCriteria(parseSubscriptionTopicResourceTriggerQueryCriteriaComponent(xpp)); 26435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirPathCriteria")) { 26436 res.setFhirPathCriteriaElement(parseString(xpp)); 26437 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26438 return false; 26439 } 26440 return true; 26441 } 26442 26443 protected SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent parseSubscriptionTopicResourceTriggerQueryCriteriaComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26444 SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent res = new SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent(); 26445 parseElementAttributes(xpp, res); 26446 next(xpp); 26447 int eventType = nextNoWhitespace(xpp); 26448 while (eventType != XmlPullParser.END_TAG) { 26449 if (!parseSubscriptionTopicResourceTriggerQueryCriteriaComponentContent(eventType, xpp, res)) 26450 unknownContent(xpp); 26451 eventType = nextNoWhitespace(xpp); 26452 } 26453 next(xpp); 26454 parseElementClose(res); 26455 return res; 26456 } 26457 26458 protected boolean parseSubscriptionTopicResourceTriggerQueryCriteriaComponentContent(int eventType, XmlPullParser xpp, SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26459 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previous")) { 26460 res.setPreviousElement(parseString(xpp)); 26461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resultForCreate")) { 26462 res.setResultForCreateElement(parseEnumeration(xpp, SubscriptionTopic.CriteriaNotExistsBehavior.NULL, new SubscriptionTopic.CriteriaNotExistsBehaviorEnumFactory())); 26463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("current")) { 26464 res.setCurrentElement(parseString(xpp)); 26465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resultForDelete")) { 26466 res.setResultForDeleteElement(parseEnumeration(xpp, SubscriptionTopic.CriteriaNotExistsBehavior.NULL, new SubscriptionTopic.CriteriaNotExistsBehaviorEnumFactory())); 26467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requireBoth")) { 26468 res.setRequireBothElement(parseBoolean(xpp)); 26469 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26470 return false; 26471 } 26472 return true; 26473 } 26474 26475 protected SubscriptionTopic.SubscriptionTopicEventTriggerComponent parseSubscriptionTopicEventTriggerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26476 SubscriptionTopic.SubscriptionTopicEventTriggerComponent res = new SubscriptionTopic.SubscriptionTopicEventTriggerComponent(); 26477 parseElementAttributes(xpp, res); 26478 next(xpp); 26479 int eventType = nextNoWhitespace(xpp); 26480 while (eventType != XmlPullParser.END_TAG) { 26481 if (!parseSubscriptionTopicEventTriggerComponentContent(eventType, xpp, res)) 26482 unknownContent(xpp); 26483 eventType = nextNoWhitespace(xpp); 26484 } 26485 next(xpp); 26486 parseElementClose(res); 26487 return res; 26488 } 26489 26490 protected boolean parseSubscriptionTopicEventTriggerComponentContent(int eventType, XmlPullParser xpp, SubscriptionTopic.SubscriptionTopicEventTriggerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26491 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 26492 res.setDescriptionElement(parseMarkdown(xpp)); 26493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 26494 res.setEvent(parseCodeableConcept(xpp)); 26495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 26496 res.setResourceElement(parseUri(xpp)); 26497 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26498 return false; 26499 } 26500 return true; 26501 } 26502 26503 protected SubscriptionTopic.SubscriptionTopicCanFilterByComponent parseSubscriptionTopicCanFilterByComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26504 SubscriptionTopic.SubscriptionTopicCanFilterByComponent res = new SubscriptionTopic.SubscriptionTopicCanFilterByComponent(); 26505 parseElementAttributes(xpp, res); 26506 next(xpp); 26507 int eventType = nextNoWhitespace(xpp); 26508 while (eventType != XmlPullParser.END_TAG) { 26509 if (!parseSubscriptionTopicCanFilterByComponentContent(eventType, xpp, res)) 26510 unknownContent(xpp); 26511 eventType = nextNoWhitespace(xpp); 26512 } 26513 next(xpp); 26514 parseElementClose(res); 26515 return res; 26516 } 26517 26518 protected boolean parseSubscriptionTopicCanFilterByComponentContent(int eventType, XmlPullParser xpp, SubscriptionTopic.SubscriptionTopicCanFilterByComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26519 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 26520 res.setDescriptionElement(parseMarkdown(xpp)); 26521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 26522 res.setResourceElement(parseUri(xpp)); 26523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filterParameter")) { 26524 res.setFilterParameterElement(parseString(xpp)); 26525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filterDefinition")) { 26526 res.setFilterDefinitionElement(parseUri(xpp)); 26527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 26528 res.getComparator().add(parseEnumeration(xpp, Enumerations.SearchComparator.NULL, new Enumerations.SearchComparatorEnumFactory())); 26529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 26530 res.getModifier().add(parseEnumeration(xpp, Enumerations.SearchModifierCode.NULL, new Enumerations.SearchModifierCodeEnumFactory())); 26531 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26532 return false; 26533 } 26534 return true; 26535 } 26536 26537 protected SubscriptionTopic.SubscriptionTopicNotificationShapeComponent parseSubscriptionTopicNotificationShapeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26538 SubscriptionTopic.SubscriptionTopicNotificationShapeComponent res = new SubscriptionTopic.SubscriptionTopicNotificationShapeComponent(); 26539 parseElementAttributes(xpp, res); 26540 next(xpp); 26541 int eventType = nextNoWhitespace(xpp); 26542 while (eventType != XmlPullParser.END_TAG) { 26543 if (!parseSubscriptionTopicNotificationShapeComponentContent(eventType, xpp, res)) 26544 unknownContent(xpp); 26545 eventType = nextNoWhitespace(xpp); 26546 } 26547 next(xpp); 26548 parseElementClose(res); 26549 return res; 26550 } 26551 26552 protected boolean parseSubscriptionTopicNotificationShapeComponentContent(int eventType, XmlPullParser xpp, SubscriptionTopic.SubscriptionTopicNotificationShapeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26553 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 26554 res.setResourceElement(parseUri(xpp)); 26555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 26556 res.getInclude().add(parseString(xpp)); 26557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revInclude")) { 26558 res.getRevInclude().add(parseString(xpp)); 26559 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26560 return false; 26561 } 26562 return true; 26563 } 26564 26565 protected Substance parseSubstance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26566 Substance res = new Substance(); 26567 parseResourceAttributes(xpp, res); 26568 next(xpp); 26569 int eventType = nextNoWhitespace(xpp); 26570 while (eventType != XmlPullParser.END_TAG) { 26571 if (!parseSubstanceContent(eventType, xpp, res)) 26572 unknownContent(xpp); 26573 eventType = nextNoWhitespace(xpp); 26574 } 26575 next(xpp); 26576 parseElementClose(res); 26577 return res; 26578 } 26579 26580 protected boolean parseSubstanceContent(int eventType, XmlPullParser xpp, Substance res) throws XmlPullParserException, IOException, FHIRFormatError { 26581 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 26582 res.getIdentifier().add(parseIdentifier(xpp)); 26583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 26584 res.setInstanceElement(parseBoolean(xpp)); 26585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 26586 res.setStatusElement(parseEnumeration(xpp, Substance.FHIRSubstanceStatus.NULL, new Substance.FHIRSubstanceStatusEnumFactory())); 26587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 26588 res.getCategory().add(parseCodeableConcept(xpp)); 26589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 26590 res.setCode(parseCodeableReference(xpp)); 26591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 26592 res.setDescriptionElement(parseMarkdown(xpp)); 26593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { 26594 res.setExpiryElement(parseDateTime(xpp)); 26595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 26596 res.setQuantity(parseQuantity(xpp)); 26597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 26598 res.getIngredient().add(parseSubstanceIngredientComponent(xpp)); 26599 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 26600 return false; 26601 } 26602 return true; 26603 } 26604 26605 protected Substance.SubstanceIngredientComponent parseSubstanceIngredientComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26606 Substance.SubstanceIngredientComponent res = new Substance.SubstanceIngredientComponent(); 26607 parseElementAttributes(xpp, res); 26608 next(xpp); 26609 int eventType = nextNoWhitespace(xpp); 26610 while (eventType != XmlPullParser.END_TAG) { 26611 if (!parseSubstanceIngredientComponentContent(eventType, xpp, res)) 26612 unknownContent(xpp); 26613 eventType = nextNoWhitespace(xpp); 26614 } 26615 next(xpp); 26616 parseElementClose(res); 26617 return res; 26618 } 26619 26620 protected boolean parseSubstanceIngredientComponentContent(int eventType, XmlPullParser xpp, Substance.SubstanceIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26621 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 26622 res.setQuantity(parseRatio(xpp)); 26623 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "substance")) { 26624 res.setSubstance(parseType("substance", xpp)); 26625 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26626 return false; 26627 } 26628 return true; 26629 } 26630 26631 protected SubstanceDefinition parseSubstanceDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26632 SubstanceDefinition res = new SubstanceDefinition(); 26633 parseResourceAttributes(xpp, res); 26634 next(xpp); 26635 int eventType = nextNoWhitespace(xpp); 26636 while (eventType != XmlPullParser.END_TAG) { 26637 if (!parseSubstanceDefinitionContent(eventType, xpp, res)) 26638 unknownContent(xpp); 26639 eventType = nextNoWhitespace(xpp); 26640 } 26641 next(xpp); 26642 parseElementClose(res); 26643 return res; 26644 } 26645 26646 protected boolean parseSubstanceDefinitionContent(int eventType, XmlPullParser xpp, SubstanceDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 26647 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 26648 res.getIdentifier().add(parseIdentifier(xpp)); 26649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 26650 res.setVersionElement(parseString(xpp)); 26651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 26652 res.setStatus(parseCodeableConcept(xpp)); 26653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classification")) { 26654 res.getClassification().add(parseCodeableConcept(xpp)); 26655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { 26656 res.setDomain(parseCodeableConcept(xpp)); 26657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("grade")) { 26658 res.getGrade().add(parseCodeableConcept(xpp)); 26659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 26660 res.setDescriptionElement(parseMarkdown(xpp)); 26661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 26662 res.getInformationSource().add(parseReference(xpp)); 26663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 26664 res.getNote().add(parseAnnotation(xpp)); 26665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 26666 res.getManufacturer().add(parseReference(xpp)); 26667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 26668 res.getSupplier().add(parseReference(xpp)); 26669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("moiety")) { 26670 res.getMoiety().add(parseSubstanceDefinitionMoietyComponent(xpp)); 26671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characterization")) { 26672 res.getCharacterization().add(parseSubstanceDefinitionCharacterizationComponent(xpp)); 26673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 26674 res.getProperty().add(parseSubstanceDefinitionPropertyComponent(xpp)); 26675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceInformation")) { 26676 res.setReferenceInformation(parseReference(xpp)); 26677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("molecularWeight")) { 26678 res.getMolecularWeight().add(parseSubstanceDefinitionMolecularWeightComponent(xpp)); 26679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structure")) { 26680 res.setStructure(parseSubstanceDefinitionStructureComponent(xpp)); 26681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 26682 res.getCode().add(parseSubstanceDefinitionCodeComponent(xpp)); 26683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 26684 res.getName().add(parseSubstanceDefinitionNameComponent(xpp)); 26685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 26686 res.getRelationship().add(parseSubstanceDefinitionRelationshipComponent(xpp)); 26687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nucleicAcid")) { 26688 res.setNucleicAcid(parseReference(xpp)); 26689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("polymer")) { 26690 res.setPolymer(parseReference(xpp)); 26691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protein")) { 26692 res.setProtein(parseReference(xpp)); 26693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceMaterial")) { 26694 res.setSourceMaterial(parseSubstanceDefinitionSourceMaterialComponent(xpp)); 26695 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 26696 return false; 26697 } 26698 return true; 26699 } 26700 26701 protected SubstanceDefinition.SubstanceDefinitionMoietyComponent parseSubstanceDefinitionMoietyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26702 SubstanceDefinition.SubstanceDefinitionMoietyComponent res = new SubstanceDefinition.SubstanceDefinitionMoietyComponent(); 26703 parseElementAttributes(xpp, res); 26704 next(xpp); 26705 int eventType = nextNoWhitespace(xpp); 26706 while (eventType != XmlPullParser.END_TAG) { 26707 if (!parseSubstanceDefinitionMoietyComponentContent(eventType, xpp, res)) 26708 unknownContent(xpp); 26709 eventType = nextNoWhitespace(xpp); 26710 } 26711 next(xpp); 26712 parseElementClose(res); 26713 return res; 26714 } 26715 26716 protected boolean parseSubstanceDefinitionMoietyComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionMoietyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26717 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 26718 res.setRole(parseCodeableConcept(xpp)); 26719 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 26720 res.setIdentifier(parseIdentifier(xpp)); 26721 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 26722 res.setNameElement(parseString(xpp)); 26723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stereochemistry")) { 26724 res.setStereochemistry(parseCodeableConcept(xpp)); 26725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("opticalActivity")) { 26726 res.setOpticalActivity(parseCodeableConcept(xpp)); 26727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("molecularFormula")) { 26728 res.setMolecularFormulaElement(parseString(xpp)); 26729 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "amount")) { 26730 res.setAmount(parseType("amount", xpp)); 26731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementType")) { 26732 res.setMeasurementType(parseCodeableConcept(xpp)); 26733 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26734 return false; 26735 } 26736 return true; 26737 } 26738 26739 protected SubstanceDefinition.SubstanceDefinitionCharacterizationComponent parseSubstanceDefinitionCharacterizationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26740 SubstanceDefinition.SubstanceDefinitionCharacterizationComponent res = new SubstanceDefinition.SubstanceDefinitionCharacterizationComponent(); 26741 parseElementAttributes(xpp, res); 26742 next(xpp); 26743 int eventType = nextNoWhitespace(xpp); 26744 while (eventType != XmlPullParser.END_TAG) { 26745 if (!parseSubstanceDefinitionCharacterizationComponentContent(eventType, xpp, res)) 26746 unknownContent(xpp); 26747 eventType = nextNoWhitespace(xpp); 26748 } 26749 next(xpp); 26750 parseElementClose(res); 26751 return res; 26752 } 26753 26754 protected boolean parseSubstanceDefinitionCharacterizationComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionCharacterizationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26755 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("technique")) { 26756 res.setTechnique(parseCodeableConcept(xpp)); 26757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 26758 res.setForm(parseCodeableConcept(xpp)); 26759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 26760 res.setDescriptionElement(parseMarkdown(xpp)); 26761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("file")) { 26762 res.getFile().add(parseAttachment(xpp)); 26763 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26764 return false; 26765 } 26766 return true; 26767 } 26768 26769 protected SubstanceDefinition.SubstanceDefinitionPropertyComponent parseSubstanceDefinitionPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26770 SubstanceDefinition.SubstanceDefinitionPropertyComponent res = new SubstanceDefinition.SubstanceDefinitionPropertyComponent(); 26771 parseElementAttributes(xpp, res); 26772 next(xpp); 26773 int eventType = nextNoWhitespace(xpp); 26774 while (eventType != XmlPullParser.END_TAG) { 26775 if (!parseSubstanceDefinitionPropertyComponentContent(eventType, xpp, res)) 26776 unknownContent(xpp); 26777 eventType = nextNoWhitespace(xpp); 26778 } 26779 next(xpp); 26780 parseElementClose(res); 26781 return res; 26782 } 26783 26784 protected boolean parseSubstanceDefinitionPropertyComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26785 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 26786 res.setType(parseCodeableConcept(xpp)); 26787 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 26788 res.setValue(parseType("value", xpp)); 26789 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26790 return false; 26791 } 26792 return true; 26793 } 26794 26795 protected SubstanceDefinition.SubstanceDefinitionMolecularWeightComponent parseSubstanceDefinitionMolecularWeightComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26796 SubstanceDefinition.SubstanceDefinitionMolecularWeightComponent res = new SubstanceDefinition.SubstanceDefinitionMolecularWeightComponent(); 26797 parseElementAttributes(xpp, res); 26798 next(xpp); 26799 int eventType = nextNoWhitespace(xpp); 26800 while (eventType != XmlPullParser.END_TAG) { 26801 if (!parseSubstanceDefinitionMolecularWeightComponentContent(eventType, xpp, res)) 26802 unknownContent(xpp); 26803 eventType = nextNoWhitespace(xpp); 26804 } 26805 next(xpp); 26806 parseElementClose(res); 26807 return res; 26808 } 26809 26810 protected boolean parseSubstanceDefinitionMolecularWeightComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionMolecularWeightComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26811 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 26812 res.setMethod(parseCodeableConcept(xpp)); 26813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 26814 res.setType(parseCodeableConcept(xpp)); 26815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 26816 res.setAmount(parseQuantity(xpp)); 26817 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26818 return false; 26819 } 26820 return true; 26821 } 26822 26823 protected SubstanceDefinition.SubstanceDefinitionStructureComponent parseSubstanceDefinitionStructureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26824 SubstanceDefinition.SubstanceDefinitionStructureComponent res = new SubstanceDefinition.SubstanceDefinitionStructureComponent(); 26825 parseElementAttributes(xpp, res); 26826 next(xpp); 26827 int eventType = nextNoWhitespace(xpp); 26828 while (eventType != XmlPullParser.END_TAG) { 26829 if (!parseSubstanceDefinitionStructureComponentContent(eventType, xpp, res)) 26830 unknownContent(xpp); 26831 eventType = nextNoWhitespace(xpp); 26832 } 26833 next(xpp); 26834 parseElementClose(res); 26835 return res; 26836 } 26837 26838 protected boolean parseSubstanceDefinitionStructureComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionStructureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26839 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stereochemistry")) { 26840 res.setStereochemistry(parseCodeableConcept(xpp)); 26841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("opticalActivity")) { 26842 res.setOpticalActivity(parseCodeableConcept(xpp)); 26843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("molecularFormula")) { 26844 res.setMolecularFormulaElement(parseString(xpp)); 26845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("molecularFormulaByMoiety")) { 26846 res.setMolecularFormulaByMoietyElement(parseString(xpp)); 26847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("molecularWeight")) { 26848 res.setMolecularWeight(parseSubstanceDefinitionMolecularWeightComponent(xpp)); 26849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("technique")) { 26850 res.getTechnique().add(parseCodeableConcept(xpp)); 26851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceDocument")) { 26852 res.getSourceDocument().add(parseReference(xpp)); 26853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { 26854 res.getRepresentation().add(parseSubstanceDefinitionStructureRepresentationComponent(xpp)); 26855 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26856 return false; 26857 } 26858 return true; 26859 } 26860 26861 protected SubstanceDefinition.SubstanceDefinitionStructureRepresentationComponent parseSubstanceDefinitionStructureRepresentationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26862 SubstanceDefinition.SubstanceDefinitionStructureRepresentationComponent res = new SubstanceDefinition.SubstanceDefinitionStructureRepresentationComponent(); 26863 parseElementAttributes(xpp, res); 26864 next(xpp); 26865 int eventType = nextNoWhitespace(xpp); 26866 while (eventType != XmlPullParser.END_TAG) { 26867 if (!parseSubstanceDefinitionStructureRepresentationComponentContent(eventType, xpp, res)) 26868 unknownContent(xpp); 26869 eventType = nextNoWhitespace(xpp); 26870 } 26871 next(xpp); 26872 parseElementClose(res); 26873 return res; 26874 } 26875 26876 protected boolean parseSubstanceDefinitionStructureRepresentationComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionStructureRepresentationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26877 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 26878 res.setType(parseCodeableConcept(xpp)); 26879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { 26880 res.setRepresentationElement(parseString(xpp)); 26881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 26882 res.setFormat(parseCodeableConcept(xpp)); 26883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 26884 res.setDocument(parseReference(xpp)); 26885 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26886 return false; 26887 } 26888 return true; 26889 } 26890 26891 protected SubstanceDefinition.SubstanceDefinitionCodeComponent parseSubstanceDefinitionCodeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26892 SubstanceDefinition.SubstanceDefinitionCodeComponent res = new SubstanceDefinition.SubstanceDefinitionCodeComponent(); 26893 parseElementAttributes(xpp, res); 26894 next(xpp); 26895 int eventType = nextNoWhitespace(xpp); 26896 while (eventType != XmlPullParser.END_TAG) { 26897 if (!parseSubstanceDefinitionCodeComponentContent(eventType, xpp, res)) 26898 unknownContent(xpp); 26899 eventType = nextNoWhitespace(xpp); 26900 } 26901 next(xpp); 26902 parseElementClose(res); 26903 return res; 26904 } 26905 26906 protected boolean parseSubstanceDefinitionCodeComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionCodeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26907 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 26908 res.setCode(parseCodeableConcept(xpp)); 26909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 26910 res.setStatus(parseCodeableConcept(xpp)); 26911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 26912 res.setStatusDateElement(parseDateTime(xpp)); 26913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 26914 res.getNote().add(parseAnnotation(xpp)); 26915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 26916 res.getSource().add(parseReference(xpp)); 26917 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26918 return false; 26919 } 26920 return true; 26921 } 26922 26923 protected SubstanceDefinition.SubstanceDefinitionNameComponent parseSubstanceDefinitionNameComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26924 SubstanceDefinition.SubstanceDefinitionNameComponent res = new SubstanceDefinition.SubstanceDefinitionNameComponent(); 26925 parseElementAttributes(xpp, res); 26926 next(xpp); 26927 int eventType = nextNoWhitespace(xpp); 26928 while (eventType != XmlPullParser.END_TAG) { 26929 if (!parseSubstanceDefinitionNameComponentContent(eventType, xpp, res)) 26930 unknownContent(xpp); 26931 eventType = nextNoWhitespace(xpp); 26932 } 26933 next(xpp); 26934 parseElementClose(res); 26935 return res; 26936 } 26937 26938 protected boolean parseSubstanceDefinitionNameComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionNameComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26939 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 26940 res.setNameElement(parseString(xpp)); 26941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 26942 res.setType(parseCodeableConcept(xpp)); 26943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 26944 res.setStatus(parseCodeableConcept(xpp)); 26945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 26946 res.setPreferredElement(parseBoolean(xpp)); 26947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 26948 res.getLanguage().add(parseCodeableConcept(xpp)); 26949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { 26950 res.getDomain().add(parseCodeableConcept(xpp)); 26951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 26952 res.getJurisdiction().add(parseCodeableConcept(xpp)); 26953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("synonym")) { 26954 res.getSynonym().add(parseSubstanceDefinitionNameComponent(xpp)); 26955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("translation")) { 26956 res.getTranslation().add(parseSubstanceDefinitionNameComponent(xpp)); 26957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("official")) { 26958 res.getOfficial().add(parseSubstanceDefinitionNameOfficialComponent(xpp)); 26959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 26960 res.getSource().add(parseReference(xpp)); 26961 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26962 return false; 26963 } 26964 return true; 26965 } 26966 26967 protected SubstanceDefinition.SubstanceDefinitionNameOfficialComponent parseSubstanceDefinitionNameOfficialComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26968 SubstanceDefinition.SubstanceDefinitionNameOfficialComponent res = new SubstanceDefinition.SubstanceDefinitionNameOfficialComponent(); 26969 parseElementAttributes(xpp, res); 26970 next(xpp); 26971 int eventType = nextNoWhitespace(xpp); 26972 while (eventType != XmlPullParser.END_TAG) { 26973 if (!parseSubstanceDefinitionNameOfficialComponentContent(eventType, xpp, res)) 26974 unknownContent(xpp); 26975 eventType = nextNoWhitespace(xpp); 26976 } 26977 next(xpp); 26978 parseElementClose(res); 26979 return res; 26980 } 26981 26982 protected boolean parseSubstanceDefinitionNameOfficialComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionNameOfficialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 26983 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 26984 res.setAuthority(parseCodeableConcept(xpp)); 26985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 26986 res.setStatus(parseCodeableConcept(xpp)); 26987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 26988 res.setDateElement(parseDateTime(xpp)); 26989 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 26990 return false; 26991 } 26992 return true; 26993 } 26994 26995 protected SubstanceDefinition.SubstanceDefinitionRelationshipComponent parseSubstanceDefinitionRelationshipComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 26996 SubstanceDefinition.SubstanceDefinitionRelationshipComponent res = new SubstanceDefinition.SubstanceDefinitionRelationshipComponent(); 26997 parseElementAttributes(xpp, res); 26998 next(xpp); 26999 int eventType = nextNoWhitespace(xpp); 27000 while (eventType != XmlPullParser.END_TAG) { 27001 if (!parseSubstanceDefinitionRelationshipComponentContent(eventType, xpp, res)) 27002 unknownContent(xpp); 27003 eventType = nextNoWhitespace(xpp); 27004 } 27005 next(xpp); 27006 parseElementClose(res); 27007 return res; 27008 } 27009 27010 protected boolean parseSubstanceDefinitionRelationshipComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionRelationshipComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27011 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "substanceDefinition")) { 27012 res.setSubstanceDefinition(parseType("substanceDefinition", xpp)); 27013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 27014 res.setType(parseCodeableConcept(xpp)); 27015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isDefining")) { 27016 res.setIsDefiningElement(parseBoolean(xpp)); 27017 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "amount")) { 27018 res.setAmount(parseType("amount", xpp)); 27019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ratioHighLimitAmount")) { 27020 res.setRatioHighLimitAmount(parseRatio(xpp)); 27021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 27022 res.setComparator(parseCodeableConcept(xpp)); 27023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 27024 res.getSource().add(parseReference(xpp)); 27025 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27026 return false; 27027 } 27028 return true; 27029 } 27030 27031 protected SubstanceDefinition.SubstanceDefinitionSourceMaterialComponent parseSubstanceDefinitionSourceMaterialComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27032 SubstanceDefinition.SubstanceDefinitionSourceMaterialComponent res = new SubstanceDefinition.SubstanceDefinitionSourceMaterialComponent(); 27033 parseElementAttributes(xpp, res); 27034 next(xpp); 27035 int eventType = nextNoWhitespace(xpp); 27036 while (eventType != XmlPullParser.END_TAG) { 27037 if (!parseSubstanceDefinitionSourceMaterialComponentContent(eventType, xpp, res)) 27038 unknownContent(xpp); 27039 eventType = nextNoWhitespace(xpp); 27040 } 27041 next(xpp); 27042 parseElementClose(res); 27043 return res; 27044 } 27045 27046 protected boolean parseSubstanceDefinitionSourceMaterialComponentContent(int eventType, XmlPullParser xpp, SubstanceDefinition.SubstanceDefinitionSourceMaterialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27047 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 27048 res.setType(parseCodeableConcept(xpp)); 27049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genus")) { 27050 res.setGenus(parseCodeableConcept(xpp)); 27051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("species")) { 27052 res.setSpecies(parseCodeableConcept(xpp)); 27053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 27054 res.setPart(parseCodeableConcept(xpp)); 27055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countryOfOrigin")) { 27056 res.getCountryOfOrigin().add(parseCodeableConcept(xpp)); 27057 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27058 return false; 27059 } 27060 return true; 27061 } 27062 27063 protected SubstanceNucleicAcid parseSubstanceNucleicAcid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27064 SubstanceNucleicAcid res = new SubstanceNucleicAcid(); 27065 parseResourceAttributes(xpp, res); 27066 next(xpp); 27067 int eventType = nextNoWhitespace(xpp); 27068 while (eventType != XmlPullParser.END_TAG) { 27069 if (!parseSubstanceNucleicAcidContent(eventType, xpp, res)) 27070 unknownContent(xpp); 27071 eventType = nextNoWhitespace(xpp); 27072 } 27073 next(xpp); 27074 parseElementClose(res); 27075 return res; 27076 } 27077 27078 protected boolean parseSubstanceNucleicAcidContent(int eventType, XmlPullParser xpp, SubstanceNucleicAcid res) throws XmlPullParserException, IOException, FHIRFormatError { 27079 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceType")) { 27080 res.setSequenceType(parseCodeableConcept(xpp)); 27081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfSubunits")) { 27082 res.setNumberOfSubunitsElement(parseInteger(xpp)); 27083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("areaOfHybridisation")) { 27084 res.setAreaOfHybridisationElement(parseString(xpp)); 27085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("oligoNucleotideType")) { 27086 res.setOligoNucleotideType(parseCodeableConcept(xpp)); 27087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subunit")) { 27088 res.getSubunit().add(parseSubstanceNucleicAcidSubunitComponent(xpp)); 27089 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 27090 return false; 27091 } 27092 return true; 27093 } 27094 27095 protected SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent parseSubstanceNucleicAcidSubunitComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27096 SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent res = new SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent(); 27097 parseElementAttributes(xpp, res); 27098 next(xpp); 27099 int eventType = nextNoWhitespace(xpp); 27100 while (eventType != XmlPullParser.END_TAG) { 27101 if (!parseSubstanceNucleicAcidSubunitComponentContent(eventType, xpp, res)) 27102 unknownContent(xpp); 27103 eventType = nextNoWhitespace(xpp); 27104 } 27105 next(xpp); 27106 parseElementClose(res); 27107 return res; 27108 } 27109 27110 protected boolean parseSubstanceNucleicAcidSubunitComponentContent(int eventType, XmlPullParser xpp, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27111 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subunit")) { 27112 res.setSubunitElement(parseInteger(xpp)); 27113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 27114 res.setSequenceElement(parseString(xpp)); 27115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 27116 res.setLengthElement(parseInteger(xpp)); 27117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceAttachment")) { 27118 res.setSequenceAttachment(parseAttachment(xpp)); 27119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fivePrime")) { 27120 res.setFivePrime(parseCodeableConcept(xpp)); 27121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("threePrime")) { 27122 res.setThreePrime(parseCodeableConcept(xpp)); 27123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkage")) { 27124 res.getLinkage().add(parseSubstanceNucleicAcidSubunitLinkageComponent(xpp)); 27125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sugar")) { 27126 res.getSugar().add(parseSubstanceNucleicAcidSubunitSugarComponent(xpp)); 27127 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27128 return false; 27129 } 27130 return true; 27131 } 27132 27133 protected SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent parseSubstanceNucleicAcidSubunitLinkageComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27134 SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent res = new SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent(); 27135 parseElementAttributes(xpp, res); 27136 next(xpp); 27137 int eventType = nextNoWhitespace(xpp); 27138 while (eventType != XmlPullParser.END_TAG) { 27139 if (!parseSubstanceNucleicAcidSubunitLinkageComponentContent(eventType, xpp, res)) 27140 unknownContent(xpp); 27141 eventType = nextNoWhitespace(xpp); 27142 } 27143 next(xpp); 27144 parseElementClose(res); 27145 return res; 27146 } 27147 27148 protected boolean parseSubstanceNucleicAcidSubunitLinkageComponentContent(int eventType, XmlPullParser xpp, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27149 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("connectivity")) { 27150 res.setConnectivityElement(parseString(xpp)); 27151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 27152 res.setIdentifier(parseIdentifier(xpp)); 27153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 27154 res.setNameElement(parseString(xpp)); 27155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("residueSite")) { 27156 res.setResidueSiteElement(parseString(xpp)); 27157 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27158 return false; 27159 } 27160 return true; 27161 } 27162 27163 protected SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent parseSubstanceNucleicAcidSubunitSugarComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27164 SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent res = new SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent(); 27165 parseElementAttributes(xpp, res); 27166 next(xpp); 27167 int eventType = nextNoWhitespace(xpp); 27168 while (eventType != XmlPullParser.END_TAG) { 27169 if (!parseSubstanceNucleicAcidSubunitSugarComponentContent(eventType, xpp, res)) 27170 unknownContent(xpp); 27171 eventType = nextNoWhitespace(xpp); 27172 } 27173 next(xpp); 27174 parseElementClose(res); 27175 return res; 27176 } 27177 27178 protected boolean parseSubstanceNucleicAcidSubunitSugarComponentContent(int eventType, XmlPullParser xpp, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27179 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 27180 res.setIdentifier(parseIdentifier(xpp)); 27181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 27182 res.setNameElement(parseString(xpp)); 27183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("residueSite")) { 27184 res.setResidueSiteElement(parseString(xpp)); 27185 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27186 return false; 27187 } 27188 return true; 27189 } 27190 27191 protected SubstancePolymer parseSubstancePolymer(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27192 SubstancePolymer res = new SubstancePolymer(); 27193 parseResourceAttributes(xpp, res); 27194 next(xpp); 27195 int eventType = nextNoWhitespace(xpp); 27196 while (eventType != XmlPullParser.END_TAG) { 27197 if (!parseSubstancePolymerContent(eventType, xpp, res)) 27198 unknownContent(xpp); 27199 eventType = nextNoWhitespace(xpp); 27200 } 27201 next(xpp); 27202 parseElementClose(res); 27203 return res; 27204 } 27205 27206 protected boolean parseSubstancePolymerContent(int eventType, XmlPullParser xpp, SubstancePolymer res) throws XmlPullParserException, IOException, FHIRFormatError { 27207 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 27208 res.setIdentifier(parseIdentifier(xpp)); 27209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 27210 res.setClass_(parseCodeableConcept(xpp)); 27211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("geometry")) { 27212 res.setGeometry(parseCodeableConcept(xpp)); 27213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copolymerConnectivity")) { 27214 res.getCopolymerConnectivity().add(parseCodeableConcept(xpp)); 27215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modification")) { 27216 res.setModificationElement(parseString(xpp)); 27217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("monomerSet")) { 27218 res.getMonomerSet().add(parseSubstancePolymerMonomerSetComponent(xpp)); 27219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeat")) { 27220 res.getRepeat().add(parseSubstancePolymerRepeatComponent(xpp)); 27221 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 27222 return false; 27223 } 27224 return true; 27225 } 27226 27227 protected SubstancePolymer.SubstancePolymerMonomerSetComponent parseSubstancePolymerMonomerSetComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27228 SubstancePolymer.SubstancePolymerMonomerSetComponent res = new SubstancePolymer.SubstancePolymerMonomerSetComponent(); 27229 parseElementAttributes(xpp, res); 27230 next(xpp); 27231 int eventType = nextNoWhitespace(xpp); 27232 while (eventType != XmlPullParser.END_TAG) { 27233 if (!parseSubstancePolymerMonomerSetComponentContent(eventType, xpp, res)) 27234 unknownContent(xpp); 27235 eventType = nextNoWhitespace(xpp); 27236 } 27237 next(xpp); 27238 parseElementClose(res); 27239 return res; 27240 } 27241 27242 protected boolean parseSubstancePolymerMonomerSetComponentContent(int eventType, XmlPullParser xpp, SubstancePolymer.SubstancePolymerMonomerSetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27243 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ratioType")) { 27244 res.setRatioType(parseCodeableConcept(xpp)); 27245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("startingMaterial")) { 27246 res.getStartingMaterial().add(parseSubstancePolymerMonomerSetStartingMaterialComponent(xpp)); 27247 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27248 return false; 27249 } 27250 return true; 27251 } 27252 27253 protected SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent parseSubstancePolymerMonomerSetStartingMaterialComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27254 SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent res = new SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent(); 27255 parseElementAttributes(xpp, res); 27256 next(xpp); 27257 int eventType = nextNoWhitespace(xpp); 27258 while (eventType != XmlPullParser.END_TAG) { 27259 if (!parseSubstancePolymerMonomerSetStartingMaterialComponentContent(eventType, xpp, res)) 27260 unknownContent(xpp); 27261 eventType = nextNoWhitespace(xpp); 27262 } 27263 next(xpp); 27264 parseElementClose(res); 27265 return res; 27266 } 27267 27268 protected boolean parseSubstancePolymerMonomerSetStartingMaterialComponentContent(int eventType, XmlPullParser xpp, SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27269 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 27270 res.setCode(parseCodeableConcept(xpp)); 27271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 27272 res.setCategory(parseCodeableConcept(xpp)); 27273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isDefining")) { 27274 res.setIsDefiningElement(parseBoolean(xpp)); 27275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 27276 res.setAmount(parseQuantity(xpp)); 27277 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27278 return false; 27279 } 27280 return true; 27281 } 27282 27283 protected SubstancePolymer.SubstancePolymerRepeatComponent parseSubstancePolymerRepeatComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27284 SubstancePolymer.SubstancePolymerRepeatComponent res = new SubstancePolymer.SubstancePolymerRepeatComponent(); 27285 parseElementAttributes(xpp, res); 27286 next(xpp); 27287 int eventType = nextNoWhitespace(xpp); 27288 while (eventType != XmlPullParser.END_TAG) { 27289 if (!parseSubstancePolymerRepeatComponentContent(eventType, xpp, res)) 27290 unknownContent(xpp); 27291 eventType = nextNoWhitespace(xpp); 27292 } 27293 next(xpp); 27294 parseElementClose(res); 27295 return res; 27296 } 27297 27298 protected boolean parseSubstancePolymerRepeatComponentContent(int eventType, XmlPullParser xpp, SubstancePolymer.SubstancePolymerRepeatComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27299 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("averageMolecularFormula")) { 27300 res.setAverageMolecularFormulaElement(parseString(xpp)); 27301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeatUnitAmountType")) { 27302 res.setRepeatUnitAmountType(parseCodeableConcept(xpp)); 27303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeatUnit")) { 27304 res.getRepeatUnit().add(parseSubstancePolymerRepeatRepeatUnitComponent(xpp)); 27305 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27306 return false; 27307 } 27308 return true; 27309 } 27310 27311 protected SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent parseSubstancePolymerRepeatRepeatUnitComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27312 SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent res = new SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent(); 27313 parseElementAttributes(xpp, res); 27314 next(xpp); 27315 int eventType = nextNoWhitespace(xpp); 27316 while (eventType != XmlPullParser.END_TAG) { 27317 if (!parseSubstancePolymerRepeatRepeatUnitComponentContent(eventType, xpp, res)) 27318 unknownContent(xpp); 27319 eventType = nextNoWhitespace(xpp); 27320 } 27321 next(xpp); 27322 parseElementClose(res); 27323 return res; 27324 } 27325 27326 protected boolean parseSubstancePolymerRepeatRepeatUnitComponentContent(int eventType, XmlPullParser xpp, SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27327 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 27328 res.setUnitElement(parseString(xpp)); 27329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orientation")) { 27330 res.setOrientation(parseCodeableConcept(xpp)); 27331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 27332 res.setAmountElement(parseInteger(xpp)); 27333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("degreeOfPolymerisation")) { 27334 res.getDegreeOfPolymerisation().add(parseSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(xpp)); 27335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structuralRepresentation")) { 27336 res.getStructuralRepresentation().add(parseSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent(xpp)); 27337 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27338 return false; 27339 } 27340 return true; 27341 } 27342 27343 protected SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent parseSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27344 SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent res = new SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(); 27345 parseElementAttributes(xpp, res); 27346 next(xpp); 27347 int eventType = nextNoWhitespace(xpp); 27348 while (eventType != XmlPullParser.END_TAG) { 27349 if (!parseSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponentContent(eventType, xpp, res)) 27350 unknownContent(xpp); 27351 eventType = nextNoWhitespace(xpp); 27352 } 27353 next(xpp); 27354 parseElementClose(res); 27355 return res; 27356 } 27357 27358 protected boolean parseSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponentContent(int eventType, XmlPullParser xpp, SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27359 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 27360 res.setType(parseCodeableConcept(xpp)); 27361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("average")) { 27362 res.setAverageElement(parseInteger(xpp)); 27363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 27364 res.setLowElement(parseInteger(xpp)); 27365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 27366 res.setHighElement(parseInteger(xpp)); 27367 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27368 return false; 27369 } 27370 return true; 27371 } 27372 27373 protected SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent parseSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27374 SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent res = new SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent(); 27375 parseElementAttributes(xpp, res); 27376 next(xpp); 27377 int eventType = nextNoWhitespace(xpp); 27378 while (eventType != XmlPullParser.END_TAG) { 27379 if (!parseSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponentContent(eventType, xpp, res)) 27380 unknownContent(xpp); 27381 eventType = nextNoWhitespace(xpp); 27382 } 27383 next(xpp); 27384 parseElementClose(res); 27385 return res; 27386 } 27387 27388 protected boolean parseSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponentContent(int eventType, XmlPullParser xpp, SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27389 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 27390 res.setType(parseCodeableConcept(xpp)); 27391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { 27392 res.setRepresentationElement(parseString(xpp)); 27393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 27394 res.setFormat(parseCodeableConcept(xpp)); 27395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachment")) { 27396 res.setAttachment(parseAttachment(xpp)); 27397 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27398 return false; 27399 } 27400 return true; 27401 } 27402 27403 protected SubstanceProtein parseSubstanceProtein(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27404 SubstanceProtein res = new SubstanceProtein(); 27405 parseResourceAttributes(xpp, res); 27406 next(xpp); 27407 int eventType = nextNoWhitespace(xpp); 27408 while (eventType != XmlPullParser.END_TAG) { 27409 if (!parseSubstanceProteinContent(eventType, xpp, res)) 27410 unknownContent(xpp); 27411 eventType = nextNoWhitespace(xpp); 27412 } 27413 next(xpp); 27414 parseElementClose(res); 27415 return res; 27416 } 27417 27418 protected boolean parseSubstanceProteinContent(int eventType, XmlPullParser xpp, SubstanceProtein res) throws XmlPullParserException, IOException, FHIRFormatError { 27419 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceType")) { 27420 res.setSequenceType(parseCodeableConcept(xpp)); 27421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfSubunits")) { 27422 res.setNumberOfSubunitsElement(parseInteger(xpp)); 27423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disulfideLinkage")) { 27424 res.getDisulfideLinkage().add(parseString(xpp)); 27425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subunit")) { 27426 res.getSubunit().add(parseSubstanceProteinSubunitComponent(xpp)); 27427 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 27428 return false; 27429 } 27430 return true; 27431 } 27432 27433 protected SubstanceProtein.SubstanceProteinSubunitComponent parseSubstanceProteinSubunitComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27434 SubstanceProtein.SubstanceProteinSubunitComponent res = new SubstanceProtein.SubstanceProteinSubunitComponent(); 27435 parseElementAttributes(xpp, res); 27436 next(xpp); 27437 int eventType = nextNoWhitespace(xpp); 27438 while (eventType != XmlPullParser.END_TAG) { 27439 if (!parseSubstanceProteinSubunitComponentContent(eventType, xpp, res)) 27440 unknownContent(xpp); 27441 eventType = nextNoWhitespace(xpp); 27442 } 27443 next(xpp); 27444 parseElementClose(res); 27445 return res; 27446 } 27447 27448 protected boolean parseSubstanceProteinSubunitComponentContent(int eventType, XmlPullParser xpp, SubstanceProtein.SubstanceProteinSubunitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27449 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subunit")) { 27450 res.setSubunitElement(parseInteger(xpp)); 27451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 27452 res.setSequenceElement(parseString(xpp)); 27453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 27454 res.setLengthElement(parseInteger(xpp)); 27455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceAttachment")) { 27456 res.setSequenceAttachment(parseAttachment(xpp)); 27457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nTerminalModificationId")) { 27458 res.setNTerminalModificationId(parseIdentifier(xpp)); 27459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nTerminalModification")) { 27460 res.setNTerminalModificationElement(parseString(xpp)); 27461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cTerminalModificationId")) { 27462 res.setCTerminalModificationId(parseIdentifier(xpp)); 27463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cTerminalModification")) { 27464 res.setCTerminalModificationElement(parseString(xpp)); 27465 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27466 return false; 27467 } 27468 return true; 27469 } 27470 27471 protected SubstanceReferenceInformation parseSubstanceReferenceInformation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27472 SubstanceReferenceInformation res = new SubstanceReferenceInformation(); 27473 parseResourceAttributes(xpp, res); 27474 next(xpp); 27475 int eventType = nextNoWhitespace(xpp); 27476 while (eventType != XmlPullParser.END_TAG) { 27477 if (!parseSubstanceReferenceInformationContent(eventType, xpp, res)) 27478 unknownContent(xpp); 27479 eventType = nextNoWhitespace(xpp); 27480 } 27481 next(xpp); 27482 parseElementClose(res); 27483 return res; 27484 } 27485 27486 protected boolean parseSubstanceReferenceInformationContent(int eventType, XmlPullParser xpp, SubstanceReferenceInformation res) throws XmlPullParserException, IOException, FHIRFormatError { 27487 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 27488 res.setCommentElement(parseString(xpp)); 27489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gene")) { 27490 res.getGene().add(parseSubstanceReferenceInformationGeneComponent(xpp)); 27491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("geneElement")) { 27492 res.getGeneElement().add(parseSubstanceReferenceInformationGeneElementComponent(xpp)); 27493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 27494 res.getTarget().add(parseSubstanceReferenceInformationTargetComponent(xpp)); 27495 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 27496 return false; 27497 } 27498 return true; 27499 } 27500 27501 protected SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent parseSubstanceReferenceInformationGeneComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27502 SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent res = new SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent(); 27503 parseElementAttributes(xpp, res); 27504 next(xpp); 27505 int eventType = nextNoWhitespace(xpp); 27506 while (eventType != XmlPullParser.END_TAG) { 27507 if (!parseSubstanceReferenceInformationGeneComponentContent(eventType, xpp, res)) 27508 unknownContent(xpp); 27509 eventType = nextNoWhitespace(xpp); 27510 } 27511 next(xpp); 27512 parseElementClose(res); 27513 return res; 27514 } 27515 27516 protected boolean parseSubstanceReferenceInformationGeneComponentContent(int eventType, XmlPullParser xpp, SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27517 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("geneSequenceOrigin")) { 27518 res.setGeneSequenceOrigin(parseCodeableConcept(xpp)); 27519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gene")) { 27520 res.setGene(parseCodeableConcept(xpp)); 27521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 27522 res.getSource().add(parseReference(xpp)); 27523 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27524 return false; 27525 } 27526 return true; 27527 } 27528 27529 protected SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent parseSubstanceReferenceInformationGeneElementComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27530 SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent res = new SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent(); 27531 parseElementAttributes(xpp, res); 27532 next(xpp); 27533 int eventType = nextNoWhitespace(xpp); 27534 while (eventType != XmlPullParser.END_TAG) { 27535 if (!parseSubstanceReferenceInformationGeneElementComponentContent(eventType, xpp, res)) 27536 unknownContent(xpp); 27537 eventType = nextNoWhitespace(xpp); 27538 } 27539 next(xpp); 27540 parseElementClose(res); 27541 return res; 27542 } 27543 27544 protected boolean parseSubstanceReferenceInformationGeneElementComponentContent(int eventType, XmlPullParser xpp, SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27545 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 27546 res.setType(parseCodeableConcept(xpp)); 27547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 27548 res.setElement(parseIdentifier(xpp)); 27549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 27550 res.getSource().add(parseReference(xpp)); 27551 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27552 return false; 27553 } 27554 return true; 27555 } 27556 27557 protected SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent parseSubstanceReferenceInformationTargetComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27558 SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent res = new SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent(); 27559 parseElementAttributes(xpp, res); 27560 next(xpp); 27561 int eventType = nextNoWhitespace(xpp); 27562 while (eventType != XmlPullParser.END_TAG) { 27563 if (!parseSubstanceReferenceInformationTargetComponentContent(eventType, xpp, res)) 27564 unknownContent(xpp); 27565 eventType = nextNoWhitespace(xpp); 27566 } 27567 next(xpp); 27568 parseElementClose(res); 27569 return res; 27570 } 27571 27572 protected boolean parseSubstanceReferenceInformationTargetComponentContent(int eventType, XmlPullParser xpp, SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27573 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 27574 res.setTarget(parseIdentifier(xpp)); 27575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 27576 res.setType(parseCodeableConcept(xpp)); 27577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 27578 res.setInteraction(parseCodeableConcept(xpp)); 27579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organism")) { 27580 res.setOrganism(parseCodeableConcept(xpp)); 27581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organismType")) { 27582 res.setOrganismType(parseCodeableConcept(xpp)); 27583 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "amount")) { 27584 res.setAmount(parseType("amount", xpp)); 27585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amountType")) { 27586 res.setAmountType(parseCodeableConcept(xpp)); 27587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 27588 res.getSource().add(parseReference(xpp)); 27589 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27590 return false; 27591 } 27592 return true; 27593 } 27594 27595 protected SubstanceSourceMaterial parseSubstanceSourceMaterial(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27596 SubstanceSourceMaterial res = new SubstanceSourceMaterial(); 27597 parseResourceAttributes(xpp, res); 27598 next(xpp); 27599 int eventType = nextNoWhitespace(xpp); 27600 while (eventType != XmlPullParser.END_TAG) { 27601 if (!parseSubstanceSourceMaterialContent(eventType, xpp, res)) 27602 unknownContent(xpp); 27603 eventType = nextNoWhitespace(xpp); 27604 } 27605 next(xpp); 27606 parseElementClose(res); 27607 return res; 27608 } 27609 27610 protected boolean parseSubstanceSourceMaterialContent(int eventType, XmlPullParser xpp, SubstanceSourceMaterial res) throws XmlPullParserException, IOException, FHIRFormatError { 27611 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceMaterialClass")) { 27612 res.setSourceMaterialClass(parseCodeableConcept(xpp)); 27613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceMaterialType")) { 27614 res.setSourceMaterialType(parseCodeableConcept(xpp)); 27615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceMaterialState")) { 27616 res.setSourceMaterialState(parseCodeableConcept(xpp)); 27617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organismId")) { 27618 res.setOrganismId(parseIdentifier(xpp)); 27619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organismName")) { 27620 res.setOrganismNameElement(parseString(xpp)); 27621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parentSubstanceId")) { 27622 res.getParentSubstanceId().add(parseIdentifier(xpp)); 27623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parentSubstanceName")) { 27624 res.getParentSubstanceName().add(parseString(xpp)); 27625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countryOfOrigin")) { 27626 res.getCountryOfOrigin().add(parseCodeableConcept(xpp)); 27627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("geographicalLocation")) { 27628 res.getGeographicalLocation().add(parseString(xpp)); 27629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("developmentStage")) { 27630 res.setDevelopmentStage(parseCodeableConcept(xpp)); 27631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fractionDescription")) { 27632 res.getFractionDescription().add(parseSubstanceSourceMaterialFractionDescriptionComponent(xpp)); 27633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organism")) { 27634 res.setOrganism(parseSubstanceSourceMaterialOrganismComponent(xpp)); 27635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partDescription")) { 27636 res.getPartDescription().add(parseSubstanceSourceMaterialPartDescriptionComponent(xpp)); 27637 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 27638 return false; 27639 } 27640 return true; 27641 } 27642 27643 protected SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent parseSubstanceSourceMaterialFractionDescriptionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27644 SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent res = new SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent(); 27645 parseElementAttributes(xpp, res); 27646 next(xpp); 27647 int eventType = nextNoWhitespace(xpp); 27648 while (eventType != XmlPullParser.END_TAG) { 27649 if (!parseSubstanceSourceMaterialFractionDescriptionComponentContent(eventType, xpp, res)) 27650 unknownContent(xpp); 27651 eventType = nextNoWhitespace(xpp); 27652 } 27653 next(xpp); 27654 parseElementClose(res); 27655 return res; 27656 } 27657 27658 protected boolean parseSubstanceSourceMaterialFractionDescriptionComponentContent(int eventType, XmlPullParser xpp, SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27659 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fraction")) { 27660 res.setFractionElement(parseString(xpp)); 27661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("materialType")) { 27662 res.setMaterialType(parseCodeableConcept(xpp)); 27663 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27664 return false; 27665 } 27666 return true; 27667 } 27668 27669 protected SubstanceSourceMaterial.SubstanceSourceMaterialOrganismComponent parseSubstanceSourceMaterialOrganismComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27670 SubstanceSourceMaterial.SubstanceSourceMaterialOrganismComponent res = new SubstanceSourceMaterial.SubstanceSourceMaterialOrganismComponent(); 27671 parseElementAttributes(xpp, res); 27672 next(xpp); 27673 int eventType = nextNoWhitespace(xpp); 27674 while (eventType != XmlPullParser.END_TAG) { 27675 if (!parseSubstanceSourceMaterialOrganismComponentContent(eventType, xpp, res)) 27676 unknownContent(xpp); 27677 eventType = nextNoWhitespace(xpp); 27678 } 27679 next(xpp); 27680 parseElementClose(res); 27681 return res; 27682 } 27683 27684 protected boolean parseSubstanceSourceMaterialOrganismComponentContent(int eventType, XmlPullParser xpp, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27685 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("family")) { 27686 res.setFamily(parseCodeableConcept(xpp)); 27687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genus")) { 27688 res.setGenus(parseCodeableConcept(xpp)); 27689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("species")) { 27690 res.setSpecies(parseCodeableConcept(xpp)); 27691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intraspecificType")) { 27692 res.setIntraspecificType(parseCodeableConcept(xpp)); 27693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intraspecificDescription")) { 27694 res.setIntraspecificDescriptionElement(parseString(xpp)); 27695 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 27696 res.getAuthor().add(parseSubstanceSourceMaterialOrganismAuthorComponent(xpp)); 27697 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hybrid")) { 27698 res.setHybrid(parseSubstanceSourceMaterialOrganismHybridComponent(xpp)); 27699 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organismGeneral")) { 27700 res.setOrganismGeneral(parseSubstanceSourceMaterialOrganismOrganismGeneralComponent(xpp)); 27701 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27702 return false; 27703 } 27704 return true; 27705 } 27706 27707 protected SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent parseSubstanceSourceMaterialOrganismAuthorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27708 SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent res = new SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent(); 27709 parseElementAttributes(xpp, res); 27710 next(xpp); 27711 int eventType = nextNoWhitespace(xpp); 27712 while (eventType != XmlPullParser.END_TAG) { 27713 if (!parseSubstanceSourceMaterialOrganismAuthorComponentContent(eventType, xpp, res)) 27714 unknownContent(xpp); 27715 eventType = nextNoWhitespace(xpp); 27716 } 27717 next(xpp); 27718 parseElementClose(res); 27719 return res; 27720 } 27721 27722 protected boolean parseSubstanceSourceMaterialOrganismAuthorComponentContent(int eventType, XmlPullParser xpp, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27723 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorType")) { 27724 res.setAuthorType(parseCodeableConcept(xpp)); 27725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorDescription")) { 27726 res.setAuthorDescriptionElement(parseString(xpp)); 27727 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27728 return false; 27729 } 27730 return true; 27731 } 27732 27733 protected SubstanceSourceMaterial.SubstanceSourceMaterialOrganismHybridComponent parseSubstanceSourceMaterialOrganismHybridComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27734 SubstanceSourceMaterial.SubstanceSourceMaterialOrganismHybridComponent res = new SubstanceSourceMaterial.SubstanceSourceMaterialOrganismHybridComponent(); 27735 parseElementAttributes(xpp, res); 27736 next(xpp); 27737 int eventType = nextNoWhitespace(xpp); 27738 while (eventType != XmlPullParser.END_TAG) { 27739 if (!parseSubstanceSourceMaterialOrganismHybridComponentContent(eventType, xpp, res)) 27740 unknownContent(xpp); 27741 eventType = nextNoWhitespace(xpp); 27742 } 27743 next(xpp); 27744 parseElementClose(res); 27745 return res; 27746 } 27747 27748 protected boolean parseSubstanceSourceMaterialOrganismHybridComponentContent(int eventType, XmlPullParser xpp, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismHybridComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27749 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maternalOrganismId")) { 27750 res.setMaternalOrganismIdElement(parseString(xpp)); 27751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maternalOrganismName")) { 27752 res.setMaternalOrganismNameElement(parseString(xpp)); 27753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paternalOrganismId")) { 27754 res.setPaternalOrganismIdElement(parseString(xpp)); 27755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paternalOrganismName")) { 27756 res.setPaternalOrganismNameElement(parseString(xpp)); 27757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hybridType")) { 27758 res.setHybridType(parseCodeableConcept(xpp)); 27759 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27760 return false; 27761 } 27762 return true; 27763 } 27764 27765 protected SubstanceSourceMaterial.SubstanceSourceMaterialOrganismOrganismGeneralComponent parseSubstanceSourceMaterialOrganismOrganismGeneralComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27766 SubstanceSourceMaterial.SubstanceSourceMaterialOrganismOrganismGeneralComponent res = new SubstanceSourceMaterial.SubstanceSourceMaterialOrganismOrganismGeneralComponent(); 27767 parseElementAttributes(xpp, res); 27768 next(xpp); 27769 int eventType = nextNoWhitespace(xpp); 27770 while (eventType != XmlPullParser.END_TAG) { 27771 if (!parseSubstanceSourceMaterialOrganismOrganismGeneralComponentContent(eventType, xpp, res)) 27772 unknownContent(xpp); 27773 eventType = nextNoWhitespace(xpp); 27774 } 27775 next(xpp); 27776 parseElementClose(res); 27777 return res; 27778 } 27779 27780 protected boolean parseSubstanceSourceMaterialOrganismOrganismGeneralComponentContent(int eventType, XmlPullParser xpp, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismOrganismGeneralComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27781 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kingdom")) { 27782 res.setKingdom(parseCodeableConcept(xpp)); 27783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("phylum")) { 27784 res.setPhylum(parseCodeableConcept(xpp)); 27785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 27786 res.setClass_(parseCodeableConcept(xpp)); 27787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("order")) { 27788 res.setOrder(parseCodeableConcept(xpp)); 27789 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27790 return false; 27791 } 27792 return true; 27793 } 27794 27795 protected SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent parseSubstanceSourceMaterialPartDescriptionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27796 SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent res = new SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent(); 27797 parseElementAttributes(xpp, res); 27798 next(xpp); 27799 int eventType = nextNoWhitespace(xpp); 27800 while (eventType != XmlPullParser.END_TAG) { 27801 if (!parseSubstanceSourceMaterialPartDescriptionComponentContent(eventType, xpp, res)) 27802 unknownContent(xpp); 27803 eventType = nextNoWhitespace(xpp); 27804 } 27805 next(xpp); 27806 parseElementClose(res); 27807 return res; 27808 } 27809 27810 protected boolean parseSubstanceSourceMaterialPartDescriptionComponentContent(int eventType, XmlPullParser xpp, SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27811 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 27812 res.setPart(parseCodeableConcept(xpp)); 27813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partLocation")) { 27814 res.setPartLocation(parseCodeableConcept(xpp)); 27815 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27816 return false; 27817 } 27818 return true; 27819 } 27820 27821 protected SupplyDelivery parseSupplyDelivery(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27822 SupplyDelivery res = new SupplyDelivery(); 27823 parseResourceAttributes(xpp, res); 27824 next(xpp); 27825 int eventType = nextNoWhitespace(xpp); 27826 while (eventType != XmlPullParser.END_TAG) { 27827 if (!parseSupplyDeliveryContent(eventType, xpp, res)) 27828 unknownContent(xpp); 27829 eventType = nextNoWhitespace(xpp); 27830 } 27831 next(xpp); 27832 parseElementClose(res); 27833 return res; 27834 } 27835 27836 protected boolean parseSupplyDeliveryContent(int eventType, XmlPullParser xpp, SupplyDelivery res) throws XmlPullParserException, IOException, FHIRFormatError { 27837 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 27838 res.getIdentifier().add(parseIdentifier(xpp)); 27839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 27840 res.getBasedOn().add(parseReference(xpp)); 27841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 27842 res.getPartOf().add(parseReference(xpp)); 27843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 27844 res.setStatusElement(parseEnumeration(xpp, SupplyDelivery.SupplyDeliveryStatus.NULL, new SupplyDelivery.SupplyDeliveryStatusEnumFactory())); 27845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 27846 res.setPatient(parseReference(xpp)); 27847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 27848 res.setType(parseCodeableConcept(xpp)); 27849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suppliedItem")) { 27850 res.getSuppliedItem().add(parseSupplyDeliverySuppliedItemComponent(xpp)); 27851 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 27852 res.setOccurrence(parseType("occurrence", xpp)); 27853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 27854 res.setSupplier(parseReference(xpp)); 27855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 27856 res.setDestination(parseReference(xpp)); 27857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 27858 res.getReceiver().add(parseReference(xpp)); 27859 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 27860 return false; 27861 } 27862 return true; 27863 } 27864 27865 protected SupplyDelivery.SupplyDeliverySuppliedItemComponent parseSupplyDeliverySuppliedItemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27866 SupplyDelivery.SupplyDeliverySuppliedItemComponent res = new SupplyDelivery.SupplyDeliverySuppliedItemComponent(); 27867 parseElementAttributes(xpp, res); 27868 next(xpp); 27869 int eventType = nextNoWhitespace(xpp); 27870 while (eventType != XmlPullParser.END_TAG) { 27871 if (!parseSupplyDeliverySuppliedItemComponentContent(eventType, xpp, res)) 27872 unknownContent(xpp); 27873 eventType = nextNoWhitespace(xpp); 27874 } 27875 next(xpp); 27876 parseElementClose(res); 27877 return res; 27878 } 27879 27880 protected boolean parseSupplyDeliverySuppliedItemComponentContent(int eventType, XmlPullParser xpp, SupplyDelivery.SupplyDeliverySuppliedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27881 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 27882 res.setQuantity(parseQuantity(xpp)); 27883 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 27884 res.setItem(parseType("item", xpp)); 27885 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27886 return false; 27887 } 27888 return true; 27889 } 27890 27891 protected SupplyRequest parseSupplyRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27892 SupplyRequest res = new SupplyRequest(); 27893 parseResourceAttributes(xpp, res); 27894 next(xpp); 27895 int eventType = nextNoWhitespace(xpp); 27896 while (eventType != XmlPullParser.END_TAG) { 27897 if (!parseSupplyRequestContent(eventType, xpp, res)) 27898 unknownContent(xpp); 27899 eventType = nextNoWhitespace(xpp); 27900 } 27901 next(xpp); 27902 parseElementClose(res); 27903 return res; 27904 } 27905 27906 protected boolean parseSupplyRequestContent(int eventType, XmlPullParser xpp, SupplyRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 27907 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 27908 res.getIdentifier().add(parseIdentifier(xpp)); 27909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 27910 res.setStatusElement(parseEnumeration(xpp, SupplyRequest.SupplyRequestStatus.NULL, new SupplyRequest.SupplyRequestStatusEnumFactory())); 27911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 27912 res.getBasedOn().add(parseReference(xpp)); 27913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 27914 res.setCategory(parseCodeableConcept(xpp)); 27915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 27916 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 27917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deliverFor")) { 27918 res.setDeliverFor(parseReference(xpp)); 27919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 27920 res.setItem(parseCodeableReference(xpp)); 27921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 27922 res.setQuantity(parseQuantity(xpp)); 27923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 27924 res.getParameter().add(parseSupplyRequestParameterComponent(xpp)); 27925 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 27926 res.setOccurrence(parseType("occurrence", xpp)); 27927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 27928 res.setAuthoredOnElement(parseDateTime(xpp)); 27929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 27930 res.setRequester(parseReference(xpp)); 27931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 27932 res.getSupplier().add(parseReference(xpp)); 27933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 27934 res.getReason().add(parseCodeableReference(xpp)); 27935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deliverFrom")) { 27936 res.setDeliverFrom(parseReference(xpp)); 27937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deliverTo")) { 27938 res.setDeliverTo(parseReference(xpp)); 27939 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 27940 return false; 27941 } 27942 return true; 27943 } 27944 27945 protected SupplyRequest.SupplyRequestParameterComponent parseSupplyRequestParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27946 SupplyRequest.SupplyRequestParameterComponent res = new SupplyRequest.SupplyRequestParameterComponent(); 27947 parseElementAttributes(xpp, res); 27948 next(xpp); 27949 int eventType = nextNoWhitespace(xpp); 27950 while (eventType != XmlPullParser.END_TAG) { 27951 if (!parseSupplyRequestParameterComponentContent(eventType, xpp, res)) 27952 unknownContent(xpp); 27953 eventType = nextNoWhitespace(xpp); 27954 } 27955 next(xpp); 27956 parseElementClose(res); 27957 return res; 27958 } 27959 27960 protected boolean parseSupplyRequestParameterComponentContent(int eventType, XmlPullParser xpp, SupplyRequest.SupplyRequestParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 27961 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 27962 res.setCode(parseCodeableConcept(xpp)); 27963 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 27964 res.setValue(parseType("value", xpp)); 27965 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 27966 return false; 27967 } 27968 return true; 27969 } 27970 27971 protected Task parseTask(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 27972 Task res = new Task(); 27973 parseResourceAttributes(xpp, res); 27974 next(xpp); 27975 int eventType = nextNoWhitespace(xpp); 27976 while (eventType != XmlPullParser.END_TAG) { 27977 if (!parseTaskContent(eventType, xpp, res)) 27978 unknownContent(xpp); 27979 eventType = nextNoWhitespace(xpp); 27980 } 27981 next(xpp); 27982 parseElementClose(res); 27983 return res; 27984 } 27985 27986 protected boolean parseTaskContent(int eventType, XmlPullParser xpp, Task res) throws XmlPullParserException, IOException, FHIRFormatError { 27987 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 27988 res.getIdentifier().add(parseIdentifier(xpp)); 27989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 27990 res.setInstantiatesCanonicalElement(parseCanonical(xpp)); 27991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 27992 res.setInstantiatesUriElement(parseUri(xpp)); 27993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 27994 res.getBasedOn().add(parseReference(xpp)); 27995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 27996 res.setGroupIdentifier(parseIdentifier(xpp)); 27997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 27998 res.getPartOf().add(parseReference(xpp)); 27999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 28000 res.setStatusElement(parseEnumeration(xpp, Task.TaskStatus.NULL, new Task.TaskStatusEnumFactory())); 28001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 28002 res.setStatusReason(parseCodeableReference(xpp)); 28003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessStatus")) { 28004 res.setBusinessStatus(parseCodeableConcept(xpp)); 28005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 28006 res.setIntentElement(parseEnumeration(xpp, Task.TaskIntent.NULL, new Task.TaskIntentEnumFactory())); 28007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 28008 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 28009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 28010 res.setDoNotPerformElement(parseBoolean(xpp)); 28011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 28012 res.setCode(parseCodeableConcept(xpp)); 28013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 28014 res.setDescriptionElement(parseString(xpp)); 28015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 28016 res.setFocus(parseReference(xpp)); 28017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("for")) { 28018 res.setFor(parseReference(xpp)); 28019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 28020 res.setEncounter(parseReference(xpp)); 28021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestedPeriod")) { 28022 res.setRequestedPeriod(parsePeriod(xpp)); 28023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("executionPeriod")) { 28024 res.setExecutionPeriod(parsePeriod(xpp)); 28025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 28026 res.setAuthoredOnElement(parseDateTime(xpp)); 28027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 28028 res.setLastModifiedElement(parseDateTime(xpp)); 28029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 28030 res.setRequester(parseReference(xpp)); 28031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestedPerformer")) { 28032 res.getRequestedPerformer().add(parseCodeableReference(xpp)); 28033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 28034 res.setOwner(parseReference(xpp)); 28035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 28036 res.getPerformer().add(parseTaskPerformerComponent(xpp)); 28037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 28038 res.setLocation(parseReference(xpp)); 28039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 28040 res.getReason().add(parseCodeableReference(xpp)); 28041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 28042 res.getInsurance().add(parseReference(xpp)); 28043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 28044 res.getNote().add(parseAnnotation(xpp)); 28045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 28046 res.getRelevantHistory().add(parseReference(xpp)); 28047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("restriction")) { 28048 res.setRestriction(parseTaskRestrictionComponent(xpp)); 28049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 28050 res.getInput().add(parseTaskInputComponent(xpp)); 28051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 28052 res.getOutput().add(parseTaskOutputComponent(xpp)); 28053 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 28054 return false; 28055 } 28056 return true; 28057 } 28058 28059 protected Task.TaskPerformerComponent parseTaskPerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28060 Task.TaskPerformerComponent res = new Task.TaskPerformerComponent(); 28061 parseElementAttributes(xpp, res); 28062 next(xpp); 28063 int eventType = nextNoWhitespace(xpp); 28064 while (eventType != XmlPullParser.END_TAG) { 28065 if (!parseTaskPerformerComponentContent(eventType, xpp, res)) 28066 unknownContent(xpp); 28067 eventType = nextNoWhitespace(xpp); 28068 } 28069 next(xpp); 28070 parseElementClose(res); 28071 return res; 28072 } 28073 28074 protected boolean parseTaskPerformerComponentContent(int eventType, XmlPullParser xpp, Task.TaskPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28075 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { 28076 res.setFunction(parseCodeableConcept(xpp)); 28077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 28078 res.setActor(parseReference(xpp)); 28079 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28080 return false; 28081 } 28082 return true; 28083 } 28084 28085 protected Task.TaskRestrictionComponent parseTaskRestrictionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28086 Task.TaskRestrictionComponent res = new Task.TaskRestrictionComponent(); 28087 parseElementAttributes(xpp, res); 28088 next(xpp); 28089 int eventType = nextNoWhitespace(xpp); 28090 while (eventType != XmlPullParser.END_TAG) { 28091 if (!parseTaskRestrictionComponentContent(eventType, xpp, res)) 28092 unknownContent(xpp); 28093 eventType = nextNoWhitespace(xpp); 28094 } 28095 next(xpp); 28096 parseElementClose(res); 28097 return res; 28098 } 28099 28100 protected boolean parseTaskRestrictionComponentContent(int eventType, XmlPullParser xpp, Task.TaskRestrictionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28101 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repetitions")) { 28102 res.setRepetitionsElement(parsePositiveInt(xpp)); 28103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 28104 res.setPeriod(parsePeriod(xpp)); 28105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 28106 res.getRecipient().add(parseReference(xpp)); 28107 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28108 return false; 28109 } 28110 return true; 28111 } 28112 28113 protected Task.TaskInputComponent parseTaskInputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28114 Task.TaskInputComponent res = new Task.TaskInputComponent(); 28115 parseElementAttributes(xpp, res); 28116 next(xpp); 28117 int eventType = nextNoWhitespace(xpp); 28118 while (eventType != XmlPullParser.END_TAG) { 28119 if (!parseTaskInputComponentContent(eventType, xpp, res)) 28120 unknownContent(xpp); 28121 eventType = nextNoWhitespace(xpp); 28122 } 28123 next(xpp); 28124 parseElementClose(res); 28125 return res; 28126 } 28127 28128 protected boolean parseTaskInputComponentContent(int eventType, XmlPullParser xpp, Task.TaskInputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28129 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 28130 res.setType(parseCodeableConcept(xpp)); 28131 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 28132 res.setValue(parseType("value", xpp)); 28133 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28134 return false; 28135 } 28136 return true; 28137 } 28138 28139 protected Task.TaskOutputComponent parseTaskOutputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28140 Task.TaskOutputComponent res = new Task.TaskOutputComponent(); 28141 parseElementAttributes(xpp, res); 28142 next(xpp); 28143 int eventType = nextNoWhitespace(xpp); 28144 while (eventType != XmlPullParser.END_TAG) { 28145 if (!parseTaskOutputComponentContent(eventType, xpp, res)) 28146 unknownContent(xpp); 28147 eventType = nextNoWhitespace(xpp); 28148 } 28149 next(xpp); 28150 parseElementClose(res); 28151 return res; 28152 } 28153 28154 protected boolean parseTaskOutputComponentContent(int eventType, XmlPullParser xpp, Task.TaskOutputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28155 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 28156 res.setType(parseCodeableConcept(xpp)); 28157 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 28158 res.setValue(parseType("value", xpp)); 28159 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28160 return false; 28161 } 28162 return true; 28163 } 28164 28165 protected TerminologyCapabilities parseTerminologyCapabilities(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28166 TerminologyCapabilities res = new TerminologyCapabilities(); 28167 parseResourceAttributes(xpp, res); 28168 next(xpp); 28169 int eventType = nextNoWhitespace(xpp); 28170 while (eventType != XmlPullParser.END_TAG) { 28171 if (!parseTerminologyCapabilitiesContent(eventType, xpp, res)) 28172 unknownContent(xpp); 28173 eventType = nextNoWhitespace(xpp); 28174 } 28175 next(xpp); 28176 parseElementClose(res); 28177 return res; 28178 } 28179 28180 protected boolean parseTerminologyCapabilitiesContent(int eventType, XmlPullParser xpp, TerminologyCapabilities res) throws XmlPullParserException, IOException, FHIRFormatError { 28181 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 28182 res.setUrlElement(parseUri(xpp)); 28183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 28184 res.getIdentifier().add(parseIdentifier(xpp)); 28185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 28186 res.setVersionElement(parseString(xpp)); 28187 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 28188 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 28189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 28190 res.setNameElement(parseString(xpp)); 28191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 28192 res.setTitleElement(parseString(xpp)); 28193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 28194 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 28195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 28196 res.setExperimentalElement(parseBoolean(xpp)); 28197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 28198 res.setDateElement(parseDateTime(xpp)); 28199 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 28200 res.setPublisherElement(parseString(xpp)); 28201 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 28202 res.getContact().add(parseContactDetail(xpp)); 28203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 28204 res.setDescriptionElement(parseMarkdown(xpp)); 28205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 28206 res.getUseContext().add(parseUsageContext(xpp)); 28207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 28208 res.getJurisdiction().add(parseCodeableConcept(xpp)); 28209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 28210 res.setPurposeElement(parseMarkdown(xpp)); 28211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 28212 res.setCopyrightElement(parseMarkdown(xpp)); 28213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 28214 res.setCopyrightLabelElement(parseString(xpp)); 28215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 28216 res.setKindElement(parseEnumeration(xpp, Enumerations.CapabilityStatementKind.NULL, new Enumerations.CapabilityStatementKindEnumFactory())); 28217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 28218 res.setSoftware(parseTerminologyCapabilitiesSoftwareComponent(xpp)); 28219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementation")) { 28220 res.setImplementation(parseTerminologyCapabilitiesImplementationComponent(xpp)); 28221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lockedDate")) { 28222 res.setLockedDateElement(parseBoolean(xpp)); 28223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSystem")) { 28224 res.getCodeSystem().add(parseTerminologyCapabilitiesCodeSystemComponent(xpp)); 28225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expansion")) { 28226 res.setExpansion(parseTerminologyCapabilitiesExpansionComponent(xpp)); 28227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeSearch")) { 28228 res.setCodeSearchElement(parseEnumeration(xpp, TerminologyCapabilities.CodeSearchSupport.NULL, new TerminologyCapabilities.CodeSearchSupportEnumFactory())); 28229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validateCode")) { 28230 res.setValidateCode(parseTerminologyCapabilitiesValidateCodeComponent(xpp)); 28231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("translation")) { 28232 res.setTranslation(parseTerminologyCapabilitiesTranslationComponent(xpp)); 28233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("closure")) { 28234 res.setClosure(parseTerminologyCapabilitiesClosureComponent(xpp)); 28235 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 28236 return false; 28237 } 28238 return true; 28239 } 28240 28241 protected TerminologyCapabilities.TerminologyCapabilitiesSoftwareComponent parseTerminologyCapabilitiesSoftwareComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28242 TerminologyCapabilities.TerminologyCapabilitiesSoftwareComponent res = new TerminologyCapabilities.TerminologyCapabilitiesSoftwareComponent(); 28243 parseElementAttributes(xpp, res); 28244 next(xpp); 28245 int eventType = nextNoWhitespace(xpp); 28246 while (eventType != XmlPullParser.END_TAG) { 28247 if (!parseTerminologyCapabilitiesSoftwareComponentContent(eventType, xpp, res)) 28248 unknownContent(xpp); 28249 eventType = nextNoWhitespace(xpp); 28250 } 28251 next(xpp); 28252 parseElementClose(res); 28253 return res; 28254 } 28255 28256 protected boolean parseTerminologyCapabilitiesSoftwareComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesSoftwareComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28257 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 28258 res.setNameElement(parseString(xpp)); 28259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 28260 res.setVersionElement(parseString(xpp)); 28261 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28262 return false; 28263 } 28264 return true; 28265 } 28266 28267 protected TerminologyCapabilities.TerminologyCapabilitiesImplementationComponent parseTerminologyCapabilitiesImplementationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28268 TerminologyCapabilities.TerminologyCapabilitiesImplementationComponent res = new TerminologyCapabilities.TerminologyCapabilitiesImplementationComponent(); 28269 parseElementAttributes(xpp, res); 28270 next(xpp); 28271 int eventType = nextNoWhitespace(xpp); 28272 while (eventType != XmlPullParser.END_TAG) { 28273 if (!parseTerminologyCapabilitiesImplementationComponentContent(eventType, xpp, res)) 28274 unknownContent(xpp); 28275 eventType = nextNoWhitespace(xpp); 28276 } 28277 next(xpp); 28278 parseElementClose(res); 28279 return res; 28280 } 28281 28282 protected boolean parseTerminologyCapabilitiesImplementationComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesImplementationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28283 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 28284 res.setDescriptionElement(parseString(xpp)); 28285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 28286 res.setUrlElement(parseUrl(xpp)); 28287 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28288 return false; 28289 } 28290 return true; 28291 } 28292 28293 protected TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent parseTerminologyCapabilitiesCodeSystemComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28294 TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent res = new TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent(); 28295 parseElementAttributes(xpp, res); 28296 next(xpp); 28297 int eventType = nextNoWhitespace(xpp); 28298 while (eventType != XmlPullParser.END_TAG) { 28299 if (!parseTerminologyCapabilitiesCodeSystemComponentContent(eventType, xpp, res)) 28300 unknownContent(xpp); 28301 eventType = nextNoWhitespace(xpp); 28302 } 28303 next(xpp); 28304 parseElementClose(res); 28305 return res; 28306 } 28307 28308 protected boolean parseTerminologyCapabilitiesCodeSystemComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28309 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 28310 res.setUriElement(parseCanonical(xpp)); 28311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 28312 res.getVersion().add(parseTerminologyCapabilitiesCodeSystemVersionComponent(xpp)); 28313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 28314 res.setContentElement(parseEnumeration(xpp, Enumerations.CodeSystemContentMode.NULL, new Enumerations.CodeSystemContentModeEnumFactory())); 28315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subsumption")) { 28316 res.setSubsumptionElement(parseBoolean(xpp)); 28317 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28318 return false; 28319 } 28320 return true; 28321 } 28322 28323 protected TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent parseTerminologyCapabilitiesCodeSystemVersionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28324 TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent res = new TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent(); 28325 parseElementAttributes(xpp, res); 28326 next(xpp); 28327 int eventType = nextNoWhitespace(xpp); 28328 while (eventType != XmlPullParser.END_TAG) { 28329 if (!parseTerminologyCapabilitiesCodeSystemVersionComponentContent(eventType, xpp, res)) 28330 unknownContent(xpp); 28331 eventType = nextNoWhitespace(xpp); 28332 } 28333 next(xpp); 28334 parseElementClose(res); 28335 return res; 28336 } 28337 28338 protected boolean parseTerminologyCapabilitiesCodeSystemVersionComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28339 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 28340 res.setCodeElement(parseString(xpp)); 28341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isDefault")) { 28342 res.setIsDefaultElement(parseBoolean(xpp)); 28343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compositional")) { 28344 res.setCompositionalElement(parseBoolean(xpp)); 28345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 28346 res.getLanguage().add(parseEnumeration(xpp, Enumerations.CommonLanguages.NULL, new Enumerations.CommonLanguagesEnumFactory())); 28347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 28348 res.getFilter().add(parseTerminologyCapabilitiesCodeSystemVersionFilterComponent(xpp)); 28349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 28350 res.getProperty().add(parseCode(xpp)); 28351 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28352 return false; 28353 } 28354 return true; 28355 } 28356 28357 protected TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent parseTerminologyCapabilitiesCodeSystemVersionFilterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28358 TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent res = new TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent(); 28359 parseElementAttributes(xpp, res); 28360 next(xpp); 28361 int eventType = nextNoWhitespace(xpp); 28362 while (eventType != XmlPullParser.END_TAG) { 28363 if (!parseTerminologyCapabilitiesCodeSystemVersionFilterComponentContent(eventType, xpp, res)) 28364 unknownContent(xpp); 28365 eventType = nextNoWhitespace(xpp); 28366 } 28367 next(xpp); 28368 parseElementClose(res); 28369 return res; 28370 } 28371 28372 protected boolean parseTerminologyCapabilitiesCodeSystemVersionFilterComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28373 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 28374 res.setCodeElement(parseCode(xpp)); 28375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("op")) { 28376 res.getOp().add(parseCode(xpp)); 28377 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28378 return false; 28379 } 28380 return true; 28381 } 28382 28383 protected TerminologyCapabilities.TerminologyCapabilitiesExpansionComponent parseTerminologyCapabilitiesExpansionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28384 TerminologyCapabilities.TerminologyCapabilitiesExpansionComponent res = new TerminologyCapabilities.TerminologyCapabilitiesExpansionComponent(); 28385 parseElementAttributes(xpp, res); 28386 next(xpp); 28387 int eventType = nextNoWhitespace(xpp); 28388 while (eventType != XmlPullParser.END_TAG) { 28389 if (!parseTerminologyCapabilitiesExpansionComponentContent(eventType, xpp, res)) 28390 unknownContent(xpp); 28391 eventType = nextNoWhitespace(xpp); 28392 } 28393 next(xpp); 28394 parseElementClose(res); 28395 return res; 28396 } 28397 28398 protected boolean parseTerminologyCapabilitiesExpansionComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesExpansionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28399 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hierarchical")) { 28400 res.setHierarchicalElement(parseBoolean(xpp)); 28401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paging")) { 28402 res.setPagingElement(parseBoolean(xpp)); 28403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("incomplete")) { 28404 res.setIncompleteElement(parseBoolean(xpp)); 28405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 28406 res.getParameter().add(parseTerminologyCapabilitiesExpansionParameterComponent(xpp)); 28407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textFilter")) { 28408 res.setTextFilterElement(parseMarkdown(xpp)); 28409 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28410 return false; 28411 } 28412 return true; 28413 } 28414 28415 protected TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent parseTerminologyCapabilitiesExpansionParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28416 TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent res = new TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent(); 28417 parseElementAttributes(xpp, res); 28418 next(xpp); 28419 int eventType = nextNoWhitespace(xpp); 28420 while (eventType != XmlPullParser.END_TAG) { 28421 if (!parseTerminologyCapabilitiesExpansionParameterComponentContent(eventType, xpp, res)) 28422 unknownContent(xpp); 28423 eventType = nextNoWhitespace(xpp); 28424 } 28425 next(xpp); 28426 parseElementClose(res); 28427 return res; 28428 } 28429 28430 protected boolean parseTerminologyCapabilitiesExpansionParameterComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28431 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 28432 res.setNameElement(parseCode(xpp)); 28433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 28434 res.setDocumentationElement(parseString(xpp)); 28435 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28436 return false; 28437 } 28438 return true; 28439 } 28440 28441 protected TerminologyCapabilities.TerminologyCapabilitiesValidateCodeComponent parseTerminologyCapabilitiesValidateCodeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28442 TerminologyCapabilities.TerminologyCapabilitiesValidateCodeComponent res = new TerminologyCapabilities.TerminologyCapabilitiesValidateCodeComponent(); 28443 parseElementAttributes(xpp, res); 28444 next(xpp); 28445 int eventType = nextNoWhitespace(xpp); 28446 while (eventType != XmlPullParser.END_TAG) { 28447 if (!parseTerminologyCapabilitiesValidateCodeComponentContent(eventType, xpp, res)) 28448 unknownContent(xpp); 28449 eventType = nextNoWhitespace(xpp); 28450 } 28451 next(xpp); 28452 parseElementClose(res); 28453 return res; 28454 } 28455 28456 protected boolean parseTerminologyCapabilitiesValidateCodeComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesValidateCodeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28457 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("translations")) { 28458 res.setTranslationsElement(parseBoolean(xpp)); 28459 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28460 return false; 28461 } 28462 return true; 28463 } 28464 28465 protected TerminologyCapabilities.TerminologyCapabilitiesTranslationComponent parseTerminologyCapabilitiesTranslationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28466 TerminologyCapabilities.TerminologyCapabilitiesTranslationComponent res = new TerminologyCapabilities.TerminologyCapabilitiesTranslationComponent(); 28467 parseElementAttributes(xpp, res); 28468 next(xpp); 28469 int eventType = nextNoWhitespace(xpp); 28470 while (eventType != XmlPullParser.END_TAG) { 28471 if (!parseTerminologyCapabilitiesTranslationComponentContent(eventType, xpp, res)) 28472 unknownContent(xpp); 28473 eventType = nextNoWhitespace(xpp); 28474 } 28475 next(xpp); 28476 parseElementClose(res); 28477 return res; 28478 } 28479 28480 protected boolean parseTerminologyCapabilitiesTranslationComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesTranslationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28481 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("needsMap")) { 28482 res.setNeedsMapElement(parseBoolean(xpp)); 28483 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28484 return false; 28485 } 28486 return true; 28487 } 28488 28489 protected TerminologyCapabilities.TerminologyCapabilitiesClosureComponent parseTerminologyCapabilitiesClosureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28490 TerminologyCapabilities.TerminologyCapabilitiesClosureComponent res = new TerminologyCapabilities.TerminologyCapabilitiesClosureComponent(); 28491 parseElementAttributes(xpp, res); 28492 next(xpp); 28493 int eventType = nextNoWhitespace(xpp); 28494 while (eventType != XmlPullParser.END_TAG) { 28495 if (!parseTerminologyCapabilitiesClosureComponentContent(eventType, xpp, res)) 28496 unknownContent(xpp); 28497 eventType = nextNoWhitespace(xpp); 28498 } 28499 next(xpp); 28500 parseElementClose(res); 28501 return res; 28502 } 28503 28504 protected boolean parseTerminologyCapabilitiesClosureComponentContent(int eventType, XmlPullParser xpp, TerminologyCapabilities.TerminologyCapabilitiesClosureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28505 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("translation")) { 28506 res.setTranslationElement(parseBoolean(xpp)); 28507 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28508 return false; 28509 } 28510 return true; 28511 } 28512 28513 protected TestPlan parseTestPlan(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28514 TestPlan res = new TestPlan(); 28515 parseResourceAttributes(xpp, res); 28516 next(xpp); 28517 int eventType = nextNoWhitespace(xpp); 28518 while (eventType != XmlPullParser.END_TAG) { 28519 if (!parseTestPlanContent(eventType, xpp, res)) 28520 unknownContent(xpp); 28521 eventType = nextNoWhitespace(xpp); 28522 } 28523 next(xpp); 28524 parseElementClose(res); 28525 return res; 28526 } 28527 28528 protected boolean parseTestPlanContent(int eventType, XmlPullParser xpp, TestPlan res) throws XmlPullParserException, IOException, FHIRFormatError { 28529 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 28530 res.setUrlElement(parseUri(xpp)); 28531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 28532 res.getIdentifier().add(parseIdentifier(xpp)); 28533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 28534 res.setVersionElement(parseString(xpp)); 28535 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 28536 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 28537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 28538 res.setNameElement(parseString(xpp)); 28539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 28540 res.setTitleElement(parseString(xpp)); 28541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 28542 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 28543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 28544 res.setExperimentalElement(parseBoolean(xpp)); 28545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 28546 res.setDateElement(parseDateTime(xpp)); 28547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 28548 res.setPublisherElement(parseString(xpp)); 28549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 28550 res.getContact().add(parseContactDetail(xpp)); 28551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 28552 res.setDescriptionElement(parseMarkdown(xpp)); 28553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 28554 res.getUseContext().add(parseUsageContext(xpp)); 28555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 28556 res.getJurisdiction().add(parseCodeableConcept(xpp)); 28557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 28558 res.setPurposeElement(parseMarkdown(xpp)); 28559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 28560 res.setCopyrightElement(parseMarkdown(xpp)); 28561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 28562 res.setCopyrightLabelElement(parseString(xpp)); 28563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 28564 res.getCategory().add(parseCodeableConcept(xpp)); 28565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 28566 res.getScope().add(parseReference(xpp)); 28567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("testTools")) { 28568 res.setTestToolsElement(parseMarkdown(xpp)); 28569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependency")) { 28570 res.getDependency().add(parseTestPlanDependencyComponent(xpp)); 28571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exitCriteria")) { 28572 res.setExitCriteriaElement(parseMarkdown(xpp)); 28573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("testCase")) { 28574 res.getTestCase().add(parseTestPlanTestCaseComponent(xpp)); 28575 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 28576 return false; 28577 } 28578 return true; 28579 } 28580 28581 protected TestPlan.TestPlanDependencyComponent parseTestPlanDependencyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28582 TestPlan.TestPlanDependencyComponent res = new TestPlan.TestPlanDependencyComponent(); 28583 parseElementAttributes(xpp, res); 28584 next(xpp); 28585 int eventType = nextNoWhitespace(xpp); 28586 while (eventType != XmlPullParser.END_TAG) { 28587 if (!parseTestPlanDependencyComponentContent(eventType, xpp, res)) 28588 unknownContent(xpp); 28589 eventType = nextNoWhitespace(xpp); 28590 } 28591 next(xpp); 28592 parseElementClose(res); 28593 return res; 28594 } 28595 28596 protected boolean parseTestPlanDependencyComponentContent(int eventType, XmlPullParser xpp, TestPlan.TestPlanDependencyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28597 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 28598 res.setDescriptionElement(parseMarkdown(xpp)); 28599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("predecessor")) { 28600 res.setPredecessor(parseReference(xpp)); 28601 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28602 return false; 28603 } 28604 return true; 28605 } 28606 28607 protected TestPlan.TestPlanTestCaseComponent parseTestPlanTestCaseComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28608 TestPlan.TestPlanTestCaseComponent res = new TestPlan.TestPlanTestCaseComponent(); 28609 parseElementAttributes(xpp, res); 28610 next(xpp); 28611 int eventType = nextNoWhitespace(xpp); 28612 while (eventType != XmlPullParser.END_TAG) { 28613 if (!parseTestPlanTestCaseComponentContent(eventType, xpp, res)) 28614 unknownContent(xpp); 28615 eventType = nextNoWhitespace(xpp); 28616 } 28617 next(xpp); 28618 parseElementClose(res); 28619 return res; 28620 } 28621 28622 protected boolean parseTestPlanTestCaseComponentContent(int eventType, XmlPullParser xpp, TestPlan.TestPlanTestCaseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28623 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 28624 res.setSequenceElement(parseInteger(xpp)); 28625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 28626 res.getScope().add(parseReference(xpp)); 28627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependency")) { 28628 res.getDependency().add(parseTestPlanTestCaseDependencyComponent(xpp)); 28629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("testRun")) { 28630 res.getTestRun().add(parseTestPlanTestCaseTestRunComponent(xpp)); 28631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("testData")) { 28632 res.getTestData().add(parseTestPlanTestCaseTestDataComponent(xpp)); 28633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assertion")) { 28634 res.getAssertion().add(parseTestPlanTestCaseAssertionComponent(xpp)); 28635 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28636 return false; 28637 } 28638 return true; 28639 } 28640 28641 protected TestPlan.TestCaseDependencyComponent parseTestPlanTestCaseDependencyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28642 TestPlan.TestCaseDependencyComponent res = new TestPlan.TestCaseDependencyComponent(); 28643 parseElementAttributes(xpp, res); 28644 next(xpp); 28645 int eventType = nextNoWhitespace(xpp); 28646 while (eventType != XmlPullParser.END_TAG) { 28647 if (!parseTestPlanTestCaseDependencyComponentContent(eventType, xpp, res)) 28648 unknownContent(xpp); 28649 eventType = nextNoWhitespace(xpp); 28650 } 28651 next(xpp); 28652 parseElementClose(res); 28653 return res; 28654 } 28655 28656 protected boolean parseTestPlanTestCaseDependencyComponentContent(int eventType, XmlPullParser xpp, TestPlan.TestCaseDependencyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28657 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 28658 res.setDescriptionElement(parseMarkdown(xpp)); 28659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("predecessor")) { 28660 res.setPredecessor(parseReference(xpp)); 28661 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28662 return false; 28663 } 28664 return true; 28665 } 28666 28667 protected TestPlan.TestPlanTestCaseTestRunComponent parseTestPlanTestCaseTestRunComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28668 TestPlan.TestPlanTestCaseTestRunComponent res = new TestPlan.TestPlanTestCaseTestRunComponent(); 28669 parseElementAttributes(xpp, res); 28670 next(xpp); 28671 int eventType = nextNoWhitespace(xpp); 28672 while (eventType != XmlPullParser.END_TAG) { 28673 if (!parseTestPlanTestCaseTestRunComponentContent(eventType, xpp, res)) 28674 unknownContent(xpp); 28675 eventType = nextNoWhitespace(xpp); 28676 } 28677 next(xpp); 28678 parseElementClose(res); 28679 return res; 28680 } 28681 28682 protected boolean parseTestPlanTestCaseTestRunComponentContent(int eventType, XmlPullParser xpp, TestPlan.TestPlanTestCaseTestRunComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28683 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("narrative")) { 28684 res.setNarrativeElement(parseMarkdown(xpp)); 28685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("script")) { 28686 res.setScript(parseTestPlanTestCaseTestRunScriptComponent(xpp)); 28687 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28688 return false; 28689 } 28690 return true; 28691 } 28692 28693 protected TestPlan.TestPlanTestCaseTestRunScriptComponent parseTestPlanTestCaseTestRunScriptComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28694 TestPlan.TestPlanTestCaseTestRunScriptComponent res = new TestPlan.TestPlanTestCaseTestRunScriptComponent(); 28695 parseElementAttributes(xpp, res); 28696 next(xpp); 28697 int eventType = nextNoWhitespace(xpp); 28698 while (eventType != XmlPullParser.END_TAG) { 28699 if (!parseTestPlanTestCaseTestRunScriptComponentContent(eventType, xpp, res)) 28700 unknownContent(xpp); 28701 eventType = nextNoWhitespace(xpp); 28702 } 28703 next(xpp); 28704 parseElementClose(res); 28705 return res; 28706 } 28707 28708 protected boolean parseTestPlanTestCaseTestRunScriptComponentContent(int eventType, XmlPullParser xpp, TestPlan.TestPlanTestCaseTestRunScriptComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28709 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 28710 res.setLanguage(parseCodeableConcept(xpp)); 28711 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 28712 res.setSource(parseType("source", xpp)); 28713 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28714 return false; 28715 } 28716 return true; 28717 } 28718 28719 protected TestPlan.TestPlanTestCaseTestDataComponent parseTestPlanTestCaseTestDataComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28720 TestPlan.TestPlanTestCaseTestDataComponent res = new TestPlan.TestPlanTestCaseTestDataComponent(); 28721 parseElementAttributes(xpp, res); 28722 next(xpp); 28723 int eventType = nextNoWhitespace(xpp); 28724 while (eventType != XmlPullParser.END_TAG) { 28725 if (!parseTestPlanTestCaseTestDataComponentContent(eventType, xpp, res)) 28726 unknownContent(xpp); 28727 eventType = nextNoWhitespace(xpp); 28728 } 28729 next(xpp); 28730 parseElementClose(res); 28731 return res; 28732 } 28733 28734 protected boolean parseTestPlanTestCaseTestDataComponentContent(int eventType, XmlPullParser xpp, TestPlan.TestPlanTestCaseTestDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28735 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 28736 res.setType(parseCoding(xpp)); 28737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 28738 res.setContent(parseReference(xpp)); 28739 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 28740 res.setSource(parseType("source", xpp)); 28741 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28742 return false; 28743 } 28744 return true; 28745 } 28746 28747 protected TestPlan.TestPlanTestCaseAssertionComponent parseTestPlanTestCaseAssertionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28748 TestPlan.TestPlanTestCaseAssertionComponent res = new TestPlan.TestPlanTestCaseAssertionComponent(); 28749 parseElementAttributes(xpp, res); 28750 next(xpp); 28751 int eventType = nextNoWhitespace(xpp); 28752 while (eventType != XmlPullParser.END_TAG) { 28753 if (!parseTestPlanTestCaseAssertionComponentContent(eventType, xpp, res)) 28754 unknownContent(xpp); 28755 eventType = nextNoWhitespace(xpp); 28756 } 28757 next(xpp); 28758 parseElementClose(res); 28759 return res; 28760 } 28761 28762 protected boolean parseTestPlanTestCaseAssertionComponentContent(int eventType, XmlPullParser xpp, TestPlan.TestPlanTestCaseAssertionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28763 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 28764 res.getType().add(parseCodeableConcept(xpp)); 28765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("object")) { 28766 res.getObject().add(parseCodeableReference(xpp)); 28767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 28768 res.getResult().add(parseCodeableReference(xpp)); 28769 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28770 return false; 28771 } 28772 return true; 28773 } 28774 28775 protected TestReport parseTestReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28776 TestReport res = new TestReport(); 28777 parseResourceAttributes(xpp, res); 28778 next(xpp); 28779 int eventType = nextNoWhitespace(xpp); 28780 while (eventType != XmlPullParser.END_TAG) { 28781 if (!parseTestReportContent(eventType, xpp, res)) 28782 unknownContent(xpp); 28783 eventType = nextNoWhitespace(xpp); 28784 } 28785 next(xpp); 28786 parseElementClose(res); 28787 return res; 28788 } 28789 28790 protected boolean parseTestReportContent(int eventType, XmlPullParser xpp, TestReport res) throws XmlPullParserException, IOException, FHIRFormatError { 28791 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 28792 res.setIdentifier(parseIdentifier(xpp)); 28793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 28794 res.setNameElement(parseString(xpp)); 28795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 28796 res.setStatusElement(parseEnumeration(xpp, TestReport.TestReportStatus.NULL, new TestReport.TestReportStatusEnumFactory())); 28797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("testScript")) { 28798 res.setTestScriptElement(parseCanonical(xpp)); 28799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 28800 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportResult.NULL, new TestReport.TestReportResultEnumFactory())); 28801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 28802 res.setScoreElement(parseDecimal(xpp)); 28803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tester")) { 28804 res.setTesterElement(parseString(xpp)); 28805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 28806 res.setIssuedElement(parseDateTime(xpp)); 28807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 28808 res.getParticipant().add(parseTestReportParticipantComponent(xpp)); 28809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("setup")) { 28810 res.setSetup(parseTestReportSetupComponent(xpp)); 28811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("test")) { 28812 res.getTest().add(parseTestReportTestComponent(xpp)); 28813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("teardown")) { 28814 res.setTeardown(parseTestReportTeardownComponent(xpp)); 28815 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 28816 return false; 28817 } 28818 return true; 28819 } 28820 28821 protected TestReport.TestReportParticipantComponent parseTestReportParticipantComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28822 TestReport.TestReportParticipantComponent res = new TestReport.TestReportParticipantComponent(); 28823 parseElementAttributes(xpp, res); 28824 next(xpp); 28825 int eventType = nextNoWhitespace(xpp); 28826 while (eventType != XmlPullParser.END_TAG) { 28827 if (!parseTestReportParticipantComponentContent(eventType, xpp, res)) 28828 unknownContent(xpp); 28829 eventType = nextNoWhitespace(xpp); 28830 } 28831 next(xpp); 28832 parseElementClose(res); 28833 return res; 28834 } 28835 28836 protected boolean parseTestReportParticipantComponentContent(int eventType, XmlPullParser xpp, TestReport.TestReportParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28837 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 28838 res.setTypeElement(parseEnumeration(xpp, TestReport.TestReportParticipantType.NULL, new TestReport.TestReportParticipantTypeEnumFactory())); 28839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 28840 res.setUriElement(parseUri(xpp)); 28841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 28842 res.setDisplayElement(parseString(xpp)); 28843 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28844 return false; 28845 } 28846 return true; 28847 } 28848 28849 protected TestReport.TestReportSetupComponent parseTestReportSetupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28850 TestReport.TestReportSetupComponent res = new TestReport.TestReportSetupComponent(); 28851 parseElementAttributes(xpp, res); 28852 next(xpp); 28853 int eventType = nextNoWhitespace(xpp); 28854 while (eventType != XmlPullParser.END_TAG) { 28855 if (!parseTestReportSetupComponentContent(eventType, xpp, res)) 28856 unknownContent(xpp); 28857 eventType = nextNoWhitespace(xpp); 28858 } 28859 next(xpp); 28860 parseElementClose(res); 28861 return res; 28862 } 28863 28864 protected boolean parseTestReportSetupComponentContent(int eventType, XmlPullParser xpp, TestReport.TestReportSetupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28865 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 28866 res.getAction().add(parseTestReportSetupActionComponent(xpp)); 28867 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28868 return false; 28869 } 28870 return true; 28871 } 28872 28873 protected TestReport.SetupActionComponent parseTestReportSetupActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28874 TestReport.SetupActionComponent res = new TestReport.SetupActionComponent(); 28875 parseElementAttributes(xpp, res); 28876 next(xpp); 28877 int eventType = nextNoWhitespace(xpp); 28878 while (eventType != XmlPullParser.END_TAG) { 28879 if (!parseTestReportSetupActionComponentContent(eventType, xpp, res)) 28880 unknownContent(xpp); 28881 eventType = nextNoWhitespace(xpp); 28882 } 28883 next(xpp); 28884 parseElementClose(res); 28885 return res; 28886 } 28887 28888 protected boolean parseTestReportSetupActionComponentContent(int eventType, XmlPullParser xpp, TestReport.SetupActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28889 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 28890 res.setOperation(parseTestReportSetupActionOperationComponent(xpp)); 28891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 28892 res.setAssert(parseTestReportSetupActionAssertComponent(xpp)); 28893 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28894 return false; 28895 } 28896 return true; 28897 } 28898 28899 protected TestReport.SetupActionOperationComponent parseTestReportSetupActionOperationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28900 TestReport.SetupActionOperationComponent res = new TestReport.SetupActionOperationComponent(); 28901 parseElementAttributes(xpp, res); 28902 next(xpp); 28903 int eventType = nextNoWhitespace(xpp); 28904 while (eventType != XmlPullParser.END_TAG) { 28905 if (!parseTestReportSetupActionOperationComponentContent(eventType, xpp, res)) 28906 unknownContent(xpp); 28907 eventType = nextNoWhitespace(xpp); 28908 } 28909 next(xpp); 28910 parseElementClose(res); 28911 return res; 28912 } 28913 28914 protected boolean parseTestReportSetupActionOperationComponentContent(int eventType, XmlPullParser xpp, TestReport.SetupActionOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28915 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 28916 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportActionResult.NULL, new TestReport.TestReportActionResultEnumFactory())); 28917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 28918 res.setMessageElement(parseMarkdown(xpp)); 28919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 28920 res.setDetailElement(parseUri(xpp)); 28921 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28922 return false; 28923 } 28924 return true; 28925 } 28926 28927 protected TestReport.SetupActionAssertComponent parseTestReportSetupActionAssertComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28928 TestReport.SetupActionAssertComponent res = new TestReport.SetupActionAssertComponent(); 28929 parseElementAttributes(xpp, res); 28930 next(xpp); 28931 int eventType = nextNoWhitespace(xpp); 28932 while (eventType != XmlPullParser.END_TAG) { 28933 if (!parseTestReportSetupActionAssertComponentContent(eventType, xpp, res)) 28934 unknownContent(xpp); 28935 eventType = nextNoWhitespace(xpp); 28936 } 28937 next(xpp); 28938 parseElementClose(res); 28939 return res; 28940 } 28941 28942 protected boolean parseTestReportSetupActionAssertComponentContent(int eventType, XmlPullParser xpp, TestReport.SetupActionAssertComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28943 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 28944 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportActionResult.NULL, new TestReport.TestReportActionResultEnumFactory())); 28945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 28946 res.setMessageElement(parseMarkdown(xpp)); 28947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 28948 res.setDetailElement(parseString(xpp)); 28949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 28950 res.getRequirement().add(parseTestReportSetupActionAssertRequirementComponent(xpp)); 28951 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28952 return false; 28953 } 28954 return true; 28955 } 28956 28957 protected TestReport.SetupActionAssertRequirementComponent parseTestReportSetupActionAssertRequirementComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28958 TestReport.SetupActionAssertRequirementComponent res = new TestReport.SetupActionAssertRequirementComponent(); 28959 parseElementAttributes(xpp, res); 28960 next(xpp); 28961 int eventType = nextNoWhitespace(xpp); 28962 while (eventType != XmlPullParser.END_TAG) { 28963 if (!parseTestReportSetupActionAssertRequirementComponentContent(eventType, xpp, res)) 28964 unknownContent(xpp); 28965 eventType = nextNoWhitespace(xpp); 28966 } 28967 next(xpp); 28968 parseElementClose(res); 28969 return res; 28970 } 28971 28972 protected boolean parseTestReportSetupActionAssertRequirementComponentContent(int eventType, XmlPullParser xpp, TestReport.SetupActionAssertRequirementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28973 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "link")) { 28974 res.setLink(parseType("link", xpp)); 28975 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 28976 return false; 28977 } 28978 return true; 28979 } 28980 28981 protected TestReport.TestReportTestComponent parseTestReportTestComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 28982 TestReport.TestReportTestComponent res = new TestReport.TestReportTestComponent(); 28983 parseElementAttributes(xpp, res); 28984 next(xpp); 28985 int eventType = nextNoWhitespace(xpp); 28986 while (eventType != XmlPullParser.END_TAG) { 28987 if (!parseTestReportTestComponentContent(eventType, xpp, res)) 28988 unknownContent(xpp); 28989 eventType = nextNoWhitespace(xpp); 28990 } 28991 next(xpp); 28992 parseElementClose(res); 28993 return res; 28994 } 28995 28996 protected boolean parseTestReportTestComponentContent(int eventType, XmlPullParser xpp, TestReport.TestReportTestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 28997 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 28998 res.setNameElement(parseString(xpp)); 28999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29000 res.setDescriptionElement(parseString(xpp)); 29001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 29002 res.getAction().add(parseTestReportTestActionComponent(xpp)); 29003 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29004 return false; 29005 } 29006 return true; 29007 } 29008 29009 protected TestReport.TestActionComponent parseTestReportTestActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29010 TestReport.TestActionComponent res = new TestReport.TestActionComponent(); 29011 parseElementAttributes(xpp, res); 29012 next(xpp); 29013 int eventType = nextNoWhitespace(xpp); 29014 while (eventType != XmlPullParser.END_TAG) { 29015 if (!parseTestReportTestActionComponentContent(eventType, xpp, res)) 29016 unknownContent(xpp); 29017 eventType = nextNoWhitespace(xpp); 29018 } 29019 next(xpp); 29020 parseElementClose(res); 29021 return res; 29022 } 29023 29024 protected boolean parseTestReportTestActionComponentContent(int eventType, XmlPullParser xpp, TestReport.TestActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29025 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 29026 res.setOperation(parseTestReportSetupActionOperationComponent(xpp)); 29027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 29028 res.setAssert(parseTestReportSetupActionAssertComponent(xpp)); 29029 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29030 return false; 29031 } 29032 return true; 29033 } 29034 29035 protected TestReport.TestReportTeardownComponent parseTestReportTeardownComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29036 TestReport.TestReportTeardownComponent res = new TestReport.TestReportTeardownComponent(); 29037 parseElementAttributes(xpp, res); 29038 next(xpp); 29039 int eventType = nextNoWhitespace(xpp); 29040 while (eventType != XmlPullParser.END_TAG) { 29041 if (!parseTestReportTeardownComponentContent(eventType, xpp, res)) 29042 unknownContent(xpp); 29043 eventType = nextNoWhitespace(xpp); 29044 } 29045 next(xpp); 29046 parseElementClose(res); 29047 return res; 29048 } 29049 29050 protected boolean parseTestReportTeardownComponentContent(int eventType, XmlPullParser xpp, TestReport.TestReportTeardownComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29051 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 29052 res.getAction().add(parseTestReportTeardownActionComponent(xpp)); 29053 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29054 return false; 29055 } 29056 return true; 29057 } 29058 29059 protected TestReport.TeardownActionComponent parseTestReportTeardownActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29060 TestReport.TeardownActionComponent res = new TestReport.TeardownActionComponent(); 29061 parseElementAttributes(xpp, res); 29062 next(xpp); 29063 int eventType = nextNoWhitespace(xpp); 29064 while (eventType != XmlPullParser.END_TAG) { 29065 if (!parseTestReportTeardownActionComponentContent(eventType, xpp, res)) 29066 unknownContent(xpp); 29067 eventType = nextNoWhitespace(xpp); 29068 } 29069 next(xpp); 29070 parseElementClose(res); 29071 return res; 29072 } 29073 29074 protected boolean parseTestReportTeardownActionComponentContent(int eventType, XmlPullParser xpp, TestReport.TeardownActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29075 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 29076 res.setOperation(parseTestReportSetupActionOperationComponent(xpp)); 29077 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29078 return false; 29079 } 29080 return true; 29081 } 29082 29083 protected TestScript parseTestScript(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29084 TestScript res = new TestScript(); 29085 parseResourceAttributes(xpp, res); 29086 next(xpp); 29087 int eventType = nextNoWhitespace(xpp); 29088 while (eventType != XmlPullParser.END_TAG) { 29089 if (!parseTestScriptContent(eventType, xpp, res)) 29090 unknownContent(xpp); 29091 eventType = nextNoWhitespace(xpp); 29092 } 29093 next(xpp); 29094 parseElementClose(res); 29095 return res; 29096 } 29097 29098 protected boolean parseTestScriptContent(int eventType, XmlPullParser xpp, TestScript res) throws XmlPullParserException, IOException, FHIRFormatError { 29099 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 29100 res.setUrlElement(parseUri(xpp)); 29101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 29102 res.getIdentifier().add(parseIdentifier(xpp)); 29103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 29104 res.setVersionElement(parseString(xpp)); 29105 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 29106 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 29107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 29108 res.setNameElement(parseString(xpp)); 29109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 29110 res.setTitleElement(parseString(xpp)); 29111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 29112 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 29113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 29114 res.setExperimentalElement(parseBoolean(xpp)); 29115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 29116 res.setDateElement(parseDateTime(xpp)); 29117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 29118 res.setPublisherElement(parseString(xpp)); 29119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 29120 res.getContact().add(parseContactDetail(xpp)); 29121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29122 res.setDescriptionElement(parseMarkdown(xpp)); 29123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 29124 res.getUseContext().add(parseUsageContext(xpp)); 29125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 29126 res.getJurisdiction().add(parseCodeableConcept(xpp)); 29127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 29128 res.setPurposeElement(parseMarkdown(xpp)); 29129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 29130 res.setCopyrightElement(parseMarkdown(xpp)); 29131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 29132 res.setCopyrightLabelElement(parseString(xpp)); 29133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 29134 res.getOrigin().add(parseTestScriptOriginComponent(xpp)); 29135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 29136 res.getDestination().add(parseTestScriptDestinationComponent(xpp)); 29137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 29138 res.setMetadata(parseTestScriptMetadataComponent(xpp)); 29139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 29140 res.getScope().add(parseTestScriptScopeComponent(xpp)); 29141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fixture")) { 29142 res.getFixture().add(parseTestScriptFixtureComponent(xpp)); 29143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 29144 res.getProfile().add(parseCanonical(xpp)); 29145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 29146 res.getVariable().add(parseTestScriptVariableComponent(xpp)); 29147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("setup")) { 29148 res.setSetup(parseTestScriptSetupComponent(xpp)); 29149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("test")) { 29150 res.getTest().add(parseTestScriptTestComponent(xpp)); 29151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("teardown")) { 29152 res.setTeardown(parseTestScriptTeardownComponent(xpp)); 29153 } else if (!parseCanonicalResourceContent(eventType, xpp, res)){ 29154 return false; 29155 } 29156 return true; 29157 } 29158 29159 protected TestScript.TestScriptOriginComponent parseTestScriptOriginComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29160 TestScript.TestScriptOriginComponent res = new TestScript.TestScriptOriginComponent(); 29161 parseElementAttributes(xpp, res); 29162 next(xpp); 29163 int eventType = nextNoWhitespace(xpp); 29164 while (eventType != XmlPullParser.END_TAG) { 29165 if (!parseTestScriptOriginComponentContent(eventType, xpp, res)) 29166 unknownContent(xpp); 29167 eventType = nextNoWhitespace(xpp); 29168 } 29169 next(xpp); 29170 parseElementClose(res); 29171 return res; 29172 } 29173 29174 protected boolean parseTestScriptOriginComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptOriginComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29175 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("index")) { 29176 res.setIndexElement(parseInteger(xpp)); 29177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 29178 res.setProfile(parseCoding(xpp)); 29179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 29180 res.setUrlElement(parseUrl(xpp)); 29181 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29182 return false; 29183 } 29184 return true; 29185 } 29186 29187 protected TestScript.TestScriptDestinationComponent parseTestScriptDestinationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29188 TestScript.TestScriptDestinationComponent res = new TestScript.TestScriptDestinationComponent(); 29189 parseElementAttributes(xpp, res); 29190 next(xpp); 29191 int eventType = nextNoWhitespace(xpp); 29192 while (eventType != XmlPullParser.END_TAG) { 29193 if (!parseTestScriptDestinationComponentContent(eventType, xpp, res)) 29194 unknownContent(xpp); 29195 eventType = nextNoWhitespace(xpp); 29196 } 29197 next(xpp); 29198 parseElementClose(res); 29199 return res; 29200 } 29201 29202 protected boolean parseTestScriptDestinationComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptDestinationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29203 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("index")) { 29204 res.setIndexElement(parseInteger(xpp)); 29205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 29206 res.setProfile(parseCoding(xpp)); 29207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 29208 res.setUrlElement(parseUrl(xpp)); 29209 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29210 return false; 29211 } 29212 return true; 29213 } 29214 29215 protected TestScript.TestScriptMetadataComponent parseTestScriptMetadataComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29216 TestScript.TestScriptMetadataComponent res = new TestScript.TestScriptMetadataComponent(); 29217 parseElementAttributes(xpp, res); 29218 next(xpp); 29219 int eventType = nextNoWhitespace(xpp); 29220 while (eventType != XmlPullParser.END_TAG) { 29221 if (!parseTestScriptMetadataComponentContent(eventType, xpp, res)) 29222 unknownContent(xpp); 29223 eventType = nextNoWhitespace(xpp); 29224 } 29225 next(xpp); 29226 parseElementClose(res); 29227 return res; 29228 } 29229 29230 protected boolean parseTestScriptMetadataComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptMetadataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29231 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 29232 res.getLink().add(parseTestScriptMetadataLinkComponent(xpp)); 29233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capability")) { 29234 res.getCapability().add(parseTestScriptMetadataCapabilityComponent(xpp)); 29235 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29236 return false; 29237 } 29238 return true; 29239 } 29240 29241 protected TestScript.TestScriptMetadataLinkComponent parseTestScriptMetadataLinkComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29242 TestScript.TestScriptMetadataLinkComponent res = new TestScript.TestScriptMetadataLinkComponent(); 29243 parseElementAttributes(xpp, res); 29244 next(xpp); 29245 int eventType = nextNoWhitespace(xpp); 29246 while (eventType != XmlPullParser.END_TAG) { 29247 if (!parseTestScriptMetadataLinkComponentContent(eventType, xpp, res)) 29248 unknownContent(xpp); 29249 eventType = nextNoWhitespace(xpp); 29250 } 29251 next(xpp); 29252 parseElementClose(res); 29253 return res; 29254 } 29255 29256 protected boolean parseTestScriptMetadataLinkComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptMetadataLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29257 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 29258 res.setUrlElement(parseUri(xpp)); 29259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29260 res.setDescriptionElement(parseString(xpp)); 29261 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29262 return false; 29263 } 29264 return true; 29265 } 29266 29267 protected TestScript.TestScriptMetadataCapabilityComponent parseTestScriptMetadataCapabilityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29268 TestScript.TestScriptMetadataCapabilityComponent res = new TestScript.TestScriptMetadataCapabilityComponent(); 29269 parseElementAttributes(xpp, res); 29270 next(xpp); 29271 int eventType = nextNoWhitespace(xpp); 29272 while (eventType != XmlPullParser.END_TAG) { 29273 if (!parseTestScriptMetadataCapabilityComponentContent(eventType, xpp, res)) 29274 unknownContent(xpp); 29275 eventType = nextNoWhitespace(xpp); 29276 } 29277 next(xpp); 29278 parseElementClose(res); 29279 return res; 29280 } 29281 29282 protected boolean parseTestScriptMetadataCapabilityComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptMetadataCapabilityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29283 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 29284 res.setRequiredElement(parseBoolean(xpp)); 29285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validated")) { 29286 res.setValidatedElement(parseBoolean(xpp)); 29287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29288 res.setDescriptionElement(parseString(xpp)); 29289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 29290 res.getOrigin().add(parseInteger(xpp)); 29291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 29292 res.setDestinationElement(parseInteger(xpp)); 29293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 29294 res.getLink().add(parseUri(xpp)); 29295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capabilities")) { 29296 res.setCapabilitiesElement(parseCanonical(xpp)); 29297 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29298 return false; 29299 } 29300 return true; 29301 } 29302 29303 protected TestScript.TestScriptScopeComponent parseTestScriptScopeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29304 TestScript.TestScriptScopeComponent res = new TestScript.TestScriptScopeComponent(); 29305 parseElementAttributes(xpp, res); 29306 next(xpp); 29307 int eventType = nextNoWhitespace(xpp); 29308 while (eventType != XmlPullParser.END_TAG) { 29309 if (!parseTestScriptScopeComponentContent(eventType, xpp, res)) 29310 unknownContent(xpp); 29311 eventType = nextNoWhitespace(xpp); 29312 } 29313 next(xpp); 29314 parseElementClose(res); 29315 return res; 29316 } 29317 29318 protected boolean parseTestScriptScopeComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptScopeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29319 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("artifact")) { 29320 res.setArtifactElement(parseCanonical(xpp)); 29321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conformance")) { 29322 res.setConformance(parseCodeableConcept(xpp)); 29323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("phase")) { 29324 res.setPhase(parseCodeableConcept(xpp)); 29325 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29326 return false; 29327 } 29328 return true; 29329 } 29330 29331 protected TestScript.TestScriptFixtureComponent parseTestScriptFixtureComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29332 TestScript.TestScriptFixtureComponent res = new TestScript.TestScriptFixtureComponent(); 29333 parseElementAttributes(xpp, res); 29334 next(xpp); 29335 int eventType = nextNoWhitespace(xpp); 29336 while (eventType != XmlPullParser.END_TAG) { 29337 if (!parseTestScriptFixtureComponentContent(eventType, xpp, res)) 29338 unknownContent(xpp); 29339 eventType = nextNoWhitespace(xpp); 29340 } 29341 next(xpp); 29342 parseElementClose(res); 29343 return res; 29344 } 29345 29346 protected boolean parseTestScriptFixtureComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptFixtureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29347 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autocreate")) { 29348 res.setAutocreateElement(parseBoolean(xpp)); 29349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autodelete")) { 29350 res.setAutodeleteElement(parseBoolean(xpp)); 29351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 29352 res.setResource(parseReference(xpp)); 29353 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29354 return false; 29355 } 29356 return true; 29357 } 29358 29359 protected TestScript.TestScriptVariableComponent parseTestScriptVariableComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29360 TestScript.TestScriptVariableComponent res = new TestScript.TestScriptVariableComponent(); 29361 parseElementAttributes(xpp, res); 29362 next(xpp); 29363 int eventType = nextNoWhitespace(xpp); 29364 while (eventType != XmlPullParser.END_TAG) { 29365 if (!parseTestScriptVariableComponentContent(eventType, xpp, res)) 29366 unknownContent(xpp); 29367 eventType = nextNoWhitespace(xpp); 29368 } 29369 next(xpp); 29370 parseElementClose(res); 29371 return res; 29372 } 29373 29374 protected boolean parseTestScriptVariableComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptVariableComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29375 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 29376 res.setNameElement(parseString(xpp)); 29377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("defaultValue")) { 29378 res.setDefaultValueElement(parseString(xpp)); 29379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29380 res.setDescriptionElement(parseString(xpp)); 29381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 29382 res.setExpressionElement(parseString(xpp)); 29383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 29384 res.setHeaderFieldElement(parseString(xpp)); 29385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hint")) { 29386 res.setHintElement(parseString(xpp)); 29387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 29388 res.setPathElement(parseString(xpp)); 29389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 29390 res.setSourceIdElement(parseId(xpp)); 29391 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29392 return false; 29393 } 29394 return true; 29395 } 29396 29397 protected TestScript.TestScriptSetupComponent parseTestScriptSetupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29398 TestScript.TestScriptSetupComponent res = new TestScript.TestScriptSetupComponent(); 29399 parseElementAttributes(xpp, res); 29400 next(xpp); 29401 int eventType = nextNoWhitespace(xpp); 29402 while (eventType != XmlPullParser.END_TAG) { 29403 if (!parseTestScriptSetupComponentContent(eventType, xpp, res)) 29404 unknownContent(xpp); 29405 eventType = nextNoWhitespace(xpp); 29406 } 29407 next(xpp); 29408 parseElementClose(res); 29409 return res; 29410 } 29411 29412 protected boolean parseTestScriptSetupComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptSetupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29413 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 29414 res.getAction().add(parseTestScriptSetupActionComponent(xpp)); 29415 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29416 return false; 29417 } 29418 return true; 29419 } 29420 29421 protected TestScript.SetupActionComponent parseTestScriptSetupActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29422 TestScript.SetupActionComponent res = new TestScript.SetupActionComponent(); 29423 parseElementAttributes(xpp, res); 29424 next(xpp); 29425 int eventType = nextNoWhitespace(xpp); 29426 while (eventType != XmlPullParser.END_TAG) { 29427 if (!parseTestScriptSetupActionComponentContent(eventType, xpp, res)) 29428 unknownContent(xpp); 29429 eventType = nextNoWhitespace(xpp); 29430 } 29431 next(xpp); 29432 parseElementClose(res); 29433 return res; 29434 } 29435 29436 protected boolean parseTestScriptSetupActionComponentContent(int eventType, XmlPullParser xpp, TestScript.SetupActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29437 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 29438 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp)); 29439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 29440 res.setAssert(parseTestScriptSetupActionAssertComponent(xpp)); 29441 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29442 return false; 29443 } 29444 return true; 29445 } 29446 29447 protected TestScript.SetupActionOperationComponent parseTestScriptSetupActionOperationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29448 TestScript.SetupActionOperationComponent res = new TestScript.SetupActionOperationComponent(); 29449 parseElementAttributes(xpp, res); 29450 next(xpp); 29451 int eventType = nextNoWhitespace(xpp); 29452 while (eventType != XmlPullParser.END_TAG) { 29453 if (!parseTestScriptSetupActionOperationComponentContent(eventType, xpp, res)) 29454 unknownContent(xpp); 29455 eventType = nextNoWhitespace(xpp); 29456 } 29457 next(xpp); 29458 parseElementClose(res); 29459 return res; 29460 } 29461 29462 protected boolean parseTestScriptSetupActionOperationComponentContent(int eventType, XmlPullParser xpp, TestScript.SetupActionOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29463 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 29464 res.setType(parseCoding(xpp)); 29465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 29466 res.setResourceElement(parseUri(xpp)); 29467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 29468 res.setLabelElement(parseString(xpp)); 29469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29470 res.setDescriptionElement(parseString(xpp)); 29471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accept")) { 29472 res.setAcceptElement(parseCode(xpp)); 29473 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 29474 res.setContentTypeElement(parseCode(xpp)); 29475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 29476 res.setDestinationElement(parseInteger(xpp)); 29477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encodeRequestUrl")) { 29478 res.setEncodeRequestUrlElement(parseBoolean(xpp)); 29479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 29480 res.setMethodElement(parseEnumeration(xpp, TestScript.TestScriptRequestMethodCode.NULL, new TestScript.TestScriptRequestMethodCodeEnumFactory())); 29481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 29482 res.setOriginElement(parseInteger(xpp)); 29483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("params")) { 29484 res.setParamsElement(parseString(xpp)); 29485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestHeader")) { 29486 res.getRequestHeader().add(parseTestScriptSetupActionOperationRequestHeaderComponent(xpp)); 29487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestId")) { 29488 res.setRequestIdElement(parseId(xpp)); 29489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseId")) { 29490 res.setResponseIdElement(parseId(xpp)); 29491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 29492 res.setSourceIdElement(parseId(xpp)); 29493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetId")) { 29494 res.setTargetIdElement(parseId(xpp)); 29495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 29496 res.setUrlElement(parseString(xpp)); 29497 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29498 return false; 29499 } 29500 return true; 29501 } 29502 29503 protected TestScript.SetupActionOperationRequestHeaderComponent parseTestScriptSetupActionOperationRequestHeaderComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29504 TestScript.SetupActionOperationRequestHeaderComponent res = new TestScript.SetupActionOperationRequestHeaderComponent(); 29505 parseElementAttributes(xpp, res); 29506 next(xpp); 29507 int eventType = nextNoWhitespace(xpp); 29508 while (eventType != XmlPullParser.END_TAG) { 29509 if (!parseTestScriptSetupActionOperationRequestHeaderComponentContent(eventType, xpp, res)) 29510 unknownContent(xpp); 29511 eventType = nextNoWhitespace(xpp); 29512 } 29513 next(xpp); 29514 parseElementClose(res); 29515 return res; 29516 } 29517 29518 protected boolean parseTestScriptSetupActionOperationRequestHeaderComponentContent(int eventType, XmlPullParser xpp, TestScript.SetupActionOperationRequestHeaderComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29519 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("field")) { 29520 res.setFieldElement(parseString(xpp)); 29521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 29522 res.setValueElement(parseString(xpp)); 29523 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29524 return false; 29525 } 29526 return true; 29527 } 29528 29529 protected TestScript.SetupActionAssertComponent parseTestScriptSetupActionAssertComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29530 TestScript.SetupActionAssertComponent res = new TestScript.SetupActionAssertComponent(); 29531 parseElementAttributes(xpp, res); 29532 next(xpp); 29533 int eventType = nextNoWhitespace(xpp); 29534 while (eventType != XmlPullParser.END_TAG) { 29535 if (!parseTestScriptSetupActionAssertComponentContent(eventType, xpp, res)) 29536 unknownContent(xpp); 29537 eventType = nextNoWhitespace(xpp); 29538 } 29539 next(xpp); 29540 parseElementClose(res); 29541 return res; 29542 } 29543 29544 protected boolean parseTestScriptSetupActionAssertComponentContent(int eventType, XmlPullParser xpp, TestScript.SetupActionAssertComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29545 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 29546 res.setLabelElement(parseString(xpp)); 29547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29548 res.setDescriptionElement(parseString(xpp)); 29549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("direction")) { 29550 res.setDirectionElement(parseEnumeration(xpp, TestScript.AssertionDirectionType.NULL, new TestScript.AssertionDirectionTypeEnumFactory())); 29551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourceId")) { 29552 res.setCompareToSourceIdElement(parseString(xpp)); 29553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourceExpression")) { 29554 res.setCompareToSourceExpressionElement(parseString(xpp)); 29555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourcePath")) { 29556 res.setCompareToSourcePathElement(parseString(xpp)); 29557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 29558 res.setContentTypeElement(parseCode(xpp)); 29559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("defaultManualCompletion")) { 29560 res.setDefaultManualCompletionElement(parseEnumeration(xpp, TestScript.AssertionManualCompletionType.NULL, new TestScript.AssertionManualCompletionTypeEnumFactory())); 29561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 29562 res.setExpressionElement(parseString(xpp)); 29563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 29564 res.setHeaderFieldElement(parseString(xpp)); 29565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minimumId")) { 29566 res.setMinimumIdElement(parseString(xpp)); 29567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("navigationLinks")) { 29568 res.setNavigationLinksElement(parseBoolean(xpp)); 29569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 29570 res.setOperatorElement(parseEnumeration(xpp, TestScript.AssertionOperatorType.NULL, new TestScript.AssertionOperatorTypeEnumFactory())); 29571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 29572 res.setPathElement(parseString(xpp)); 29573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestMethod")) { 29574 res.setRequestMethodElement(parseEnumeration(xpp, TestScript.TestScriptRequestMethodCode.NULL, new TestScript.TestScriptRequestMethodCodeEnumFactory())); 29575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestURL")) { 29576 res.setRequestURLElement(parseString(xpp)); 29577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 29578 res.setResourceElement(parseUri(xpp)); 29579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 29580 res.setResponseElement(parseEnumeration(xpp, TestScript.AssertionResponseTypes.NULL, new TestScript.AssertionResponseTypesEnumFactory())); 29581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseCode")) { 29582 res.setResponseCodeElement(parseString(xpp)); 29583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 29584 res.setSourceIdElement(parseId(xpp)); 29585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stopTestOnFail")) { 29586 res.setStopTestOnFailElement(parseBoolean(xpp)); 29587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validateProfileId")) { 29588 res.setValidateProfileIdElement(parseId(xpp)); 29589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 29590 res.setValueElement(parseString(xpp)); 29591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("warningOnly")) { 29592 res.setWarningOnlyElement(parseBoolean(xpp)); 29593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirement")) { 29594 res.getRequirement().add(parseTestScriptSetupActionAssertRequirementComponent(xpp)); 29595 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29596 return false; 29597 } 29598 return true; 29599 } 29600 29601 protected TestScript.SetupActionAssertRequirementComponent parseTestScriptSetupActionAssertRequirementComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29602 TestScript.SetupActionAssertRequirementComponent res = new TestScript.SetupActionAssertRequirementComponent(); 29603 parseElementAttributes(xpp, res); 29604 next(xpp); 29605 int eventType = nextNoWhitespace(xpp); 29606 while (eventType != XmlPullParser.END_TAG) { 29607 if (!parseTestScriptSetupActionAssertRequirementComponentContent(eventType, xpp, res)) 29608 unknownContent(xpp); 29609 eventType = nextNoWhitespace(xpp); 29610 } 29611 next(xpp); 29612 parseElementClose(res); 29613 return res; 29614 } 29615 29616 protected boolean parseTestScriptSetupActionAssertRequirementComponentContent(int eventType, XmlPullParser xpp, TestScript.SetupActionAssertRequirementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29617 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "link")) { 29618 res.setLink(parseType("link", xpp)); 29619 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29620 return false; 29621 } 29622 return true; 29623 } 29624 29625 protected TestScript.TestScriptTestComponent parseTestScriptTestComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29626 TestScript.TestScriptTestComponent res = new TestScript.TestScriptTestComponent(); 29627 parseElementAttributes(xpp, res); 29628 next(xpp); 29629 int eventType = nextNoWhitespace(xpp); 29630 while (eventType != XmlPullParser.END_TAG) { 29631 if (!parseTestScriptTestComponentContent(eventType, xpp, res)) 29632 unknownContent(xpp); 29633 eventType = nextNoWhitespace(xpp); 29634 } 29635 next(xpp); 29636 parseElementClose(res); 29637 return res; 29638 } 29639 29640 protected boolean parseTestScriptTestComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptTestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29641 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 29642 res.setNameElement(parseString(xpp)); 29643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29644 res.setDescriptionElement(parseString(xpp)); 29645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 29646 res.getAction().add(parseTestScriptTestActionComponent(xpp)); 29647 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29648 return false; 29649 } 29650 return true; 29651 } 29652 29653 protected TestScript.TestActionComponent parseTestScriptTestActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29654 TestScript.TestActionComponent res = new TestScript.TestActionComponent(); 29655 parseElementAttributes(xpp, res); 29656 next(xpp); 29657 int eventType = nextNoWhitespace(xpp); 29658 while (eventType != XmlPullParser.END_TAG) { 29659 if (!parseTestScriptTestActionComponentContent(eventType, xpp, res)) 29660 unknownContent(xpp); 29661 eventType = nextNoWhitespace(xpp); 29662 } 29663 next(xpp); 29664 parseElementClose(res); 29665 return res; 29666 } 29667 29668 protected boolean parseTestScriptTestActionComponentContent(int eventType, XmlPullParser xpp, TestScript.TestActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29669 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 29670 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp)); 29671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 29672 res.setAssert(parseTestScriptSetupActionAssertComponent(xpp)); 29673 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29674 return false; 29675 } 29676 return true; 29677 } 29678 29679 protected TestScript.TestScriptTeardownComponent parseTestScriptTeardownComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29680 TestScript.TestScriptTeardownComponent res = new TestScript.TestScriptTeardownComponent(); 29681 parseElementAttributes(xpp, res); 29682 next(xpp); 29683 int eventType = nextNoWhitespace(xpp); 29684 while (eventType != XmlPullParser.END_TAG) { 29685 if (!parseTestScriptTeardownComponentContent(eventType, xpp, res)) 29686 unknownContent(xpp); 29687 eventType = nextNoWhitespace(xpp); 29688 } 29689 next(xpp); 29690 parseElementClose(res); 29691 return res; 29692 } 29693 29694 protected boolean parseTestScriptTeardownComponentContent(int eventType, XmlPullParser xpp, TestScript.TestScriptTeardownComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29695 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 29696 res.getAction().add(parseTestScriptTeardownActionComponent(xpp)); 29697 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29698 return false; 29699 } 29700 return true; 29701 } 29702 29703 protected TestScript.TeardownActionComponent parseTestScriptTeardownActionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29704 TestScript.TeardownActionComponent res = new TestScript.TeardownActionComponent(); 29705 parseElementAttributes(xpp, res); 29706 next(xpp); 29707 int eventType = nextNoWhitespace(xpp); 29708 while (eventType != XmlPullParser.END_TAG) { 29709 if (!parseTestScriptTeardownActionComponentContent(eventType, xpp, res)) 29710 unknownContent(xpp); 29711 eventType = nextNoWhitespace(xpp); 29712 } 29713 next(xpp); 29714 parseElementClose(res); 29715 return res; 29716 } 29717 29718 protected boolean parseTestScriptTeardownActionComponentContent(int eventType, XmlPullParser xpp, TestScript.TeardownActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29719 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 29720 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp)); 29721 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29722 return false; 29723 } 29724 return true; 29725 } 29726 29727 protected Transport parseTransport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29728 Transport res = new Transport(); 29729 parseResourceAttributes(xpp, res); 29730 next(xpp); 29731 int eventType = nextNoWhitespace(xpp); 29732 while (eventType != XmlPullParser.END_TAG) { 29733 if (!parseTransportContent(eventType, xpp, res)) 29734 unknownContent(xpp); 29735 eventType = nextNoWhitespace(xpp); 29736 } 29737 next(xpp); 29738 parseElementClose(res); 29739 return res; 29740 } 29741 29742 protected boolean parseTransportContent(int eventType, XmlPullParser xpp, Transport res) throws XmlPullParserException, IOException, FHIRFormatError { 29743 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 29744 res.getIdentifier().add(parseIdentifier(xpp)); 29745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { 29746 res.setInstantiatesCanonicalElement(parseCanonical(xpp)); 29747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { 29748 res.setInstantiatesUriElement(parseUri(xpp)); 29749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 29750 res.getBasedOn().add(parseReference(xpp)); 29751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 29752 res.setGroupIdentifier(parseIdentifier(xpp)); 29753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 29754 res.getPartOf().add(parseReference(xpp)); 29755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 29756 res.setStatusElement(parseEnumeration(xpp, Transport.TransportStatus.NULL, new Transport.TransportStatusEnumFactory())); 29757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 29758 res.setStatusReason(parseCodeableConcept(xpp)); 29759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 29760 res.setIntentElement(parseEnumeration(xpp, Transport.TransportIntent.NULL, new Transport.TransportIntentEnumFactory())); 29761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 29762 res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); 29763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 29764 res.setCode(parseCodeableConcept(xpp)); 29765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29766 res.setDescriptionElement(parseString(xpp)); 29767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 29768 res.setFocus(parseReference(xpp)); 29769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("for")) { 29770 res.setFor(parseReference(xpp)); 29771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 29772 res.setEncounter(parseReference(xpp)); 29773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("completionTime")) { 29774 res.setCompletionTimeElement(parseDateTime(xpp)); 29775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 29776 res.setAuthoredOnElement(parseDateTime(xpp)); 29777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 29778 res.setLastModifiedElement(parseDateTime(xpp)); 29779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 29780 res.setRequester(parseReference(xpp)); 29781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 29782 res.getPerformerType().add(parseCodeableConcept(xpp)); 29783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 29784 res.setOwner(parseReference(xpp)); 29785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 29786 res.setLocation(parseReference(xpp)); 29787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 29788 res.getInsurance().add(parseReference(xpp)); 29789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 29790 res.getNote().add(parseAnnotation(xpp)); 29791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 29792 res.getRelevantHistory().add(parseReference(xpp)); 29793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("restriction")) { 29794 res.setRestriction(parseTransportRestrictionComponent(xpp)); 29795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 29796 res.getInput().add(parseTransportParameterComponent(xpp)); 29797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 29798 res.getOutput().add(parseTransportOutputComponent(xpp)); 29799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestedLocation")) { 29800 res.setRequestedLocation(parseReference(xpp)); 29801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("currentLocation")) { 29802 res.setCurrentLocation(parseReference(xpp)); 29803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 29804 res.setReason(parseCodeableReference(xpp)); 29805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("history")) { 29806 res.setHistory(parseReference(xpp)); 29807 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 29808 return false; 29809 } 29810 return true; 29811 } 29812 29813 protected Transport.TransportRestrictionComponent parseTransportRestrictionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29814 Transport.TransportRestrictionComponent res = new Transport.TransportRestrictionComponent(); 29815 parseElementAttributes(xpp, res); 29816 next(xpp); 29817 int eventType = nextNoWhitespace(xpp); 29818 while (eventType != XmlPullParser.END_TAG) { 29819 if (!parseTransportRestrictionComponentContent(eventType, xpp, res)) 29820 unknownContent(xpp); 29821 eventType = nextNoWhitespace(xpp); 29822 } 29823 next(xpp); 29824 parseElementClose(res); 29825 return res; 29826 } 29827 29828 protected boolean parseTransportRestrictionComponentContent(int eventType, XmlPullParser xpp, Transport.TransportRestrictionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29829 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repetitions")) { 29830 res.setRepetitionsElement(parsePositiveInt(xpp)); 29831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 29832 res.setPeriod(parsePeriod(xpp)); 29833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 29834 res.getRecipient().add(parseReference(xpp)); 29835 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29836 return false; 29837 } 29838 return true; 29839 } 29840 29841 protected Transport.ParameterComponent parseTransportParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29842 Transport.ParameterComponent res = new Transport.ParameterComponent(); 29843 parseElementAttributes(xpp, res); 29844 next(xpp); 29845 int eventType = nextNoWhitespace(xpp); 29846 while (eventType != XmlPullParser.END_TAG) { 29847 if (!parseTransportParameterComponentContent(eventType, xpp, res)) 29848 unknownContent(xpp); 29849 eventType = nextNoWhitespace(xpp); 29850 } 29851 next(xpp); 29852 parseElementClose(res); 29853 return res; 29854 } 29855 29856 protected boolean parseTransportParameterComponentContent(int eventType, XmlPullParser xpp, Transport.ParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29857 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 29858 res.setType(parseCodeableConcept(xpp)); 29859 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 29860 res.setValue(parseType("value", xpp)); 29861 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29862 return false; 29863 } 29864 return true; 29865 } 29866 29867 protected Transport.TransportOutputComponent parseTransportOutputComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29868 Transport.TransportOutputComponent res = new Transport.TransportOutputComponent(); 29869 parseElementAttributes(xpp, res); 29870 next(xpp); 29871 int eventType = nextNoWhitespace(xpp); 29872 while (eventType != XmlPullParser.END_TAG) { 29873 if (!parseTransportOutputComponentContent(eventType, xpp, res)) 29874 unknownContent(xpp); 29875 eventType = nextNoWhitespace(xpp); 29876 } 29877 next(xpp); 29878 parseElementClose(res); 29879 return res; 29880 } 29881 29882 protected boolean parseTransportOutputComponentContent(int eventType, XmlPullParser xpp, Transport.TransportOutputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29883 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 29884 res.setType(parseCodeableConcept(xpp)); 29885 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 29886 res.setValue(parseType("value", xpp)); 29887 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 29888 return false; 29889 } 29890 return true; 29891 } 29892 29893 protected ValueSet parseValueSet(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29894 ValueSet res = new ValueSet(); 29895 parseResourceAttributes(xpp, res); 29896 next(xpp); 29897 int eventType = nextNoWhitespace(xpp); 29898 while (eventType != XmlPullParser.END_TAG) { 29899 if (!parseValueSetContent(eventType, xpp, res)) 29900 unknownContent(xpp); 29901 eventType = nextNoWhitespace(xpp); 29902 } 29903 next(xpp); 29904 parseElementClose(res); 29905 return res; 29906 } 29907 29908 protected boolean parseValueSetContent(int eventType, XmlPullParser xpp, ValueSet res) throws XmlPullParserException, IOException, FHIRFormatError { 29909 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 29910 res.setUrlElement(parseUri(xpp)); 29911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 29912 res.getIdentifier().add(parseIdentifier(xpp)); 29913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 29914 res.setVersionElement(parseString(xpp)); 29915 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "versionAlgorithm")) { 29916 res.setVersionAlgorithm(parseType("versionAlgorithm", xpp)); 29917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 29918 res.setNameElement(parseString(xpp)); 29919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 29920 res.setTitleElement(parseString(xpp)); 29921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 29922 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 29923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 29924 res.setExperimentalElement(parseBoolean(xpp)); 29925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 29926 res.setDateElement(parseDateTime(xpp)); 29927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 29928 res.setPublisherElement(parseString(xpp)); 29929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 29930 res.getContact().add(parseContactDetail(xpp)); 29931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 29932 res.setDescriptionElement(parseMarkdown(xpp)); 29933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 29934 res.getUseContext().add(parseUsageContext(xpp)); 29935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 29936 res.getJurisdiction().add(parseCodeableConcept(xpp)); 29937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("immutable")) { 29938 res.setImmutableElement(parseBoolean(xpp)); 29939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 29940 res.setPurposeElement(parseMarkdown(xpp)); 29941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 29942 res.setCopyrightElement(parseMarkdown(xpp)); 29943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyrightLabel")) { 29944 res.setCopyrightLabelElement(parseString(xpp)); 29945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 29946 res.setApprovalDateElement(parseDate(xpp)); 29947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 29948 res.setLastReviewDateElement(parseDate(xpp)); 29949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 29950 res.setEffectivePeriod(parsePeriod(xpp)); 29951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 29952 res.getTopic().add(parseCodeableConcept(xpp)); 29953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 29954 res.getAuthor().add(parseContactDetail(xpp)); 29955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("editor")) { 29956 res.getEditor().add(parseContactDetail(xpp)); 29957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reviewer")) { 29958 res.getReviewer().add(parseContactDetail(xpp)); 29959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endorser")) { 29960 res.getEndorser().add(parseContactDetail(xpp)); 29961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 29962 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 29963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compose")) { 29964 res.setCompose(parseValueSetComposeComponent(xpp)); 29965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expansion")) { 29966 res.setExpansion(parseValueSetExpansionComponent(xpp)); 29967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scope")) { 29968 res.setScope(parseValueSetScopeComponent(xpp)); 29969 } else if (!parseMetadataResourceContent(eventType, xpp, res)){ 29970 return false; 29971 } 29972 return true; 29973 } 29974 29975 protected ValueSet.ValueSetComposeComponent parseValueSetComposeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 29976 ValueSet.ValueSetComposeComponent res = new ValueSet.ValueSetComposeComponent(); 29977 parseElementAttributes(xpp, res); 29978 next(xpp); 29979 int eventType = nextNoWhitespace(xpp); 29980 while (eventType != XmlPullParser.END_TAG) { 29981 if (!parseValueSetComposeComponentContent(eventType, xpp, res)) 29982 unknownContent(xpp); 29983 eventType = nextNoWhitespace(xpp); 29984 } 29985 next(xpp); 29986 parseElementClose(res); 29987 return res; 29988 } 29989 29990 protected boolean parseValueSetComposeComponentContent(int eventType, XmlPullParser xpp, ValueSet.ValueSetComposeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 29991 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lockedDate")) { 29992 res.setLockedDateElement(parseDate(xpp)); 29993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 29994 res.setInactiveElement(parseBoolean(xpp)); 29995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 29996 res.getInclude().add(parseValueSetConceptSetComponent(xpp)); 29997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 29998 res.getExclude().add(parseValueSetConceptSetComponent(xpp)); 29999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 30000 res.getProperty().add(parseString(xpp)); 30001 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30002 return false; 30003 } 30004 return true; 30005 } 30006 30007 protected ValueSet.ConceptSetComponent parseValueSetConceptSetComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30008 ValueSet.ConceptSetComponent res = new ValueSet.ConceptSetComponent(); 30009 parseElementAttributes(xpp, res); 30010 next(xpp); 30011 int eventType = nextNoWhitespace(xpp); 30012 while (eventType != XmlPullParser.END_TAG) { 30013 if (!parseValueSetConceptSetComponentContent(eventType, xpp, res)) 30014 unknownContent(xpp); 30015 eventType = nextNoWhitespace(xpp); 30016 } 30017 next(xpp); 30018 parseElementClose(res); 30019 return res; 30020 } 30021 30022 protected boolean parseValueSetConceptSetComponentContent(int eventType, XmlPullParser xpp, ValueSet.ConceptSetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30023 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 30024 res.setSystemElement(parseUri(xpp)); 30025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 30026 res.setVersionElement(parseString(xpp)); 30027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 30028 res.getConcept().add(parseValueSetConceptReferenceComponent(xpp)); 30029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 30030 res.getFilter().add(parseValueSetConceptSetFilterComponent(xpp)); 30031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 30032 res.getValueSet().add(parseCanonical(xpp)); 30033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 30034 res.setCopyrightElement(parseString(xpp)); 30035 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30036 return false; 30037 } 30038 return true; 30039 } 30040 30041 protected ValueSet.ConceptReferenceComponent parseValueSetConceptReferenceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30042 ValueSet.ConceptReferenceComponent res = new ValueSet.ConceptReferenceComponent(); 30043 parseElementAttributes(xpp, res); 30044 next(xpp); 30045 int eventType = nextNoWhitespace(xpp); 30046 while (eventType != XmlPullParser.END_TAG) { 30047 if (!parseValueSetConceptReferenceComponentContent(eventType, xpp, res)) 30048 unknownContent(xpp); 30049 eventType = nextNoWhitespace(xpp); 30050 } 30051 next(xpp); 30052 parseElementClose(res); 30053 return res; 30054 } 30055 30056 protected boolean parseValueSetConceptReferenceComponentContent(int eventType, XmlPullParser xpp, ValueSet.ConceptReferenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30057 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 30058 res.setCodeElement(parseCode(xpp)); 30059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 30060 res.setDisplayElement(parseString(xpp)); 30061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 30062 res.getDesignation().add(parseValueSetConceptReferenceDesignationComponent(xpp)); 30063 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30064 return false; 30065 } 30066 return true; 30067 } 30068 30069 protected ValueSet.ConceptReferenceDesignationComponent parseValueSetConceptReferenceDesignationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30070 ValueSet.ConceptReferenceDesignationComponent res = new ValueSet.ConceptReferenceDesignationComponent(); 30071 parseElementAttributes(xpp, res); 30072 next(xpp); 30073 int eventType = nextNoWhitespace(xpp); 30074 while (eventType != XmlPullParser.END_TAG) { 30075 if (!parseValueSetConceptReferenceDesignationComponentContent(eventType, xpp, res)) 30076 unknownContent(xpp); 30077 eventType = nextNoWhitespace(xpp); 30078 } 30079 next(xpp); 30080 parseElementClose(res); 30081 return res; 30082 } 30083 30084 protected boolean parseValueSetConceptReferenceDesignationComponentContent(int eventType, XmlPullParser xpp, ValueSet.ConceptReferenceDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30085 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 30086 res.setLanguageElement(parseCode(xpp)); 30087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 30088 res.setUse(parseCoding(xpp)); 30089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalUse")) { 30090 res.getAdditionalUse().add(parseCoding(xpp)); 30091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 30092 res.setValueElement(parseString(xpp)); 30093 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30094 return false; 30095 } 30096 return true; 30097 } 30098 30099 protected ValueSet.ConceptSetFilterComponent parseValueSetConceptSetFilterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30100 ValueSet.ConceptSetFilterComponent res = new ValueSet.ConceptSetFilterComponent(); 30101 parseElementAttributes(xpp, res); 30102 next(xpp); 30103 int eventType = nextNoWhitespace(xpp); 30104 while (eventType != XmlPullParser.END_TAG) { 30105 if (!parseValueSetConceptSetFilterComponentContent(eventType, xpp, res)) 30106 unknownContent(xpp); 30107 eventType = nextNoWhitespace(xpp); 30108 } 30109 next(xpp); 30110 parseElementClose(res); 30111 return res; 30112 } 30113 30114 protected boolean parseValueSetConceptSetFilterComponentContent(int eventType, XmlPullParser xpp, ValueSet.ConceptSetFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30115 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 30116 res.setPropertyElement(parseCode(xpp)); 30117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("op")) { 30118 res.setOpElement(parseEnumeration(xpp, Enumerations.FilterOperator.NULL, new Enumerations.FilterOperatorEnumFactory())); 30119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 30120 res.setValueElement(parseString(xpp)); 30121 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30122 return false; 30123 } 30124 return true; 30125 } 30126 30127 protected ValueSet.ValueSetExpansionComponent parseValueSetExpansionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30128 ValueSet.ValueSetExpansionComponent res = new ValueSet.ValueSetExpansionComponent(); 30129 parseElementAttributes(xpp, res); 30130 next(xpp); 30131 int eventType = nextNoWhitespace(xpp); 30132 while (eventType != XmlPullParser.END_TAG) { 30133 if (!parseValueSetExpansionComponentContent(eventType, xpp, res)) 30134 unknownContent(xpp); 30135 eventType = nextNoWhitespace(xpp); 30136 } 30137 next(xpp); 30138 parseElementClose(res); 30139 return res; 30140 } 30141 30142 protected boolean parseValueSetExpansionComponentContent(int eventType, XmlPullParser xpp, ValueSet.ValueSetExpansionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30143 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 30144 res.setIdentifierElement(parseUri(xpp)); 30145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("next")) { 30146 res.setNextElement(parseUri(xpp)); 30147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 30148 res.setTimestampElement(parseDateTime(xpp)); 30149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 30150 res.setTotalElement(parseInteger(xpp)); 30151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 30152 res.setOffsetElement(parseInteger(xpp)); 30153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 30154 res.getParameter().add(parseValueSetExpansionParameterComponent(xpp)); 30155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 30156 res.getProperty().add(parseValueSetExpansionPropertyComponent(xpp)); 30157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 30158 res.getContains().add(parseValueSetExpansionContainsComponent(xpp)); 30159 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30160 return false; 30161 } 30162 return true; 30163 } 30164 30165 protected ValueSet.ValueSetExpansionParameterComponent parseValueSetExpansionParameterComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30166 ValueSet.ValueSetExpansionParameterComponent res = new ValueSet.ValueSetExpansionParameterComponent(); 30167 parseElementAttributes(xpp, res); 30168 next(xpp); 30169 int eventType = nextNoWhitespace(xpp); 30170 while (eventType != XmlPullParser.END_TAG) { 30171 if (!parseValueSetExpansionParameterComponentContent(eventType, xpp, res)) 30172 unknownContent(xpp); 30173 eventType = nextNoWhitespace(xpp); 30174 } 30175 next(xpp); 30176 parseElementClose(res); 30177 return res; 30178 } 30179 30180 protected boolean parseValueSetExpansionParameterComponentContent(int eventType, XmlPullParser xpp, ValueSet.ValueSetExpansionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30181 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 30182 res.setNameElement(parseString(xpp)); 30183 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 30184 res.setValue(parseType("value", xpp)); 30185 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30186 return false; 30187 } 30188 return true; 30189 } 30190 30191 protected ValueSet.ValueSetExpansionPropertyComponent parseValueSetExpansionPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30192 ValueSet.ValueSetExpansionPropertyComponent res = new ValueSet.ValueSetExpansionPropertyComponent(); 30193 parseElementAttributes(xpp, res); 30194 next(xpp); 30195 int eventType = nextNoWhitespace(xpp); 30196 while (eventType != XmlPullParser.END_TAG) { 30197 if (!parseValueSetExpansionPropertyComponentContent(eventType, xpp, res)) 30198 unknownContent(xpp); 30199 eventType = nextNoWhitespace(xpp); 30200 } 30201 next(xpp); 30202 parseElementClose(res); 30203 return res; 30204 } 30205 30206 protected boolean parseValueSetExpansionPropertyComponentContent(int eventType, XmlPullParser xpp, ValueSet.ValueSetExpansionPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30207 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 30208 res.setCodeElement(parseCode(xpp)); 30209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 30210 res.setUriElement(parseUri(xpp)); 30211 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30212 return false; 30213 } 30214 return true; 30215 } 30216 30217 protected ValueSet.ValueSetExpansionContainsComponent parseValueSetExpansionContainsComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30218 ValueSet.ValueSetExpansionContainsComponent res = new ValueSet.ValueSetExpansionContainsComponent(); 30219 parseElementAttributes(xpp, res); 30220 next(xpp); 30221 int eventType = nextNoWhitespace(xpp); 30222 while (eventType != XmlPullParser.END_TAG) { 30223 if (!parseValueSetExpansionContainsComponentContent(eventType, xpp, res)) 30224 unknownContent(xpp); 30225 eventType = nextNoWhitespace(xpp); 30226 } 30227 next(xpp); 30228 parseElementClose(res); 30229 return res; 30230 } 30231 30232 protected boolean parseValueSetExpansionContainsComponentContent(int eventType, XmlPullParser xpp, ValueSet.ValueSetExpansionContainsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30233 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 30234 res.setSystemElement(parseUri(xpp)); 30235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 30236 res.setAbstractElement(parseBoolean(xpp)); 30237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 30238 res.setInactiveElement(parseBoolean(xpp)); 30239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 30240 res.setVersionElement(parseString(xpp)); 30241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 30242 res.setCodeElement(parseCode(xpp)); 30243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 30244 res.setDisplayElement(parseString(xpp)); 30245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 30246 res.getDesignation().add(parseValueSetConceptReferenceDesignationComponent(xpp)); 30247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 30248 res.getProperty().add(parseValueSetConceptPropertyComponent(xpp)); 30249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 30250 res.getContains().add(parseValueSetExpansionContainsComponent(xpp)); 30251 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30252 return false; 30253 } 30254 return true; 30255 } 30256 30257 protected ValueSet.ConceptPropertyComponent parseValueSetConceptPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30258 ValueSet.ConceptPropertyComponent res = new ValueSet.ConceptPropertyComponent(); 30259 parseElementAttributes(xpp, res); 30260 next(xpp); 30261 int eventType = nextNoWhitespace(xpp); 30262 while (eventType != XmlPullParser.END_TAG) { 30263 if (!parseValueSetConceptPropertyComponentContent(eventType, xpp, res)) 30264 unknownContent(xpp); 30265 eventType = nextNoWhitespace(xpp); 30266 } 30267 next(xpp); 30268 parseElementClose(res); 30269 return res; 30270 } 30271 30272 protected boolean parseValueSetConceptPropertyComponentContent(int eventType, XmlPullParser xpp, ValueSet.ConceptPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30273 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 30274 res.setCodeElement(parseCode(xpp)); 30275 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 30276 res.setValue(parseType("value", xpp)); 30277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subProperty")) { 30278 res.getSubProperty().add(parseValueSetConceptSubPropertyComponent(xpp)); 30279 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30280 return false; 30281 } 30282 return true; 30283 } 30284 30285 protected ValueSet.ConceptSubPropertyComponent parseValueSetConceptSubPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30286 ValueSet.ConceptSubPropertyComponent res = new ValueSet.ConceptSubPropertyComponent(); 30287 parseElementAttributes(xpp, res); 30288 next(xpp); 30289 int eventType = nextNoWhitespace(xpp); 30290 while (eventType != XmlPullParser.END_TAG) { 30291 if (!parseValueSetConceptSubPropertyComponentContent(eventType, xpp, res)) 30292 unknownContent(xpp); 30293 eventType = nextNoWhitespace(xpp); 30294 } 30295 next(xpp); 30296 parseElementClose(res); 30297 return res; 30298 } 30299 30300 protected boolean parseValueSetConceptSubPropertyComponentContent(int eventType, XmlPullParser xpp, ValueSet.ConceptSubPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30301 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 30302 res.setCodeElement(parseCode(xpp)); 30303 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 30304 res.setValue(parseType("value", xpp)); 30305 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30306 return false; 30307 } 30308 return true; 30309 } 30310 30311 protected ValueSet.ValueSetScopeComponent parseValueSetScopeComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30312 ValueSet.ValueSetScopeComponent res = new ValueSet.ValueSetScopeComponent(); 30313 parseElementAttributes(xpp, res); 30314 next(xpp); 30315 int eventType = nextNoWhitespace(xpp); 30316 while (eventType != XmlPullParser.END_TAG) { 30317 if (!parseValueSetScopeComponentContent(eventType, xpp, res)) 30318 unknownContent(xpp); 30319 eventType = nextNoWhitespace(xpp); 30320 } 30321 next(xpp); 30322 parseElementClose(res); 30323 return res; 30324 } 30325 30326 protected boolean parseValueSetScopeComponentContent(int eventType, XmlPullParser xpp, ValueSet.ValueSetScopeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30327 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inclusionCriteria")) { 30328 res.setInclusionCriteriaElement(parseString(xpp)); 30329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclusionCriteria")) { 30330 res.setExclusionCriteriaElement(parseString(xpp)); 30331 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30332 return false; 30333 } 30334 return true; 30335 } 30336 30337 protected VerificationResult parseVerificationResult(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30338 VerificationResult res = new VerificationResult(); 30339 parseResourceAttributes(xpp, res); 30340 next(xpp); 30341 int eventType = nextNoWhitespace(xpp); 30342 while (eventType != XmlPullParser.END_TAG) { 30343 if (!parseVerificationResultContent(eventType, xpp, res)) 30344 unknownContent(xpp); 30345 eventType = nextNoWhitespace(xpp); 30346 } 30347 next(xpp); 30348 parseElementClose(res); 30349 return res; 30350 } 30351 30352 protected boolean parseVerificationResultContent(int eventType, XmlPullParser xpp, VerificationResult res) throws XmlPullParserException, IOException, FHIRFormatError { 30353 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 30354 res.getTarget().add(parseReference(xpp)); 30355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetLocation")) { 30356 res.getTargetLocation().add(parseString(xpp)); 30357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("need")) { 30358 res.setNeed(parseCodeableConcept(xpp)); 30359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 30360 res.setStatusElement(parseEnumeration(xpp, VerificationResult.VerificationResultStatus.NULL, new VerificationResult.VerificationResultStatusEnumFactory())); 30361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 30362 res.setStatusDateElement(parseDateTime(xpp)); 30363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validationType")) { 30364 res.setValidationType(parseCodeableConcept(xpp)); 30365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validationProcess")) { 30366 res.getValidationProcess().add(parseCodeableConcept(xpp)); 30367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequency")) { 30368 res.setFrequency(parseTiming(xpp)); 30369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastPerformed")) { 30370 res.setLastPerformedElement(parseDateTime(xpp)); 30371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nextScheduled")) { 30372 res.setNextScheduledElement(parseDate(xpp)); 30373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("failureAction")) { 30374 res.setFailureAction(parseCodeableConcept(xpp)); 30375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("primarySource")) { 30376 res.getPrimarySource().add(parseVerificationResultPrimarySourceComponent(xpp)); 30377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attestation")) { 30378 res.setAttestation(parseVerificationResultAttestationComponent(xpp)); 30379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validator")) { 30380 res.getValidator().add(parseVerificationResultValidatorComponent(xpp)); 30381 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 30382 return false; 30383 } 30384 return true; 30385 } 30386 30387 protected VerificationResult.VerificationResultPrimarySourceComponent parseVerificationResultPrimarySourceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30388 VerificationResult.VerificationResultPrimarySourceComponent res = new VerificationResult.VerificationResultPrimarySourceComponent(); 30389 parseElementAttributes(xpp, res); 30390 next(xpp); 30391 int eventType = nextNoWhitespace(xpp); 30392 while (eventType != XmlPullParser.END_TAG) { 30393 if (!parseVerificationResultPrimarySourceComponentContent(eventType, xpp, res)) 30394 unknownContent(xpp); 30395 eventType = nextNoWhitespace(xpp); 30396 } 30397 next(xpp); 30398 parseElementClose(res); 30399 return res; 30400 } 30401 30402 protected boolean parseVerificationResultPrimarySourceComponentContent(int eventType, XmlPullParser xpp, VerificationResult.VerificationResultPrimarySourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30403 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("who")) { 30404 res.setWho(parseReference(xpp)); 30405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 30406 res.getType().add(parseCodeableConcept(xpp)); 30407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communicationMethod")) { 30408 res.getCommunicationMethod().add(parseCodeableConcept(xpp)); 30409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validationStatus")) { 30410 res.setValidationStatus(parseCodeableConcept(xpp)); 30411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validationDate")) { 30412 res.setValidationDateElement(parseDateTime(xpp)); 30413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("canPushUpdates")) { 30414 res.setCanPushUpdates(parseCodeableConcept(xpp)); 30415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pushTypeAvailable")) { 30416 res.getPushTypeAvailable().add(parseCodeableConcept(xpp)); 30417 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30418 return false; 30419 } 30420 return true; 30421 } 30422 30423 protected VerificationResult.VerificationResultAttestationComponent parseVerificationResultAttestationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30424 VerificationResult.VerificationResultAttestationComponent res = new VerificationResult.VerificationResultAttestationComponent(); 30425 parseElementAttributes(xpp, res); 30426 next(xpp); 30427 int eventType = nextNoWhitespace(xpp); 30428 while (eventType != XmlPullParser.END_TAG) { 30429 if (!parseVerificationResultAttestationComponentContent(eventType, xpp, res)) 30430 unknownContent(xpp); 30431 eventType = nextNoWhitespace(xpp); 30432 } 30433 next(xpp); 30434 parseElementClose(res); 30435 return res; 30436 } 30437 30438 protected boolean parseVerificationResultAttestationComponentContent(int eventType, XmlPullParser xpp, VerificationResult.VerificationResultAttestationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30439 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("who")) { 30440 res.setWho(parseReference(xpp)); 30441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 30442 res.setOnBehalfOf(parseReference(xpp)); 30443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communicationMethod")) { 30444 res.setCommunicationMethod(parseCodeableConcept(xpp)); 30445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 30446 res.setDateElement(parseDate(xpp)); 30447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceIdentityCertificate")) { 30448 res.setSourceIdentityCertificateElement(parseString(xpp)); 30449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("proxyIdentityCertificate")) { 30450 res.setProxyIdentityCertificateElement(parseString(xpp)); 30451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("proxySignature")) { 30452 res.setProxySignature(parseSignature(xpp)); 30453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceSignature")) { 30454 res.setSourceSignature(parseSignature(xpp)); 30455 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30456 return false; 30457 } 30458 return true; 30459 } 30460 30461 protected VerificationResult.VerificationResultValidatorComponent parseVerificationResultValidatorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30462 VerificationResult.VerificationResultValidatorComponent res = new VerificationResult.VerificationResultValidatorComponent(); 30463 parseElementAttributes(xpp, res); 30464 next(xpp); 30465 int eventType = nextNoWhitespace(xpp); 30466 while (eventType != XmlPullParser.END_TAG) { 30467 if (!parseVerificationResultValidatorComponentContent(eventType, xpp, res)) 30468 unknownContent(xpp); 30469 eventType = nextNoWhitespace(xpp); 30470 } 30471 next(xpp); 30472 parseElementClose(res); 30473 return res; 30474 } 30475 30476 protected boolean parseVerificationResultValidatorComponentContent(int eventType, XmlPullParser xpp, VerificationResult.VerificationResultValidatorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30477 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 30478 res.setOrganization(parseReference(xpp)); 30479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identityCertificate")) { 30480 res.setIdentityCertificateElement(parseString(xpp)); 30481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attestationSignature")) { 30482 res.setAttestationSignature(parseSignature(xpp)); 30483 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30484 return false; 30485 } 30486 return true; 30487 } 30488 30489 protected VisionPrescription parseVisionPrescription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30490 VisionPrescription res = new VisionPrescription(); 30491 parseResourceAttributes(xpp, res); 30492 next(xpp); 30493 int eventType = nextNoWhitespace(xpp); 30494 while (eventType != XmlPullParser.END_TAG) { 30495 if (!parseVisionPrescriptionContent(eventType, xpp, res)) 30496 unknownContent(xpp); 30497 eventType = nextNoWhitespace(xpp); 30498 } 30499 next(xpp); 30500 parseElementClose(res); 30501 return res; 30502 } 30503 30504 protected boolean parseVisionPrescriptionContent(int eventType, XmlPullParser xpp, VisionPrescription res) throws XmlPullParserException, IOException, FHIRFormatError { 30505 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 30506 res.getIdentifier().add(parseIdentifier(xpp)); 30507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 30508 res.setStatusElement(parseEnumeration(xpp, Enumerations.FinancialResourceStatusCodes.NULL, new Enumerations.FinancialResourceStatusCodesEnumFactory())); 30509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 30510 res.setCreatedElement(parseDateTime(xpp)); 30511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 30512 res.setPatient(parseReference(xpp)); 30513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 30514 res.setEncounter(parseReference(xpp)); 30515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateWritten")) { 30516 res.setDateWrittenElement(parseDateTime(xpp)); 30517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescriber")) { 30518 res.setPrescriber(parseReference(xpp)); 30519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lensSpecification")) { 30520 res.getLensSpecification().add(parseVisionPrescriptionLensSpecificationComponent(xpp)); 30521 } else if (!parseDomainResourceContent(eventType, xpp, res)){ 30522 return false; 30523 } 30524 return true; 30525 } 30526 30527 protected VisionPrescription.VisionPrescriptionLensSpecificationComponent parseVisionPrescriptionLensSpecificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30528 VisionPrescription.VisionPrescriptionLensSpecificationComponent res = new VisionPrescription.VisionPrescriptionLensSpecificationComponent(); 30529 parseElementAttributes(xpp, res); 30530 next(xpp); 30531 int eventType = nextNoWhitespace(xpp); 30532 while (eventType != XmlPullParser.END_TAG) { 30533 if (!parseVisionPrescriptionLensSpecificationComponentContent(eventType, xpp, res)) 30534 unknownContent(xpp); 30535 eventType = nextNoWhitespace(xpp); 30536 } 30537 next(xpp); 30538 parseElementClose(res); 30539 return res; 30540 } 30541 30542 protected boolean parseVisionPrescriptionLensSpecificationComponentContent(int eventType, XmlPullParser xpp, VisionPrescription.VisionPrescriptionLensSpecificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30543 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 30544 res.setProduct(parseCodeableConcept(xpp)); 30545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eye")) { 30546 res.setEyeElement(parseEnumeration(xpp, VisionPrescription.VisionEyes.NULL, new VisionPrescription.VisionEyesEnumFactory())); 30547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sphere")) { 30548 res.setSphereElement(parseDecimal(xpp)); 30549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cylinder")) { 30550 res.setCylinderElement(parseDecimal(xpp)); 30551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("axis")) { 30552 res.setAxisElement(parseInteger(xpp)); 30553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prism")) { 30554 res.getPrism().add(parseVisionPrescriptionPrismComponent(xpp)); 30555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("add")) { 30556 res.setAddElement(parseDecimal(xpp)); 30557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("power")) { 30558 res.setPowerElement(parseDecimal(xpp)); 30559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("backCurve")) { 30560 res.setBackCurveElement(parseDecimal(xpp)); 30561 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diameter")) { 30562 res.setDiameterElement(parseDecimal(xpp)); 30563 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 30564 res.setDuration(parseQuantity(xpp)); 30565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 30566 res.setColorElement(parseString(xpp)); 30567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("brand")) { 30568 res.setBrandElement(parseString(xpp)); 30569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 30570 res.getNote().add(parseAnnotation(xpp)); 30571 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30572 return false; 30573 } 30574 return true; 30575 } 30576 30577 protected VisionPrescription.PrismComponent parseVisionPrescriptionPrismComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30578 VisionPrescription.PrismComponent res = new VisionPrescription.PrismComponent(); 30579 parseElementAttributes(xpp, res); 30580 next(xpp); 30581 int eventType = nextNoWhitespace(xpp); 30582 while (eventType != XmlPullParser.END_TAG) { 30583 if (!parseVisionPrescriptionPrismComponentContent(eventType, xpp, res)) 30584 unknownContent(xpp); 30585 eventType = nextNoWhitespace(xpp); 30586 } 30587 next(xpp); 30588 parseElementClose(res); 30589 return res; 30590 } 30591 30592 protected boolean parseVisionPrescriptionPrismComponentContent(int eventType, XmlPullParser xpp, VisionPrescription.PrismComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 30593 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 30594 res.setAmountElement(parseDecimal(xpp)); 30595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 30596 res.setBaseElement(parseEnumeration(xpp, VisionPrescription.VisionBase.NULL, new VisionPrescription.VisionBaseEnumFactory())); 30597 } else if (!parseBackboneElementContent(eventType, xpp, res)){ 30598 return false; 30599 } 30600 return true; 30601 } 30602 30603 30604 30605 @Override 30606 protected Resource parseResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30607 if (xpp == null) { 30608 throw new IOException("xpp == null!"); 30609 } else if (xpp.getName().equals("Account")) { 30610 return parseAccount(xpp); 30611 } else if (xpp.getName().equals("ActivityDefinition")) { 30612 return parseActivityDefinition(xpp); 30613 } else if (xpp.getName().equals("ActorDefinition")) { 30614 return parseActorDefinition(xpp); 30615 } else if (xpp.getName().equals("AdministrableProductDefinition")) { 30616 return parseAdministrableProductDefinition(xpp); 30617 } else if (xpp.getName().equals("AdverseEvent")) { 30618 return parseAdverseEvent(xpp); 30619 } else if (xpp.getName().equals("AllergyIntolerance")) { 30620 return parseAllergyIntolerance(xpp); 30621 } else if (xpp.getName().equals("Appointment")) { 30622 return parseAppointment(xpp); 30623 } else if (xpp.getName().equals("AppointmentResponse")) { 30624 return parseAppointmentResponse(xpp); 30625 } else if (xpp.getName().equals("ArtifactAssessment")) { 30626 return parseArtifactAssessment(xpp); 30627 } else if (xpp.getName().equals("AuditEvent")) { 30628 return parseAuditEvent(xpp); 30629 } else if (xpp.getName().equals("Basic")) { 30630 return parseBasic(xpp); 30631 } else if (xpp.getName().equals("Binary")) { 30632 return parseBinary(xpp); 30633 } else if (xpp.getName().equals("BiologicallyDerivedProduct")) { 30634 return parseBiologicallyDerivedProduct(xpp); 30635 } else if (xpp.getName().equals("BiologicallyDerivedProductDispense")) { 30636 return parseBiologicallyDerivedProductDispense(xpp); 30637 } else if (xpp.getName().equals("BodyStructure")) { 30638 return parseBodyStructure(xpp); 30639 } else if (xpp.getName().equals("Bundle")) { 30640 return parseBundle(xpp); 30641 } else if (xpp.getName().equals("CapabilityStatement")) { 30642 return parseCapabilityStatement(xpp); 30643 } else if (xpp.getName().equals("CarePlan")) { 30644 return parseCarePlan(xpp); 30645 } else if (xpp.getName().equals("CareTeam")) { 30646 return parseCareTeam(xpp); 30647 } else if (xpp.getName().equals("ChargeItem")) { 30648 return parseChargeItem(xpp); 30649 } else if (xpp.getName().equals("ChargeItemDefinition")) { 30650 return parseChargeItemDefinition(xpp); 30651 } else if (xpp.getName().equals("Citation")) { 30652 return parseCitation(xpp); 30653 } else if (xpp.getName().equals("Claim")) { 30654 return parseClaim(xpp); 30655 } else if (xpp.getName().equals("ClaimResponse")) { 30656 return parseClaimResponse(xpp); 30657 } else if (xpp.getName().equals("ClinicalImpression")) { 30658 return parseClinicalImpression(xpp); 30659 } else if (xpp.getName().equals("ClinicalUseDefinition")) { 30660 return parseClinicalUseDefinition(xpp); 30661 } else if (xpp.getName().equals("CodeSystem")) { 30662 return parseCodeSystem(xpp); 30663 } else if (xpp.getName().equals("Communication")) { 30664 return parseCommunication(xpp); 30665 } else if (xpp.getName().equals("CommunicationRequest")) { 30666 return parseCommunicationRequest(xpp); 30667 } else if (xpp.getName().equals("CompartmentDefinition")) { 30668 return parseCompartmentDefinition(xpp); 30669 } else if (xpp.getName().equals("Composition")) { 30670 return parseComposition(xpp); 30671 } else if (xpp.getName().equals("ConceptMap")) { 30672 return parseConceptMap(xpp); 30673 } else if (xpp.getName().equals("Condition")) { 30674 return parseCondition(xpp); 30675 } else if (xpp.getName().equals("ConditionDefinition")) { 30676 return parseConditionDefinition(xpp); 30677 } else if (xpp.getName().equals("Consent")) { 30678 return parseConsent(xpp); 30679 } else if (xpp.getName().equals("Contract")) { 30680 return parseContract(xpp); 30681 } else if (xpp.getName().equals("Coverage")) { 30682 return parseCoverage(xpp); 30683 } else if (xpp.getName().equals("CoverageEligibilityRequest")) { 30684 return parseCoverageEligibilityRequest(xpp); 30685 } else if (xpp.getName().equals("CoverageEligibilityResponse")) { 30686 return parseCoverageEligibilityResponse(xpp); 30687 } else if (xpp.getName().equals("DetectedIssue")) { 30688 return parseDetectedIssue(xpp); 30689 } else if (xpp.getName().equals("Device")) { 30690 return parseDevice(xpp); 30691 } else if (xpp.getName().equals("DeviceAssociation")) { 30692 return parseDeviceAssociation(xpp); 30693 } else if (xpp.getName().equals("DeviceDefinition")) { 30694 return parseDeviceDefinition(xpp); 30695 } else if (xpp.getName().equals("DeviceDispense")) { 30696 return parseDeviceDispense(xpp); 30697 } else if (xpp.getName().equals("DeviceMetric")) { 30698 return parseDeviceMetric(xpp); 30699 } else if (xpp.getName().equals("DeviceRequest")) { 30700 return parseDeviceRequest(xpp); 30701 } else if (xpp.getName().equals("DeviceUsage")) { 30702 return parseDeviceUsage(xpp); 30703 } else if (xpp.getName().equals("DiagnosticReport")) { 30704 return parseDiagnosticReport(xpp); 30705 } else if (xpp.getName().equals("DocumentReference")) { 30706 return parseDocumentReference(xpp); 30707 } else if (xpp.getName().equals("Encounter")) { 30708 return parseEncounter(xpp); 30709 } else if (xpp.getName().equals("EncounterHistory")) { 30710 return parseEncounterHistory(xpp); 30711 } else if (xpp.getName().equals("Endpoint")) { 30712 return parseEndpoint(xpp); 30713 } else if (xpp.getName().equals("EnrollmentRequest")) { 30714 return parseEnrollmentRequest(xpp); 30715 } else if (xpp.getName().equals("EnrollmentResponse")) { 30716 return parseEnrollmentResponse(xpp); 30717 } else if (xpp.getName().equals("EpisodeOfCare")) { 30718 return parseEpisodeOfCare(xpp); 30719 } else if (xpp.getName().equals("EventDefinition")) { 30720 return parseEventDefinition(xpp); 30721 } else if (xpp.getName().equals("Evidence")) { 30722 return parseEvidence(xpp); 30723 } else if (xpp.getName().equals("EvidenceReport")) { 30724 return parseEvidenceReport(xpp); 30725 } else if (xpp.getName().equals("EvidenceVariable")) { 30726 return parseEvidenceVariable(xpp); 30727 } else if (xpp.getName().equals("ExampleScenario")) { 30728 return parseExampleScenario(xpp); 30729 } else if (xpp.getName().equals("ExplanationOfBenefit")) { 30730 return parseExplanationOfBenefit(xpp); 30731 } else if (xpp.getName().equals("FamilyMemberHistory")) { 30732 return parseFamilyMemberHistory(xpp); 30733 } else if (xpp.getName().equals("Flag")) { 30734 return parseFlag(xpp); 30735 } else if (xpp.getName().equals("FormularyItem")) { 30736 return parseFormularyItem(xpp); 30737 } else if (xpp.getName().equals("GenomicStudy")) { 30738 return parseGenomicStudy(xpp); 30739 } else if (xpp.getName().equals("Goal")) { 30740 return parseGoal(xpp); 30741 } else if (xpp.getName().equals("GraphDefinition")) { 30742 return parseGraphDefinition(xpp); 30743 } else if (xpp.getName().equals("Group")) { 30744 return parseGroup(xpp); 30745 } else if (xpp.getName().equals("GuidanceResponse")) { 30746 return parseGuidanceResponse(xpp); 30747 } else if (xpp.getName().equals("HealthcareService")) { 30748 return parseHealthcareService(xpp); 30749 } else if (xpp.getName().equals("ImagingSelection")) { 30750 return parseImagingSelection(xpp); 30751 } else if (xpp.getName().equals("ImagingStudy")) { 30752 return parseImagingStudy(xpp); 30753 } else if (xpp.getName().equals("Immunization")) { 30754 return parseImmunization(xpp); 30755 } else if (xpp.getName().equals("ImmunizationEvaluation")) { 30756 return parseImmunizationEvaluation(xpp); 30757 } else if (xpp.getName().equals("ImmunizationRecommendation")) { 30758 return parseImmunizationRecommendation(xpp); 30759 } else if (xpp.getName().equals("ImplementationGuide")) { 30760 return parseImplementationGuide(xpp); 30761 } else if (xpp.getName().equals("Ingredient")) { 30762 return parseIngredient(xpp); 30763 } else if (xpp.getName().equals("InsurancePlan")) { 30764 return parseInsurancePlan(xpp); 30765 } else if (xpp.getName().equals("InventoryItem")) { 30766 return parseInventoryItem(xpp); 30767 } else if (xpp.getName().equals("InventoryReport")) { 30768 return parseInventoryReport(xpp); 30769 } else if (xpp.getName().equals("Invoice")) { 30770 return parseInvoice(xpp); 30771 } else if (xpp.getName().equals("Library")) { 30772 return parseLibrary(xpp); 30773 } else if (xpp.getName().equals("Linkage")) { 30774 return parseLinkage(xpp); 30775 } else if (xpp.getName().equals("List")) { 30776 return parseListResource(xpp); 30777 } else if (xpp.getName().equals("Location")) { 30778 return parseLocation(xpp); 30779 } else if (xpp.getName().equals("ManufacturedItemDefinition")) { 30780 return parseManufacturedItemDefinition(xpp); 30781 } else if (xpp.getName().equals("Measure")) { 30782 return parseMeasure(xpp); 30783 } else if (xpp.getName().equals("MeasureReport")) { 30784 return parseMeasureReport(xpp); 30785 } else if (xpp.getName().equals("Medication")) { 30786 return parseMedication(xpp); 30787 } else if (xpp.getName().equals("MedicationAdministration")) { 30788 return parseMedicationAdministration(xpp); 30789 } else if (xpp.getName().equals("MedicationDispense")) { 30790 return parseMedicationDispense(xpp); 30791 } else if (xpp.getName().equals("MedicationKnowledge")) { 30792 return parseMedicationKnowledge(xpp); 30793 } else if (xpp.getName().equals("MedicationRequest")) { 30794 return parseMedicationRequest(xpp); 30795 } else if (xpp.getName().equals("MedicationStatement")) { 30796 return parseMedicationStatement(xpp); 30797 } else if (xpp.getName().equals("MedicinalProductDefinition")) { 30798 return parseMedicinalProductDefinition(xpp); 30799 } else if (xpp.getName().equals("MessageDefinition")) { 30800 return parseMessageDefinition(xpp); 30801 } else if (xpp.getName().equals("MessageHeader")) { 30802 return parseMessageHeader(xpp); 30803 } else if (xpp.getName().equals("MolecularSequence")) { 30804 return parseMolecularSequence(xpp); 30805 } else if (xpp.getName().equals("NamingSystem")) { 30806 return parseNamingSystem(xpp); 30807 } else if (xpp.getName().equals("NutritionIntake")) { 30808 return parseNutritionIntake(xpp); 30809 } else if (xpp.getName().equals("NutritionOrder")) { 30810 return parseNutritionOrder(xpp); 30811 } else if (xpp.getName().equals("NutritionProduct")) { 30812 return parseNutritionProduct(xpp); 30813 } else if (xpp.getName().equals("Observation")) { 30814 return parseObservation(xpp); 30815 } else if (xpp.getName().equals("ObservationDefinition")) { 30816 return parseObservationDefinition(xpp); 30817 } else if (xpp.getName().equals("OperationDefinition")) { 30818 return parseOperationDefinition(xpp); 30819 } else if (xpp.getName().equals("OperationOutcome")) { 30820 return parseOperationOutcome(xpp); 30821 } else if (xpp.getName().equals("Organization")) { 30822 return parseOrganization(xpp); 30823 } else if (xpp.getName().equals("OrganizationAffiliation")) { 30824 return parseOrganizationAffiliation(xpp); 30825 } else if (xpp.getName().equals("PackagedProductDefinition")) { 30826 return parsePackagedProductDefinition(xpp); 30827 } else if (xpp.getName().equals("Parameters")) { 30828 return parseParameters(xpp); 30829 } else if (xpp.getName().equals("Patient")) { 30830 return parsePatient(xpp); 30831 } else if (xpp.getName().equals("PaymentNotice")) { 30832 return parsePaymentNotice(xpp); 30833 } else if (xpp.getName().equals("PaymentReconciliation")) { 30834 return parsePaymentReconciliation(xpp); 30835 } else if (xpp.getName().equals("Permission")) { 30836 return parsePermission(xpp); 30837 } else if (xpp.getName().equals("Person")) { 30838 return parsePerson(xpp); 30839 } else if (xpp.getName().equals("PlanDefinition")) { 30840 return parsePlanDefinition(xpp); 30841 } else if (xpp.getName().equals("Practitioner")) { 30842 return parsePractitioner(xpp); 30843 } else if (xpp.getName().equals("PractitionerRole")) { 30844 return parsePractitionerRole(xpp); 30845 } else if (xpp.getName().equals("Procedure")) { 30846 return parseProcedure(xpp); 30847 } else if (xpp.getName().equals("Provenance")) { 30848 return parseProvenance(xpp); 30849 } else if (xpp.getName().equals("Questionnaire")) { 30850 return parseQuestionnaire(xpp); 30851 } else if (xpp.getName().equals("QuestionnaireResponse")) { 30852 return parseQuestionnaireResponse(xpp); 30853 } else if (xpp.getName().equals("RegulatedAuthorization")) { 30854 return parseRegulatedAuthorization(xpp); 30855 } else if (xpp.getName().equals("RelatedPerson")) { 30856 return parseRelatedPerson(xpp); 30857 } else if (xpp.getName().equals("RequestOrchestration")) { 30858 return parseRequestOrchestration(xpp); 30859 } else if (xpp.getName().equals("Requirements")) { 30860 return parseRequirements(xpp); 30861 } else if (xpp.getName().equals("ResearchStudy")) { 30862 return parseResearchStudy(xpp); 30863 } else if (xpp.getName().equals("ResearchSubject")) { 30864 return parseResearchSubject(xpp); 30865 } else if (xpp.getName().equals("RiskAssessment")) { 30866 return parseRiskAssessment(xpp); 30867 } else if (xpp.getName().equals("Schedule")) { 30868 return parseSchedule(xpp); 30869 } else if (xpp.getName().equals("SearchParameter")) { 30870 return parseSearchParameter(xpp); 30871 } else if (xpp.getName().equals("ServiceRequest")) { 30872 return parseServiceRequest(xpp); 30873 } else if (xpp.getName().equals("Slot")) { 30874 return parseSlot(xpp); 30875 } else if (xpp.getName().equals("Specimen")) { 30876 return parseSpecimen(xpp); 30877 } else if (xpp.getName().equals("SpecimenDefinition")) { 30878 return parseSpecimenDefinition(xpp); 30879 } else if (xpp.getName().equals("StructureDefinition")) { 30880 return parseStructureDefinition(xpp); 30881 } else if (xpp.getName().equals("StructureMap")) { 30882 return parseStructureMap(xpp); 30883 } else if (xpp.getName().equals("Subscription")) { 30884 return parseSubscription(xpp); 30885 } else if (xpp.getName().equals("SubscriptionStatus")) { 30886 return parseSubscriptionStatus(xpp); 30887 } else if (xpp.getName().equals("SubscriptionTopic")) { 30888 return parseSubscriptionTopic(xpp); 30889 } else if (xpp.getName().equals("Substance")) { 30890 return parseSubstance(xpp); 30891 } else if (xpp.getName().equals("SubstanceDefinition")) { 30892 return parseSubstanceDefinition(xpp); 30893 } else if (xpp.getName().equals("SubstanceNucleicAcid")) { 30894 return parseSubstanceNucleicAcid(xpp); 30895 } else if (xpp.getName().equals("SubstancePolymer")) { 30896 return parseSubstancePolymer(xpp); 30897 } else if (xpp.getName().equals("SubstanceProtein")) { 30898 return parseSubstanceProtein(xpp); 30899 } else if (xpp.getName().equals("SubstanceReferenceInformation")) { 30900 return parseSubstanceReferenceInformation(xpp); 30901 } else if (xpp.getName().equals("SubstanceSourceMaterial")) { 30902 return parseSubstanceSourceMaterial(xpp); 30903 } else if (xpp.getName().equals("SupplyDelivery")) { 30904 return parseSupplyDelivery(xpp); 30905 } else if (xpp.getName().equals("SupplyRequest")) { 30906 return parseSupplyRequest(xpp); 30907 } else if (xpp.getName().equals("Task")) { 30908 return parseTask(xpp); 30909 } else if (xpp.getName().equals("TerminologyCapabilities")) { 30910 return parseTerminologyCapabilities(xpp); 30911 } else if (xpp.getName().equals("TestPlan")) { 30912 return parseTestPlan(xpp); 30913 } else if (xpp.getName().equals("TestReport")) { 30914 return parseTestReport(xpp); 30915 } else if (xpp.getName().equals("TestScript")) { 30916 return parseTestScript(xpp); 30917 } else if (xpp.getName().equals("Transport")) { 30918 return parseTransport(xpp); 30919 } else if (xpp.getName().equals("ValueSet")) { 30920 return parseValueSet(xpp); 30921 } else if (xpp.getName().equals("VerificationResult")) { 30922 return parseVerificationResult(xpp); 30923 } else if (xpp.getName().equals("VisionPrescription")) { 30924 return parseVisionPrescription(xpp); 30925 30926 } else { 30927 Resource resource = parseCustomResource(xpp); 30928 if (resource != null) { 30929 return resource; 30930 } else { 30931 throw new FHIRFormatError("Unknown resource type "+xpp.getName()+""); 30932 } 30933 } 30934 } 30935 30936 protected DataType parseType(String prefix, XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 30937 if (prefix == null) { 30938 throw new IOException("prefix == null!"); 30939 } else if (xpp == null) { 30940 throw new IOException("xpp == null!"); 30941 } else if (xpp.getName().equals(prefix+"Date")) { 30942 return parseDate(xpp); 30943 } else if (xpp.getName().equals(prefix+"DateTime")) { 30944 return parseDateTime(xpp); 30945 } else if (xpp.getName().equals(prefix+"Code")) { 30946 return parseCode(xpp); 30947 } else if (xpp.getName().equals(prefix+"String")) { 30948 return parseString(xpp); 30949 } else if (xpp.getName().equals(prefix+"Integer")) { 30950 return parseInteger(xpp); 30951 } else if (xpp.getName().equals(prefix+"Integer64")) { 30952 return parseInteger64(xpp); 30953 } else if (xpp.getName().equals(prefix+"Oid")) { 30954 return parseOid(xpp); 30955 } else if (xpp.getName().equals(prefix+"Canonical")) { 30956 return parseCanonical(xpp); 30957 } else if (xpp.getName().equals(prefix+"Uri")) { 30958 return parseUri(xpp); 30959 } else if (xpp.getName().equals(prefix+"Uuid")) { 30960 return parseUuid(xpp); 30961 } else if (xpp.getName().equals(prefix+"Url")) { 30962 return parseUrl(xpp); 30963 } else if (xpp.getName().equals(prefix+"Instant")) { 30964 return parseInstant(xpp); 30965 } else if (xpp.getName().equals(prefix+"Boolean")) { 30966 return parseBoolean(xpp); 30967 } else if (xpp.getName().equals(prefix+"Base64Binary")) { 30968 return parseBase64Binary(xpp); 30969 } else if (xpp.getName().equals(prefix+"UnsignedInt")) { 30970 return parseUnsignedInt(xpp); 30971 } else if (xpp.getName().equals(prefix+"Markdown")) { 30972 return parseMarkdown(xpp); 30973 } else if (xpp.getName().equals(prefix+"Time")) { 30974 return parseTime(xpp); 30975 } else if (xpp.getName().equals(prefix+"Id")) { 30976 return parseId(xpp); 30977 } else if (xpp.getName().equals(prefix+"PositiveInt")) { 30978 return parsePositiveInt(xpp); 30979 } else if (xpp.getName().equals(prefix+"Decimal")) { 30980 return parseDecimal(xpp); 30981 } else if (xpp.getName().equals(prefix+"Address")) { 30982 return parseAddress(xpp); 30983 } else if (xpp.getName().equals(prefix+"Age")) { 30984 return parseAge(xpp); 30985 } else if (xpp.getName().equals(prefix+"Annotation")) { 30986 return parseAnnotation(xpp); 30987 } else if (xpp.getName().equals(prefix+"Attachment")) { 30988 return parseAttachment(xpp); 30989 } else if (xpp.getName().equals(prefix+"Availability")) { 30990 return parseAvailability(xpp); 30991 } else if (xpp.getName().equals(prefix+"CodeableConcept")) { 30992 return parseCodeableConcept(xpp); 30993 } else if (xpp.getName().equals(prefix+"CodeableReference")) { 30994 return parseCodeableReference(xpp); 30995 } else if (xpp.getName().equals(prefix+"Coding")) { 30996 return parseCoding(xpp); 30997 } else if (xpp.getName().equals(prefix+"ContactDetail")) { 30998 return parseContactDetail(xpp); 30999 } else if (xpp.getName().equals(prefix+"ContactPoint")) { 31000 return parseContactPoint(xpp); 31001 } else if (xpp.getName().equals(prefix+"Contributor")) { 31002 return parseContributor(xpp); 31003 } else if (xpp.getName().equals(prefix+"Count")) { 31004 return parseCount(xpp); 31005 } else if (xpp.getName().equals(prefix+"DataRequirement")) { 31006 return parseDataRequirement(xpp); 31007 } else if (xpp.getName().equals(prefix+"Distance")) { 31008 return parseDistance(xpp); 31009 } else if (xpp.getName().equals(prefix+"Dosage")) { 31010 return parseDosage(xpp); 31011 } else if (xpp.getName().equals(prefix+"Duration")) { 31012 return parseDuration(xpp); 31013 } else if (xpp.getName().equals(prefix+"ElementDefinition")) { 31014 return parseElementDefinition(xpp); 31015 } else if (xpp.getName().equals(prefix+"Expression")) { 31016 return parseExpression(xpp); 31017 } else if (xpp.getName().equals(prefix+"ExtendedContactDetail")) { 31018 return parseExtendedContactDetail(xpp); 31019 } else if (xpp.getName().equals(prefix+"Extension")) { 31020 return parseExtension(xpp); 31021 } else if (xpp.getName().equals(prefix+"HumanName")) { 31022 return parseHumanName(xpp); 31023 } else if (xpp.getName().equals(prefix+"Identifier")) { 31024 return parseIdentifier(xpp); 31025 } else if (xpp.getName().equals(prefix+"MarketingStatus")) { 31026 return parseMarketingStatus(xpp); 31027 } else if (xpp.getName().equals(prefix+"Meta")) { 31028 return parseMeta(xpp); 31029 } else if (xpp.getName().equals(prefix+"MonetaryComponent")) { 31030 return parseMonetaryComponent(xpp); 31031 } else if (xpp.getName().equals(prefix+"Money")) { 31032 return parseMoney(xpp); 31033 } else if (xpp.getName().equals(prefix+"Narrative")) { 31034 return parseNarrative(xpp); 31035 } else if (xpp.getName().equals(prefix+"ParameterDefinition")) { 31036 return parseParameterDefinition(xpp); 31037 } else if (xpp.getName().equals(prefix+"Period")) { 31038 return parsePeriod(xpp); 31039 } else if (xpp.getName().equals(prefix+"ProductShelfLife")) { 31040 return parseProductShelfLife(xpp); 31041 } else if (xpp.getName().equals(prefix+"Quantity")) { 31042 return parseQuantity(xpp); 31043 } else if (xpp.getName().equals(prefix+"Range")) { 31044 return parseRange(xpp); 31045 } else if (xpp.getName().equals(prefix+"Ratio")) { 31046 return parseRatio(xpp); 31047 } else if (xpp.getName().equals(prefix+"RatioRange")) { 31048 return parseRatioRange(xpp); 31049 } else if (xpp.getName().equals(prefix+"Reference")) { 31050 return parseReference(xpp); 31051 } else if (xpp.getName().equals(prefix+"RelatedArtifact")) { 31052 return parseRelatedArtifact(xpp); 31053 } else if (xpp.getName().equals(prefix+"SampledData")) { 31054 return parseSampledData(xpp); 31055 } else if (xpp.getName().equals(prefix+"Signature")) { 31056 return parseSignature(xpp); 31057 } else if (xpp.getName().equals(prefix+"Timing")) { 31058 return parseTiming(xpp); 31059 } else if (xpp.getName().equals(prefix+"TriggerDefinition")) { 31060 return parseTriggerDefinition(xpp); 31061 } else if (xpp.getName().equals(prefix+"UsageContext")) { 31062 return parseUsageContext(xpp); 31063 } else if (xpp.getName().equals(prefix+"VirtualServiceDetail")) { 31064 return parseVirtualServiceDetail(xpp); 31065 31066 } else { 31067 throw new FHIRFormatError("Unknown type "+xpp.getName()); 31068 } 31069 } 31070 31071 protected DataType parseType(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 31072 if (type == null) { 31073 throw new IOException("type == null!"); 31074 } else if (xpp == null) { 31075 throw new IOException("xpp == null!"); 31076 } else if (type.equals("date")) { 31077 return parseDate(xpp); 31078 } else if (type.equals("dateTime")) { 31079 return parseDateTime(xpp); 31080 } else if (type.equals("code")) { 31081 return parseCode(xpp); 31082 } else if (type.equals("string")) { 31083 return parseString(xpp); 31084 } else if (type.equals("integer")) { 31085 return parseInteger(xpp); 31086 } else if (type.equals("integer64")) { 31087 return parseInteger64(xpp); 31088 } else if (type.equals("oid")) { 31089 return parseOid(xpp); 31090 } else if (type.equals("canonical")) { 31091 return parseCanonical(xpp); 31092 } else if (type.equals("uri")) { 31093 return parseUri(xpp); 31094 } else if (type.equals("uuid")) { 31095 return parseUuid(xpp); 31096 } else if (type.equals("url")) { 31097 return parseUrl(xpp); 31098 } else if (type.equals("instant")) { 31099 return parseInstant(xpp); 31100 } else if (type.equals("boolean")) { 31101 return parseBoolean(xpp); 31102 } else if (type.equals("base64Binary")) { 31103 return parseBase64Binary(xpp); 31104 } else if (type.equals("unsignedInt")) { 31105 return parseUnsignedInt(xpp); 31106 } else if (type.equals("markdown")) { 31107 return parseMarkdown(xpp); 31108 } else if (type.equals("time")) { 31109 return parseTime(xpp); 31110 } else if (type.equals("id")) { 31111 return parseId(xpp); 31112 } else if (type.equals("positiveInt")) { 31113 return parsePositiveInt(xpp); 31114 } else if (type.equals("decimal")) { 31115 return parseDecimal(xpp); 31116 } else if (type.equals("Address")) { 31117 return parseAddress(xpp); 31118 } else if (type.equals("Age")) { 31119 return parseAge(xpp); 31120 } else if (type.equals("Annotation")) { 31121 return parseAnnotation(xpp); 31122 } else if (type.equals("Attachment")) { 31123 return parseAttachment(xpp); 31124 } else if (type.equals("Availability")) { 31125 return parseAvailability(xpp); 31126 } else if (type.equals("CodeableConcept")) { 31127 return parseCodeableConcept(xpp); 31128 } else if (type.equals("CodeableReference")) { 31129 return parseCodeableReference(xpp); 31130 } else if (type.equals("Coding")) { 31131 return parseCoding(xpp); 31132 } else if (type.equals("ContactDetail")) { 31133 return parseContactDetail(xpp); 31134 } else if (type.equals("ContactPoint")) { 31135 return parseContactPoint(xpp); 31136 } else if (type.equals("Contributor")) { 31137 return parseContributor(xpp); 31138 } else if (type.equals("Count")) { 31139 return parseCount(xpp); 31140 } else if (type.equals("DataRequirement")) { 31141 return parseDataRequirement(xpp); 31142 } else if (type.equals("Distance")) { 31143 return parseDistance(xpp); 31144 } else if (type.equals("Dosage")) { 31145 return parseDosage(xpp); 31146 } else if (type.equals("Duration")) { 31147 return parseDuration(xpp); 31148 } else if (type.equals("ElementDefinition")) { 31149 return parseElementDefinition(xpp); 31150 } else if (type.equals("Expression")) { 31151 return parseExpression(xpp); 31152 } else if (type.equals("ExtendedContactDetail")) { 31153 return parseExtendedContactDetail(xpp); 31154 } else if (type.equals("Extension")) { 31155 return parseExtension(xpp); 31156 } else if (type.equals("HumanName")) { 31157 return parseHumanName(xpp); 31158 } else if (type.equals("Identifier")) { 31159 return parseIdentifier(xpp); 31160 } else if (type.equals("MarketingStatus")) { 31161 return parseMarketingStatus(xpp); 31162 } else if (type.equals("Meta")) { 31163 return parseMeta(xpp); 31164 } else if (type.equals("MonetaryComponent")) { 31165 return parseMonetaryComponent(xpp); 31166 } else if (type.equals("Money")) { 31167 return parseMoney(xpp); 31168 } else if (type.equals("Narrative")) { 31169 return parseNarrative(xpp); 31170 } else if (type.equals("ParameterDefinition")) { 31171 return parseParameterDefinition(xpp); 31172 } else if (type.equals("Period")) { 31173 return parsePeriod(xpp); 31174 } else if (type.equals("ProductShelfLife")) { 31175 return parseProductShelfLife(xpp); 31176 } else if (type.equals("Quantity")) { 31177 return parseQuantity(xpp); 31178 } else if (type.equals("Range")) { 31179 return parseRange(xpp); 31180 } else if (type.equals("Ratio")) { 31181 return parseRatio(xpp); 31182 } else if (type.equals("RatioRange")) { 31183 return parseRatioRange(xpp); 31184 } else if (type.equals("Reference")) { 31185 return parseReference(xpp); 31186 } else if (type.equals("RelatedArtifact")) { 31187 return parseRelatedArtifact(xpp); 31188 } else if (type.equals("SampledData")) { 31189 return parseSampledData(xpp); 31190 } else if (type.equals("Signature")) { 31191 return parseSignature(xpp); 31192 } else if (type.equals("Timing")) { 31193 return parseTiming(xpp); 31194 } else if (type.equals("TriggerDefinition")) { 31195 return parseTriggerDefinition(xpp); 31196 } else if (type.equals("UsageContext")) { 31197 return parseUsageContext(xpp); 31198 } else if (type.equals("VirtualServiceDetail")) { 31199 return parseVirtualServiceDetail(xpp); 31200 31201 } else { 31202 throw new FHIRFormatError("Unknown type "+type); 31203 } 31204 } 31205 31206 public Base parseFragment(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 31207 if (type == null) { 31208 throw new IOException("type == null!"); 31209 } else if (xpp == null) { 31210 throw new IOException("xpp == null!"); 31211 } else if (type.equals("Address")) { 31212 return parseAddress(xpp); 31213 } else if (type.equals("Age")) { 31214 return parseAge(xpp); 31215 } else if (type.equals("Annotation")) { 31216 return parseAnnotation(xpp); 31217 } else if (type.equals("Attachment")) { 31218 return parseAttachment(xpp); 31219 } else if (type.equals("Availability")) { 31220 return parseAvailability(xpp); 31221 } else if (type.equals("CodeableConcept")) { 31222 return parseCodeableConcept(xpp); 31223 } else if (type.equals("CodeableReference")) { 31224 return parseCodeableReference(xpp); 31225 } else if (type.equals("Coding")) { 31226 return parseCoding(xpp); 31227 } else if (type.equals("ContactDetail")) { 31228 return parseContactDetail(xpp); 31229 } else if (type.equals("ContactPoint")) { 31230 return parseContactPoint(xpp); 31231 } else if (type.equals("Contributor")) { 31232 return parseContributor(xpp); 31233 } else if (type.equals("Count")) { 31234 return parseCount(xpp); 31235 } else if (type.equals("DataRequirement")) { 31236 return parseDataRequirement(xpp); 31237 } else if (type.equals("Distance")) { 31238 return parseDistance(xpp); 31239 } else if (type.equals("Dosage")) { 31240 return parseDosage(xpp); 31241 } else if (type.equals("Duration")) { 31242 return parseDuration(xpp); 31243 } else if (type.equals("ElementDefinition")) { 31244 return parseElementDefinition(xpp); 31245 } else if (type.equals("Expression")) { 31246 return parseExpression(xpp); 31247 } else if (type.equals("ExtendedContactDetail")) { 31248 return parseExtendedContactDetail(xpp); 31249 } else if (type.equals("Extension")) { 31250 return parseExtension(xpp); 31251 } else if (type.equals("HumanName")) { 31252 return parseHumanName(xpp); 31253 } else if (type.equals("Identifier")) { 31254 return parseIdentifier(xpp); 31255 } else if (type.equals("MarketingStatus")) { 31256 return parseMarketingStatus(xpp); 31257 } else if (type.equals("Meta")) { 31258 return parseMeta(xpp); 31259 } else if (type.equals("MonetaryComponent")) { 31260 return parseMonetaryComponent(xpp); 31261 } else if (type.equals("Money")) { 31262 return parseMoney(xpp); 31263 } else if (type.equals("Narrative")) { 31264 return parseNarrative(xpp); 31265 } else if (type.equals("ParameterDefinition")) { 31266 return parseParameterDefinition(xpp); 31267 } else if (type.equals("Period")) { 31268 return parsePeriod(xpp); 31269 } else if (type.equals("ProductShelfLife")) { 31270 return parseProductShelfLife(xpp); 31271 } else if (type.equals("Quantity")) { 31272 return parseQuantity(xpp); 31273 } else if (type.equals("Range")) { 31274 return parseRange(xpp); 31275 } else if (type.equals("Ratio")) { 31276 return parseRatio(xpp); 31277 } else if (type.equals("RatioRange")) { 31278 return parseRatioRange(xpp); 31279 } else if (type.equals("Reference")) { 31280 return parseReference(xpp); 31281 } else if (type.equals("RelatedArtifact")) { 31282 return parseRelatedArtifact(xpp); 31283 } else if (type.equals("SampledData")) { 31284 return parseSampledData(xpp); 31285 } else if (type.equals("Signature")) { 31286 return parseSignature(xpp); 31287 } else if (type.equals("Timing")) { 31288 return parseTiming(xpp); 31289 } else if (type.equals("TriggerDefinition")) { 31290 return parseTriggerDefinition(xpp); 31291 } else if (type.equals("UsageContext")) { 31292 return parseUsageContext(xpp); 31293 } else if (type.equals("VirtualServiceDetail")) { 31294 return parseVirtualServiceDetail(xpp); 31295 } else if (type.equals("Account")) { 31296 return parseAccount(xpp); 31297 } else if (type.equals("ActivityDefinition")) { 31298 return parseActivityDefinition(xpp); 31299 } else if (type.equals("ActorDefinition")) { 31300 return parseActorDefinition(xpp); 31301 } else if (type.equals("AdministrableProductDefinition")) { 31302 return parseAdministrableProductDefinition(xpp); 31303 } else if (type.equals("AdverseEvent")) { 31304 return parseAdverseEvent(xpp); 31305 } else if (type.equals("AllergyIntolerance")) { 31306 return parseAllergyIntolerance(xpp); 31307 } else if (type.equals("Appointment")) { 31308 return parseAppointment(xpp); 31309 } else if (type.equals("AppointmentResponse")) { 31310 return parseAppointmentResponse(xpp); 31311 } else if (type.equals("ArtifactAssessment")) { 31312 return parseArtifactAssessment(xpp); 31313 } else if (type.equals("AuditEvent")) { 31314 return parseAuditEvent(xpp); 31315 } else if (type.equals("Basic")) { 31316 return parseBasic(xpp); 31317 } else if (type.equals("Binary")) { 31318 return parseBinary(xpp); 31319 } else if (type.equals("BiologicallyDerivedProduct")) { 31320 return parseBiologicallyDerivedProduct(xpp); 31321 } else if (type.equals("BiologicallyDerivedProductDispense")) { 31322 return parseBiologicallyDerivedProductDispense(xpp); 31323 } else if (type.equals("BodyStructure")) { 31324 return parseBodyStructure(xpp); 31325 } else if (type.equals("Bundle")) { 31326 return parseBundle(xpp); 31327 } else if (type.equals("CapabilityStatement")) { 31328 return parseCapabilityStatement(xpp); 31329 } else if (type.equals("CarePlan")) { 31330 return parseCarePlan(xpp); 31331 } else if (type.equals("CareTeam")) { 31332 return parseCareTeam(xpp); 31333 } else if (type.equals("ChargeItem")) { 31334 return parseChargeItem(xpp); 31335 } else if (type.equals("ChargeItemDefinition")) { 31336 return parseChargeItemDefinition(xpp); 31337 } else if (type.equals("Citation")) { 31338 return parseCitation(xpp); 31339 } else if (type.equals("Claim")) { 31340 return parseClaim(xpp); 31341 } else if (type.equals("ClaimResponse")) { 31342 return parseClaimResponse(xpp); 31343 } else if (type.equals("ClinicalImpression")) { 31344 return parseClinicalImpression(xpp); 31345 } else if (type.equals("ClinicalUseDefinition")) { 31346 return parseClinicalUseDefinition(xpp); 31347 } else if (type.equals("CodeSystem")) { 31348 return parseCodeSystem(xpp); 31349 } else if (type.equals("Communication")) { 31350 return parseCommunication(xpp); 31351 } else if (type.equals("CommunicationRequest")) { 31352 return parseCommunicationRequest(xpp); 31353 } else if (type.equals("CompartmentDefinition")) { 31354 return parseCompartmentDefinition(xpp); 31355 } else if (type.equals("Composition")) { 31356 return parseComposition(xpp); 31357 } else if (type.equals("ConceptMap")) { 31358 return parseConceptMap(xpp); 31359 } else if (type.equals("Condition")) { 31360 return parseCondition(xpp); 31361 } else if (type.equals("ConditionDefinition")) { 31362 return parseConditionDefinition(xpp); 31363 } else if (type.equals("Consent")) { 31364 return parseConsent(xpp); 31365 } else if (type.equals("Contract")) { 31366 return parseContract(xpp); 31367 } else if (type.equals("Coverage")) { 31368 return parseCoverage(xpp); 31369 } else if (type.equals("CoverageEligibilityRequest")) { 31370 return parseCoverageEligibilityRequest(xpp); 31371 } else if (type.equals("CoverageEligibilityResponse")) { 31372 return parseCoverageEligibilityResponse(xpp); 31373 } else if (type.equals("DetectedIssue")) { 31374 return parseDetectedIssue(xpp); 31375 } else if (type.equals("Device")) { 31376 return parseDevice(xpp); 31377 } else if (type.equals("DeviceAssociation")) { 31378 return parseDeviceAssociation(xpp); 31379 } else if (type.equals("DeviceDefinition")) { 31380 return parseDeviceDefinition(xpp); 31381 } else if (type.equals("DeviceDispense")) { 31382 return parseDeviceDispense(xpp); 31383 } else if (type.equals("DeviceMetric")) { 31384 return parseDeviceMetric(xpp); 31385 } else if (type.equals("DeviceRequest")) { 31386 return parseDeviceRequest(xpp); 31387 } else if (type.equals("DeviceUsage")) { 31388 return parseDeviceUsage(xpp); 31389 } else if (type.equals("DiagnosticReport")) { 31390 return parseDiagnosticReport(xpp); 31391 } else if (type.equals("DocumentReference")) { 31392 return parseDocumentReference(xpp); 31393 } else if (type.equals("Encounter")) { 31394 return parseEncounter(xpp); 31395 } else if (type.equals("EncounterHistory")) { 31396 return parseEncounterHistory(xpp); 31397 } else if (type.equals("Endpoint")) { 31398 return parseEndpoint(xpp); 31399 } else if (type.equals("EnrollmentRequest")) { 31400 return parseEnrollmentRequest(xpp); 31401 } else if (type.equals("EnrollmentResponse")) { 31402 return parseEnrollmentResponse(xpp); 31403 } else if (type.equals("EpisodeOfCare")) { 31404 return parseEpisodeOfCare(xpp); 31405 } else if (type.equals("EventDefinition")) { 31406 return parseEventDefinition(xpp); 31407 } else if (type.equals("Evidence")) { 31408 return parseEvidence(xpp); 31409 } else if (type.equals("EvidenceReport")) { 31410 return parseEvidenceReport(xpp); 31411 } else if (type.equals("EvidenceVariable")) { 31412 return parseEvidenceVariable(xpp); 31413 } else if (type.equals("ExampleScenario")) { 31414 return parseExampleScenario(xpp); 31415 } else if (type.equals("ExplanationOfBenefit")) { 31416 return parseExplanationOfBenefit(xpp); 31417 } else if (type.equals("FamilyMemberHistory")) { 31418 return parseFamilyMemberHistory(xpp); 31419 } else if (type.equals("Flag")) { 31420 return parseFlag(xpp); 31421 } else if (type.equals("FormularyItem")) { 31422 return parseFormularyItem(xpp); 31423 } else if (type.equals("GenomicStudy")) { 31424 return parseGenomicStudy(xpp); 31425 } else if (type.equals("Goal")) { 31426 return parseGoal(xpp); 31427 } else if (type.equals("GraphDefinition")) { 31428 return parseGraphDefinition(xpp); 31429 } else if (type.equals("Group")) { 31430 return parseGroup(xpp); 31431 } else if (type.equals("GuidanceResponse")) { 31432 return parseGuidanceResponse(xpp); 31433 } else if (type.equals("HealthcareService")) { 31434 return parseHealthcareService(xpp); 31435 } else if (type.equals("ImagingSelection")) { 31436 return parseImagingSelection(xpp); 31437 } else if (type.equals("ImagingStudy")) { 31438 return parseImagingStudy(xpp); 31439 } else if (type.equals("Immunization")) { 31440 return parseImmunization(xpp); 31441 } else if (type.equals("ImmunizationEvaluation")) { 31442 return parseImmunizationEvaluation(xpp); 31443 } else if (type.equals("ImmunizationRecommendation")) { 31444 return parseImmunizationRecommendation(xpp); 31445 } else if (type.equals("ImplementationGuide")) { 31446 return parseImplementationGuide(xpp); 31447 } else if (type.equals("Ingredient")) { 31448 return parseIngredient(xpp); 31449 } else if (type.equals("InsurancePlan")) { 31450 return parseInsurancePlan(xpp); 31451 } else if (type.equals("InventoryItem")) { 31452 return parseInventoryItem(xpp); 31453 } else if (type.equals("InventoryReport")) { 31454 return parseInventoryReport(xpp); 31455 } else if (type.equals("Invoice")) { 31456 return parseInvoice(xpp); 31457 } else if (type.equals("Library")) { 31458 return parseLibrary(xpp); 31459 } else if (type.equals("Linkage")) { 31460 return parseLinkage(xpp); 31461 } else if (type.equals("List")) { 31462 return parseListResource(xpp); 31463 } else if (type.equals("Location")) { 31464 return parseLocation(xpp); 31465 } else if (type.equals("ManufacturedItemDefinition")) { 31466 return parseManufacturedItemDefinition(xpp); 31467 } else if (type.equals("Measure")) { 31468 return parseMeasure(xpp); 31469 } else if (type.equals("MeasureReport")) { 31470 return parseMeasureReport(xpp); 31471 } else if (type.equals("Medication")) { 31472 return parseMedication(xpp); 31473 } else if (type.equals("MedicationAdministration")) { 31474 return parseMedicationAdministration(xpp); 31475 } else if (type.equals("MedicationDispense")) { 31476 return parseMedicationDispense(xpp); 31477 } else if (type.equals("MedicationKnowledge")) { 31478 return parseMedicationKnowledge(xpp); 31479 } else if (type.equals("MedicationRequest")) { 31480 return parseMedicationRequest(xpp); 31481 } else if (type.equals("MedicationStatement")) { 31482 return parseMedicationStatement(xpp); 31483 } else if (type.equals("MedicinalProductDefinition")) { 31484 return parseMedicinalProductDefinition(xpp); 31485 } else if (type.equals("MessageDefinition")) { 31486 return parseMessageDefinition(xpp); 31487 } else if (type.equals("MessageHeader")) { 31488 return parseMessageHeader(xpp); 31489 } else if (type.equals("MolecularSequence")) { 31490 return parseMolecularSequence(xpp); 31491 } else if (type.equals("NamingSystem")) { 31492 return parseNamingSystem(xpp); 31493 } else if (type.equals("NutritionIntake")) { 31494 return parseNutritionIntake(xpp); 31495 } else if (type.equals("NutritionOrder")) { 31496 return parseNutritionOrder(xpp); 31497 } else if (type.equals("NutritionProduct")) { 31498 return parseNutritionProduct(xpp); 31499 } else if (type.equals("Observation")) { 31500 return parseObservation(xpp); 31501 } else if (type.equals("ObservationDefinition")) { 31502 return parseObservationDefinition(xpp); 31503 } else if (type.equals("OperationDefinition")) { 31504 return parseOperationDefinition(xpp); 31505 } else if (type.equals("OperationOutcome")) { 31506 return parseOperationOutcome(xpp); 31507 } else if (type.equals("Organization")) { 31508 return parseOrganization(xpp); 31509 } else if (type.equals("OrganizationAffiliation")) { 31510 return parseOrganizationAffiliation(xpp); 31511 } else if (type.equals("PackagedProductDefinition")) { 31512 return parsePackagedProductDefinition(xpp); 31513 } else if (type.equals("Parameters")) { 31514 return parseParameters(xpp); 31515 } else if (type.equals("Patient")) { 31516 return parsePatient(xpp); 31517 } else if (type.equals("PaymentNotice")) { 31518 return parsePaymentNotice(xpp); 31519 } else if (type.equals("PaymentReconciliation")) { 31520 return parsePaymentReconciliation(xpp); 31521 } else if (type.equals("Permission")) { 31522 return parsePermission(xpp); 31523 } else if (type.equals("Person")) { 31524 return parsePerson(xpp); 31525 } else if (type.equals("PlanDefinition")) { 31526 return parsePlanDefinition(xpp); 31527 } else if (type.equals("Practitioner")) { 31528 return parsePractitioner(xpp); 31529 } else if (type.equals("PractitionerRole")) { 31530 return parsePractitionerRole(xpp); 31531 } else if (type.equals("Procedure")) { 31532 return parseProcedure(xpp); 31533 } else if (type.equals("Provenance")) { 31534 return parseProvenance(xpp); 31535 } else if (type.equals("Questionnaire")) { 31536 return parseQuestionnaire(xpp); 31537 } else if (type.equals("QuestionnaireResponse")) { 31538 return parseQuestionnaireResponse(xpp); 31539 } else if (type.equals("RegulatedAuthorization")) { 31540 return parseRegulatedAuthorization(xpp); 31541 } else if (type.equals("RelatedPerson")) { 31542 return parseRelatedPerson(xpp); 31543 } else if (type.equals("RequestOrchestration")) { 31544 return parseRequestOrchestration(xpp); 31545 } else if (type.equals("Requirements")) { 31546 return parseRequirements(xpp); 31547 } else if (type.equals("ResearchStudy")) { 31548 return parseResearchStudy(xpp); 31549 } else if (type.equals("ResearchSubject")) { 31550 return parseResearchSubject(xpp); 31551 } else if (type.equals("RiskAssessment")) { 31552 return parseRiskAssessment(xpp); 31553 } else if (type.equals("Schedule")) { 31554 return parseSchedule(xpp); 31555 } else if (type.equals("SearchParameter")) { 31556 return parseSearchParameter(xpp); 31557 } else if (type.equals("ServiceRequest")) { 31558 return parseServiceRequest(xpp); 31559 } else if (type.equals("Slot")) { 31560 return parseSlot(xpp); 31561 } else if (type.equals("Specimen")) { 31562 return parseSpecimen(xpp); 31563 } else if (type.equals("SpecimenDefinition")) { 31564 return parseSpecimenDefinition(xpp); 31565 } else if (type.equals("StructureDefinition")) { 31566 return parseStructureDefinition(xpp); 31567 } else if (type.equals("StructureMap")) { 31568 return parseStructureMap(xpp); 31569 } else if (type.equals("Subscription")) { 31570 return parseSubscription(xpp); 31571 } else if (type.equals("SubscriptionStatus")) { 31572 return parseSubscriptionStatus(xpp); 31573 } else if (type.equals("SubscriptionTopic")) { 31574 return parseSubscriptionTopic(xpp); 31575 } else if (type.equals("Substance")) { 31576 return parseSubstance(xpp); 31577 } else if (type.equals("SubstanceDefinition")) { 31578 return parseSubstanceDefinition(xpp); 31579 } else if (type.equals("SubstanceNucleicAcid")) { 31580 return parseSubstanceNucleicAcid(xpp); 31581 } else if (type.equals("SubstancePolymer")) { 31582 return parseSubstancePolymer(xpp); 31583 } else if (type.equals("SubstanceProtein")) { 31584 return parseSubstanceProtein(xpp); 31585 } else if (type.equals("SubstanceReferenceInformation")) { 31586 return parseSubstanceReferenceInformation(xpp); 31587 } else if (type.equals("SubstanceSourceMaterial")) { 31588 return parseSubstanceSourceMaterial(xpp); 31589 } else if (type.equals("SupplyDelivery")) { 31590 return parseSupplyDelivery(xpp); 31591 } else if (type.equals("SupplyRequest")) { 31592 return parseSupplyRequest(xpp); 31593 } else if (type.equals("Task")) { 31594 return parseTask(xpp); 31595 } else if (type.equals("TerminologyCapabilities")) { 31596 return parseTerminologyCapabilities(xpp); 31597 } else if (type.equals("TestPlan")) { 31598 return parseTestPlan(xpp); 31599 } else if (type.equals("TestReport")) { 31600 return parseTestReport(xpp); 31601 } else if (type.equals("TestScript")) { 31602 return parseTestScript(xpp); 31603 } else if (type.equals("Transport")) { 31604 return parseTransport(xpp); 31605 } else if (type.equals("ValueSet")) { 31606 return parseValueSet(xpp); 31607 } else if (type.equals("VerificationResult")) { 31608 return parseVerificationResult(xpp); 31609 } else if (type.equals("VisionPrescription")) { 31610 return parseVisionPrescription(xpp); 31611 31612 } else if (type.equals("date")) { 31613 return parseDate(xpp); 31614 } else if (type.equals("dateTime")) { 31615 return parseDateTime(xpp); 31616 } else if (type.equals("code")) { 31617 return parseCode(xpp); 31618 } else if (type.equals("string")) { 31619 return parseString(xpp); 31620 } else if (type.equals("integer")) { 31621 return parseInteger(xpp); 31622 } else if (type.equals("integer64")) { 31623 return parseInteger64(xpp); 31624 } else if (type.equals("oid")) { 31625 return parseOid(xpp); 31626 } else if (type.equals("canonical")) { 31627 return parseCanonical(xpp); 31628 } else if (type.equals("uri")) { 31629 return parseUri(xpp); 31630 } else if (type.equals("uuid")) { 31631 return parseUuid(xpp); 31632 } else if (type.equals("url")) { 31633 return parseUrl(xpp); 31634 } else if (type.equals("instant")) { 31635 return parseInstant(xpp); 31636 } else if (type.equals("boolean")) { 31637 return parseBoolean(xpp); 31638 } else if (type.equals("base64Binary")) { 31639 return parseBase64Binary(xpp); 31640 } else if (type.equals("unsignedInt")) { 31641 return parseUnsignedInt(xpp); 31642 } else if (type.equals("markdown")) { 31643 return parseMarkdown(xpp); 31644 } else if (type.equals("time")) { 31645 return parseTime(xpp); 31646 } else if (type.equals("id")) { 31647 return parseId(xpp); 31648 } else if (type.equals("positiveInt")) { 31649 return parsePositiveInt(xpp); 31650 } else if (type.equals("decimal")) { 31651 return parseDecimal(xpp); 31652 } else { 31653 throw new FHIRFormatError("Unknown type "+type); 31654 } 31655 } 31656 31657 private boolean nameIsTypeName(XmlPullParser xpp, String prefix) throws IOException { 31658 if (prefix == null) { 31659 throw new IOException("prefix == null!"); 31660 } else if (xpp == null) { 31661 throw new IOException("xpp == null!"); 31662 } else if (xpp.getName().equals(prefix+"Address")) { 31663 return true; 31664 } else if (xpp.getName().equals(prefix+"Age")) { 31665 return true; 31666 } else if (xpp.getName().equals(prefix+"Annotation")) { 31667 return true; 31668 } else if (xpp.getName().equals(prefix+"Attachment")) { 31669 return true; 31670 } else if (xpp.getName().equals(prefix+"Availability")) { 31671 return true; 31672 } else if (xpp.getName().equals(prefix+"CodeableConcept")) { 31673 return true; 31674 } else if (xpp.getName().equals(prefix+"CodeableReference")) { 31675 return true; 31676 } else if (xpp.getName().equals(prefix+"Coding")) { 31677 return true; 31678 } else if (xpp.getName().equals(prefix+"ContactDetail")) { 31679 return true; 31680 } else if (xpp.getName().equals(prefix+"ContactPoint")) { 31681 return true; 31682 } else if (xpp.getName().equals(prefix+"Contributor")) { 31683 return true; 31684 } else if (xpp.getName().equals(prefix+"Count")) { 31685 return true; 31686 } else if (xpp.getName().equals(prefix+"DataRequirement")) { 31687 return true; 31688 } else if (xpp.getName().equals(prefix+"Distance")) { 31689 return true; 31690 } else if (xpp.getName().equals(prefix+"Dosage")) { 31691 return true; 31692 } else if (xpp.getName().equals(prefix+"Duration")) { 31693 return true; 31694 } else if (xpp.getName().equals(prefix+"ElementDefinition")) { 31695 return true; 31696 } else if (xpp.getName().equals(prefix+"Expression")) { 31697 return true; 31698 } else if (xpp.getName().equals(prefix+"ExtendedContactDetail")) { 31699 return true; 31700 } else if (xpp.getName().equals(prefix+"Extension")) { 31701 return true; 31702 } else if (xpp.getName().equals(prefix+"HumanName")) { 31703 return true; 31704 } else if (xpp.getName().equals(prefix+"Identifier")) { 31705 return true; 31706 } else if (xpp.getName().equals(prefix+"MarketingStatus")) { 31707 return true; 31708 } else if (xpp.getName().equals(prefix+"Meta")) { 31709 return true; 31710 } else if (xpp.getName().equals(prefix+"MonetaryComponent")) { 31711 return true; 31712 } else if (xpp.getName().equals(prefix+"Money")) { 31713 return true; 31714 } else if (xpp.getName().equals(prefix+"Narrative")) { 31715 return true; 31716 } else if (xpp.getName().equals(prefix+"ParameterDefinition")) { 31717 return true; 31718 } else if (xpp.getName().equals(prefix+"Period")) { 31719 return true; 31720 } else if (xpp.getName().equals(prefix+"ProductShelfLife")) { 31721 return true; 31722 } else if (xpp.getName().equals(prefix+"Quantity")) { 31723 return true; 31724 } else if (xpp.getName().equals(prefix+"Range")) { 31725 return true; 31726 } else if (xpp.getName().equals(prefix+"Ratio")) { 31727 return true; 31728 } else if (xpp.getName().equals(prefix+"RatioRange")) { 31729 return true; 31730 } else if (xpp.getName().equals(prefix+"Reference")) { 31731 return true; 31732 } else if (xpp.getName().equals(prefix+"RelatedArtifact")) { 31733 return true; 31734 } else if (xpp.getName().equals(prefix+"SampledData")) { 31735 return true; 31736 } else if (xpp.getName().equals(prefix+"Signature")) { 31737 return true; 31738 } else if (xpp.getName().equals(prefix+"Timing")) { 31739 return true; 31740 } else if (xpp.getName().equals(prefix+"TriggerDefinition")) { 31741 return true; 31742 } else if (xpp.getName().equals(prefix+"UsageContext")) { 31743 return true; 31744 } else if (xpp.getName().equals(prefix+"VirtualServiceDetail")) { 31745 return true; 31746 } else if (xpp.getName().equals(prefix+"Account")) { 31747 return true; 31748 } else if (xpp.getName().equals(prefix+"ActivityDefinition")) { 31749 return true; 31750 } else if (xpp.getName().equals(prefix+"ActorDefinition")) { 31751 return true; 31752 } else if (xpp.getName().equals(prefix+"AdministrableProductDefinition")) { 31753 return true; 31754 } else if (xpp.getName().equals(prefix+"AdverseEvent")) { 31755 return true; 31756 } else if (xpp.getName().equals(prefix+"AllergyIntolerance")) { 31757 return true; 31758 } else if (xpp.getName().equals(prefix+"Appointment")) { 31759 return true; 31760 } else if (xpp.getName().equals(prefix+"AppointmentResponse")) { 31761 return true; 31762 } else if (xpp.getName().equals(prefix+"ArtifactAssessment")) { 31763 return true; 31764 } else if (xpp.getName().equals(prefix+"AuditEvent")) { 31765 return true; 31766 } else if (xpp.getName().equals(prefix+"Basic")) { 31767 return true; 31768 } else if (xpp.getName().equals(prefix+"Binary")) { 31769 return true; 31770 } else if (xpp.getName().equals(prefix+"BiologicallyDerivedProduct")) { 31771 return true; 31772 } else if (xpp.getName().equals(prefix+"BiologicallyDerivedProductDispense")) { 31773 return true; 31774 } else if (xpp.getName().equals(prefix+"BodyStructure")) { 31775 return true; 31776 } else if (xpp.getName().equals(prefix+"Bundle")) { 31777 return true; 31778 } else if (xpp.getName().equals(prefix+"CapabilityStatement")) { 31779 return true; 31780 } else if (xpp.getName().equals(prefix+"CarePlan")) { 31781 return true; 31782 } else if (xpp.getName().equals(prefix+"CareTeam")) { 31783 return true; 31784 } else if (xpp.getName().equals(prefix+"ChargeItem")) { 31785 return true; 31786 } else if (xpp.getName().equals(prefix+"ChargeItemDefinition")) { 31787 return true; 31788 } else if (xpp.getName().equals(prefix+"Citation")) { 31789 return true; 31790 } else if (xpp.getName().equals(prefix+"Claim")) { 31791 return true; 31792 } else if (xpp.getName().equals(prefix+"ClaimResponse")) { 31793 return true; 31794 } else if (xpp.getName().equals(prefix+"ClinicalImpression")) { 31795 return true; 31796 } else if (xpp.getName().equals(prefix+"ClinicalUseDefinition")) { 31797 return true; 31798 } else if (xpp.getName().equals(prefix+"CodeSystem")) { 31799 return true; 31800 } else if (xpp.getName().equals(prefix+"Communication")) { 31801 return true; 31802 } else if (xpp.getName().equals(prefix+"CommunicationRequest")) { 31803 return true; 31804 } else if (xpp.getName().equals(prefix+"CompartmentDefinition")) { 31805 return true; 31806 } else if (xpp.getName().equals(prefix+"Composition")) { 31807 return true; 31808 } else if (xpp.getName().equals(prefix+"ConceptMap")) { 31809 return true; 31810 } else if (xpp.getName().equals(prefix+"Condition")) { 31811 return true; 31812 } else if (xpp.getName().equals(prefix+"ConditionDefinition")) { 31813 return true; 31814 } else if (xpp.getName().equals(prefix+"Consent")) { 31815 return true; 31816 } else if (xpp.getName().equals(prefix+"Contract")) { 31817 return true; 31818 } else if (xpp.getName().equals(prefix+"Coverage")) { 31819 return true; 31820 } else if (xpp.getName().equals(prefix+"CoverageEligibilityRequest")) { 31821 return true; 31822 } else if (xpp.getName().equals(prefix+"CoverageEligibilityResponse")) { 31823 return true; 31824 } else if (xpp.getName().equals(prefix+"DetectedIssue")) { 31825 return true; 31826 } else if (xpp.getName().equals(prefix+"Device")) { 31827 return true; 31828 } else if (xpp.getName().equals(prefix+"DeviceAssociation")) { 31829 return true; 31830 } else if (xpp.getName().equals(prefix+"DeviceDefinition")) { 31831 return true; 31832 } else if (xpp.getName().equals(prefix+"DeviceDispense")) { 31833 return true; 31834 } else if (xpp.getName().equals(prefix+"DeviceMetric")) { 31835 return true; 31836 } else if (xpp.getName().equals(prefix+"DeviceRequest")) { 31837 return true; 31838 } else if (xpp.getName().equals(prefix+"DeviceUsage")) { 31839 return true; 31840 } else if (xpp.getName().equals(prefix+"DiagnosticReport")) { 31841 return true; 31842 } else if (xpp.getName().equals(prefix+"DocumentReference")) { 31843 return true; 31844 } else if (xpp.getName().equals(prefix+"Encounter")) { 31845 return true; 31846 } else if (xpp.getName().equals(prefix+"EncounterHistory")) { 31847 return true; 31848 } else if (xpp.getName().equals(prefix+"Endpoint")) { 31849 return true; 31850 } else if (xpp.getName().equals(prefix+"EnrollmentRequest")) { 31851 return true; 31852 } else if (xpp.getName().equals(prefix+"EnrollmentResponse")) { 31853 return true; 31854 } else if (xpp.getName().equals(prefix+"EpisodeOfCare")) { 31855 return true; 31856 } else if (xpp.getName().equals(prefix+"EventDefinition")) { 31857 return true; 31858 } else if (xpp.getName().equals(prefix+"Evidence")) { 31859 return true; 31860 } else if (xpp.getName().equals(prefix+"EvidenceReport")) { 31861 return true; 31862 } else if (xpp.getName().equals(prefix+"EvidenceVariable")) { 31863 return true; 31864 } else if (xpp.getName().equals(prefix+"ExampleScenario")) { 31865 return true; 31866 } else if (xpp.getName().equals(prefix+"ExplanationOfBenefit")) { 31867 return true; 31868 } else if (xpp.getName().equals(prefix+"FamilyMemberHistory")) { 31869 return true; 31870 } else if (xpp.getName().equals(prefix+"Flag")) { 31871 return true; 31872 } else if (xpp.getName().equals(prefix+"FormularyItem")) { 31873 return true; 31874 } else if (xpp.getName().equals(prefix+"GenomicStudy")) { 31875 return true; 31876 } else if (xpp.getName().equals(prefix+"Goal")) { 31877 return true; 31878 } else if (xpp.getName().equals(prefix+"GraphDefinition")) { 31879 return true; 31880 } else if (xpp.getName().equals(prefix+"Group")) { 31881 return true; 31882 } else if (xpp.getName().equals(prefix+"GuidanceResponse")) { 31883 return true; 31884 } else if (xpp.getName().equals(prefix+"HealthcareService")) { 31885 return true; 31886 } else if (xpp.getName().equals(prefix+"ImagingSelection")) { 31887 return true; 31888 } else if (xpp.getName().equals(prefix+"ImagingStudy")) { 31889 return true; 31890 } else if (xpp.getName().equals(prefix+"Immunization")) { 31891 return true; 31892 } else if (xpp.getName().equals(prefix+"ImmunizationEvaluation")) { 31893 return true; 31894 } else if (xpp.getName().equals(prefix+"ImmunizationRecommendation")) { 31895 return true; 31896 } else if (xpp.getName().equals(prefix+"ImplementationGuide")) { 31897 return true; 31898 } else if (xpp.getName().equals(prefix+"Ingredient")) { 31899 return true; 31900 } else if (xpp.getName().equals(prefix+"InsurancePlan")) { 31901 return true; 31902 } else if (xpp.getName().equals(prefix+"InventoryItem")) { 31903 return true; 31904 } else if (xpp.getName().equals(prefix+"InventoryReport")) { 31905 return true; 31906 } else if (xpp.getName().equals(prefix+"Invoice")) { 31907 return true; 31908 } else if (xpp.getName().equals(prefix+"Library")) { 31909 return true; 31910 } else if (xpp.getName().equals(prefix+"Linkage")) { 31911 return true; 31912 } else if (xpp.getName().equals(prefix+"List")) { 31913 return true; 31914 } else if (xpp.getName().equals(prefix+"Location")) { 31915 return true; 31916 } else if (xpp.getName().equals(prefix+"ManufacturedItemDefinition")) { 31917 return true; 31918 } else if (xpp.getName().equals(prefix+"Measure")) { 31919 return true; 31920 } else if (xpp.getName().equals(prefix+"MeasureReport")) { 31921 return true; 31922 } else if (xpp.getName().equals(prefix+"Medication")) { 31923 return true; 31924 } else if (xpp.getName().equals(prefix+"MedicationAdministration")) { 31925 return true; 31926 } else if (xpp.getName().equals(prefix+"MedicationDispense")) { 31927 return true; 31928 } else if (xpp.getName().equals(prefix+"MedicationKnowledge")) { 31929 return true; 31930 } else if (xpp.getName().equals(prefix+"MedicationRequest")) { 31931 return true; 31932 } else if (xpp.getName().equals(prefix+"MedicationStatement")) { 31933 return true; 31934 } else if (xpp.getName().equals(prefix+"MedicinalProductDefinition")) { 31935 return true; 31936 } else if (xpp.getName().equals(prefix+"MessageDefinition")) { 31937 return true; 31938 } else if (xpp.getName().equals(prefix+"MessageHeader")) { 31939 return true; 31940 } else if (xpp.getName().equals(prefix+"MolecularSequence")) { 31941 return true; 31942 } else if (xpp.getName().equals(prefix+"NamingSystem")) { 31943 return true; 31944 } else if (xpp.getName().equals(prefix+"NutritionIntake")) { 31945 return true; 31946 } else if (xpp.getName().equals(prefix+"NutritionOrder")) { 31947 return true; 31948 } else if (xpp.getName().equals(prefix+"NutritionProduct")) { 31949 return true; 31950 } else if (xpp.getName().equals(prefix+"Observation")) { 31951 return true; 31952 } else if (xpp.getName().equals(prefix+"ObservationDefinition")) { 31953 return true; 31954 } else if (xpp.getName().equals(prefix+"OperationDefinition")) { 31955 return true; 31956 } else if (xpp.getName().equals(prefix+"OperationOutcome")) { 31957 return true; 31958 } else if (xpp.getName().equals(prefix+"Organization")) { 31959 return true; 31960 } else if (xpp.getName().equals(prefix+"OrganizationAffiliation")) { 31961 return true; 31962 } else if (xpp.getName().equals(prefix+"PackagedProductDefinition")) { 31963 return true; 31964 } else if (xpp.getName().equals(prefix+"Parameters")) { 31965 return true; 31966 } else if (xpp.getName().equals(prefix+"Patient")) { 31967 return true; 31968 } else if (xpp.getName().equals(prefix+"PaymentNotice")) { 31969 return true; 31970 } else if (xpp.getName().equals(prefix+"PaymentReconciliation")) { 31971 return true; 31972 } else if (xpp.getName().equals(prefix+"Permission")) { 31973 return true; 31974 } else if (xpp.getName().equals(prefix+"Person")) { 31975 return true; 31976 } else if (xpp.getName().equals(prefix+"PlanDefinition")) { 31977 return true; 31978 } else if (xpp.getName().equals(prefix+"Practitioner")) { 31979 return true; 31980 } else if (xpp.getName().equals(prefix+"PractitionerRole")) { 31981 return true; 31982 } else if (xpp.getName().equals(prefix+"Procedure")) { 31983 return true; 31984 } else if (xpp.getName().equals(prefix+"Provenance")) { 31985 return true; 31986 } else if (xpp.getName().equals(prefix+"Questionnaire")) { 31987 return true; 31988 } else if (xpp.getName().equals(prefix+"QuestionnaireResponse")) { 31989 return true; 31990 } else if (xpp.getName().equals(prefix+"RegulatedAuthorization")) { 31991 return true; 31992 } else if (xpp.getName().equals(prefix+"RelatedPerson")) { 31993 return true; 31994 } else if (xpp.getName().equals(prefix+"RequestOrchestration")) { 31995 return true; 31996 } else if (xpp.getName().equals(prefix+"Requirements")) { 31997 return true; 31998 } else if (xpp.getName().equals(prefix+"ResearchStudy")) { 31999 return true; 32000 } else if (xpp.getName().equals(prefix+"ResearchSubject")) { 32001 return true; 32002 } else if (xpp.getName().equals(prefix+"RiskAssessment")) { 32003 return true; 32004 } else if (xpp.getName().equals(prefix+"Schedule")) { 32005 return true; 32006 } else if (xpp.getName().equals(prefix+"SearchParameter")) { 32007 return true; 32008 } else if (xpp.getName().equals(prefix+"ServiceRequest")) { 32009 return true; 32010 } else if (xpp.getName().equals(prefix+"Slot")) { 32011 return true; 32012 } else if (xpp.getName().equals(prefix+"Specimen")) { 32013 return true; 32014 } else if (xpp.getName().equals(prefix+"SpecimenDefinition")) { 32015 return true; 32016 } else if (xpp.getName().equals(prefix+"StructureDefinition")) { 32017 return true; 32018 } else if (xpp.getName().equals(prefix+"StructureMap")) { 32019 return true; 32020 } else if (xpp.getName().equals(prefix+"Subscription")) { 32021 return true; 32022 } else if (xpp.getName().equals(prefix+"SubscriptionStatus")) { 32023 return true; 32024 } else if (xpp.getName().equals(prefix+"SubscriptionTopic")) { 32025 return true; 32026 } else if (xpp.getName().equals(prefix+"Substance")) { 32027 return true; 32028 } else if (xpp.getName().equals(prefix+"SubstanceDefinition")) { 32029 return true; 32030 } else if (xpp.getName().equals(prefix+"SubstanceNucleicAcid")) { 32031 return true; 32032 } else if (xpp.getName().equals(prefix+"SubstancePolymer")) { 32033 return true; 32034 } else if (xpp.getName().equals(prefix+"SubstanceProtein")) { 32035 return true; 32036 } else if (xpp.getName().equals(prefix+"SubstanceReferenceInformation")) { 32037 return true; 32038 } else if (xpp.getName().equals(prefix+"SubstanceSourceMaterial")) { 32039 return true; 32040 } else if (xpp.getName().equals(prefix+"SupplyDelivery")) { 32041 return true; 32042 } else if (xpp.getName().equals(prefix+"SupplyRequest")) { 32043 return true; 32044 } else if (xpp.getName().equals(prefix+"Task")) { 32045 return true; 32046 } else if (xpp.getName().equals(prefix+"TerminologyCapabilities")) { 32047 return true; 32048 } else if (xpp.getName().equals(prefix+"TestPlan")) { 32049 return true; 32050 } else if (xpp.getName().equals(prefix+"TestReport")) { 32051 return true; 32052 } else if (xpp.getName().equals(prefix+"TestScript")) { 32053 return true; 32054 } else if (xpp.getName().equals(prefix+"Transport")) { 32055 return true; 32056 } else if (xpp.getName().equals(prefix+"ValueSet")) { 32057 return true; 32058 } else if (xpp.getName().equals(prefix+"VerificationResult")) { 32059 return true; 32060 } else if (xpp.getName().equals(prefix+"VisionPrescription")) { 32061 return true; 32062 32063 } else if (xpp.getName().equals(prefix+"Date")) { 32064 return true; 32065 } else if (xpp.getName().equals(prefix+"DateTime")) { 32066 return true; 32067 } else if (xpp.getName().equals(prefix+"Code")) { 32068 return true; 32069 } else if (xpp.getName().equals(prefix+"String")) { 32070 return true; 32071 } else if (xpp.getName().equals(prefix+"Integer")) { 32072 return true; 32073 } else if (xpp.getName().equals(prefix+"Integer64")) { 32074 return true; 32075 } else if (xpp.getName().equals(prefix+"Oid")) { 32076 return true; 32077 } else if (xpp.getName().equals(prefix+"Canonical")) { 32078 return true; 32079 } else if (xpp.getName().equals(prefix+"Uri")) { 32080 return true; 32081 } else if (xpp.getName().equals(prefix+"Uuid")) { 32082 return true; 32083 } else if (xpp.getName().equals(prefix+"Url")) { 32084 return true; 32085 } else if (xpp.getName().equals(prefix+"Instant")) { 32086 return true; 32087 } else if (xpp.getName().equals(prefix+"Boolean")) { 32088 return true; 32089 } else if (xpp.getName().equals(prefix+"Base64Binary")) { 32090 return true; 32091 } else if (xpp.getName().equals(prefix+"UnsignedInt")) { 32092 return true; 32093 } else if (xpp.getName().equals(prefix+"Markdown")) { 32094 return true; 32095 } else if (xpp.getName().equals(prefix+"Time")) { 32096 return true; 32097 } else if (xpp.getName().equals(prefix+"Id")) { 32098 return true; 32099 } else if (xpp.getName().equals(prefix+"PositiveInt")) { 32100 return true; 32101 } else if (xpp.getName().equals(prefix+"Decimal")) { 32102 return true; 32103 } else { 32104 return false; 32105 } 32106 } 32107 32108 @Override 32109 protected DataType parseAnyType(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 32110 return parseType(xpp, type); 32111 } 32112 32113 32114//----------------- Composer ------------------------------------------------------------------------------------------- 32115 32116 protected <E extends Enum<E>> void composeEnumeration(String name, Enumeration<E> value, EnumFactory e) throws IOException { 32117 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) { 32118 composeElementAttributes(value); 32119 if (value.getValue() != null) 32120 xml.attribute("value", e.toCode(value.getValue())); 32121 32122 xml.enter(FHIR_NS, name); 32123 composeElementElements(value); 32124 composeElementClose(value); 32125 xml.exit(FHIR_NS, name); 32126 } 32127 } 32128 32129 protected void composeDate(String name, DateType value) throws IOException { 32130 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// date 32131 composeElementAttributes(value); 32132 if (value.asStringValue() != null) 32133 xml.attribute("value", value.asStringValue()); 32134 32135 xml.enter(FHIR_NS, name); 32136 composeElementElements(value); 32137 composeElementClose(value); 32138 xml.exit(FHIR_NS, name); 32139 } 32140 } 32141 32142 protected void composeDateTime(String name, DateTimeType value) throws IOException { 32143 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// dateTime 32144 composeElementAttributes(value); 32145 if (value.asStringValue() != null) 32146 xml.attribute("value", value.asStringValue()); 32147 32148 xml.enter(FHIR_NS, name); 32149 composeElementElements(value); 32150 composeElementClose(value); 32151 xml.exit(FHIR_NS, name); 32152 } 32153 } 32154 32155 protected void composeCode(String name, CodeType value) throws IOException { 32156 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// code 32157 composeElementAttributes(value); 32158 if (value.asStringValue() != null) 32159 xml.attribute("value", value.asStringValue()); 32160 32161 xml.enter(FHIR_NS, name); 32162 composeElementElements(value); 32163 composeElementClose(value); 32164 xml.exit(FHIR_NS, name); 32165 } 32166 } 32167 32168 protected void composeString(String name, StringType value) throws IOException { 32169 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// string 32170 composeElementAttributes(value); 32171 if (value.asStringValue() != null) 32172 xml.attribute("value", value.asStringValue()); 32173 32174 xml.enter(FHIR_NS, name); 32175 composeElementElements(value); 32176 composeElementClose(value); 32177 xml.exit(FHIR_NS, name); 32178 } 32179 } 32180 32181 protected void composeInteger(String name, IntegerType value) throws IOException { 32182 if (value != null) { // integer 32183 composeElementAttributes(value); 32184 if (value.asStringValue() != null) 32185 xml.attribute("value", value.asStringValue()); 32186 32187 xml.enter(FHIR_NS, name); 32188 composeElementElements(value); 32189 composeElementClose(value); 32190 xml.exit(FHIR_NS, name); 32191 } 32192 } 32193 32194 protected void composeInteger64(String name, Integer64Type value) throws IOException { 32195 if (value != null) { // integer 32196 composeElementAttributes(value); 32197 if (value.asStringValue() != null) 32198 xml.attribute("value", value.asStringValue()); 32199 32200 xml.enter(FHIR_NS, name); 32201 composeElementElements(value); 32202 composeElementClose(value); 32203 xml.exit(FHIR_NS, name); 32204 } 32205 } 32206 32207 protected void composeOid(String name, OidType value) throws IOException { 32208 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// oid 32209 composeElementAttributes(value); 32210 if (value.asStringValue() != null) 32211 xml.attribute("value", value.asStringValue()); 32212 32213 xml.enter(FHIR_NS, name); 32214 composeElementElements(value); 32215 composeElementClose(value); 32216 xml.exit(FHIR_NS, name); 32217 } 32218 } 32219 32220 protected void composeCanonical(String name, CanonicalType value) throws IOException { 32221 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// canonical 32222 composeElementAttributes(value); 32223 if (value.asStringValue() != null) 32224 xml.attribute("value", value.asStringValue()); 32225 32226 xml.enter(FHIR_NS, name); 32227 composeElementElements(value); 32228 composeElementClose(value); 32229 xml.exit(FHIR_NS, name); 32230 } 32231 } 32232 32233 protected void composeUri(String name, UriType value) throws IOException { 32234 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// uri 32235 composeElementAttributes(value); 32236 if (value.asStringValue() != null) 32237 xml.attribute("value", value.asStringValue()); 32238 32239 xml.enter(FHIR_NS, name); 32240 composeElementElements(value); 32241 composeElementClose(value); 32242 xml.exit(FHIR_NS, name); 32243 } 32244 } 32245 32246 protected void composeUuid(String name, UuidType value) throws IOException { 32247 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// uuid 32248 composeElementAttributes(value); 32249 if (value.asStringValue() != null) 32250 xml.attribute("value", value.asStringValue()); 32251 32252 xml.enter(FHIR_NS, name); 32253 composeElementElements(value); 32254 composeElementClose(value); 32255 xml.exit(FHIR_NS, name); 32256 } 32257 } 32258 32259 protected void composeUrl(String name, UrlType value) throws IOException { 32260 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// url 32261 composeElementAttributes(value); 32262 if (value.asStringValue() != null) 32263 xml.attribute("value", value.asStringValue()); 32264 32265 xml.enter(FHIR_NS, name); 32266 composeElementElements(value); 32267 composeElementClose(value); 32268 xml.exit(FHIR_NS, name); 32269 } 32270 } 32271 32272 protected void composeInstant(String name, InstantType value) throws IOException { 32273 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// instant 32274 composeElementAttributes(value); 32275 if (value.asStringValue() != null) 32276 xml.attribute("value", value.asStringValue()); 32277 32278 xml.enter(FHIR_NS, name); 32279 composeElementElements(value); 32280 composeElementClose(value); 32281 xml.exit(FHIR_NS, name); 32282 } 32283 } 32284 32285 protected void composeBoolean(String name, BooleanType value) throws IOException { 32286 if (value != null) { // boolean 32287 composeElementAttributes(value); 32288 if (value.asStringValue() != null) 32289 xml.attribute("value", value.asStringValue()); 32290 32291 xml.enter(FHIR_NS, name); 32292 composeElementElements(value); 32293 composeElementClose(value); 32294 xml.exit(FHIR_NS, name); 32295 } 32296 } 32297 32298 protected void composeBase64Binary(String name, Base64BinaryType value) throws IOException { 32299 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// base64Binary 32300 composeElementAttributes(value); 32301 if (value.asStringValue() != null) 32302 xml.attribute("value", value.asStringValue()); 32303 32304 xml.enter(FHIR_NS, name); 32305 composeElementElements(value); 32306 composeElementClose(value); 32307 xml.exit(FHIR_NS, name); 32308 } 32309 } 32310 32311 protected void composeUnsignedInt(String name, UnsignedIntType value) throws IOException { 32312 if (value != null) { // unsignedInt 32313 composeElementAttributes(value); 32314 if (value.asStringValue() != null) 32315 xml.attribute("value", value.asStringValue()); 32316 32317 xml.enter(FHIR_NS, name); 32318 composeElementElements(value); 32319 composeElementClose(value); 32320 xml.exit(FHIR_NS, name); 32321 } 32322 } 32323 32324 protected void composeMarkdown(String name, MarkdownType value) throws IOException { 32325 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// markdown 32326 composeElementAttributes(value); 32327 if (value.asStringValue() != null) 32328 xml.attribute("value", value.asStringValue()); 32329 32330 xml.enter(FHIR_NS, name); 32331 composeElementElements(value); 32332 composeElementClose(value); 32333 xml.exit(FHIR_NS, name); 32334 } 32335 } 32336 32337 protected void composeTime(String name, TimeType value) throws IOException { 32338 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// time 32339 composeElementAttributes(value); 32340 if (value.asStringValue() != null) 32341 xml.attribute("value", value.asStringValue()); 32342 32343 xml.enter(FHIR_NS, name); 32344 composeElementElements(value); 32345 composeElementClose(value); 32346 xml.exit(FHIR_NS, name); 32347 } 32348 } 32349 32350 protected void composeId(String name, IdType value) throws IOException { 32351 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// id 32352 composeElementAttributes(value); 32353 if (value.asStringValue() != null) 32354 xml.attribute("value", value.asStringValue()); 32355 32356 xml.enter(FHIR_NS, name); 32357 composeElementElements(value); 32358 composeElementClose(value); 32359 xml.exit(FHIR_NS, name); 32360 } 32361 } 32362 32363 protected void composePositiveInt(String name, PositiveIntType value) throws IOException { 32364 if (value != null) { // positiveInt 32365 composeElementAttributes(value); 32366 if (value.asStringValue() != null) 32367 xml.attribute("value", value.asStringValue()); 32368 32369 xml.enter(FHIR_NS, name); 32370 composeElementElements(value); 32371 composeElementClose(value); 32372 xml.exit(FHIR_NS, name); 32373 } 32374 } 32375 32376 protected void composeDecimal(String name, DecimalType value) throws IOException { 32377 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// decimal 32378 composeElementAttributes(value); 32379 if (value.asStringValue() != null) 32380 xml.attribute("value", value.asStringValue()); 32381 32382 xml.enter(FHIR_NS, name); 32383 composeElementElements(value); 32384 composeElementClose(value); 32385 xml.exit(FHIR_NS, name); 32386 } 32387 } 32388 32389 protected void composeBackboneElementElements(BackboneElement element) throws IOException { 32390 composeElementElements(element); 32391 if (element.hasModifierExtension()) { 32392 for (Extension e : element.getModifierExtension()) 32393 composeExtension("modifierExtension", e); 32394 } 32395 } 32396 32397 protected void composeBackboneTypeElements(BackboneType element) throws IOException { 32398 composeDataTypeElements(element); 32399 if (element.hasModifierExtension()) { 32400 for (Extension e : element.getModifierExtension()) 32401 composeExtension("modifierExtension", e); 32402 } 32403 } 32404 32405 protected void composeDataTypeElements(DataType element) throws IOException { 32406 composeElementElements(element); 32407 } 32408 32409 protected void composeElementElements(Element element) throws IOException { 32410 composeBaseElements(element); 32411 if (element.hasExtension()) { 32412 for (Extension e : element.getExtension()) 32413 composeExtension("extension", e); 32414 } 32415 } 32416 32417 protected void composeAddress(String name, Address element) throws IOException { 32418 if (element != null) { 32419 composeElementAttributes(element); 32420 xml.enter(FHIR_NS, name); 32421 composeAddressElements(element); 32422 composeElementClose(element); 32423 xml.exit(FHIR_NS, name); 32424 } 32425 } 32426 32427 protected void composeAddressElements(Address element) throws IOException { 32428 composeDataTypeElements(element); 32429 if (element.hasUseElement()) 32430 composeEnumeration("use", element.getUseElement(), new Address.AddressUseEnumFactory()); 32431 if (element.hasTypeElement()) 32432 composeEnumeration("type", element.getTypeElement(), new Address.AddressTypeEnumFactory()); 32433 if (element.hasTextElement()) { 32434 composeString("text", element.getTextElement()); 32435 } 32436 if (element.hasLine()) { 32437 for (StringType e : element.getLine()) 32438 composeString("line", e); 32439 } 32440 if (element.hasCityElement()) { 32441 composeString("city", element.getCityElement()); 32442 } 32443 if (element.hasDistrictElement()) { 32444 composeString("district", element.getDistrictElement()); 32445 } 32446 if (element.hasStateElement()) { 32447 composeString("state", element.getStateElement()); 32448 } 32449 if (element.hasPostalCodeElement()) { 32450 composeString("postalCode", element.getPostalCodeElement()); 32451 } 32452 if (element.hasCountryElement()) { 32453 composeString("country", element.getCountryElement()); 32454 } 32455 if (element.hasPeriod()) { 32456 composePeriod("period", element.getPeriod()); 32457 } 32458 } 32459 32460 protected void composeAge(String name, Age element) throws IOException { 32461 if (element != null) { 32462 composeElementAttributes(element); 32463 xml.enter(FHIR_NS, name); 32464 composeAgeElements(element); 32465 composeElementClose(element); 32466 xml.exit(FHIR_NS, name); 32467 } 32468 } 32469 32470 protected void composeAgeElements(Age element) throws IOException { 32471 composeQuantityElements(element); 32472 } 32473 32474 protected void composeAnnotation(String name, Annotation element) throws IOException { 32475 if (element != null) { 32476 composeElementAttributes(element); 32477 xml.enter(FHIR_NS, name); 32478 composeAnnotationElements(element); 32479 composeElementClose(element); 32480 xml.exit(FHIR_NS, name); 32481 } 32482 } 32483 32484 protected void composeAnnotationElements(Annotation element) throws IOException { 32485 composeDataTypeElements(element); 32486 if (element.hasAuthor()) { 32487 composeType("author", element.getAuthor()); 32488 } if (element.hasTimeElement()) { 32489 composeDateTime("time", element.getTimeElement()); 32490 } 32491 if (element.hasTextElement()) { 32492 composeMarkdown("text", element.getTextElement()); 32493 } 32494 } 32495 32496 protected void composeAttachment(String name, Attachment element) throws IOException { 32497 if (element != null) { 32498 composeElementAttributes(element); 32499 xml.enter(FHIR_NS, name); 32500 composeAttachmentElements(element); 32501 composeElementClose(element); 32502 xml.exit(FHIR_NS, name); 32503 } 32504 } 32505 32506 protected void composeAttachmentElements(Attachment element) throws IOException { 32507 composeDataTypeElements(element); 32508 if (element.hasContentTypeElement()) { 32509 composeCode("contentType", element.getContentTypeElement()); 32510 } 32511 if (element.hasLanguageElement()) { 32512 composeCode("language", element.getLanguageElement()); 32513 } 32514 if (element.hasDataElement()) { 32515 composeBase64Binary("data", element.getDataElement()); 32516 } 32517 if (element.hasUrlElement()) { 32518 composeUrl("url", element.getUrlElement()); 32519 } 32520 if (element.hasSizeElement()) { 32521 composeInteger64("size", element.getSizeElement()); 32522 } 32523 if (element.hasHashElement()) { 32524 composeBase64Binary("hash", element.getHashElement()); 32525 } 32526 if (element.hasTitleElement()) { 32527 composeString("title", element.getTitleElement()); 32528 } 32529 if (element.hasCreationElement()) { 32530 composeDateTime("creation", element.getCreationElement()); 32531 } 32532 if (element.hasHeightElement()) { 32533 composePositiveInt("height", element.getHeightElement()); 32534 } 32535 if (element.hasWidthElement()) { 32536 composePositiveInt("width", element.getWidthElement()); 32537 } 32538 if (element.hasFramesElement()) { 32539 composePositiveInt("frames", element.getFramesElement()); 32540 } 32541 if (element.hasDurationElement()) { 32542 composeDecimal("duration", element.getDurationElement()); 32543 } 32544 if (element.hasPagesElement()) { 32545 composePositiveInt("pages", element.getPagesElement()); 32546 } 32547 } 32548 32549 protected void composeAvailability(String name, Availability element) throws IOException { 32550 if (element != null) { 32551 composeElementAttributes(element); 32552 xml.enter(FHIR_NS, name); 32553 composeAvailabilityElements(element); 32554 composeElementClose(element); 32555 xml.exit(FHIR_NS, name); 32556 } 32557 } 32558 32559 protected void composeAvailabilityElements(Availability element) throws IOException { 32560 composeDataTypeElements(element); 32561 if (element.hasAvailableTime()) { 32562 for (Availability.AvailabilityAvailableTimeComponent e : element.getAvailableTime()) 32563 composeAvailabilityAvailableTimeComponent("availableTime", e); 32564 } 32565 if (element.hasNotAvailableTime()) { 32566 for (Availability.AvailabilityNotAvailableTimeComponent e : element.getNotAvailableTime()) 32567 composeAvailabilityNotAvailableTimeComponent("notAvailableTime", e); 32568 } 32569 } 32570 32571 protected void composeAvailabilityAvailableTimeComponent(String name, Availability.AvailabilityAvailableTimeComponent element) throws IOException { 32572 if (element != null) { 32573 composeElementAttributes(element); 32574 xml.enter(FHIR_NS, name); 32575 composeAvailabilityAvailableTimeComponentElements(element); 32576 composeElementClose(element); 32577 xml.exit(FHIR_NS, name); 32578 } 32579 } 32580 32581 protected void composeAvailabilityAvailableTimeComponentElements(Availability.AvailabilityAvailableTimeComponent element) throws IOException { 32582 composeElementElements(element); 32583 if (element.hasDaysOfWeek()) 32584 for (Enumeration<Enumerations.DaysOfWeek> e : element.getDaysOfWeek()) 32585 composeEnumeration("daysOfWeek", e, new Enumerations.DaysOfWeekEnumFactory()); 32586 if (element.hasAllDayElement()) { 32587 composeBoolean("allDay", element.getAllDayElement()); 32588 } 32589 if (element.hasAvailableStartTimeElement()) { 32590 composeTime("availableStartTime", element.getAvailableStartTimeElement()); 32591 } 32592 if (element.hasAvailableEndTimeElement()) { 32593 composeTime("availableEndTime", element.getAvailableEndTimeElement()); 32594 } 32595 } 32596 32597 protected void composeAvailabilityNotAvailableTimeComponent(String name, Availability.AvailabilityNotAvailableTimeComponent element) throws IOException { 32598 if (element != null) { 32599 composeElementAttributes(element); 32600 xml.enter(FHIR_NS, name); 32601 composeAvailabilityNotAvailableTimeComponentElements(element); 32602 composeElementClose(element); 32603 xml.exit(FHIR_NS, name); 32604 } 32605 } 32606 32607 protected void composeAvailabilityNotAvailableTimeComponentElements(Availability.AvailabilityNotAvailableTimeComponent element) throws IOException { 32608 composeElementElements(element); 32609 if (element.hasDescriptionElement()) { 32610 composeString("description", element.getDescriptionElement()); 32611 } 32612 if (element.hasDuring()) { 32613 composePeriod("during", element.getDuring()); 32614 } 32615 } 32616 32617 protected void composeCodeableConcept(String name, CodeableConcept element) throws IOException { 32618 if (element != null) { 32619 composeElementAttributes(element); 32620 xml.enter(FHIR_NS, name); 32621 composeCodeableConceptElements(element); 32622 composeElementClose(element); 32623 xml.exit(FHIR_NS, name); 32624 } 32625 } 32626 32627 protected void composeCodeableConceptElements(CodeableConcept element) throws IOException { 32628 composeDataTypeElements(element); 32629 if (element.hasCoding()) { 32630 for (Coding e : element.getCoding()) 32631 composeCoding("coding", e); 32632 } 32633 if (element.hasTextElement()) { 32634 composeString("text", element.getTextElement()); 32635 } 32636 } 32637 32638 protected void composeCodeableReference(String name, CodeableReference element) throws IOException { 32639 if (element != null) { 32640 composeElementAttributes(element); 32641 xml.enter(FHIR_NS, name); 32642 composeCodeableReferenceElements(element); 32643 composeElementClose(element); 32644 xml.exit(FHIR_NS, name); 32645 } 32646 } 32647 32648 protected void composeCodeableReferenceElements(CodeableReference element) throws IOException { 32649 composeDataTypeElements(element); 32650 if (element.hasConcept()) { 32651 composeCodeableConcept("concept", element.getConcept()); 32652 } 32653 if (element.hasReference()) { 32654 composeReference("reference", element.getReference()); 32655 } 32656 } 32657 32658 protected void composeCoding(String name, Coding element) throws IOException { 32659 if (element != null) { 32660 composeElementAttributes(element); 32661 xml.enter(FHIR_NS, name); 32662 composeCodingElements(element); 32663 composeElementClose(element); 32664 xml.exit(FHIR_NS, name); 32665 } 32666 } 32667 32668 protected void composeCodingElements(Coding element) throws IOException { 32669 composeDataTypeElements(element); 32670 if (element.hasSystemElement()) { 32671 composeUri("system", element.getSystemElement()); 32672 } 32673 if (element.hasVersionElement()) { 32674 composeString("version", element.getVersionElement()); 32675 } 32676 if (element.hasCodeElement()) { 32677 composeCode("code", element.getCodeElement()); 32678 } 32679 if (element.hasDisplayElement()) { 32680 composeString("display", element.getDisplayElement()); 32681 } 32682 if (element.hasUserSelectedElement()) { 32683 composeBoolean("userSelected", element.getUserSelectedElement()); 32684 } 32685 } 32686 32687 protected void composeContactDetail(String name, ContactDetail element) throws IOException { 32688 if (element != null) { 32689 composeElementAttributes(element); 32690 xml.enter(FHIR_NS, name); 32691 composeContactDetailElements(element); 32692 composeElementClose(element); 32693 xml.exit(FHIR_NS, name); 32694 } 32695 } 32696 32697 protected void composeContactDetailElements(ContactDetail element) throws IOException { 32698 composeDataTypeElements(element); 32699 if (element.hasNameElement()) { 32700 composeString("name", element.getNameElement()); 32701 } 32702 if (element.hasTelecom()) { 32703 for (ContactPoint e : element.getTelecom()) 32704 composeContactPoint("telecom", e); 32705 } 32706 } 32707 32708 protected void composeContactPoint(String name, ContactPoint element) throws IOException { 32709 if (element != null) { 32710 composeElementAttributes(element); 32711 xml.enter(FHIR_NS, name); 32712 composeContactPointElements(element); 32713 composeElementClose(element); 32714 xml.exit(FHIR_NS, name); 32715 } 32716 } 32717 32718 protected void composeContactPointElements(ContactPoint element) throws IOException { 32719 composeDataTypeElements(element); 32720 if (element.hasSystemElement()) 32721 composeEnumeration("system", element.getSystemElement(), new ContactPoint.ContactPointSystemEnumFactory()); 32722 if (element.hasValueElement()) { 32723 composeString("value", element.getValueElement()); 32724 } 32725 if (element.hasUseElement()) 32726 composeEnumeration("use", element.getUseElement(), new ContactPoint.ContactPointUseEnumFactory()); 32727 if (element.hasRankElement()) { 32728 composePositiveInt("rank", element.getRankElement()); 32729 } 32730 if (element.hasPeriod()) { 32731 composePeriod("period", element.getPeriod()); 32732 } 32733 } 32734 32735 protected void composeContributor(String name, Contributor element) throws IOException { 32736 if (element != null) { 32737 composeElementAttributes(element); 32738 xml.enter(FHIR_NS, name); 32739 composeContributorElements(element); 32740 composeElementClose(element); 32741 xml.exit(FHIR_NS, name); 32742 } 32743 } 32744 32745 protected void composeContributorElements(Contributor element) throws IOException { 32746 composeDataTypeElements(element); 32747 if (element.hasTypeElement()) 32748 composeEnumeration("type", element.getTypeElement(), new Contributor.ContributorTypeEnumFactory()); 32749 if (element.hasNameElement()) { 32750 composeString("name", element.getNameElement()); 32751 } 32752 if (element.hasContact()) { 32753 for (ContactDetail e : element.getContact()) 32754 composeContactDetail("contact", e); 32755 } 32756 } 32757 32758 protected void composeCount(String name, Count element) throws IOException { 32759 if (element != null) { 32760 composeElementAttributes(element); 32761 xml.enter(FHIR_NS, name); 32762 composeCountElements(element); 32763 composeElementClose(element); 32764 xml.exit(FHIR_NS, name); 32765 } 32766 } 32767 32768 protected void composeCountElements(Count element) throws IOException { 32769 composeQuantityElements(element); 32770 } 32771 32772 protected void composeDataRequirement(String name, DataRequirement element) throws IOException { 32773 if (element != null) { 32774 composeElementAttributes(element); 32775 xml.enter(FHIR_NS, name); 32776 composeDataRequirementElements(element); 32777 composeElementClose(element); 32778 xml.exit(FHIR_NS, name); 32779 } 32780 } 32781 32782 protected void composeDataRequirementElements(DataRequirement element) throws IOException { 32783 composeDataTypeElements(element); 32784 if (element.hasTypeElement()) 32785 composeEnumeration("type", element.getTypeElement(), new Enumerations.FHIRTypesEnumFactory()); 32786 if (element.hasProfile()) { 32787 for (CanonicalType e : element.getProfile()) 32788 composeCanonical("profile", e); 32789 } 32790 if (element.hasSubject()) { 32791 composeType("subject", element.getSubject()); 32792 } if (element.hasMustSupport()) { 32793 for (StringType e : element.getMustSupport()) 32794 composeString("mustSupport", e); 32795 } 32796 if (element.hasCodeFilter()) { 32797 for (DataRequirement.DataRequirementCodeFilterComponent e : element.getCodeFilter()) 32798 composeDataRequirementCodeFilterComponent("codeFilter", e); 32799 } 32800 if (element.hasDateFilter()) { 32801 for (DataRequirement.DataRequirementDateFilterComponent e : element.getDateFilter()) 32802 composeDataRequirementDateFilterComponent("dateFilter", e); 32803 } 32804 if (element.hasValueFilter()) { 32805 for (DataRequirement.DataRequirementValueFilterComponent e : element.getValueFilter()) 32806 composeDataRequirementValueFilterComponent("valueFilter", e); 32807 } 32808 if (element.hasLimitElement()) { 32809 composePositiveInt("limit", element.getLimitElement()); 32810 } 32811 if (element.hasSort()) { 32812 for (DataRequirement.DataRequirementSortComponent e : element.getSort()) 32813 composeDataRequirementSortComponent("sort", e); 32814 } 32815 } 32816 32817 protected void composeDataRequirementCodeFilterComponent(String name, DataRequirement.DataRequirementCodeFilterComponent element) throws IOException { 32818 if (element != null) { 32819 composeElementAttributes(element); 32820 xml.enter(FHIR_NS, name); 32821 composeDataRequirementCodeFilterComponentElements(element); 32822 composeElementClose(element); 32823 xml.exit(FHIR_NS, name); 32824 } 32825 } 32826 32827 protected void composeDataRequirementCodeFilterComponentElements(DataRequirement.DataRequirementCodeFilterComponent element) throws IOException { 32828 composeElementElements(element); 32829 if (element.hasPathElement()) { 32830 composeString("path", element.getPathElement()); 32831 } 32832 if (element.hasSearchParamElement()) { 32833 composeString("searchParam", element.getSearchParamElement()); 32834 } 32835 if (element.hasValueSetElement()) { 32836 composeCanonical("valueSet", element.getValueSetElement()); 32837 } 32838 if (element.hasCode()) { 32839 for (Coding e : element.getCode()) 32840 composeCoding("code", e); 32841 } 32842 } 32843 32844 protected void composeDataRequirementDateFilterComponent(String name, DataRequirement.DataRequirementDateFilterComponent element) throws IOException { 32845 if (element != null) { 32846 composeElementAttributes(element); 32847 xml.enter(FHIR_NS, name); 32848 composeDataRequirementDateFilterComponentElements(element); 32849 composeElementClose(element); 32850 xml.exit(FHIR_NS, name); 32851 } 32852 } 32853 32854 protected void composeDataRequirementDateFilterComponentElements(DataRequirement.DataRequirementDateFilterComponent element) throws IOException { 32855 composeElementElements(element); 32856 if (element.hasPathElement()) { 32857 composeString("path", element.getPathElement()); 32858 } 32859 if (element.hasSearchParamElement()) { 32860 composeString("searchParam", element.getSearchParamElement()); 32861 } 32862 if (element.hasValue()) { 32863 composeType("value", element.getValue()); 32864 } } 32865 32866 protected void composeDataRequirementValueFilterComponent(String name, DataRequirement.DataRequirementValueFilterComponent element) throws IOException { 32867 if (element != null) { 32868 composeElementAttributes(element); 32869 xml.enter(FHIR_NS, name); 32870 composeDataRequirementValueFilterComponentElements(element); 32871 composeElementClose(element); 32872 xml.exit(FHIR_NS, name); 32873 } 32874 } 32875 32876 protected void composeDataRequirementValueFilterComponentElements(DataRequirement.DataRequirementValueFilterComponent element) throws IOException { 32877 composeElementElements(element); 32878 if (element.hasPathElement()) { 32879 composeString("path", element.getPathElement()); 32880 } 32881 if (element.hasSearchParamElement()) { 32882 composeString("searchParam", element.getSearchParamElement()); 32883 } 32884 if (element.hasComparatorElement()) 32885 composeEnumeration("comparator", element.getComparatorElement(), new DataRequirement.ValueFilterComparatorEnumFactory()); 32886 if (element.hasValue()) { 32887 composeType("value", element.getValue()); 32888 } } 32889 32890 protected void composeDataRequirementSortComponent(String name, DataRequirement.DataRequirementSortComponent element) throws IOException { 32891 if (element != null) { 32892 composeElementAttributes(element); 32893 xml.enter(FHIR_NS, name); 32894 composeDataRequirementSortComponentElements(element); 32895 composeElementClose(element); 32896 xml.exit(FHIR_NS, name); 32897 } 32898 } 32899 32900 protected void composeDataRequirementSortComponentElements(DataRequirement.DataRequirementSortComponent element) throws IOException { 32901 composeElementElements(element); 32902 if (element.hasPathElement()) { 32903 composeString("path", element.getPathElement()); 32904 } 32905 if (element.hasDirectionElement()) 32906 composeEnumeration("direction", element.getDirectionElement(), new DataRequirement.SortDirectionEnumFactory()); 32907 } 32908 32909 protected void composeDistance(String name, Distance element) throws IOException { 32910 if (element != null) { 32911 composeElementAttributes(element); 32912 xml.enter(FHIR_NS, name); 32913 composeDistanceElements(element); 32914 composeElementClose(element); 32915 xml.exit(FHIR_NS, name); 32916 } 32917 } 32918 32919 protected void composeDistanceElements(Distance element) throws IOException { 32920 composeQuantityElements(element); 32921 } 32922 32923 protected void composeDosage(String name, Dosage element) throws IOException { 32924 if (element != null) { 32925 composeElementAttributes(element); 32926 xml.enter(FHIR_NS, name); 32927 composeDosageElements(element); 32928 composeElementClose(element); 32929 xml.exit(FHIR_NS, name); 32930 } 32931 } 32932 32933 protected void composeDosageElements(Dosage element) throws IOException { 32934 composeBackboneTypeElements(element); 32935 if (element.hasSequenceElement()) { 32936 composeInteger("sequence", element.getSequenceElement()); 32937 } 32938 if (element.hasTextElement()) { 32939 composeString("text", element.getTextElement()); 32940 } 32941 if (element.hasAdditionalInstruction()) { 32942 for (CodeableConcept e : element.getAdditionalInstruction()) 32943 composeCodeableConcept("additionalInstruction", e); 32944 } 32945 if (element.hasPatientInstructionElement()) { 32946 composeString("patientInstruction", element.getPatientInstructionElement()); 32947 } 32948 if (element.hasTiming()) { 32949 composeTiming("timing", element.getTiming()); 32950 } 32951 if (element.hasAsNeededElement()) { 32952 composeBoolean("asNeeded", element.getAsNeededElement()); 32953 } 32954 if (element.hasAsNeededFor()) { 32955 for (CodeableConcept e : element.getAsNeededFor()) 32956 composeCodeableConcept("asNeededFor", e); 32957 } 32958 if (element.hasSite()) { 32959 composeCodeableConcept("site", element.getSite()); 32960 } 32961 if (element.hasRoute()) { 32962 composeCodeableConcept("route", element.getRoute()); 32963 } 32964 if (element.hasMethod()) { 32965 composeCodeableConcept("method", element.getMethod()); 32966 } 32967 if (element.hasDoseAndRate()) { 32968 for (Dosage.DosageDoseAndRateComponent e : element.getDoseAndRate()) 32969 composeDosageDoseAndRateComponent("doseAndRate", e); 32970 } 32971 if (element.hasMaxDosePerPeriod()) { 32972 for (Ratio e : element.getMaxDosePerPeriod()) 32973 composeRatio("maxDosePerPeriod", e); 32974 } 32975 if (element.hasMaxDosePerAdministration()) { 32976 composeQuantity("maxDosePerAdministration", element.getMaxDosePerAdministration()); 32977 } 32978 if (element.hasMaxDosePerLifetime()) { 32979 composeQuantity("maxDosePerLifetime", element.getMaxDosePerLifetime()); 32980 } 32981 } 32982 32983 protected void composeDosageDoseAndRateComponent(String name, Dosage.DosageDoseAndRateComponent element) throws IOException { 32984 if (element != null) { 32985 composeElementAttributes(element); 32986 xml.enter(FHIR_NS, name); 32987 composeDosageDoseAndRateComponentElements(element); 32988 composeElementClose(element); 32989 xml.exit(FHIR_NS, name); 32990 } 32991 } 32992 32993 protected void composeDosageDoseAndRateComponentElements(Dosage.DosageDoseAndRateComponent element) throws IOException { 32994 composeElementElements(element); 32995 if (element.hasType()) { 32996 composeCodeableConcept("type", element.getType()); 32997 } 32998 if (element.hasDose()) { 32999 composeType("dose", element.getDose()); 33000 } if (element.hasRate()) { 33001 composeType("rate", element.getRate()); 33002 } } 33003 33004 protected void composeDuration(String name, Duration element) throws IOException { 33005 if (element != null) { 33006 composeElementAttributes(element); 33007 xml.enter(FHIR_NS, name); 33008 composeDurationElements(element); 33009 composeElementClose(element); 33010 xml.exit(FHIR_NS, name); 33011 } 33012 } 33013 33014 protected void composeDurationElements(Duration element) throws IOException { 33015 composeQuantityElements(element); 33016 } 33017 33018 protected void composeElementDefinition(String name, ElementDefinition element) throws IOException { 33019 if (element != null) { 33020 composeElementAttributes(element); 33021 xml.enter(FHIR_NS, name); 33022 composeElementDefinitionElements(element); 33023 composeElementClose(element); 33024 xml.exit(FHIR_NS, name); 33025 } 33026 } 33027 33028 protected void composeElementDefinitionElements(ElementDefinition element) throws IOException { 33029 composeBackboneTypeElements(element); 33030 if (element.hasPathElement()) { 33031 composeString("path", element.getPathElement()); 33032 } 33033 if (element.hasRepresentation()) 33034 for (Enumeration<ElementDefinition.PropertyRepresentation> e : element.getRepresentation()) 33035 composeEnumeration("representation", e, new ElementDefinition.PropertyRepresentationEnumFactory()); 33036 if (element.hasSliceNameElement()) { 33037 composeString("sliceName", element.getSliceNameElement()); 33038 } 33039 if (element.hasSliceIsConstrainingElement()) { 33040 composeBoolean("sliceIsConstraining", element.getSliceIsConstrainingElement()); 33041 } 33042 if (element.hasLabelElement()) { 33043 composeString("label", element.getLabelElement()); 33044 } 33045 if (element.hasCode()) { 33046 for (Coding e : element.getCode()) 33047 composeCoding("code", e); 33048 } 33049 if (element.hasSlicing()) { 33050 composeElementDefinitionSlicingComponent("slicing", element.getSlicing()); 33051 } 33052 if (element.hasShortElement()) { 33053 composeString("short", element.getShortElement()); 33054 } 33055 if (element.hasDefinitionElement()) { 33056 composeMarkdown("definition", element.getDefinitionElement()); 33057 } 33058 if (element.hasCommentElement()) { 33059 composeMarkdown("comment", element.getCommentElement()); 33060 } 33061 if (element.hasRequirementsElement()) { 33062 composeMarkdown("requirements", element.getRequirementsElement()); 33063 } 33064 if (element.hasAlias()) { 33065 for (StringType e : element.getAlias()) 33066 composeString("alias", e); 33067 } 33068 if (element.hasMinElement()) { 33069 composeUnsignedInt("min", element.getMinElement()); 33070 } 33071 if (element.hasMaxElement()) { 33072 composeString("max", element.getMaxElement()); 33073 } 33074 if (element.hasBase()) { 33075 composeElementDefinitionBaseComponent("base", element.getBase()); 33076 } 33077 if (element.hasContentReferenceElement()) { 33078 composeUri("contentReference", element.getContentReferenceElement()); 33079 } 33080 if (element.hasType()) { 33081 for (ElementDefinition.TypeRefComponent e : element.getType()) 33082 composeElementDefinitionTypeRefComponent("type", e); 33083 } 33084 if (element.hasDefaultValue()) { 33085 composeType("defaultValue", element.getDefaultValue()); 33086 } if (element.hasMeaningWhenMissingElement()) { 33087 composeMarkdown("meaningWhenMissing", element.getMeaningWhenMissingElement()); 33088 } 33089 if (element.hasOrderMeaningElement()) { 33090 composeString("orderMeaning", element.getOrderMeaningElement()); 33091 } 33092 if (element.hasFixed()) { 33093 composeType("fixed", element.getFixed()); 33094 } if (element.hasPattern()) { 33095 composeType("pattern", element.getPattern()); 33096 } if (element.hasExample()) { 33097 for (ElementDefinition.ElementDefinitionExampleComponent e : element.getExample()) 33098 composeElementDefinitionExampleComponent("example", e); 33099 } 33100 if (element.hasMinValue()) { 33101 composeType("minValue", element.getMinValue()); 33102 } if (element.hasMaxValue()) { 33103 composeType("maxValue", element.getMaxValue()); 33104 } if (element.hasMaxLengthElement()) { 33105 composeInteger("maxLength", element.getMaxLengthElement()); 33106 } 33107 if (element.hasCondition()) { 33108 for (IdType e : element.getCondition()) 33109 composeId("condition", e); 33110 } 33111 if (element.hasConstraint()) { 33112 for (ElementDefinition.ElementDefinitionConstraintComponent e : element.getConstraint()) 33113 composeElementDefinitionConstraintComponent("constraint", e); 33114 } 33115 if (element.hasMustHaveValueElement()) { 33116 composeBoolean("mustHaveValue", element.getMustHaveValueElement()); 33117 } 33118 if (element.hasValueAlternatives()) { 33119 for (CanonicalType e : element.getValueAlternatives()) 33120 composeCanonical("valueAlternatives", e); 33121 } 33122 if (element.hasMustSupportElement()) { 33123 composeBoolean("mustSupport", element.getMustSupportElement()); 33124 } 33125 if (element.hasIsModifierElement()) { 33126 composeBoolean("isModifier", element.getIsModifierElement()); 33127 } 33128 if (element.hasIsModifierReasonElement()) { 33129 composeString("isModifierReason", element.getIsModifierReasonElement()); 33130 } 33131 if (element.hasIsSummaryElement()) { 33132 composeBoolean("isSummary", element.getIsSummaryElement()); 33133 } 33134 if (element.hasBinding()) { 33135 composeElementDefinitionBindingComponent("binding", element.getBinding()); 33136 } 33137 if (element.hasMapping()) { 33138 for (ElementDefinition.ElementDefinitionMappingComponent e : element.getMapping()) 33139 composeElementDefinitionMappingComponent("mapping", e); 33140 } 33141 } 33142 33143 protected void composeElementDefinitionSlicingComponent(String name, ElementDefinition.ElementDefinitionSlicingComponent element) throws IOException { 33144 if (element != null) { 33145 composeElementAttributes(element); 33146 xml.enter(FHIR_NS, name); 33147 composeElementDefinitionSlicingComponentElements(element); 33148 composeElementClose(element); 33149 xml.exit(FHIR_NS, name); 33150 } 33151 } 33152 33153 protected void composeElementDefinitionSlicingComponentElements(ElementDefinition.ElementDefinitionSlicingComponent element) throws IOException { 33154 composeElementElements(element); 33155 if (element.hasDiscriminator()) { 33156 for (ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent e : element.getDiscriminator()) 33157 composeElementDefinitionSlicingDiscriminatorComponent("discriminator", e); 33158 } 33159 if (element.hasDescriptionElement()) { 33160 composeString("description", element.getDescriptionElement()); 33161 } 33162 if (element.hasOrderedElement()) { 33163 composeBoolean("ordered", element.getOrderedElement()); 33164 } 33165 if (element.hasRulesElement()) 33166 composeEnumeration("rules", element.getRulesElement(), new ElementDefinition.SlicingRulesEnumFactory()); 33167 } 33168 33169 protected void composeElementDefinitionSlicingDiscriminatorComponent(String name, ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent element) throws IOException { 33170 if (element != null) { 33171 composeElementAttributes(element); 33172 xml.enter(FHIR_NS, name); 33173 composeElementDefinitionSlicingDiscriminatorComponentElements(element); 33174 composeElementClose(element); 33175 xml.exit(FHIR_NS, name); 33176 } 33177 } 33178 33179 protected void composeElementDefinitionSlicingDiscriminatorComponentElements(ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent element) throws IOException { 33180 composeElementElements(element); 33181 if (element.hasTypeElement()) 33182 composeEnumeration("type", element.getTypeElement(), new ElementDefinition.DiscriminatorTypeEnumFactory()); 33183 if (element.hasPathElement()) { 33184 composeString("path", element.getPathElement()); 33185 } 33186 } 33187 33188 protected void composeElementDefinitionBaseComponent(String name, ElementDefinition.ElementDefinitionBaseComponent element) throws IOException { 33189 if (element != null) { 33190 composeElementAttributes(element); 33191 xml.enter(FHIR_NS, name); 33192 composeElementDefinitionBaseComponentElements(element); 33193 composeElementClose(element); 33194 xml.exit(FHIR_NS, name); 33195 } 33196 } 33197 33198 protected void composeElementDefinitionBaseComponentElements(ElementDefinition.ElementDefinitionBaseComponent element) throws IOException { 33199 composeElementElements(element); 33200 if (element.hasPathElement()) { 33201 composeString("path", element.getPathElement()); 33202 } 33203 if (element.hasMinElement()) { 33204 composeUnsignedInt("min", element.getMinElement()); 33205 } 33206 if (element.hasMaxElement()) { 33207 composeString("max", element.getMaxElement()); 33208 } 33209 } 33210 33211 protected void composeElementDefinitionTypeRefComponent(String name, ElementDefinition.TypeRefComponent element) throws IOException { 33212 if (element != null) { 33213 composeElementAttributes(element); 33214 xml.enter(FHIR_NS, name); 33215 composeElementDefinitionTypeRefComponentElements(element); 33216 composeElementClose(element); 33217 xml.exit(FHIR_NS, name); 33218 } 33219 } 33220 33221 protected void composeElementDefinitionTypeRefComponentElements(ElementDefinition.TypeRefComponent element) throws IOException { 33222 composeElementElements(element); 33223 if (element.hasCodeElement()) { 33224 composeUri("code", element.getCodeElement()); 33225 } 33226 if (element.hasProfile()) { 33227 for (CanonicalType e : element.getProfile()) 33228 composeCanonical("profile", e); 33229 } 33230 if (element.hasTargetProfile()) { 33231 for (CanonicalType e : element.getTargetProfile()) 33232 composeCanonical("targetProfile", e); 33233 } 33234 if (element.hasAggregation()) 33235 for (Enumeration<ElementDefinition.AggregationMode> e : element.getAggregation()) 33236 composeEnumeration("aggregation", e, new ElementDefinition.AggregationModeEnumFactory()); 33237 if (element.hasVersioningElement()) 33238 composeEnumeration("versioning", element.getVersioningElement(), new ElementDefinition.ReferenceVersionRulesEnumFactory()); 33239 } 33240 33241 protected void composeElementDefinitionExampleComponent(String name, ElementDefinition.ElementDefinitionExampleComponent element) throws IOException { 33242 if (element != null) { 33243 composeElementAttributes(element); 33244 xml.enter(FHIR_NS, name); 33245 composeElementDefinitionExampleComponentElements(element); 33246 composeElementClose(element); 33247 xml.exit(FHIR_NS, name); 33248 } 33249 } 33250 33251 protected void composeElementDefinitionExampleComponentElements(ElementDefinition.ElementDefinitionExampleComponent element) throws IOException { 33252 composeElementElements(element); 33253 if (element.hasLabelElement()) { 33254 composeString("label", element.getLabelElement()); 33255 } 33256 if (element.hasValue()) { 33257 composeType("value", element.getValue()); 33258 } } 33259 33260 protected void composeElementDefinitionConstraintComponent(String name, ElementDefinition.ElementDefinitionConstraintComponent element) throws IOException { 33261 if (element != null) { 33262 composeElementAttributes(element); 33263 xml.enter(FHIR_NS, name); 33264 composeElementDefinitionConstraintComponentElements(element); 33265 composeElementClose(element); 33266 xml.exit(FHIR_NS, name); 33267 } 33268 } 33269 33270 protected void composeElementDefinitionConstraintComponentElements(ElementDefinition.ElementDefinitionConstraintComponent element) throws IOException { 33271 composeElementElements(element); 33272 if (element.hasKeyElement()) { 33273 composeId("key", element.getKeyElement()); 33274 } 33275 if (element.hasRequirementsElement()) { 33276 composeMarkdown("requirements", element.getRequirementsElement()); 33277 } 33278 if (element.hasSeverityElement()) 33279 composeEnumeration("severity", element.getSeverityElement(), new ElementDefinition.ConstraintSeverityEnumFactory()); 33280 if (element.hasSuppressElement()) { 33281 composeBoolean("suppress", element.getSuppressElement()); 33282 } 33283 if (element.hasHumanElement()) { 33284 composeString("human", element.getHumanElement()); 33285 } 33286 if (element.hasExpressionElement()) { 33287 composeString("expression", element.getExpressionElement()); 33288 } 33289 if (element.hasSourceElement()) { 33290 composeCanonical("source", element.getSourceElement()); 33291 } 33292 } 33293 33294 protected void composeElementDefinitionBindingComponent(String name, ElementDefinition.ElementDefinitionBindingComponent element) throws IOException { 33295 if (element != null) { 33296 composeElementAttributes(element); 33297 xml.enter(FHIR_NS, name); 33298 composeElementDefinitionBindingComponentElements(element); 33299 composeElementClose(element); 33300 xml.exit(FHIR_NS, name); 33301 } 33302 } 33303 33304 protected void composeElementDefinitionBindingComponentElements(ElementDefinition.ElementDefinitionBindingComponent element) throws IOException { 33305 composeElementElements(element); 33306 if (element.hasStrengthElement()) 33307 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 33308 if (element.hasDescriptionElement()) { 33309 composeMarkdown("description", element.getDescriptionElement()); 33310 } 33311 if (element.hasValueSetElement()) { 33312 composeCanonical("valueSet", element.getValueSetElement()); 33313 } 33314 if (element.hasAdditional()) { 33315 for (ElementDefinition.ElementDefinitionBindingAdditionalComponent e : element.getAdditional()) 33316 composeElementDefinitionBindingAdditionalComponent("additional", e); 33317 } 33318 } 33319 33320 protected void composeElementDefinitionBindingAdditionalComponent(String name, ElementDefinition.ElementDefinitionBindingAdditionalComponent element) throws IOException { 33321 if (element != null) { 33322 composeElementAttributes(element); 33323 xml.enter(FHIR_NS, name); 33324 composeElementDefinitionBindingAdditionalComponentElements(element); 33325 composeElementClose(element); 33326 xml.exit(FHIR_NS, name); 33327 } 33328 } 33329 33330 protected void composeElementDefinitionBindingAdditionalComponentElements(ElementDefinition.ElementDefinitionBindingAdditionalComponent element) throws IOException { 33331 composeElementElements(element); 33332 if (element.hasPurposeElement()) 33333 composeEnumeration("purpose", element.getPurposeElement(), new ElementDefinition.AdditionalBindingPurposeVSEnumFactory()); 33334 if (element.hasValueSetElement()) { 33335 composeCanonical("valueSet", element.getValueSetElement()); 33336 } 33337 if (element.hasDocumentationElement()) { 33338 composeMarkdown("documentation", element.getDocumentationElement()); 33339 } 33340 if (element.hasShortDocoElement()) { 33341 composeString("shortDoco", element.getShortDocoElement()); 33342 } 33343 if (element.hasUsage()) { 33344 for (UsageContext e : element.getUsage()) 33345 composeUsageContext("usage", e); 33346 } 33347 if (element.hasAnyElement()) { 33348 composeBoolean("any", element.getAnyElement()); 33349 } 33350 } 33351 33352 protected void composeElementDefinitionMappingComponent(String name, ElementDefinition.ElementDefinitionMappingComponent element) throws IOException { 33353 if (element != null) { 33354 composeElementAttributes(element); 33355 xml.enter(FHIR_NS, name); 33356 composeElementDefinitionMappingComponentElements(element); 33357 composeElementClose(element); 33358 xml.exit(FHIR_NS, name); 33359 } 33360 } 33361 33362 protected void composeElementDefinitionMappingComponentElements(ElementDefinition.ElementDefinitionMappingComponent element) throws IOException { 33363 composeElementElements(element); 33364 if (element.hasIdentityElement()) { 33365 composeId("identity", element.getIdentityElement()); 33366 } 33367 if (element.hasLanguageElement()) { 33368 composeCode("language", element.getLanguageElement()); 33369 } 33370 if (element.hasMapElement()) { 33371 composeString("map", element.getMapElement()); 33372 } 33373 if (element.hasCommentElement()) { 33374 composeMarkdown("comment", element.getCommentElement()); 33375 } 33376 } 33377 33378 protected void composeExpression(String name, Expression element) throws IOException { 33379 if (element != null) { 33380 composeElementAttributes(element); 33381 xml.enter(FHIR_NS, name); 33382 composeExpressionElements(element); 33383 composeElementClose(element); 33384 xml.exit(FHIR_NS, name); 33385 } 33386 } 33387 33388 protected void composeExpressionElements(Expression element) throws IOException { 33389 composeDataTypeElements(element); 33390 if (element.hasDescriptionElement()) { 33391 composeString("description", element.getDescriptionElement()); 33392 } 33393 if (element.hasNameElement()) { 33394 composeCode("name", element.getNameElement()); 33395 } 33396 if (element.hasLanguageElement()) { 33397 composeCode("language", element.getLanguageElement()); 33398 } 33399 if (element.hasExpressionElement()) { 33400 composeString("expression", element.getExpressionElement()); 33401 } 33402 if (element.hasReferenceElement()) { 33403 composeUri("reference", element.getReferenceElement()); 33404 } 33405 } 33406 33407 protected void composeExtendedContactDetail(String name, ExtendedContactDetail element) throws IOException { 33408 if (element != null) { 33409 composeElementAttributes(element); 33410 xml.enter(FHIR_NS, name); 33411 composeExtendedContactDetailElements(element); 33412 composeElementClose(element); 33413 xml.exit(FHIR_NS, name); 33414 } 33415 } 33416 33417 protected void composeExtendedContactDetailElements(ExtendedContactDetail element) throws IOException { 33418 composeDataTypeElements(element); 33419 if (element.hasPurpose()) { 33420 composeCodeableConcept("purpose", element.getPurpose()); 33421 } 33422 if (element.hasName()) { 33423 for (HumanName e : element.getName()) 33424 composeHumanName("name", e); 33425 } 33426 if (element.hasTelecom()) { 33427 for (ContactPoint e : element.getTelecom()) 33428 composeContactPoint("telecom", e); 33429 } 33430 if (element.hasAddress()) { 33431 composeAddress("address", element.getAddress()); 33432 } 33433 if (element.hasOrganization()) { 33434 composeReference("organization", element.getOrganization()); 33435 } 33436 if (element.hasPeriod()) { 33437 composePeriod("period", element.getPeriod()); 33438 } 33439 } 33440 33441 protected void composeExtension(String name, Extension element) throws IOException { 33442 if (element != null) { 33443 composeElementAttributes(element); 33444 if (element.hasUrlElement()) 33445 xml.attribute("url", element.getUrlElement().getValue()); 33446 xml.enter(FHIR_NS, name); 33447 composeExtensionElements(element); 33448 composeElementClose(element); 33449 xml.exit(FHIR_NS, name); 33450 } 33451 } 33452 33453 protected void composeExtensionElements(Extension element) throws IOException { 33454 composeDataTypeElements(element); 33455 if (element.hasValue()) { 33456 composeType("value", element.getValue()); 33457 } } 33458 33459 protected void composeHumanName(String name, HumanName element) throws IOException { 33460 if (element != null) { 33461 composeElementAttributes(element); 33462 xml.enter(FHIR_NS, name); 33463 composeHumanNameElements(element); 33464 composeElementClose(element); 33465 xml.exit(FHIR_NS, name); 33466 } 33467 } 33468 33469 protected void composeHumanNameElements(HumanName element) throws IOException { 33470 composeDataTypeElements(element); 33471 if (element.hasUseElement()) 33472 composeEnumeration("use", element.getUseElement(), new HumanName.NameUseEnumFactory()); 33473 if (element.hasTextElement()) { 33474 composeString("text", element.getTextElement()); 33475 } 33476 if (element.hasFamilyElement()) { 33477 composeString("family", element.getFamilyElement()); 33478 } 33479 if (element.hasGiven()) { 33480 for (StringType e : element.getGiven()) 33481 composeString("given", e); 33482 } 33483 if (element.hasPrefix()) { 33484 for (StringType e : element.getPrefix()) 33485 composeString("prefix", e); 33486 } 33487 if (element.hasSuffix()) { 33488 for (StringType e : element.getSuffix()) 33489 composeString("suffix", e); 33490 } 33491 if (element.hasPeriod()) { 33492 composePeriod("period", element.getPeriod()); 33493 } 33494 } 33495 33496 protected void composeIdentifier(String name, Identifier element) throws IOException { 33497 if (element != null) { 33498 composeElementAttributes(element); 33499 xml.enter(FHIR_NS, name); 33500 composeIdentifierElements(element); 33501 composeElementClose(element); 33502 xml.exit(FHIR_NS, name); 33503 } 33504 } 33505 33506 protected void composeIdentifierElements(Identifier element) throws IOException { 33507 composeDataTypeElements(element); 33508 if (element.hasUseElement()) 33509 composeEnumeration("use", element.getUseElement(), new Identifier.IdentifierUseEnumFactory()); 33510 if (element.hasType()) { 33511 composeCodeableConcept("type", element.getType()); 33512 } 33513 if (element.hasSystemElement()) { 33514 composeUri("system", element.getSystemElement()); 33515 } 33516 if (element.hasValueElement()) { 33517 composeString("value", element.getValueElement()); 33518 } 33519 if (element.hasPeriod()) { 33520 composePeriod("period", element.getPeriod()); 33521 } 33522 if (element.hasAssigner()) { 33523 composeReference("assigner", element.getAssigner()); 33524 } 33525 } 33526 33527 protected void composeMarketingStatus(String name, MarketingStatus element) throws IOException { 33528 if (element != null) { 33529 composeElementAttributes(element); 33530 xml.enter(FHIR_NS, name); 33531 composeMarketingStatusElements(element); 33532 composeElementClose(element); 33533 xml.exit(FHIR_NS, name); 33534 } 33535 } 33536 33537 protected void composeMarketingStatusElements(MarketingStatus element) throws IOException { 33538 composeBackboneTypeElements(element); 33539 if (element.hasCountry()) { 33540 composeCodeableConcept("country", element.getCountry()); 33541 } 33542 if (element.hasJurisdiction()) { 33543 composeCodeableConcept("jurisdiction", element.getJurisdiction()); 33544 } 33545 if (element.hasStatus()) { 33546 composeCodeableConcept("status", element.getStatus()); 33547 } 33548 if (element.hasDateRange()) { 33549 composePeriod("dateRange", element.getDateRange()); 33550 } 33551 if (element.hasRestoreDateElement()) { 33552 composeDateTime("restoreDate", element.getRestoreDateElement()); 33553 } 33554 } 33555 33556 protected void composeMeta(String name, Meta element) throws IOException { 33557 if (element != null) { 33558 composeElementAttributes(element); 33559 xml.enter(FHIR_NS, name); 33560 composeMetaElements(element); 33561 composeElementClose(element); 33562 xml.exit(FHIR_NS, name); 33563 } 33564 } 33565 33566 protected void composeMetaElements(Meta element) throws IOException { 33567 composeDataTypeElements(element); 33568 if (element.hasVersionIdElement()) { 33569 composeId("versionId", element.getVersionIdElement()); 33570 } 33571 if (element.hasLastUpdatedElement()) { 33572 composeInstant("lastUpdated", element.getLastUpdatedElement()); 33573 } 33574 if (element.hasSourceElement()) { 33575 composeUri("source", element.getSourceElement()); 33576 } 33577 if (element.hasProfile()) { 33578 for (CanonicalType e : element.getProfile()) 33579 composeCanonical("profile", e); 33580 } 33581 if (element.hasSecurity()) { 33582 for (Coding e : element.getSecurity()) 33583 composeCoding("security", e); 33584 } 33585 if (element.hasTag()) { 33586 for (Coding e : element.getTag()) 33587 composeCoding("tag", e); 33588 } 33589 } 33590 33591 protected void composeMonetaryComponent(String name, MonetaryComponent element) throws IOException { 33592 if (element != null) { 33593 composeElementAttributes(element); 33594 xml.enter(FHIR_NS, name); 33595 composeMonetaryComponentElements(element); 33596 composeElementClose(element); 33597 xml.exit(FHIR_NS, name); 33598 } 33599 } 33600 33601 protected void composeMonetaryComponentElements(MonetaryComponent element) throws IOException { 33602 composeDataTypeElements(element); 33603 if (element.hasTypeElement()) 33604 composeEnumeration("type", element.getTypeElement(), new MonetaryComponent.PriceComponentTypeEnumFactory()); 33605 if (element.hasCode()) { 33606 composeCodeableConcept("code", element.getCode()); 33607 } 33608 if (element.hasFactorElement()) { 33609 composeDecimal("factor", element.getFactorElement()); 33610 } 33611 if (element.hasAmount()) { 33612 composeMoney("amount", element.getAmount()); 33613 } 33614 } 33615 33616 protected void composeMoney(String name, Money element) throws IOException { 33617 if (element != null) { 33618 composeElementAttributes(element); 33619 xml.enter(FHIR_NS, name); 33620 composeMoneyElements(element); 33621 composeElementClose(element); 33622 xml.exit(FHIR_NS, name); 33623 } 33624 } 33625 33626 protected void composeMoneyElements(Money element) throws IOException { 33627 composeDataTypeElements(element); 33628 if (element.hasValueElement()) { 33629 composeDecimal("value", element.getValueElement()); 33630 } 33631 if (element.hasCurrencyElement()) { 33632 composeCode("currency", element.getCurrencyElement()); 33633 } 33634 } 33635 33636 protected void composeNarrative(String name, Narrative element) throws IOException { 33637 if (element != null) { 33638 composeElementAttributes(element); 33639 xml.enter(FHIR_NS, name); 33640 composeNarrativeElements(element); 33641 composeElementClose(element); 33642 xml.exit(FHIR_NS, name); 33643 } 33644 } 33645 33646 protected void composeNarrativeElements(Narrative element) throws IOException { 33647 composeDataTypeElements(element); 33648 if (element.hasStatusElement()) 33649 composeEnumeration("status", element.getStatusElement(), new Narrative.NarrativeStatusEnumFactory()); 33650 if (element.hasDiv()) { 33651 composeXhtml("div", element.getDiv()); 33652 } 33653 } 33654 33655 protected void composeParameterDefinition(String name, ParameterDefinition element) throws IOException { 33656 if (element != null) { 33657 composeElementAttributes(element); 33658 xml.enter(FHIR_NS, name); 33659 composeParameterDefinitionElements(element); 33660 composeElementClose(element); 33661 xml.exit(FHIR_NS, name); 33662 } 33663 } 33664 33665 protected void composeParameterDefinitionElements(ParameterDefinition element) throws IOException { 33666 composeDataTypeElements(element); 33667 if (element.hasNameElement()) { 33668 composeCode("name", element.getNameElement()); 33669 } 33670 if (element.hasUseElement()) 33671 composeEnumeration("use", element.getUseElement(), new Enumerations.OperationParameterUseEnumFactory()); 33672 if (element.hasMinElement()) { 33673 composeInteger("min", element.getMinElement()); 33674 } 33675 if (element.hasMaxElement()) { 33676 composeString("max", element.getMaxElement()); 33677 } 33678 if (element.hasDocumentationElement()) { 33679 composeString("documentation", element.getDocumentationElement()); 33680 } 33681 if (element.hasTypeElement()) 33682 composeEnumeration("type", element.getTypeElement(), new Enumerations.FHIRTypesEnumFactory()); 33683 if (element.hasProfileElement()) { 33684 composeCanonical("profile", element.getProfileElement()); 33685 } 33686 } 33687 33688 protected void composePeriod(String name, Period element) throws IOException { 33689 if (element != null) { 33690 composeElementAttributes(element); 33691 xml.enter(FHIR_NS, name); 33692 composePeriodElements(element); 33693 composeElementClose(element); 33694 xml.exit(FHIR_NS, name); 33695 } 33696 } 33697 33698 protected void composePeriodElements(Period element) throws IOException { 33699 composeDataTypeElements(element); 33700 if (element.hasStartElement()) { 33701 composeDateTime("start", element.getStartElement()); 33702 } 33703 if (element.hasEndElement()) { 33704 composeDateTime("end", element.getEndElement()); 33705 } 33706 } 33707 33708 protected void composeProductShelfLife(String name, ProductShelfLife element) throws IOException { 33709 if (element != null) { 33710 composeElementAttributes(element); 33711 xml.enter(FHIR_NS, name); 33712 composeProductShelfLifeElements(element); 33713 composeElementClose(element); 33714 xml.exit(FHIR_NS, name); 33715 } 33716 } 33717 33718 protected void composeProductShelfLifeElements(ProductShelfLife element) throws IOException { 33719 composeBackboneTypeElements(element); 33720 if (element.hasType()) { 33721 composeCodeableConcept("type", element.getType()); 33722 } 33723 if (element.hasPeriod()) { 33724 composeType("period", element.getPeriod()); 33725 } if (element.hasSpecialPrecautionsForStorage()) { 33726 for (CodeableConcept e : element.getSpecialPrecautionsForStorage()) 33727 composeCodeableConcept("specialPrecautionsForStorage", e); 33728 } 33729 } 33730 33731 protected void composeQuantity(String name, Quantity element) throws IOException { 33732 if (element != null) { 33733 composeElementAttributes(element); 33734 xml.enter(FHIR_NS, name); 33735 composeQuantityElements(element); 33736 composeElementClose(element); 33737 xml.exit(FHIR_NS, name); 33738 } 33739 } 33740 33741 protected void composeQuantityElements(Quantity element) throws IOException { 33742 composeDataTypeElements(element); 33743 if (element.hasValueElement()) { 33744 composeDecimal("value", element.getValueElement()); 33745 } 33746 if (element.hasComparatorElement()) 33747 composeEnumeration("comparator", element.getComparatorElement(), new Enumerations.QuantityComparatorEnumFactory()); 33748 if (element.hasUnitElement()) { 33749 composeString("unit", element.getUnitElement()); 33750 } 33751 if (element.hasSystemElement()) { 33752 composeUri("system", element.getSystemElement()); 33753 } 33754 if (element.hasCodeElement()) { 33755 composeCode("code", element.getCodeElement()); 33756 } 33757 } 33758 33759 protected void composeRange(String name, Range element) throws IOException { 33760 if (element != null) { 33761 composeElementAttributes(element); 33762 xml.enter(FHIR_NS, name); 33763 composeRangeElements(element); 33764 composeElementClose(element); 33765 xml.exit(FHIR_NS, name); 33766 } 33767 } 33768 33769 protected void composeRangeElements(Range element) throws IOException { 33770 composeDataTypeElements(element); 33771 if (element.hasLow()) { 33772 composeQuantity("low", element.getLow()); 33773 } 33774 if (element.hasHigh()) { 33775 composeQuantity("high", element.getHigh()); 33776 } 33777 } 33778 33779 protected void composeRatio(String name, Ratio element) throws IOException { 33780 if (element != null) { 33781 composeElementAttributes(element); 33782 xml.enter(FHIR_NS, name); 33783 composeRatioElements(element); 33784 composeElementClose(element); 33785 xml.exit(FHIR_NS, name); 33786 } 33787 } 33788 33789 protected void composeRatioElements(Ratio element) throws IOException { 33790 composeDataTypeElements(element); 33791 if (element.hasNumerator()) { 33792 composeQuantity("numerator", element.getNumerator()); 33793 } 33794 if (element.hasDenominator()) { 33795 composeQuantity("denominator", element.getDenominator()); 33796 } 33797 } 33798 33799 protected void composeRatioRange(String name, RatioRange element) throws IOException { 33800 if (element != null) { 33801 composeElementAttributes(element); 33802 xml.enter(FHIR_NS, name); 33803 composeRatioRangeElements(element); 33804 composeElementClose(element); 33805 xml.exit(FHIR_NS, name); 33806 } 33807 } 33808 33809 protected void composeRatioRangeElements(RatioRange element) throws IOException { 33810 composeDataTypeElements(element); 33811 if (element.hasLowNumerator()) { 33812 composeQuantity("lowNumerator", element.getLowNumerator()); 33813 } 33814 if (element.hasHighNumerator()) { 33815 composeQuantity("highNumerator", element.getHighNumerator()); 33816 } 33817 if (element.hasDenominator()) { 33818 composeQuantity("denominator", element.getDenominator()); 33819 } 33820 } 33821 33822 protected void composeReference(String name, Reference element) throws IOException { 33823 if (element != null) { 33824 composeElementAttributes(element); 33825 xml.enter(FHIR_NS, name); 33826 composeReferenceElements(element); 33827 composeElementClose(element); 33828 xml.exit(FHIR_NS, name); 33829 } 33830 } 33831 33832 protected void composeReferenceElements(Reference element) throws IOException { 33833 composeDataTypeElements(element); 33834 if (element.hasReferenceElement()) { 33835 composeString("reference", element.getReferenceElement()); 33836 } 33837 if (element.hasTypeElement()) { 33838 composeUri("type", element.getTypeElement()); 33839 } 33840 if (element.hasIdentifier()) { 33841 composeIdentifier("identifier", element.getIdentifier()); 33842 } 33843 if (element.hasDisplayElement()) { 33844 composeString("display", element.getDisplayElement()); 33845 } 33846 } 33847 33848 protected void composeRelatedArtifact(String name, RelatedArtifact element) throws IOException { 33849 if (element != null) { 33850 composeElementAttributes(element); 33851 xml.enter(FHIR_NS, name); 33852 composeRelatedArtifactElements(element); 33853 composeElementClose(element); 33854 xml.exit(FHIR_NS, name); 33855 } 33856 } 33857 33858 protected void composeRelatedArtifactElements(RelatedArtifact element) throws IOException { 33859 composeDataTypeElements(element); 33860 if (element.hasTypeElement()) 33861 composeEnumeration("type", element.getTypeElement(), new RelatedArtifact.RelatedArtifactTypeEnumFactory()); 33862 if (element.hasClassifier()) { 33863 for (CodeableConcept e : element.getClassifier()) 33864 composeCodeableConcept("classifier", e); 33865 } 33866 if (element.hasLabelElement()) { 33867 composeString("label", element.getLabelElement()); 33868 } 33869 if (element.hasDisplayElement()) { 33870 composeString("display", element.getDisplayElement()); 33871 } 33872 if (element.hasCitationElement()) { 33873 composeMarkdown("citation", element.getCitationElement()); 33874 } 33875 if (element.hasDocument()) { 33876 composeAttachment("document", element.getDocument()); 33877 } 33878 if (element.hasResourceElement()) { 33879 composeCanonical("resource", element.getResourceElement()); 33880 } 33881 if (element.hasResourceReference()) { 33882 composeReference("resourceReference", element.getResourceReference()); 33883 } 33884 if (element.hasPublicationStatusElement()) 33885 composeEnumeration("publicationStatus", element.getPublicationStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 33886 if (element.hasPublicationDateElement()) { 33887 composeDate("publicationDate", element.getPublicationDateElement()); 33888 } 33889 } 33890 33891 protected void composeSampledData(String name, SampledData element) throws IOException { 33892 if (element != null) { 33893 composeElementAttributes(element); 33894 xml.enter(FHIR_NS, name); 33895 composeSampledDataElements(element); 33896 composeElementClose(element); 33897 xml.exit(FHIR_NS, name); 33898 } 33899 } 33900 33901 protected void composeSampledDataElements(SampledData element) throws IOException { 33902 composeDataTypeElements(element); 33903 if (element.hasOrigin()) { 33904 composeQuantity("origin", element.getOrigin()); 33905 } 33906 if (element.hasIntervalElement()) { 33907 composeDecimal("interval", element.getIntervalElement()); 33908 } 33909 if (element.hasIntervalUnitElement()) { 33910 composeCode("intervalUnit", element.getIntervalUnitElement()); 33911 } 33912 if (element.hasFactorElement()) { 33913 composeDecimal("factor", element.getFactorElement()); 33914 } 33915 if (element.hasLowerLimitElement()) { 33916 composeDecimal("lowerLimit", element.getLowerLimitElement()); 33917 } 33918 if (element.hasUpperLimitElement()) { 33919 composeDecimal("upperLimit", element.getUpperLimitElement()); 33920 } 33921 if (element.hasDimensionsElement()) { 33922 composePositiveInt("dimensions", element.getDimensionsElement()); 33923 } 33924 if (element.hasCodeMapElement()) { 33925 composeCanonical("codeMap", element.getCodeMapElement()); 33926 } 33927 if (element.hasOffsetsElement()) { 33928 composeString("offsets", element.getOffsetsElement()); 33929 } 33930 if (element.hasDataElement()) { 33931 composeString("data", element.getDataElement()); 33932 } 33933 } 33934 33935 protected void composeSignature(String name, Signature element) throws IOException { 33936 if (element != null) { 33937 composeElementAttributes(element); 33938 xml.enter(FHIR_NS, name); 33939 composeSignatureElements(element); 33940 composeElementClose(element); 33941 xml.exit(FHIR_NS, name); 33942 } 33943 } 33944 33945 protected void composeSignatureElements(Signature element) throws IOException { 33946 composeDataTypeElements(element); 33947 if (element.hasType()) { 33948 for (Coding e : element.getType()) 33949 composeCoding("type", e); 33950 } 33951 if (element.hasWhenElement()) { 33952 composeInstant("when", element.getWhenElement()); 33953 } 33954 if (element.hasWho()) { 33955 composeReference("who", element.getWho()); 33956 } 33957 if (element.hasOnBehalfOf()) { 33958 composeReference("onBehalfOf", element.getOnBehalfOf()); 33959 } 33960 if (element.hasTargetFormatElement()) { 33961 composeCode("targetFormat", element.getTargetFormatElement()); 33962 } 33963 if (element.hasSigFormatElement()) { 33964 composeCode("sigFormat", element.getSigFormatElement()); 33965 } 33966 if (element.hasDataElement()) { 33967 composeBase64Binary("data", element.getDataElement()); 33968 } 33969 } 33970 33971 protected void composeTiming(String name, Timing element) throws IOException { 33972 if (element != null) { 33973 composeElementAttributes(element); 33974 xml.enter(FHIR_NS, name); 33975 composeTimingElements(element); 33976 composeElementClose(element); 33977 xml.exit(FHIR_NS, name); 33978 } 33979 } 33980 33981 protected void composeTimingElements(Timing element) throws IOException { 33982 composeBackboneTypeElements(element); 33983 if (element.hasEvent()) { 33984 for (DateTimeType e : element.getEvent()) 33985 composeDateTime("event", e); 33986 } 33987 if (element.hasRepeat()) { 33988 composeTimingRepeatComponent("repeat", element.getRepeat()); 33989 } 33990 if (element.hasCode()) { 33991 composeCodeableConcept("code", element.getCode()); 33992 } 33993 } 33994 33995 protected void composeTimingRepeatComponent(String name, Timing.TimingRepeatComponent element) throws IOException { 33996 if (element != null) { 33997 composeElementAttributes(element); 33998 xml.enter(FHIR_NS, name); 33999 composeTimingRepeatComponentElements(element); 34000 composeElementClose(element); 34001 xml.exit(FHIR_NS, name); 34002 } 34003 } 34004 34005 protected void composeTimingRepeatComponentElements(Timing.TimingRepeatComponent element) throws IOException { 34006 composeElementElements(element); 34007 if (element.hasBounds()) { 34008 composeType("bounds", element.getBounds()); 34009 } if (element.hasCountElement()) { 34010 composePositiveInt("count", element.getCountElement()); 34011 } 34012 if (element.hasCountMaxElement()) { 34013 composePositiveInt("countMax", element.getCountMaxElement()); 34014 } 34015 if (element.hasDurationElement()) { 34016 composeDecimal("duration", element.getDurationElement()); 34017 } 34018 if (element.hasDurationMaxElement()) { 34019 composeDecimal("durationMax", element.getDurationMaxElement()); 34020 } 34021 if (element.hasDurationUnitElement()) 34022 composeEnumeration("durationUnit", element.getDurationUnitElement(), new Timing.UnitsOfTimeEnumFactory()); 34023 if (element.hasFrequencyElement()) { 34024 composePositiveInt("frequency", element.getFrequencyElement()); 34025 } 34026 if (element.hasFrequencyMaxElement()) { 34027 composePositiveInt("frequencyMax", element.getFrequencyMaxElement()); 34028 } 34029 if (element.hasPeriodElement()) { 34030 composeDecimal("period", element.getPeriodElement()); 34031 } 34032 if (element.hasPeriodMaxElement()) { 34033 composeDecimal("periodMax", element.getPeriodMaxElement()); 34034 } 34035 if (element.hasPeriodUnitElement()) 34036 composeEnumeration("periodUnit", element.getPeriodUnitElement(), new Timing.UnitsOfTimeEnumFactory()); 34037 if (element.hasDayOfWeek()) 34038 for (Enumeration<Enumerations.DaysOfWeek> e : element.getDayOfWeek()) 34039 composeEnumeration("dayOfWeek", e, new Enumerations.DaysOfWeekEnumFactory()); 34040 if (element.hasTimeOfDay()) { 34041 for (TimeType e : element.getTimeOfDay()) 34042 composeTime("timeOfDay", e); 34043 } 34044 if (element.hasWhen()) 34045 for (Enumeration<Timing.EventTiming> e : element.getWhen()) 34046 composeEnumeration("when", e, new Timing.EventTimingEnumFactory()); 34047 if (element.hasOffsetElement()) { 34048 composeUnsignedInt("offset", element.getOffsetElement()); 34049 } 34050 } 34051 34052 protected void composeTriggerDefinition(String name, TriggerDefinition element) throws IOException { 34053 if (element != null) { 34054 composeElementAttributes(element); 34055 xml.enter(FHIR_NS, name); 34056 composeTriggerDefinitionElements(element); 34057 composeElementClose(element); 34058 xml.exit(FHIR_NS, name); 34059 } 34060 } 34061 34062 protected void composeTriggerDefinitionElements(TriggerDefinition element) throws IOException { 34063 composeDataTypeElements(element); 34064 if (element.hasTypeElement()) 34065 composeEnumeration("type", element.getTypeElement(), new TriggerDefinition.TriggerTypeEnumFactory()); 34066 if (element.hasNameElement()) { 34067 composeString("name", element.getNameElement()); 34068 } 34069 if (element.hasCode()) { 34070 composeCodeableConcept("code", element.getCode()); 34071 } 34072 if (element.hasSubscriptionTopicElement()) { 34073 composeCanonical("subscriptionTopic", element.getSubscriptionTopicElement()); 34074 } 34075 if (element.hasTiming()) { 34076 composeType("timing", element.getTiming()); 34077 } if (element.hasData()) { 34078 for (DataRequirement e : element.getData()) 34079 composeDataRequirement("data", e); 34080 } 34081 if (element.hasCondition()) { 34082 composeExpression("condition", element.getCondition()); 34083 } 34084 } 34085 34086 protected void composeUsageContext(String name, UsageContext element) throws IOException { 34087 if (element != null) { 34088 composeElementAttributes(element); 34089 xml.enter(FHIR_NS, name); 34090 composeUsageContextElements(element); 34091 composeElementClose(element); 34092 xml.exit(FHIR_NS, name); 34093 } 34094 } 34095 34096 protected void composeUsageContextElements(UsageContext element) throws IOException { 34097 composeDataTypeElements(element); 34098 if (element.hasCode()) { 34099 composeCoding("code", element.getCode()); 34100 } 34101 if (element.hasValue()) { 34102 composeType("value", element.getValue()); 34103 } } 34104 34105 protected void composeVirtualServiceDetail(String name, VirtualServiceDetail element) throws IOException { 34106 if (element != null) { 34107 composeElementAttributes(element); 34108 xml.enter(FHIR_NS, name); 34109 composeVirtualServiceDetailElements(element); 34110 composeElementClose(element); 34111 xml.exit(FHIR_NS, name); 34112 } 34113 } 34114 34115 protected void composeVirtualServiceDetailElements(VirtualServiceDetail element) throws IOException { 34116 composeDataTypeElements(element); 34117 if (element.hasChannelType()) { 34118 composeCoding("channelType", element.getChannelType()); 34119 } 34120 if (element.hasAddress()) { 34121 composeType("address", element.getAddress()); 34122 } if (element.hasAdditionalInfo()) { 34123 for (UrlType e : element.getAdditionalInfo()) 34124 composeUrl("additionalInfo", e); 34125 } 34126 if (element.hasMaxParticipantsElement()) { 34127 composePositiveInt("maxParticipants", element.getMaxParticipantsElement()); 34128 } 34129 if (element.hasSessionKeyElement()) { 34130 composeString("sessionKey", element.getSessionKeyElement()); 34131 } 34132 } 34133 34134 protected void composeCanonicalResourceElements(CanonicalResource element) throws IOException { 34135 composeDomainResourceElements(element); 34136 } 34137 34138 protected void composeDomainResourceElements(DomainResource element) throws IOException { 34139 composeResourceElements(element); 34140 if (element.hasText()) { 34141 composeNarrative("text", element.getText()); 34142 } 34143 if (element.hasContained()) { 34144 for (Resource e : element.getContained()) 34145 { 34146 xml.enter(FHIR_NS, "contained"); 34147 composeResource(e); 34148 xml.exit(FHIR_NS, "contained"); 34149 } 34150 } 34151 if (element.hasExtension()) { 34152 for (Extension e : element.getExtension()) 34153 composeExtension("extension", e); 34154 } 34155 if (element.hasModifierExtension()) { 34156 for (Extension e : element.getModifierExtension()) 34157 composeExtension("modifierExtension", e); 34158 } 34159 } 34160 34161 protected void composeMetadataResourceElements(MetadataResource element) throws IOException { 34162 composeCanonicalResourceElements(element); 34163 } 34164 34165 protected void composeResourceElements(Resource element) throws IOException { 34166 composeBaseElements(element); 34167 if (element.hasIdElement()) { 34168 composeId("id", element.getIdElement()); 34169 } 34170 if (element.hasMeta()) { 34171 composeMeta("meta", element.getMeta()); 34172 } 34173 if (element.hasImplicitRulesElement()) { 34174 composeUri("implicitRules", element.getImplicitRulesElement()); 34175 } 34176 if (element.hasLanguageElement()) { 34177 composeCode("language", element.getLanguageElement()); 34178 } 34179 } 34180 34181 protected void composeAccount(String name, Account element) throws IOException { 34182 if (element != null) { 34183 composeResourceAttributes(element); 34184 xml.enter(FHIR_NS, name); 34185 composeAccountElements(element); 34186 composeElementClose(element); 34187 xml.exit(FHIR_NS, name); 34188 } 34189 } 34190 34191 protected void composeAccountElements(Account element) throws IOException { 34192 composeDomainResourceElements(element); 34193 if (element.hasIdentifier()) { 34194 for (Identifier e : element.getIdentifier()) 34195 composeIdentifier("identifier", e); 34196 } 34197 if (element.hasStatusElement()) 34198 composeEnumeration("status", element.getStatusElement(), new Account.AccountStatusEnumFactory()); 34199 if (element.hasBillingStatus()) { 34200 composeCodeableConcept("billingStatus", element.getBillingStatus()); 34201 } 34202 if (element.hasType()) { 34203 composeCodeableConcept("type", element.getType()); 34204 } 34205 if (element.hasNameElement()) { 34206 composeString("name", element.getNameElement()); 34207 } 34208 if (element.hasSubject()) { 34209 for (Reference e : element.getSubject()) 34210 composeReference("subject", e); 34211 } 34212 if (element.hasServicePeriod()) { 34213 composePeriod("servicePeriod", element.getServicePeriod()); 34214 } 34215 if (element.hasCoverage()) { 34216 for (Account.CoverageComponent e : element.getCoverage()) 34217 composeAccountCoverageComponent("coverage", e); 34218 } 34219 if (element.hasOwner()) { 34220 composeReference("owner", element.getOwner()); 34221 } 34222 if (element.hasDescriptionElement()) { 34223 composeMarkdown("description", element.getDescriptionElement()); 34224 } 34225 if (element.hasGuarantor()) { 34226 for (Account.GuarantorComponent e : element.getGuarantor()) 34227 composeAccountGuarantorComponent("guarantor", e); 34228 } 34229 if (element.hasDiagnosis()) { 34230 for (Account.AccountDiagnosisComponent e : element.getDiagnosis()) 34231 composeAccountDiagnosisComponent("diagnosis", e); 34232 } 34233 if (element.hasProcedure()) { 34234 for (Account.AccountProcedureComponent e : element.getProcedure()) 34235 composeAccountProcedureComponent("procedure", e); 34236 } 34237 if (element.hasRelatedAccount()) { 34238 for (Account.AccountRelatedAccountComponent e : element.getRelatedAccount()) 34239 composeAccountRelatedAccountComponent("relatedAccount", e); 34240 } 34241 if (element.hasCurrency()) { 34242 composeCodeableConcept("currency", element.getCurrency()); 34243 } 34244 if (element.hasBalance()) { 34245 for (Account.AccountBalanceComponent e : element.getBalance()) 34246 composeAccountBalanceComponent("balance", e); 34247 } 34248 if (element.hasCalculatedAtElement()) { 34249 composeInstant("calculatedAt", element.getCalculatedAtElement()); 34250 } 34251 } 34252 34253 protected void composeAccountCoverageComponent(String name, Account.CoverageComponent element) throws IOException { 34254 if (element != null) { 34255 composeElementAttributes(element); 34256 xml.enter(FHIR_NS, name); 34257 composeAccountCoverageComponentElements(element); 34258 composeElementClose(element); 34259 xml.exit(FHIR_NS, name); 34260 } 34261 } 34262 34263 protected void composeAccountCoverageComponentElements(Account.CoverageComponent element) throws IOException { 34264 composeBackboneElementElements(element); 34265 if (element.hasCoverage()) { 34266 composeReference("coverage", element.getCoverage()); 34267 } 34268 if (element.hasPriorityElement()) { 34269 composePositiveInt("priority", element.getPriorityElement()); 34270 } 34271 } 34272 34273 protected void composeAccountGuarantorComponent(String name, Account.GuarantorComponent element) throws IOException { 34274 if (element != null) { 34275 composeElementAttributes(element); 34276 xml.enter(FHIR_NS, name); 34277 composeAccountGuarantorComponentElements(element); 34278 composeElementClose(element); 34279 xml.exit(FHIR_NS, name); 34280 } 34281 } 34282 34283 protected void composeAccountGuarantorComponentElements(Account.GuarantorComponent element) throws IOException { 34284 composeBackboneElementElements(element); 34285 if (element.hasParty()) { 34286 composeReference("party", element.getParty()); 34287 } 34288 if (element.hasOnHoldElement()) { 34289 composeBoolean("onHold", element.getOnHoldElement()); 34290 } 34291 if (element.hasPeriod()) { 34292 composePeriod("period", element.getPeriod()); 34293 } 34294 } 34295 34296 protected void composeAccountDiagnosisComponent(String name, Account.AccountDiagnosisComponent element) throws IOException { 34297 if (element != null) { 34298 composeElementAttributes(element); 34299 xml.enter(FHIR_NS, name); 34300 composeAccountDiagnosisComponentElements(element); 34301 composeElementClose(element); 34302 xml.exit(FHIR_NS, name); 34303 } 34304 } 34305 34306 protected void composeAccountDiagnosisComponentElements(Account.AccountDiagnosisComponent element) throws IOException { 34307 composeBackboneElementElements(element); 34308 if (element.hasSequenceElement()) { 34309 composePositiveInt("sequence", element.getSequenceElement()); 34310 } 34311 if (element.hasCondition()) { 34312 composeCodeableReference("condition", element.getCondition()); 34313 } 34314 if (element.hasDateOfDiagnosisElement()) { 34315 composeDateTime("dateOfDiagnosis", element.getDateOfDiagnosisElement()); 34316 } 34317 if (element.hasType()) { 34318 for (CodeableConcept e : element.getType()) 34319 composeCodeableConcept("type", e); 34320 } 34321 if (element.hasOnAdmissionElement()) { 34322 composeBoolean("onAdmission", element.getOnAdmissionElement()); 34323 } 34324 if (element.hasPackageCode()) { 34325 for (CodeableConcept e : element.getPackageCode()) 34326 composeCodeableConcept("packageCode", e); 34327 } 34328 } 34329 34330 protected void composeAccountProcedureComponent(String name, Account.AccountProcedureComponent element) throws IOException { 34331 if (element != null) { 34332 composeElementAttributes(element); 34333 xml.enter(FHIR_NS, name); 34334 composeAccountProcedureComponentElements(element); 34335 composeElementClose(element); 34336 xml.exit(FHIR_NS, name); 34337 } 34338 } 34339 34340 protected void composeAccountProcedureComponentElements(Account.AccountProcedureComponent element) throws IOException { 34341 composeBackboneElementElements(element); 34342 if (element.hasSequenceElement()) { 34343 composePositiveInt("sequence", element.getSequenceElement()); 34344 } 34345 if (element.hasCode()) { 34346 composeCodeableReference("code", element.getCode()); 34347 } 34348 if (element.hasDateOfServiceElement()) { 34349 composeDateTime("dateOfService", element.getDateOfServiceElement()); 34350 } 34351 if (element.hasType()) { 34352 for (CodeableConcept e : element.getType()) 34353 composeCodeableConcept("type", e); 34354 } 34355 if (element.hasPackageCode()) { 34356 for (CodeableConcept e : element.getPackageCode()) 34357 composeCodeableConcept("packageCode", e); 34358 } 34359 if (element.hasDevice()) { 34360 for (Reference e : element.getDevice()) 34361 composeReference("device", e); 34362 } 34363 } 34364 34365 protected void composeAccountRelatedAccountComponent(String name, Account.AccountRelatedAccountComponent element) throws IOException { 34366 if (element != null) { 34367 composeElementAttributes(element); 34368 xml.enter(FHIR_NS, name); 34369 composeAccountRelatedAccountComponentElements(element); 34370 composeElementClose(element); 34371 xml.exit(FHIR_NS, name); 34372 } 34373 } 34374 34375 protected void composeAccountRelatedAccountComponentElements(Account.AccountRelatedAccountComponent element) throws IOException { 34376 composeBackboneElementElements(element); 34377 if (element.hasRelationship()) { 34378 composeCodeableConcept("relationship", element.getRelationship()); 34379 } 34380 if (element.hasAccount()) { 34381 composeReference("account", element.getAccount()); 34382 } 34383 } 34384 34385 protected void composeAccountBalanceComponent(String name, Account.AccountBalanceComponent element) throws IOException { 34386 if (element != null) { 34387 composeElementAttributes(element); 34388 xml.enter(FHIR_NS, name); 34389 composeAccountBalanceComponentElements(element); 34390 composeElementClose(element); 34391 xml.exit(FHIR_NS, name); 34392 } 34393 } 34394 34395 protected void composeAccountBalanceComponentElements(Account.AccountBalanceComponent element) throws IOException { 34396 composeBackboneElementElements(element); 34397 if (element.hasAggregate()) { 34398 composeCodeableConcept("aggregate", element.getAggregate()); 34399 } 34400 if (element.hasTerm()) { 34401 composeCodeableConcept("term", element.getTerm()); 34402 } 34403 if (element.hasEstimateElement()) { 34404 composeBoolean("estimate", element.getEstimateElement()); 34405 } 34406 if (element.hasAmount()) { 34407 composeMoney("amount", element.getAmount()); 34408 } 34409 } 34410 34411 protected void composeActivityDefinition(String name, ActivityDefinition element) throws IOException { 34412 if (element != null) { 34413 composeResourceAttributes(element); 34414 xml.enter(FHIR_NS, name); 34415 composeActivityDefinitionElements(element); 34416 composeElementClose(element); 34417 xml.exit(FHIR_NS, name); 34418 } 34419 } 34420 34421 protected void composeActivityDefinitionElements(ActivityDefinition element) throws IOException { 34422 composeMetadataResourceElements(element); 34423 if (element.hasUrlElement()) { 34424 composeUri("url", element.getUrlElement()); 34425 } 34426 if (element.hasIdentifier()) { 34427 for (Identifier e : element.getIdentifier()) 34428 composeIdentifier("identifier", e); 34429 } 34430 if (element.hasVersionElement()) { 34431 composeString("version", element.getVersionElement()); 34432 } 34433 if (element.hasVersionAlgorithm()) { 34434 composeType("versionAlgorithm", element.getVersionAlgorithm()); 34435 } if (element.hasNameElement()) { 34436 composeString("name", element.getNameElement()); 34437 } 34438 if (element.hasTitleElement()) { 34439 composeString("title", element.getTitleElement()); 34440 } 34441 if (element.hasSubtitleElement()) { 34442 composeString("subtitle", element.getSubtitleElement()); 34443 } 34444 if (element.hasStatusElement()) 34445 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34446 if (element.hasExperimentalElement()) { 34447 composeBoolean("experimental", element.getExperimentalElement()); 34448 } 34449 if (element.hasSubject()) { 34450 composeType("subject", element.getSubject()); 34451 } if (element.hasDateElement()) { 34452 composeDateTime("date", element.getDateElement()); 34453 } 34454 if (element.hasPublisherElement()) { 34455 composeString("publisher", element.getPublisherElement()); 34456 } 34457 if (element.hasContact()) { 34458 for (ContactDetail e : element.getContact()) 34459 composeContactDetail("contact", e); 34460 } 34461 if (element.hasDescriptionElement()) { 34462 composeMarkdown("description", element.getDescriptionElement()); 34463 } 34464 if (element.hasUseContext()) { 34465 for (UsageContext e : element.getUseContext()) 34466 composeUsageContext("useContext", e); 34467 } 34468 if (element.hasJurisdiction()) { 34469 for (CodeableConcept e : element.getJurisdiction()) 34470 composeCodeableConcept("jurisdiction", e); 34471 } 34472 if (element.hasPurposeElement()) { 34473 composeMarkdown("purpose", element.getPurposeElement()); 34474 } 34475 if (element.hasUsageElement()) { 34476 composeMarkdown("usage", element.getUsageElement()); 34477 } 34478 if (element.hasCopyrightElement()) { 34479 composeMarkdown("copyright", element.getCopyrightElement()); 34480 } 34481 if (element.hasCopyrightLabelElement()) { 34482 composeString("copyrightLabel", element.getCopyrightLabelElement()); 34483 } 34484 if (element.hasApprovalDateElement()) { 34485 composeDate("approvalDate", element.getApprovalDateElement()); 34486 } 34487 if (element.hasLastReviewDateElement()) { 34488 composeDate("lastReviewDate", element.getLastReviewDateElement()); 34489 } 34490 if (element.hasEffectivePeriod()) { 34491 composePeriod("effectivePeriod", element.getEffectivePeriod()); 34492 } 34493 if (element.hasTopic()) { 34494 for (CodeableConcept e : element.getTopic()) 34495 composeCodeableConcept("topic", e); 34496 } 34497 if (element.hasAuthor()) { 34498 for (ContactDetail e : element.getAuthor()) 34499 composeContactDetail("author", e); 34500 } 34501 if (element.hasEditor()) { 34502 for (ContactDetail e : element.getEditor()) 34503 composeContactDetail("editor", e); 34504 } 34505 if (element.hasReviewer()) { 34506 for (ContactDetail e : element.getReviewer()) 34507 composeContactDetail("reviewer", e); 34508 } 34509 if (element.hasEndorser()) { 34510 for (ContactDetail e : element.getEndorser()) 34511 composeContactDetail("endorser", e); 34512 } 34513 if (element.hasRelatedArtifact()) { 34514 for (RelatedArtifact e : element.getRelatedArtifact()) 34515 composeRelatedArtifact("relatedArtifact", e); 34516 } 34517 if (element.hasLibrary()) { 34518 for (CanonicalType e : element.getLibrary()) 34519 composeCanonical("library", e); 34520 } 34521 if (element.hasKindElement()) 34522 composeEnumeration("kind", element.getKindElement(), new ActivityDefinition.RequestResourceTypesEnumFactory()); 34523 if (element.hasProfileElement()) { 34524 composeCanonical("profile", element.getProfileElement()); 34525 } 34526 if (element.hasCode()) { 34527 composeCodeableConcept("code", element.getCode()); 34528 } 34529 if (element.hasIntentElement()) 34530 composeEnumeration("intent", element.getIntentElement(), new Enumerations.RequestIntentEnumFactory()); 34531 if (element.hasPriorityElement()) 34532 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 34533 if (element.hasDoNotPerformElement()) { 34534 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 34535 } 34536 if (element.hasTiming()) { 34537 composeType("timing", element.getTiming()); 34538 } if (element.hasAsNeeded()) { 34539 composeType("asNeeded", element.getAsNeeded()); 34540 } if (element.hasLocation()) { 34541 composeCodeableReference("location", element.getLocation()); 34542 } 34543 if (element.hasParticipant()) { 34544 for (ActivityDefinition.ActivityDefinitionParticipantComponent e : element.getParticipant()) 34545 composeActivityDefinitionParticipantComponent("participant", e); 34546 } 34547 if (element.hasProduct()) { 34548 composeType("product", element.getProduct()); 34549 } if (element.hasQuantity()) { 34550 composeQuantity("quantity", element.getQuantity()); 34551 } 34552 if (element.hasDosage()) { 34553 for (Dosage e : element.getDosage()) 34554 composeDosage("dosage", e); 34555 } 34556 if (element.hasBodySite()) { 34557 for (CodeableConcept e : element.getBodySite()) 34558 composeCodeableConcept("bodySite", e); 34559 } 34560 if (element.hasSpecimenRequirement()) { 34561 for (CanonicalType e : element.getSpecimenRequirement()) 34562 composeCanonical("specimenRequirement", e); 34563 } 34564 if (element.hasObservationRequirement()) { 34565 for (CanonicalType e : element.getObservationRequirement()) 34566 composeCanonical("observationRequirement", e); 34567 } 34568 if (element.hasObservationResultRequirement()) { 34569 for (CanonicalType e : element.getObservationResultRequirement()) 34570 composeCanonical("observationResultRequirement", e); 34571 } 34572 if (element.hasTransformElement()) { 34573 composeCanonical("transform", element.getTransformElement()); 34574 } 34575 if (element.hasDynamicValue()) { 34576 for (ActivityDefinition.ActivityDefinitionDynamicValueComponent e : element.getDynamicValue()) 34577 composeActivityDefinitionDynamicValueComponent("dynamicValue", e); 34578 } 34579 } 34580 34581 protected void composeActivityDefinitionParticipantComponent(String name, ActivityDefinition.ActivityDefinitionParticipantComponent element) throws IOException { 34582 if (element != null) { 34583 composeElementAttributes(element); 34584 xml.enter(FHIR_NS, name); 34585 composeActivityDefinitionParticipantComponentElements(element); 34586 composeElementClose(element); 34587 xml.exit(FHIR_NS, name); 34588 } 34589 } 34590 34591 protected void composeActivityDefinitionParticipantComponentElements(ActivityDefinition.ActivityDefinitionParticipantComponent element) throws IOException { 34592 composeBackboneElementElements(element); 34593 if (element.hasTypeElement()) 34594 composeEnumeration("type", element.getTypeElement(), new Enumerations.ActionParticipantTypeEnumFactory()); 34595 if (element.hasTypeCanonicalElement()) { 34596 composeCanonical("typeCanonical", element.getTypeCanonicalElement()); 34597 } 34598 if (element.hasTypeReference()) { 34599 composeReference("typeReference", element.getTypeReference()); 34600 } 34601 if (element.hasRole()) { 34602 composeCodeableConcept("role", element.getRole()); 34603 } 34604 if (element.hasFunction()) { 34605 composeCodeableConcept("function", element.getFunction()); 34606 } 34607 } 34608 34609 protected void composeActivityDefinitionDynamicValueComponent(String name, ActivityDefinition.ActivityDefinitionDynamicValueComponent element) throws IOException { 34610 if (element != null) { 34611 composeElementAttributes(element); 34612 xml.enter(FHIR_NS, name); 34613 composeActivityDefinitionDynamicValueComponentElements(element); 34614 composeElementClose(element); 34615 xml.exit(FHIR_NS, name); 34616 } 34617 } 34618 34619 protected void composeActivityDefinitionDynamicValueComponentElements(ActivityDefinition.ActivityDefinitionDynamicValueComponent element) throws IOException { 34620 composeBackboneElementElements(element); 34621 if (element.hasPathElement()) { 34622 composeString("path", element.getPathElement()); 34623 } 34624 if (element.hasExpression()) { 34625 composeExpression("expression", element.getExpression()); 34626 } 34627 } 34628 34629 protected void composeActorDefinition(String name, ActorDefinition element) throws IOException { 34630 if (element != null) { 34631 composeResourceAttributes(element); 34632 xml.enter(FHIR_NS, name); 34633 composeActorDefinitionElements(element); 34634 composeElementClose(element); 34635 xml.exit(FHIR_NS, name); 34636 } 34637 } 34638 34639 protected void composeActorDefinitionElements(ActorDefinition element) throws IOException { 34640 composeCanonicalResourceElements(element); 34641 if (element.hasUrlElement()) { 34642 composeUri("url", element.getUrlElement()); 34643 } 34644 if (element.hasIdentifier()) { 34645 for (Identifier e : element.getIdentifier()) 34646 composeIdentifier("identifier", e); 34647 } 34648 if (element.hasVersionElement()) { 34649 composeString("version", element.getVersionElement()); 34650 } 34651 if (element.hasVersionAlgorithm()) { 34652 composeType("versionAlgorithm", element.getVersionAlgorithm()); 34653 } if (element.hasNameElement()) { 34654 composeString("name", element.getNameElement()); 34655 } 34656 if (element.hasTitleElement()) { 34657 composeString("title", element.getTitleElement()); 34658 } 34659 if (element.hasStatusElement()) 34660 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34661 if (element.hasExperimentalElement()) { 34662 composeBoolean("experimental", element.getExperimentalElement()); 34663 } 34664 if (element.hasDateElement()) { 34665 composeDateTime("date", element.getDateElement()); 34666 } 34667 if (element.hasPublisherElement()) { 34668 composeString("publisher", element.getPublisherElement()); 34669 } 34670 if (element.hasContact()) { 34671 for (ContactDetail e : element.getContact()) 34672 composeContactDetail("contact", e); 34673 } 34674 if (element.hasDescriptionElement()) { 34675 composeMarkdown("description", element.getDescriptionElement()); 34676 } 34677 if (element.hasUseContext()) { 34678 for (UsageContext e : element.getUseContext()) 34679 composeUsageContext("useContext", e); 34680 } 34681 if (element.hasJurisdiction()) { 34682 for (CodeableConcept e : element.getJurisdiction()) 34683 composeCodeableConcept("jurisdiction", e); 34684 } 34685 if (element.hasPurposeElement()) { 34686 composeMarkdown("purpose", element.getPurposeElement()); 34687 } 34688 if (element.hasCopyrightElement()) { 34689 composeMarkdown("copyright", element.getCopyrightElement()); 34690 } 34691 if (element.hasCopyrightLabelElement()) { 34692 composeString("copyrightLabel", element.getCopyrightLabelElement()); 34693 } 34694 if (element.hasTypeElement()) 34695 composeEnumeration("type", element.getTypeElement(), new Enumerations.ExampleScenarioActorTypeEnumFactory()); 34696 if (element.hasDocumentationElement()) { 34697 composeMarkdown("documentation", element.getDocumentationElement()); 34698 } 34699 if (element.hasReference()) { 34700 for (UrlType e : element.getReference()) 34701 composeUrl("reference", e); 34702 } 34703 if (element.hasCapabilitiesElement()) { 34704 composeCanonical("capabilities", element.getCapabilitiesElement()); 34705 } 34706 if (element.hasDerivedFrom()) { 34707 for (CanonicalType e : element.getDerivedFrom()) 34708 composeCanonical("derivedFrom", e); 34709 } 34710 } 34711 34712 protected void composeAdministrableProductDefinition(String name, AdministrableProductDefinition element) throws IOException { 34713 if (element != null) { 34714 composeResourceAttributes(element); 34715 xml.enter(FHIR_NS, name); 34716 composeAdministrableProductDefinitionElements(element); 34717 composeElementClose(element); 34718 xml.exit(FHIR_NS, name); 34719 } 34720 } 34721 34722 protected void composeAdministrableProductDefinitionElements(AdministrableProductDefinition element) throws IOException { 34723 composeDomainResourceElements(element); 34724 if (element.hasIdentifier()) { 34725 for (Identifier e : element.getIdentifier()) 34726 composeIdentifier("identifier", e); 34727 } 34728 if (element.hasStatusElement()) 34729 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34730 if (element.hasFormOf()) { 34731 for (Reference e : element.getFormOf()) 34732 composeReference("formOf", e); 34733 } 34734 if (element.hasAdministrableDoseForm()) { 34735 composeCodeableConcept("administrableDoseForm", element.getAdministrableDoseForm()); 34736 } 34737 if (element.hasUnitOfPresentation()) { 34738 composeCodeableConcept("unitOfPresentation", element.getUnitOfPresentation()); 34739 } 34740 if (element.hasProducedFrom()) { 34741 for (Reference e : element.getProducedFrom()) 34742 composeReference("producedFrom", e); 34743 } 34744 if (element.hasIngredient()) { 34745 for (CodeableConcept e : element.getIngredient()) 34746 composeCodeableConcept("ingredient", e); 34747 } 34748 if (element.hasDevice()) { 34749 composeReference("device", element.getDevice()); 34750 } 34751 if (element.hasDescriptionElement()) { 34752 composeMarkdown("description", element.getDescriptionElement()); 34753 } 34754 if (element.hasProperty()) { 34755 for (AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent e : element.getProperty()) 34756 composeAdministrableProductDefinitionPropertyComponent("property", e); 34757 } 34758 if (element.hasRouteOfAdministration()) { 34759 for (AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent e : element.getRouteOfAdministration()) 34760 composeAdministrableProductDefinitionRouteOfAdministrationComponent("routeOfAdministration", e); 34761 } 34762 } 34763 34764 protected void composeAdministrableProductDefinitionPropertyComponent(String name, AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent element) throws IOException { 34765 if (element != null) { 34766 composeElementAttributes(element); 34767 xml.enter(FHIR_NS, name); 34768 composeAdministrableProductDefinitionPropertyComponentElements(element); 34769 composeElementClose(element); 34770 xml.exit(FHIR_NS, name); 34771 } 34772 } 34773 34774 protected void composeAdministrableProductDefinitionPropertyComponentElements(AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent element) throws IOException { 34775 composeBackboneElementElements(element); 34776 if (element.hasType()) { 34777 composeCodeableConcept("type", element.getType()); 34778 } 34779 if (element.hasValue()) { 34780 composeType("value", element.getValue()); 34781 } if (element.hasStatus()) { 34782 composeCodeableConcept("status", element.getStatus()); 34783 } 34784 } 34785 34786 protected void composeAdministrableProductDefinitionRouteOfAdministrationComponent(String name, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent element) throws IOException { 34787 if (element != null) { 34788 composeElementAttributes(element); 34789 xml.enter(FHIR_NS, name); 34790 composeAdministrableProductDefinitionRouteOfAdministrationComponentElements(element); 34791 composeElementClose(element); 34792 xml.exit(FHIR_NS, name); 34793 } 34794 } 34795 34796 protected void composeAdministrableProductDefinitionRouteOfAdministrationComponentElements(AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent element) throws IOException { 34797 composeBackboneElementElements(element); 34798 if (element.hasCode()) { 34799 composeCodeableConcept("code", element.getCode()); 34800 } 34801 if (element.hasFirstDose()) { 34802 composeQuantity("firstDose", element.getFirstDose()); 34803 } 34804 if (element.hasMaxSingleDose()) { 34805 composeQuantity("maxSingleDose", element.getMaxSingleDose()); 34806 } 34807 if (element.hasMaxDosePerDay()) { 34808 composeQuantity("maxDosePerDay", element.getMaxDosePerDay()); 34809 } 34810 if (element.hasMaxDosePerTreatmentPeriod()) { 34811 composeRatio("maxDosePerTreatmentPeriod", element.getMaxDosePerTreatmentPeriod()); 34812 } 34813 if (element.hasMaxTreatmentPeriod()) { 34814 composeDuration("maxTreatmentPeriod", element.getMaxTreatmentPeriod()); 34815 } 34816 if (element.hasTargetSpecies()) { 34817 for (AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent e : element.getTargetSpecies()) 34818 composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent("targetSpecies", e); 34819 } 34820 } 34821 34822 protected void composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent(String name, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent element) throws IOException { 34823 if (element != null) { 34824 composeElementAttributes(element); 34825 xml.enter(FHIR_NS, name); 34826 composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponentElements(element); 34827 composeElementClose(element); 34828 xml.exit(FHIR_NS, name); 34829 } 34830 } 34831 34832 protected void composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponentElements(AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent element) throws IOException { 34833 composeBackboneElementElements(element); 34834 if (element.hasCode()) { 34835 composeCodeableConcept("code", element.getCode()); 34836 } 34837 if (element.hasWithdrawalPeriod()) { 34838 for (AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent e : element.getWithdrawalPeriod()) 34839 composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent("withdrawalPeriod", e); 34840 } 34841 } 34842 34843 protected void composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent(String name, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent element) throws IOException { 34844 if (element != null) { 34845 composeElementAttributes(element); 34846 xml.enter(FHIR_NS, name); 34847 composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponentElements(element); 34848 composeElementClose(element); 34849 xml.exit(FHIR_NS, name); 34850 } 34851 } 34852 34853 protected void composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponentElements(AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent element) throws IOException { 34854 composeBackboneElementElements(element); 34855 if (element.hasTissue()) { 34856 composeCodeableConcept("tissue", element.getTissue()); 34857 } 34858 if (element.hasValue()) { 34859 composeQuantity("value", element.getValue()); 34860 } 34861 if (element.hasSupportingInformationElement()) { 34862 composeString("supportingInformation", element.getSupportingInformationElement()); 34863 } 34864 } 34865 34866 protected void composeAdverseEvent(String name, AdverseEvent element) throws IOException { 34867 if (element != null) { 34868 composeResourceAttributes(element); 34869 xml.enter(FHIR_NS, name); 34870 composeAdverseEventElements(element); 34871 composeElementClose(element); 34872 xml.exit(FHIR_NS, name); 34873 } 34874 } 34875 34876 protected void composeAdverseEventElements(AdverseEvent element) throws IOException { 34877 composeDomainResourceElements(element); 34878 if (element.hasIdentifier()) { 34879 for (Identifier e : element.getIdentifier()) 34880 composeIdentifier("identifier", e); 34881 } 34882 if (element.hasStatusElement()) 34883 composeEnumeration("status", element.getStatusElement(), new AdverseEvent.AdverseEventStatusEnumFactory()); 34884 if (element.hasActualityElement()) 34885 composeEnumeration("actuality", element.getActualityElement(), new AdverseEvent.AdverseEventActualityEnumFactory()); 34886 if (element.hasCategory()) { 34887 for (CodeableConcept e : element.getCategory()) 34888 composeCodeableConcept("category", e); 34889 } 34890 if (element.hasCode()) { 34891 composeCodeableConcept("code", element.getCode()); 34892 } 34893 if (element.hasSubject()) { 34894 composeReference("subject", element.getSubject()); 34895 } 34896 if (element.hasEncounter()) { 34897 composeReference("encounter", element.getEncounter()); 34898 } 34899 if (element.hasOccurrence()) { 34900 composeType("occurrence", element.getOccurrence()); 34901 } if (element.hasDetectedElement()) { 34902 composeDateTime("detected", element.getDetectedElement()); 34903 } 34904 if (element.hasRecordedDateElement()) { 34905 composeDateTime("recordedDate", element.getRecordedDateElement()); 34906 } 34907 if (element.hasResultingEffect()) { 34908 for (Reference e : element.getResultingEffect()) 34909 composeReference("resultingEffect", e); 34910 } 34911 if (element.hasLocation()) { 34912 composeReference("location", element.getLocation()); 34913 } 34914 if (element.hasSeriousness()) { 34915 composeCodeableConcept("seriousness", element.getSeriousness()); 34916 } 34917 if (element.hasOutcome()) { 34918 for (CodeableConcept e : element.getOutcome()) 34919 composeCodeableConcept("outcome", e); 34920 } 34921 if (element.hasRecorder()) { 34922 composeReference("recorder", element.getRecorder()); 34923 } 34924 if (element.hasParticipant()) { 34925 for (AdverseEvent.AdverseEventParticipantComponent e : element.getParticipant()) 34926 composeAdverseEventParticipantComponent("participant", e); 34927 } 34928 if (element.hasStudy()) { 34929 for (Reference e : element.getStudy()) 34930 composeReference("study", e); 34931 } 34932 if (element.hasExpectedInResearchStudyElement()) { 34933 composeBoolean("expectedInResearchStudy", element.getExpectedInResearchStudyElement()); 34934 } 34935 if (element.hasSuspectEntity()) { 34936 for (AdverseEvent.AdverseEventSuspectEntityComponent e : element.getSuspectEntity()) 34937 composeAdverseEventSuspectEntityComponent("suspectEntity", e); 34938 } 34939 if (element.hasContributingFactor()) { 34940 for (AdverseEvent.AdverseEventContributingFactorComponent e : element.getContributingFactor()) 34941 composeAdverseEventContributingFactorComponent("contributingFactor", e); 34942 } 34943 if (element.hasPreventiveAction()) { 34944 for (AdverseEvent.AdverseEventPreventiveActionComponent e : element.getPreventiveAction()) 34945 composeAdverseEventPreventiveActionComponent("preventiveAction", e); 34946 } 34947 if (element.hasMitigatingAction()) { 34948 for (AdverseEvent.AdverseEventMitigatingActionComponent e : element.getMitigatingAction()) 34949 composeAdverseEventMitigatingActionComponent("mitigatingAction", e); 34950 } 34951 if (element.hasSupportingInfo()) { 34952 for (AdverseEvent.AdverseEventSupportingInfoComponent e : element.getSupportingInfo()) 34953 composeAdverseEventSupportingInfoComponent("supportingInfo", e); 34954 } 34955 if (element.hasNote()) { 34956 for (Annotation e : element.getNote()) 34957 composeAnnotation("note", e); 34958 } 34959 } 34960 34961 protected void composeAdverseEventParticipantComponent(String name, AdverseEvent.AdverseEventParticipantComponent element) throws IOException { 34962 if (element != null) { 34963 composeElementAttributes(element); 34964 xml.enter(FHIR_NS, name); 34965 composeAdverseEventParticipantComponentElements(element); 34966 composeElementClose(element); 34967 xml.exit(FHIR_NS, name); 34968 } 34969 } 34970 34971 protected void composeAdverseEventParticipantComponentElements(AdverseEvent.AdverseEventParticipantComponent element) throws IOException { 34972 composeBackboneElementElements(element); 34973 if (element.hasFunction()) { 34974 composeCodeableConcept("function", element.getFunction()); 34975 } 34976 if (element.hasActor()) { 34977 composeReference("actor", element.getActor()); 34978 } 34979 } 34980 34981 protected void composeAdverseEventSuspectEntityComponent(String name, AdverseEvent.AdverseEventSuspectEntityComponent element) throws IOException { 34982 if (element != null) { 34983 composeElementAttributes(element); 34984 xml.enter(FHIR_NS, name); 34985 composeAdverseEventSuspectEntityComponentElements(element); 34986 composeElementClose(element); 34987 xml.exit(FHIR_NS, name); 34988 } 34989 } 34990 34991 protected void composeAdverseEventSuspectEntityComponentElements(AdverseEvent.AdverseEventSuspectEntityComponent element) throws IOException { 34992 composeBackboneElementElements(element); 34993 if (element.hasInstance()) { 34994 composeType("instance", element.getInstance()); 34995 } if (element.hasCausality()) { 34996 composeAdverseEventSuspectEntityCausalityComponent("causality", element.getCausality()); 34997 } 34998 } 34999 35000 protected void composeAdverseEventSuspectEntityCausalityComponent(String name, AdverseEvent.AdverseEventSuspectEntityCausalityComponent element) throws IOException { 35001 if (element != null) { 35002 composeElementAttributes(element); 35003 xml.enter(FHIR_NS, name); 35004 composeAdverseEventSuspectEntityCausalityComponentElements(element); 35005 composeElementClose(element); 35006 xml.exit(FHIR_NS, name); 35007 } 35008 } 35009 35010 protected void composeAdverseEventSuspectEntityCausalityComponentElements(AdverseEvent.AdverseEventSuspectEntityCausalityComponent element) throws IOException { 35011 composeBackboneElementElements(element); 35012 if (element.hasAssessmentMethod()) { 35013 composeCodeableConcept("assessmentMethod", element.getAssessmentMethod()); 35014 } 35015 if (element.hasEntityRelatedness()) { 35016 composeCodeableConcept("entityRelatedness", element.getEntityRelatedness()); 35017 } 35018 if (element.hasAuthor()) { 35019 composeReference("author", element.getAuthor()); 35020 } 35021 } 35022 35023 protected void composeAdverseEventContributingFactorComponent(String name, AdverseEvent.AdverseEventContributingFactorComponent element) throws IOException { 35024 if (element != null) { 35025 composeElementAttributes(element); 35026 xml.enter(FHIR_NS, name); 35027 composeAdverseEventContributingFactorComponentElements(element); 35028 composeElementClose(element); 35029 xml.exit(FHIR_NS, name); 35030 } 35031 } 35032 35033 protected void composeAdverseEventContributingFactorComponentElements(AdverseEvent.AdverseEventContributingFactorComponent element) throws IOException { 35034 composeBackboneElementElements(element); 35035 if (element.hasItem()) { 35036 composeType("item", element.getItem()); 35037 } } 35038 35039 protected void composeAdverseEventPreventiveActionComponent(String name, AdverseEvent.AdverseEventPreventiveActionComponent element) throws IOException { 35040 if (element != null) { 35041 composeElementAttributes(element); 35042 xml.enter(FHIR_NS, name); 35043 composeAdverseEventPreventiveActionComponentElements(element); 35044 composeElementClose(element); 35045 xml.exit(FHIR_NS, name); 35046 } 35047 } 35048 35049 protected void composeAdverseEventPreventiveActionComponentElements(AdverseEvent.AdverseEventPreventiveActionComponent element) throws IOException { 35050 composeBackboneElementElements(element); 35051 if (element.hasItem()) { 35052 composeType("item", element.getItem()); 35053 } } 35054 35055 protected void composeAdverseEventMitigatingActionComponent(String name, AdverseEvent.AdverseEventMitigatingActionComponent element) throws IOException { 35056 if (element != null) { 35057 composeElementAttributes(element); 35058 xml.enter(FHIR_NS, name); 35059 composeAdverseEventMitigatingActionComponentElements(element); 35060 composeElementClose(element); 35061 xml.exit(FHIR_NS, name); 35062 } 35063 } 35064 35065 protected void composeAdverseEventMitigatingActionComponentElements(AdverseEvent.AdverseEventMitigatingActionComponent element) throws IOException { 35066 composeBackboneElementElements(element); 35067 if (element.hasItem()) { 35068 composeType("item", element.getItem()); 35069 } } 35070 35071 protected void composeAdverseEventSupportingInfoComponent(String name, AdverseEvent.AdverseEventSupportingInfoComponent element) throws IOException { 35072 if (element != null) { 35073 composeElementAttributes(element); 35074 xml.enter(FHIR_NS, name); 35075 composeAdverseEventSupportingInfoComponentElements(element); 35076 composeElementClose(element); 35077 xml.exit(FHIR_NS, name); 35078 } 35079 } 35080 35081 protected void composeAdverseEventSupportingInfoComponentElements(AdverseEvent.AdverseEventSupportingInfoComponent element) throws IOException { 35082 composeBackboneElementElements(element); 35083 if (element.hasItem()) { 35084 composeType("item", element.getItem()); 35085 } } 35086 35087 protected void composeAllergyIntolerance(String name, AllergyIntolerance element) throws IOException { 35088 if (element != null) { 35089 composeResourceAttributes(element); 35090 xml.enter(FHIR_NS, name); 35091 composeAllergyIntoleranceElements(element); 35092 composeElementClose(element); 35093 xml.exit(FHIR_NS, name); 35094 } 35095 } 35096 35097 protected void composeAllergyIntoleranceElements(AllergyIntolerance element) throws IOException { 35098 composeDomainResourceElements(element); 35099 if (element.hasIdentifier()) { 35100 for (Identifier e : element.getIdentifier()) 35101 composeIdentifier("identifier", e); 35102 } 35103 if (element.hasClinicalStatus()) { 35104 composeCodeableConcept("clinicalStatus", element.getClinicalStatus()); 35105 } 35106 if (element.hasVerificationStatus()) { 35107 composeCodeableConcept("verificationStatus", element.getVerificationStatus()); 35108 } 35109 if (element.hasType()) { 35110 composeCodeableConcept("type", element.getType()); 35111 } 35112 if (element.hasCategory()) 35113 for (Enumeration<AllergyIntolerance.AllergyIntoleranceCategory> e : element.getCategory()) 35114 composeEnumeration("category", e, new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory()); 35115 if (element.hasCriticalityElement()) 35116 composeEnumeration("criticality", element.getCriticalityElement(), new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory()); 35117 if (element.hasCode()) { 35118 composeCodeableConcept("code", element.getCode()); 35119 } 35120 if (element.hasPatient()) { 35121 composeReference("patient", element.getPatient()); 35122 } 35123 if (element.hasEncounter()) { 35124 composeReference("encounter", element.getEncounter()); 35125 } 35126 if (element.hasOnset()) { 35127 composeType("onset", element.getOnset()); 35128 } if (element.hasRecordedDateElement()) { 35129 composeDateTime("recordedDate", element.getRecordedDateElement()); 35130 } 35131 if (element.hasParticipant()) { 35132 for (AllergyIntolerance.AllergyIntoleranceParticipantComponent e : element.getParticipant()) 35133 composeAllergyIntoleranceParticipantComponent("participant", e); 35134 } 35135 if (element.hasLastOccurrenceElement()) { 35136 composeDateTime("lastOccurrence", element.getLastOccurrenceElement()); 35137 } 35138 if (element.hasNote()) { 35139 for (Annotation e : element.getNote()) 35140 composeAnnotation("note", e); 35141 } 35142 if (element.hasReaction()) { 35143 for (AllergyIntolerance.AllergyIntoleranceReactionComponent e : element.getReaction()) 35144 composeAllergyIntoleranceReactionComponent("reaction", e); 35145 } 35146 } 35147 35148 protected void composeAllergyIntoleranceParticipantComponent(String name, AllergyIntolerance.AllergyIntoleranceParticipantComponent element) throws IOException { 35149 if (element != null) { 35150 composeElementAttributes(element); 35151 xml.enter(FHIR_NS, name); 35152 composeAllergyIntoleranceParticipantComponentElements(element); 35153 composeElementClose(element); 35154 xml.exit(FHIR_NS, name); 35155 } 35156 } 35157 35158 protected void composeAllergyIntoleranceParticipantComponentElements(AllergyIntolerance.AllergyIntoleranceParticipantComponent element) throws IOException { 35159 composeBackboneElementElements(element); 35160 if (element.hasFunction()) { 35161 composeCodeableConcept("function", element.getFunction()); 35162 } 35163 if (element.hasActor()) { 35164 composeReference("actor", element.getActor()); 35165 } 35166 } 35167 35168 protected void composeAllergyIntoleranceReactionComponent(String name, AllergyIntolerance.AllergyIntoleranceReactionComponent element) throws IOException { 35169 if (element != null) { 35170 composeElementAttributes(element); 35171 xml.enter(FHIR_NS, name); 35172 composeAllergyIntoleranceReactionComponentElements(element); 35173 composeElementClose(element); 35174 xml.exit(FHIR_NS, name); 35175 } 35176 } 35177 35178 protected void composeAllergyIntoleranceReactionComponentElements(AllergyIntolerance.AllergyIntoleranceReactionComponent element) throws IOException { 35179 composeBackboneElementElements(element); 35180 if (element.hasSubstance()) { 35181 composeCodeableConcept("substance", element.getSubstance()); 35182 } 35183 if (element.hasManifestation()) { 35184 for (CodeableReference e : element.getManifestation()) 35185 composeCodeableReference("manifestation", e); 35186 } 35187 if (element.hasDescriptionElement()) { 35188 composeString("description", element.getDescriptionElement()); 35189 } 35190 if (element.hasOnsetElement()) { 35191 composeDateTime("onset", element.getOnsetElement()); 35192 } 35193 if (element.hasSeverityElement()) 35194 composeEnumeration("severity", element.getSeverityElement(), new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory()); 35195 if (element.hasExposureRoute()) { 35196 composeCodeableConcept("exposureRoute", element.getExposureRoute()); 35197 } 35198 if (element.hasNote()) { 35199 for (Annotation e : element.getNote()) 35200 composeAnnotation("note", e); 35201 } 35202 } 35203 35204 protected void composeAppointment(String name, Appointment element) throws IOException { 35205 if (element != null) { 35206 composeResourceAttributes(element); 35207 xml.enter(FHIR_NS, name); 35208 composeAppointmentElements(element); 35209 composeElementClose(element); 35210 xml.exit(FHIR_NS, name); 35211 } 35212 } 35213 35214 protected void composeAppointmentElements(Appointment element) throws IOException { 35215 composeDomainResourceElements(element); 35216 if (element.hasIdentifier()) { 35217 for (Identifier e : element.getIdentifier()) 35218 composeIdentifier("identifier", e); 35219 } 35220 if (element.hasStatusElement()) 35221 composeEnumeration("status", element.getStatusElement(), new Appointment.AppointmentStatusEnumFactory()); 35222 if (element.hasCancellationReason()) { 35223 composeCodeableConcept("cancellationReason", element.getCancellationReason()); 35224 } 35225 if (element.hasClass_()) { 35226 for (CodeableConcept e : element.getClass_()) 35227 composeCodeableConcept("class", e); 35228 } 35229 if (element.hasServiceCategory()) { 35230 for (CodeableConcept e : element.getServiceCategory()) 35231 composeCodeableConcept("serviceCategory", e); 35232 } 35233 if (element.hasServiceType()) { 35234 for (CodeableReference e : element.getServiceType()) 35235 composeCodeableReference("serviceType", e); 35236 } 35237 if (element.hasSpecialty()) { 35238 for (CodeableConcept e : element.getSpecialty()) 35239 composeCodeableConcept("specialty", e); 35240 } 35241 if (element.hasAppointmentType()) { 35242 composeCodeableConcept("appointmentType", element.getAppointmentType()); 35243 } 35244 if (element.hasReason()) { 35245 for (CodeableReference e : element.getReason()) 35246 composeCodeableReference("reason", e); 35247 } 35248 if (element.hasPriority()) { 35249 composeCodeableConcept("priority", element.getPriority()); 35250 } 35251 if (element.hasDescriptionElement()) { 35252 composeString("description", element.getDescriptionElement()); 35253 } 35254 if (element.hasReplaces()) { 35255 for (Reference e : element.getReplaces()) 35256 composeReference("replaces", e); 35257 } 35258 if (element.hasVirtualService()) { 35259 for (VirtualServiceDetail e : element.getVirtualService()) 35260 composeVirtualServiceDetail("virtualService", e); 35261 } 35262 if (element.hasSupportingInformation()) { 35263 for (Reference e : element.getSupportingInformation()) 35264 composeReference("supportingInformation", e); 35265 } 35266 if (element.hasPreviousAppointment()) { 35267 composeReference("previousAppointment", element.getPreviousAppointment()); 35268 } 35269 if (element.hasOriginatingAppointment()) { 35270 composeReference("originatingAppointment", element.getOriginatingAppointment()); 35271 } 35272 if (element.hasStartElement()) { 35273 composeInstant("start", element.getStartElement()); 35274 } 35275 if (element.hasEndElement()) { 35276 composeInstant("end", element.getEndElement()); 35277 } 35278 if (element.hasMinutesDurationElement()) { 35279 composePositiveInt("minutesDuration", element.getMinutesDurationElement()); 35280 } 35281 if (element.hasRequestedPeriod()) { 35282 for (Period e : element.getRequestedPeriod()) 35283 composePeriod("requestedPeriod", e); 35284 } 35285 if (element.hasSlot()) { 35286 for (Reference e : element.getSlot()) 35287 composeReference("slot", e); 35288 } 35289 if (element.hasAccount()) { 35290 for (Reference e : element.getAccount()) 35291 composeReference("account", e); 35292 } 35293 if (element.hasCreatedElement()) { 35294 composeDateTime("created", element.getCreatedElement()); 35295 } 35296 if (element.hasCancellationDateElement()) { 35297 composeDateTime("cancellationDate", element.getCancellationDateElement()); 35298 } 35299 if (element.hasNote()) { 35300 for (Annotation e : element.getNote()) 35301 composeAnnotation("note", e); 35302 } 35303 if (element.hasPatientInstruction()) { 35304 for (CodeableReference e : element.getPatientInstruction()) 35305 composeCodeableReference("patientInstruction", e); 35306 } 35307 if (element.hasBasedOn()) { 35308 for (Reference e : element.getBasedOn()) 35309 composeReference("basedOn", e); 35310 } 35311 if (element.hasSubject()) { 35312 composeReference("subject", element.getSubject()); 35313 } 35314 if (element.hasParticipant()) { 35315 for (Appointment.AppointmentParticipantComponent e : element.getParticipant()) 35316 composeAppointmentParticipantComponent("participant", e); 35317 } 35318 if (element.hasRecurrenceIdElement()) { 35319 composePositiveInt("recurrenceId", element.getRecurrenceIdElement()); 35320 } 35321 if (element.hasOccurrenceChangedElement()) { 35322 composeBoolean("occurrenceChanged", element.getOccurrenceChangedElement()); 35323 } 35324 if (element.hasRecurrenceTemplate()) { 35325 for (Appointment.AppointmentRecurrenceTemplateComponent e : element.getRecurrenceTemplate()) 35326 composeAppointmentRecurrenceTemplateComponent("recurrenceTemplate", e); 35327 } 35328 } 35329 35330 protected void composeAppointmentParticipantComponent(String name, Appointment.AppointmentParticipantComponent element) throws IOException { 35331 if (element != null) { 35332 composeElementAttributes(element); 35333 xml.enter(FHIR_NS, name); 35334 composeAppointmentParticipantComponentElements(element); 35335 composeElementClose(element); 35336 xml.exit(FHIR_NS, name); 35337 } 35338 } 35339 35340 protected void composeAppointmentParticipantComponentElements(Appointment.AppointmentParticipantComponent element) throws IOException { 35341 composeBackboneElementElements(element); 35342 if (element.hasType()) { 35343 for (CodeableConcept e : element.getType()) 35344 composeCodeableConcept("type", e); 35345 } 35346 if (element.hasPeriod()) { 35347 composePeriod("period", element.getPeriod()); 35348 } 35349 if (element.hasActor()) { 35350 composeReference("actor", element.getActor()); 35351 } 35352 if (element.hasRequiredElement()) { 35353 composeBoolean("required", element.getRequiredElement()); 35354 } 35355 if (element.hasStatusElement()) 35356 composeEnumeration("status", element.getStatusElement(), new Appointment.ParticipationStatusEnumFactory()); 35357 } 35358 35359 protected void composeAppointmentRecurrenceTemplateComponent(String name, Appointment.AppointmentRecurrenceTemplateComponent element) throws IOException { 35360 if (element != null) { 35361 composeElementAttributes(element); 35362 xml.enter(FHIR_NS, name); 35363 composeAppointmentRecurrenceTemplateComponentElements(element); 35364 composeElementClose(element); 35365 xml.exit(FHIR_NS, name); 35366 } 35367 } 35368 35369 protected void composeAppointmentRecurrenceTemplateComponentElements(Appointment.AppointmentRecurrenceTemplateComponent element) throws IOException { 35370 composeBackboneElementElements(element); 35371 if (element.hasTimezone()) { 35372 composeCodeableConcept("timezone", element.getTimezone()); 35373 } 35374 if (element.hasRecurrenceType()) { 35375 composeCodeableConcept("recurrenceType", element.getRecurrenceType()); 35376 } 35377 if (element.hasLastOccurrenceDateElement()) { 35378 composeDate("lastOccurrenceDate", element.getLastOccurrenceDateElement()); 35379 } 35380 if (element.hasOccurrenceCountElement()) { 35381 composePositiveInt("occurrenceCount", element.getOccurrenceCountElement()); 35382 } 35383 if (element.hasOccurrenceDate()) { 35384 for (DateType e : element.getOccurrenceDate()) 35385 composeDate("occurrenceDate", e); 35386 } 35387 if (element.hasWeeklyTemplate()) { 35388 composeAppointmentRecurrenceTemplateWeeklyTemplateComponent("weeklyTemplate", element.getWeeklyTemplate()); 35389 } 35390 if (element.hasMonthlyTemplate()) { 35391 composeAppointmentRecurrenceTemplateMonthlyTemplateComponent("monthlyTemplate", element.getMonthlyTemplate()); 35392 } 35393 if (element.hasYearlyTemplate()) { 35394 composeAppointmentRecurrenceTemplateYearlyTemplateComponent("yearlyTemplate", element.getYearlyTemplate()); 35395 } 35396 if (element.hasExcludingDate()) { 35397 for (DateType e : element.getExcludingDate()) 35398 composeDate("excludingDate", e); 35399 } 35400 if (element.hasExcludingRecurrenceId()) { 35401 for (PositiveIntType e : element.getExcludingRecurrenceId()) 35402 composePositiveInt("excludingRecurrenceId", e); 35403 } 35404 } 35405 35406 protected void composeAppointmentRecurrenceTemplateWeeklyTemplateComponent(String name, Appointment.AppointmentRecurrenceTemplateWeeklyTemplateComponent element) throws IOException { 35407 if (element != null) { 35408 composeElementAttributes(element); 35409 xml.enter(FHIR_NS, name); 35410 composeAppointmentRecurrenceTemplateWeeklyTemplateComponentElements(element); 35411 composeElementClose(element); 35412 xml.exit(FHIR_NS, name); 35413 } 35414 } 35415 35416 protected void composeAppointmentRecurrenceTemplateWeeklyTemplateComponentElements(Appointment.AppointmentRecurrenceTemplateWeeklyTemplateComponent element) throws IOException { 35417 composeBackboneElementElements(element); 35418 if (element.hasMondayElement()) { 35419 composeBoolean("monday", element.getMondayElement()); 35420 } 35421 if (element.hasTuesdayElement()) { 35422 composeBoolean("tuesday", element.getTuesdayElement()); 35423 } 35424 if (element.hasWednesdayElement()) { 35425 composeBoolean("wednesday", element.getWednesdayElement()); 35426 } 35427 if (element.hasThursdayElement()) { 35428 composeBoolean("thursday", element.getThursdayElement()); 35429 } 35430 if (element.hasFridayElement()) { 35431 composeBoolean("friday", element.getFridayElement()); 35432 } 35433 if (element.hasSaturdayElement()) { 35434 composeBoolean("saturday", element.getSaturdayElement()); 35435 } 35436 if (element.hasSundayElement()) { 35437 composeBoolean("sunday", element.getSundayElement()); 35438 } 35439 if (element.hasWeekIntervalElement()) { 35440 composePositiveInt("weekInterval", element.getWeekIntervalElement()); 35441 } 35442 } 35443 35444 protected void composeAppointmentRecurrenceTemplateMonthlyTemplateComponent(String name, Appointment.AppointmentRecurrenceTemplateMonthlyTemplateComponent element) throws IOException { 35445 if (element != null) { 35446 composeElementAttributes(element); 35447 xml.enter(FHIR_NS, name); 35448 composeAppointmentRecurrenceTemplateMonthlyTemplateComponentElements(element); 35449 composeElementClose(element); 35450 xml.exit(FHIR_NS, name); 35451 } 35452 } 35453 35454 protected void composeAppointmentRecurrenceTemplateMonthlyTemplateComponentElements(Appointment.AppointmentRecurrenceTemplateMonthlyTemplateComponent element) throws IOException { 35455 composeBackboneElementElements(element); 35456 if (element.hasDayOfMonthElement()) { 35457 composePositiveInt("dayOfMonth", element.getDayOfMonthElement()); 35458 } 35459 if (element.hasNthWeekOfMonth()) { 35460 composeCoding("nthWeekOfMonth", element.getNthWeekOfMonth()); 35461 } 35462 if (element.hasDayOfWeek()) { 35463 composeCoding("dayOfWeek", element.getDayOfWeek()); 35464 } 35465 if (element.hasMonthIntervalElement()) { 35466 composePositiveInt("monthInterval", element.getMonthIntervalElement()); 35467 } 35468 } 35469 35470 protected void composeAppointmentRecurrenceTemplateYearlyTemplateComponent(String name, Appointment.AppointmentRecurrenceTemplateYearlyTemplateComponent element) throws IOException { 35471 if (element != null) { 35472 composeElementAttributes(element); 35473 xml.enter(FHIR_NS, name); 35474 composeAppointmentRecurrenceTemplateYearlyTemplateComponentElements(element); 35475 composeElementClose(element); 35476 xml.exit(FHIR_NS, name); 35477 } 35478 } 35479 35480 protected void composeAppointmentRecurrenceTemplateYearlyTemplateComponentElements(Appointment.AppointmentRecurrenceTemplateYearlyTemplateComponent element) throws IOException { 35481 composeBackboneElementElements(element); 35482 if (element.hasYearIntervalElement()) { 35483 composePositiveInt("yearInterval", element.getYearIntervalElement()); 35484 } 35485 } 35486 35487 protected void composeAppointmentResponse(String name, AppointmentResponse element) throws IOException { 35488 if (element != null) { 35489 composeResourceAttributes(element); 35490 xml.enter(FHIR_NS, name); 35491 composeAppointmentResponseElements(element); 35492 composeElementClose(element); 35493 xml.exit(FHIR_NS, name); 35494 } 35495 } 35496 35497 protected void composeAppointmentResponseElements(AppointmentResponse element) throws IOException { 35498 composeDomainResourceElements(element); 35499 if (element.hasIdentifier()) { 35500 for (Identifier e : element.getIdentifier()) 35501 composeIdentifier("identifier", e); 35502 } 35503 if (element.hasAppointment()) { 35504 composeReference("appointment", element.getAppointment()); 35505 } 35506 if (element.hasProposedNewTimeElement()) { 35507 composeBoolean("proposedNewTime", element.getProposedNewTimeElement()); 35508 } 35509 if (element.hasStartElement()) { 35510 composeInstant("start", element.getStartElement()); 35511 } 35512 if (element.hasEndElement()) { 35513 composeInstant("end", element.getEndElement()); 35514 } 35515 if (element.hasParticipantType()) { 35516 for (CodeableConcept e : element.getParticipantType()) 35517 composeCodeableConcept("participantType", e); 35518 } 35519 if (element.hasActor()) { 35520 composeReference("actor", element.getActor()); 35521 } 35522 if (element.hasParticipantStatusElement()) 35523 composeEnumeration("participantStatus", element.getParticipantStatusElement(), new AppointmentResponse.AppointmentResponseStatusEnumFactory()); 35524 if (element.hasCommentElement()) { 35525 composeMarkdown("comment", element.getCommentElement()); 35526 } 35527 if (element.hasRecurringElement()) { 35528 composeBoolean("recurring", element.getRecurringElement()); 35529 } 35530 if (element.hasOccurrenceDateElement()) { 35531 composeDate("occurrenceDate", element.getOccurrenceDateElement()); 35532 } 35533 if (element.hasRecurrenceIdElement()) { 35534 composePositiveInt("recurrenceId", element.getRecurrenceIdElement()); 35535 } 35536 } 35537 35538 protected void composeArtifactAssessment(String name, ArtifactAssessment element) throws IOException { 35539 if (element != null) { 35540 composeResourceAttributes(element); 35541 xml.enter(FHIR_NS, name); 35542 composeArtifactAssessmentElements(element); 35543 composeElementClose(element); 35544 xml.exit(FHIR_NS, name); 35545 } 35546 } 35547 35548 protected void composeArtifactAssessmentElements(ArtifactAssessment element) throws IOException { 35549 composeDomainResourceElements(element); 35550 if (element.hasIdentifier()) { 35551 for (Identifier e : element.getIdentifier()) 35552 composeIdentifier("identifier", e); 35553 } 35554 if (element.hasTitleElement()) { 35555 composeString("title", element.getTitleElement()); 35556 } 35557 if (element.hasCiteAs()) { 35558 composeType("citeAs", element.getCiteAs()); 35559 } if (element.hasDateElement()) { 35560 composeDateTime("date", element.getDateElement()); 35561 } 35562 if (element.hasCopyrightElement()) { 35563 composeMarkdown("copyright", element.getCopyrightElement()); 35564 } 35565 if (element.hasApprovalDateElement()) { 35566 composeDate("approvalDate", element.getApprovalDateElement()); 35567 } 35568 if (element.hasLastReviewDateElement()) { 35569 composeDate("lastReviewDate", element.getLastReviewDateElement()); 35570 } 35571 if (element.hasArtifact()) { 35572 composeType("artifact", element.getArtifact()); 35573 } if (element.hasContent()) { 35574 for (ArtifactAssessment.ArtifactAssessmentContentComponent e : element.getContent()) 35575 composeArtifactAssessmentContentComponent("content", e); 35576 } 35577 if (element.hasWorkflowStatusElement()) 35578 composeEnumeration("workflowStatus", element.getWorkflowStatusElement(), new ArtifactAssessment.ArtifactAssessmentWorkflowStatusEnumFactory()); 35579 if (element.hasDispositionElement()) 35580 composeEnumeration("disposition", element.getDispositionElement(), new ArtifactAssessment.ArtifactAssessmentDispositionEnumFactory()); 35581 } 35582 35583 protected void composeArtifactAssessmentContentComponent(String name, ArtifactAssessment.ArtifactAssessmentContentComponent element) throws IOException { 35584 if (element != null) { 35585 composeElementAttributes(element); 35586 xml.enter(FHIR_NS, name); 35587 composeArtifactAssessmentContentComponentElements(element); 35588 composeElementClose(element); 35589 xml.exit(FHIR_NS, name); 35590 } 35591 } 35592 35593 protected void composeArtifactAssessmentContentComponentElements(ArtifactAssessment.ArtifactAssessmentContentComponent element) throws IOException { 35594 composeBackboneElementElements(element); 35595 if (element.hasInformationTypeElement()) 35596 composeEnumeration("informationType", element.getInformationTypeElement(), new ArtifactAssessment.ArtifactAssessmentInformationTypeEnumFactory()); 35597 if (element.hasSummaryElement()) { 35598 composeMarkdown("summary", element.getSummaryElement()); 35599 } 35600 if (element.hasType()) { 35601 composeCodeableConcept("type", element.getType()); 35602 } 35603 if (element.hasClassifier()) { 35604 for (CodeableConcept e : element.getClassifier()) 35605 composeCodeableConcept("classifier", e); 35606 } 35607 if (element.hasQuantity()) { 35608 composeQuantity("quantity", element.getQuantity()); 35609 } 35610 if (element.hasAuthor()) { 35611 composeReference("author", element.getAuthor()); 35612 } 35613 if (element.hasPath()) { 35614 for (UriType e : element.getPath()) 35615 composeUri("path", e); 35616 } 35617 if (element.hasRelatedArtifact()) { 35618 for (RelatedArtifact e : element.getRelatedArtifact()) 35619 composeRelatedArtifact("relatedArtifact", e); 35620 } 35621 if (element.hasFreeToShareElement()) { 35622 composeBoolean("freeToShare", element.getFreeToShareElement()); 35623 } 35624 if (element.hasComponent()) { 35625 for (ArtifactAssessment.ArtifactAssessmentContentComponent e : element.getComponent()) 35626 composeArtifactAssessmentContentComponent("component", e); 35627 } 35628 } 35629 35630 protected void composeAuditEvent(String name, AuditEvent element) throws IOException { 35631 if (element != null) { 35632 composeResourceAttributes(element); 35633 xml.enter(FHIR_NS, name); 35634 composeAuditEventElements(element); 35635 composeElementClose(element); 35636 xml.exit(FHIR_NS, name); 35637 } 35638 } 35639 35640 protected void composeAuditEventElements(AuditEvent element) throws IOException { 35641 composeDomainResourceElements(element); 35642 if (element.hasCategory()) { 35643 for (CodeableConcept e : element.getCategory()) 35644 composeCodeableConcept("category", e); 35645 } 35646 if (element.hasCode()) { 35647 composeCodeableConcept("code", element.getCode()); 35648 } 35649 if (element.hasActionElement()) 35650 composeEnumeration("action", element.getActionElement(), new AuditEvent.AuditEventActionEnumFactory()); 35651 if (element.hasSeverityElement()) 35652 composeEnumeration("severity", element.getSeverityElement(), new AuditEvent.AuditEventSeverityEnumFactory()); 35653 if (element.hasOccurred()) { 35654 composeType("occurred", element.getOccurred()); 35655 } if (element.hasRecordedElement()) { 35656 composeInstant("recorded", element.getRecordedElement()); 35657 } 35658 if (element.hasOutcome()) { 35659 composeAuditEventOutcomeComponent("outcome", element.getOutcome()); 35660 } 35661 if (element.hasAuthorization()) { 35662 for (CodeableConcept e : element.getAuthorization()) 35663 composeCodeableConcept("authorization", e); 35664 } 35665 if (element.hasBasedOn()) { 35666 for (Reference e : element.getBasedOn()) 35667 composeReference("basedOn", e); 35668 } 35669 if (element.hasPatient()) { 35670 composeReference("patient", element.getPatient()); 35671 } 35672 if (element.hasEncounter()) { 35673 composeReference("encounter", element.getEncounter()); 35674 } 35675 if (element.hasAgent()) { 35676 for (AuditEvent.AuditEventAgentComponent e : element.getAgent()) 35677 composeAuditEventAgentComponent("agent", e); 35678 } 35679 if (element.hasSource()) { 35680 composeAuditEventSourceComponent("source", element.getSource()); 35681 } 35682 if (element.hasEntity()) { 35683 for (AuditEvent.AuditEventEntityComponent e : element.getEntity()) 35684 composeAuditEventEntityComponent("entity", e); 35685 } 35686 } 35687 35688 protected void composeAuditEventOutcomeComponent(String name, AuditEvent.AuditEventOutcomeComponent element) throws IOException { 35689 if (element != null) { 35690 composeElementAttributes(element); 35691 xml.enter(FHIR_NS, name); 35692 composeAuditEventOutcomeComponentElements(element); 35693 composeElementClose(element); 35694 xml.exit(FHIR_NS, name); 35695 } 35696 } 35697 35698 protected void composeAuditEventOutcomeComponentElements(AuditEvent.AuditEventOutcomeComponent element) throws IOException { 35699 composeBackboneElementElements(element); 35700 if (element.hasCode()) { 35701 composeCoding("code", element.getCode()); 35702 } 35703 if (element.hasDetail()) { 35704 for (CodeableConcept e : element.getDetail()) 35705 composeCodeableConcept("detail", e); 35706 } 35707 } 35708 35709 protected void composeAuditEventAgentComponent(String name, AuditEvent.AuditEventAgentComponent element) throws IOException { 35710 if (element != null) { 35711 composeElementAttributes(element); 35712 xml.enter(FHIR_NS, name); 35713 composeAuditEventAgentComponentElements(element); 35714 composeElementClose(element); 35715 xml.exit(FHIR_NS, name); 35716 } 35717 } 35718 35719 protected void composeAuditEventAgentComponentElements(AuditEvent.AuditEventAgentComponent element) throws IOException { 35720 composeBackboneElementElements(element); 35721 if (element.hasType()) { 35722 composeCodeableConcept("type", element.getType()); 35723 } 35724 if (element.hasRole()) { 35725 for (CodeableConcept e : element.getRole()) 35726 composeCodeableConcept("role", e); 35727 } 35728 if (element.hasWho()) { 35729 composeReference("who", element.getWho()); 35730 } 35731 if (element.hasRequestorElement()) { 35732 composeBoolean("requestor", element.getRequestorElement()); 35733 } 35734 if (element.hasLocation()) { 35735 composeReference("location", element.getLocation()); 35736 } 35737 if (element.hasPolicy()) { 35738 for (UriType e : element.getPolicy()) 35739 composeUri("policy", e); 35740 } 35741 if (element.hasNetwork()) { 35742 composeType("network", element.getNetwork()); 35743 } if (element.hasAuthorization()) { 35744 for (CodeableConcept e : element.getAuthorization()) 35745 composeCodeableConcept("authorization", e); 35746 } 35747 } 35748 35749 protected void composeAuditEventSourceComponent(String name, AuditEvent.AuditEventSourceComponent element) throws IOException { 35750 if (element != null) { 35751 composeElementAttributes(element); 35752 xml.enter(FHIR_NS, name); 35753 composeAuditEventSourceComponentElements(element); 35754 composeElementClose(element); 35755 xml.exit(FHIR_NS, name); 35756 } 35757 } 35758 35759 protected void composeAuditEventSourceComponentElements(AuditEvent.AuditEventSourceComponent element) throws IOException { 35760 composeBackboneElementElements(element); 35761 if (element.hasSite()) { 35762 composeReference("site", element.getSite()); 35763 } 35764 if (element.hasObserver()) { 35765 composeReference("observer", element.getObserver()); 35766 } 35767 if (element.hasType()) { 35768 for (CodeableConcept e : element.getType()) 35769 composeCodeableConcept("type", e); 35770 } 35771 } 35772 35773 protected void composeAuditEventEntityComponent(String name, AuditEvent.AuditEventEntityComponent element) throws IOException { 35774 if (element != null) { 35775 composeElementAttributes(element); 35776 xml.enter(FHIR_NS, name); 35777 composeAuditEventEntityComponentElements(element); 35778 composeElementClose(element); 35779 xml.exit(FHIR_NS, name); 35780 } 35781 } 35782 35783 protected void composeAuditEventEntityComponentElements(AuditEvent.AuditEventEntityComponent element) throws IOException { 35784 composeBackboneElementElements(element); 35785 if (element.hasWhat()) { 35786 composeReference("what", element.getWhat()); 35787 } 35788 if (element.hasRole()) { 35789 composeCodeableConcept("role", element.getRole()); 35790 } 35791 if (element.hasSecurityLabel()) { 35792 for (CodeableConcept e : element.getSecurityLabel()) 35793 composeCodeableConcept("securityLabel", e); 35794 } 35795 if (element.hasQueryElement()) { 35796 composeBase64Binary("query", element.getQueryElement()); 35797 } 35798 if (element.hasDetail()) { 35799 for (AuditEvent.AuditEventEntityDetailComponent e : element.getDetail()) 35800 composeAuditEventEntityDetailComponent("detail", e); 35801 } 35802 if (element.hasAgent()) { 35803 for (AuditEvent.AuditEventAgentComponent e : element.getAgent()) 35804 composeAuditEventAgentComponent("agent", e); 35805 } 35806 } 35807 35808 protected void composeAuditEventEntityDetailComponent(String name, AuditEvent.AuditEventEntityDetailComponent element) throws IOException { 35809 if (element != null) { 35810 composeElementAttributes(element); 35811 xml.enter(FHIR_NS, name); 35812 composeAuditEventEntityDetailComponentElements(element); 35813 composeElementClose(element); 35814 xml.exit(FHIR_NS, name); 35815 } 35816 } 35817 35818 protected void composeAuditEventEntityDetailComponentElements(AuditEvent.AuditEventEntityDetailComponent element) throws IOException { 35819 composeBackboneElementElements(element); 35820 if (element.hasType()) { 35821 composeCodeableConcept("type", element.getType()); 35822 } 35823 if (element.hasValue()) { 35824 composeType("value", element.getValue()); 35825 } } 35826 35827 protected void composeBasic(String name, Basic element) throws IOException { 35828 if (element != null) { 35829 composeResourceAttributes(element); 35830 xml.enter(FHIR_NS, name); 35831 composeBasicElements(element); 35832 composeElementClose(element); 35833 xml.exit(FHIR_NS, name); 35834 } 35835 } 35836 35837 protected void composeBasicElements(Basic element) throws IOException { 35838 composeDomainResourceElements(element); 35839 if (element.hasIdentifier()) { 35840 for (Identifier e : element.getIdentifier()) 35841 composeIdentifier("identifier", e); 35842 } 35843 if (element.hasCode()) { 35844 composeCodeableConcept("code", element.getCode()); 35845 } 35846 if (element.hasSubject()) { 35847 composeReference("subject", element.getSubject()); 35848 } 35849 if (element.hasCreatedElement()) { 35850 composeDateTime("created", element.getCreatedElement()); 35851 } 35852 if (element.hasAuthor()) { 35853 composeReference("author", element.getAuthor()); 35854 } 35855 } 35856 35857 protected void composeBinary(String name, Binary element) throws IOException { 35858 if (element != null) { 35859 composeResourceAttributes(element); 35860 xml.enter(FHIR_NS, name); 35861 composeBinaryElements(element); 35862 composeElementClose(element); 35863 xml.exit(FHIR_NS, name); 35864 } 35865 } 35866 35867 protected void composeBinaryElements(Binary element) throws IOException { 35868 composeResourceElements(element); 35869 if (element.hasContentTypeElement()) { 35870 composeCode("contentType", element.getContentTypeElement()); 35871 } 35872 if (element.hasSecurityContext()) { 35873 composeReference("securityContext", element.getSecurityContext()); 35874 } 35875 if (element.hasDataElement()) { 35876 composeBase64Binary("data", element.getDataElement()); 35877 } 35878 } 35879 35880 protected void composeBiologicallyDerivedProduct(String name, BiologicallyDerivedProduct element) throws IOException { 35881 if (element != null) { 35882 composeResourceAttributes(element); 35883 xml.enter(FHIR_NS, name); 35884 composeBiologicallyDerivedProductElements(element); 35885 composeElementClose(element); 35886 xml.exit(FHIR_NS, name); 35887 } 35888 } 35889 35890 protected void composeBiologicallyDerivedProductElements(BiologicallyDerivedProduct element) throws IOException { 35891 composeDomainResourceElements(element); 35892 if (element.hasProductCategory()) { 35893 composeCoding("productCategory", element.getProductCategory()); 35894 } 35895 if (element.hasProductCode()) { 35896 composeCodeableConcept("productCode", element.getProductCode()); 35897 } 35898 if (element.hasParent()) { 35899 for (Reference e : element.getParent()) 35900 composeReference("parent", e); 35901 } 35902 if (element.hasRequest()) { 35903 for (Reference e : element.getRequest()) 35904 composeReference("request", e); 35905 } 35906 if (element.hasIdentifier()) { 35907 for (Identifier e : element.getIdentifier()) 35908 composeIdentifier("identifier", e); 35909 } 35910 if (element.hasBiologicalSourceEvent()) { 35911 composeIdentifier("biologicalSourceEvent", element.getBiologicalSourceEvent()); 35912 } 35913 if (element.hasProcessingFacility()) { 35914 for (Reference e : element.getProcessingFacility()) 35915 composeReference("processingFacility", e); 35916 } 35917 if (element.hasDivisionElement()) { 35918 composeString("division", element.getDivisionElement()); 35919 } 35920 if (element.hasProductStatus()) { 35921 composeCoding("productStatus", element.getProductStatus()); 35922 } 35923 if (element.hasExpirationDateElement()) { 35924 composeDateTime("expirationDate", element.getExpirationDateElement()); 35925 } 35926 if (element.hasCollection()) { 35927 composeBiologicallyDerivedProductCollectionComponent("collection", element.getCollection()); 35928 } 35929 if (element.hasStorageTempRequirements()) { 35930 composeRange("storageTempRequirements", element.getStorageTempRequirements()); 35931 } 35932 if (element.hasProperty()) { 35933 for (BiologicallyDerivedProduct.BiologicallyDerivedProductPropertyComponent e : element.getProperty()) 35934 composeBiologicallyDerivedProductPropertyComponent("property", e); 35935 } 35936 } 35937 35938 protected void composeBiologicallyDerivedProductCollectionComponent(String name, BiologicallyDerivedProduct.BiologicallyDerivedProductCollectionComponent element) throws IOException { 35939 if (element != null) { 35940 composeElementAttributes(element); 35941 xml.enter(FHIR_NS, name); 35942 composeBiologicallyDerivedProductCollectionComponentElements(element); 35943 composeElementClose(element); 35944 xml.exit(FHIR_NS, name); 35945 } 35946 } 35947 35948 protected void composeBiologicallyDerivedProductCollectionComponentElements(BiologicallyDerivedProduct.BiologicallyDerivedProductCollectionComponent element) throws IOException { 35949 composeBackboneElementElements(element); 35950 if (element.hasCollector()) { 35951 composeReference("collector", element.getCollector()); 35952 } 35953 if (element.hasSource()) { 35954 composeReference("source", element.getSource()); 35955 } 35956 if (element.hasCollected()) { 35957 composeType("collected", element.getCollected()); 35958 } } 35959 35960 protected void composeBiologicallyDerivedProductPropertyComponent(String name, BiologicallyDerivedProduct.BiologicallyDerivedProductPropertyComponent element) throws IOException { 35961 if (element != null) { 35962 composeElementAttributes(element); 35963 xml.enter(FHIR_NS, name); 35964 composeBiologicallyDerivedProductPropertyComponentElements(element); 35965 composeElementClose(element); 35966 xml.exit(FHIR_NS, name); 35967 } 35968 } 35969 35970 protected void composeBiologicallyDerivedProductPropertyComponentElements(BiologicallyDerivedProduct.BiologicallyDerivedProductPropertyComponent element) throws IOException { 35971 composeBackboneElementElements(element); 35972 if (element.hasType()) { 35973 composeCodeableConcept("type", element.getType()); 35974 } 35975 if (element.hasValue()) { 35976 composeType("value", element.getValue()); 35977 } } 35978 35979 protected void composeBiologicallyDerivedProductDispense(String name, BiologicallyDerivedProductDispense element) throws IOException { 35980 if (element != null) { 35981 composeResourceAttributes(element); 35982 xml.enter(FHIR_NS, name); 35983 composeBiologicallyDerivedProductDispenseElements(element); 35984 composeElementClose(element); 35985 xml.exit(FHIR_NS, name); 35986 } 35987 } 35988 35989 protected void composeBiologicallyDerivedProductDispenseElements(BiologicallyDerivedProductDispense element) throws IOException { 35990 composeDomainResourceElements(element); 35991 if (element.hasIdentifier()) { 35992 for (Identifier e : element.getIdentifier()) 35993 composeIdentifier("identifier", e); 35994 } 35995 if (element.hasBasedOn()) { 35996 for (Reference e : element.getBasedOn()) 35997 composeReference("basedOn", e); 35998 } 35999 if (element.hasPartOf()) { 36000 for (Reference e : element.getPartOf()) 36001 composeReference("partOf", e); 36002 } 36003 if (element.hasStatusElement()) 36004 composeEnumeration("status", element.getStatusElement(), new BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispenseCodesEnumFactory()); 36005 if (element.hasOriginRelationshipType()) { 36006 composeCodeableConcept("originRelationshipType", element.getOriginRelationshipType()); 36007 } 36008 if (element.hasProduct()) { 36009 composeReference("product", element.getProduct()); 36010 } 36011 if (element.hasPatient()) { 36012 composeReference("patient", element.getPatient()); 36013 } 36014 if (element.hasMatchStatus()) { 36015 composeCodeableConcept("matchStatus", element.getMatchStatus()); 36016 } 36017 if (element.hasPerformer()) { 36018 for (BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispensePerformerComponent e : element.getPerformer()) 36019 composeBiologicallyDerivedProductDispensePerformerComponent("performer", e); 36020 } 36021 if (element.hasLocation()) { 36022 composeReference("location", element.getLocation()); 36023 } 36024 if (element.hasQuantity()) { 36025 composeQuantity("quantity", element.getQuantity()); 36026 } 36027 if (element.hasPreparedDateElement()) { 36028 composeDateTime("preparedDate", element.getPreparedDateElement()); 36029 } 36030 if (element.hasWhenHandedOverElement()) { 36031 composeDateTime("whenHandedOver", element.getWhenHandedOverElement()); 36032 } 36033 if (element.hasDestination()) { 36034 composeReference("destination", element.getDestination()); 36035 } 36036 if (element.hasNote()) { 36037 for (Annotation e : element.getNote()) 36038 composeAnnotation("note", e); 36039 } 36040 if (element.hasUsageInstructionElement()) { 36041 composeString("usageInstruction", element.getUsageInstructionElement()); 36042 } 36043 } 36044 36045 protected void composeBiologicallyDerivedProductDispensePerformerComponent(String name, BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispensePerformerComponent element) throws IOException { 36046 if (element != null) { 36047 composeElementAttributes(element); 36048 xml.enter(FHIR_NS, name); 36049 composeBiologicallyDerivedProductDispensePerformerComponentElements(element); 36050 composeElementClose(element); 36051 xml.exit(FHIR_NS, name); 36052 } 36053 } 36054 36055 protected void composeBiologicallyDerivedProductDispensePerformerComponentElements(BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispensePerformerComponent element) throws IOException { 36056 composeBackboneElementElements(element); 36057 if (element.hasFunction()) { 36058 composeCodeableConcept("function", element.getFunction()); 36059 } 36060 if (element.hasActor()) { 36061 composeReference("actor", element.getActor()); 36062 } 36063 } 36064 36065 protected void composeBodyStructure(String name, BodyStructure element) throws IOException { 36066 if (element != null) { 36067 composeResourceAttributes(element); 36068 xml.enter(FHIR_NS, name); 36069 composeBodyStructureElements(element); 36070 composeElementClose(element); 36071 xml.exit(FHIR_NS, name); 36072 } 36073 } 36074 36075 protected void composeBodyStructureElements(BodyStructure element) throws IOException { 36076 composeDomainResourceElements(element); 36077 if (element.hasIdentifier()) { 36078 for (Identifier e : element.getIdentifier()) 36079 composeIdentifier("identifier", e); 36080 } 36081 if (element.hasActiveElement()) { 36082 composeBoolean("active", element.getActiveElement()); 36083 } 36084 if (element.hasMorphology()) { 36085 composeCodeableConcept("morphology", element.getMorphology()); 36086 } 36087 if (element.hasIncludedStructure()) { 36088 for (BodyStructure.BodyStructureIncludedStructureComponent e : element.getIncludedStructure()) 36089 composeBodyStructureIncludedStructureComponent("includedStructure", e); 36090 } 36091 if (element.hasExcludedStructure()) { 36092 for (BodyStructure.BodyStructureIncludedStructureComponent e : element.getExcludedStructure()) 36093 composeBodyStructureIncludedStructureComponent("excludedStructure", e); 36094 } 36095 if (element.hasDescriptionElement()) { 36096 composeMarkdown("description", element.getDescriptionElement()); 36097 } 36098 if (element.hasImage()) { 36099 for (Attachment e : element.getImage()) 36100 composeAttachment("image", e); 36101 } 36102 if (element.hasPatient()) { 36103 composeReference("patient", element.getPatient()); 36104 } 36105 } 36106 36107 protected void composeBodyStructureIncludedStructureComponent(String name, BodyStructure.BodyStructureIncludedStructureComponent element) throws IOException { 36108 if (element != null) { 36109 composeElementAttributes(element); 36110 xml.enter(FHIR_NS, name); 36111 composeBodyStructureIncludedStructureComponentElements(element); 36112 composeElementClose(element); 36113 xml.exit(FHIR_NS, name); 36114 } 36115 } 36116 36117 protected void composeBodyStructureIncludedStructureComponentElements(BodyStructure.BodyStructureIncludedStructureComponent element) throws IOException { 36118 composeBackboneElementElements(element); 36119 if (element.hasStructure()) { 36120 composeCodeableConcept("structure", element.getStructure()); 36121 } 36122 if (element.hasLaterality()) { 36123 composeCodeableConcept("laterality", element.getLaterality()); 36124 } 36125 if (element.hasBodyLandmarkOrientation()) { 36126 for (BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationComponent e : element.getBodyLandmarkOrientation()) 36127 composeBodyStructureIncludedStructureBodyLandmarkOrientationComponent("bodyLandmarkOrientation", e); 36128 } 36129 if (element.hasSpatialReference()) { 36130 for (Reference e : element.getSpatialReference()) 36131 composeReference("spatialReference", e); 36132 } 36133 if (element.hasQualifier()) { 36134 for (CodeableConcept e : element.getQualifier()) 36135 composeCodeableConcept("qualifier", e); 36136 } 36137 } 36138 36139 protected void composeBodyStructureIncludedStructureBodyLandmarkOrientationComponent(String name, BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationComponent element) throws IOException { 36140 if (element != null) { 36141 composeElementAttributes(element); 36142 xml.enter(FHIR_NS, name); 36143 composeBodyStructureIncludedStructureBodyLandmarkOrientationComponentElements(element); 36144 composeElementClose(element); 36145 xml.exit(FHIR_NS, name); 36146 } 36147 } 36148 36149 protected void composeBodyStructureIncludedStructureBodyLandmarkOrientationComponentElements(BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationComponent element) throws IOException { 36150 composeBackboneElementElements(element); 36151 if (element.hasLandmarkDescription()) { 36152 for (CodeableConcept e : element.getLandmarkDescription()) 36153 composeCodeableConcept("landmarkDescription", e); 36154 } 36155 if (element.hasClockFacePosition()) { 36156 for (CodeableConcept e : element.getClockFacePosition()) 36157 composeCodeableConcept("clockFacePosition", e); 36158 } 36159 if (element.hasDistanceFromLandmark()) { 36160 for (BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent e : element.getDistanceFromLandmark()) 36161 composeBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent("distanceFromLandmark", e); 36162 } 36163 if (element.hasSurfaceOrientation()) { 36164 for (CodeableConcept e : element.getSurfaceOrientation()) 36165 composeCodeableConcept("surfaceOrientation", e); 36166 } 36167 } 36168 36169 protected void composeBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent(String name, BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent element) throws IOException { 36170 if (element != null) { 36171 composeElementAttributes(element); 36172 xml.enter(FHIR_NS, name); 36173 composeBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponentElements(element); 36174 composeElementClose(element); 36175 xml.exit(FHIR_NS, name); 36176 } 36177 } 36178 36179 protected void composeBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponentElements(BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent element) throws IOException { 36180 composeBackboneElementElements(element); 36181 if (element.hasDevice()) { 36182 for (CodeableReference e : element.getDevice()) 36183 composeCodeableReference("device", e); 36184 } 36185 if (element.hasValue()) { 36186 for (Quantity e : element.getValue()) 36187 composeQuantity("value", e); 36188 } 36189 } 36190 36191 protected void composeBundle(String name, Bundle element) throws IOException { 36192 if (element != null) { 36193 composeResourceAttributes(element); 36194 xml.enter(FHIR_NS, name); 36195 composeBundleElements(element); 36196 composeElementClose(element); 36197 xml.exit(FHIR_NS, name); 36198 } 36199 } 36200 36201 protected void composeBundleElements(Bundle element) throws IOException { 36202 composeResourceElements(element); 36203 if (element.hasIdentifier()) { 36204 composeIdentifier("identifier", element.getIdentifier()); 36205 } 36206 if (element.hasTypeElement()) 36207 composeEnumeration("type", element.getTypeElement(), new Bundle.BundleTypeEnumFactory()); 36208 if (element.hasTimestampElement()) { 36209 composeInstant("timestamp", element.getTimestampElement()); 36210 } 36211 if (element.hasTotalElement()) { 36212 composeUnsignedInt("total", element.getTotalElement()); 36213 } 36214 if (element.hasLink()) { 36215 for (Bundle.BundleLinkComponent e : element.getLink()) 36216 composeBundleLinkComponent("link", e); 36217 } 36218 if (element.hasEntry()) { 36219 for (Bundle.BundleEntryComponent e : element.getEntry()) 36220 composeBundleEntryComponent("entry", e); 36221 } 36222 if (element.hasSignature()) { 36223 composeSignature("signature", element.getSignature()); 36224 } 36225 if (element.hasIssues()) { 36226 xml.enter(FHIR_NS, "issues"); 36227 composeResource(element.getIssues()); 36228 xml.exit(FHIR_NS, "issues"); 36229 } 36230 } 36231 36232 protected void composeBundleLinkComponent(String name, Bundle.BundleLinkComponent element) throws IOException { 36233 if (element != null) { 36234 composeElementAttributes(element); 36235 xml.enter(FHIR_NS, name); 36236 composeBundleLinkComponentElements(element); 36237 composeElementClose(element); 36238 xml.exit(FHIR_NS, name); 36239 } 36240 } 36241 36242 protected void composeBundleLinkComponentElements(Bundle.BundleLinkComponent element) throws IOException { 36243 composeBackboneElementElements(element); 36244 if (element.hasRelationElement()) 36245 composeEnumeration("relation", element.getRelationElement(), new Bundle.LinkRelationTypesEnumFactory()); 36246 if (element.hasUrlElement()) { 36247 composeUri("url", element.getUrlElement()); 36248 } 36249 } 36250 36251 protected void composeBundleEntryComponent(String name, Bundle.BundleEntryComponent element) throws IOException { 36252 if (element != null) { 36253 composeElementAttributes(element); 36254 xml.enter(FHIR_NS, name); 36255 composeBundleEntryComponentElements(element); 36256 composeElementClose(element); 36257 xml.exit(FHIR_NS, name); 36258 } 36259 } 36260 36261 protected void composeBundleEntryComponentElements(Bundle.BundleEntryComponent element) throws IOException { 36262 composeBackboneElementElements(element); 36263 if (element.hasLink()) { 36264 for (Bundle.BundleLinkComponent e : element.getLink()) 36265 composeBundleLinkComponent("link", e); 36266 } 36267 if (element.hasFullUrlElement()) { 36268 composeUri("fullUrl", element.getFullUrlElement()); 36269 } 36270 if (element.hasResource()) { 36271 xml.enter(FHIR_NS, "resource"); 36272 composeResource(element.getResource()); 36273 xml.exit(FHIR_NS, "resource"); 36274 } 36275 if (element.hasSearch()) { 36276 composeBundleEntrySearchComponent("search", element.getSearch()); 36277 } 36278 if (element.hasRequest()) { 36279 composeBundleEntryRequestComponent("request", element.getRequest()); 36280 } 36281 if (element.hasResponse()) { 36282 composeBundleEntryResponseComponent("response", element.getResponse()); 36283 } 36284 } 36285 36286 protected void composeBundleEntrySearchComponent(String name, Bundle.BundleEntrySearchComponent element) throws IOException { 36287 if (element != null) { 36288 composeElementAttributes(element); 36289 xml.enter(FHIR_NS, name); 36290 composeBundleEntrySearchComponentElements(element); 36291 composeElementClose(element); 36292 xml.exit(FHIR_NS, name); 36293 } 36294 } 36295 36296 protected void composeBundleEntrySearchComponentElements(Bundle.BundleEntrySearchComponent element) throws IOException { 36297 composeBackboneElementElements(element); 36298 if (element.hasModeElement()) 36299 composeEnumeration("mode", element.getModeElement(), new Bundle.SearchEntryModeEnumFactory()); 36300 if (element.hasScoreElement()) { 36301 composeDecimal("score", element.getScoreElement()); 36302 } 36303 } 36304 36305 protected void composeBundleEntryRequestComponent(String name, Bundle.BundleEntryRequestComponent element) throws IOException { 36306 if (element != null) { 36307 composeElementAttributes(element); 36308 xml.enter(FHIR_NS, name); 36309 composeBundleEntryRequestComponentElements(element); 36310 composeElementClose(element); 36311 xml.exit(FHIR_NS, name); 36312 } 36313 } 36314 36315 protected void composeBundleEntryRequestComponentElements(Bundle.BundleEntryRequestComponent element) throws IOException { 36316 composeBackboneElementElements(element); 36317 if (element.hasMethodElement()) 36318 composeEnumeration("method", element.getMethodElement(), new Bundle.HTTPVerbEnumFactory()); 36319 if (element.hasUrlElement()) { 36320 composeUri("url", element.getUrlElement()); 36321 } 36322 if (element.hasIfNoneMatchElement()) { 36323 composeString("ifNoneMatch", element.getIfNoneMatchElement()); 36324 } 36325 if (element.hasIfModifiedSinceElement()) { 36326 composeInstant("ifModifiedSince", element.getIfModifiedSinceElement()); 36327 } 36328 if (element.hasIfMatchElement()) { 36329 composeString("ifMatch", element.getIfMatchElement()); 36330 } 36331 if (element.hasIfNoneExistElement()) { 36332 composeString("ifNoneExist", element.getIfNoneExistElement()); 36333 } 36334 } 36335 36336 protected void composeBundleEntryResponseComponent(String name, Bundle.BundleEntryResponseComponent element) throws IOException { 36337 if (element != null) { 36338 composeElementAttributes(element); 36339 xml.enter(FHIR_NS, name); 36340 composeBundleEntryResponseComponentElements(element); 36341 composeElementClose(element); 36342 xml.exit(FHIR_NS, name); 36343 } 36344 } 36345 36346 protected void composeBundleEntryResponseComponentElements(Bundle.BundleEntryResponseComponent element) throws IOException { 36347 composeBackboneElementElements(element); 36348 if (element.hasStatusElement()) { 36349 composeString("status", element.getStatusElement()); 36350 } 36351 if (element.hasLocationElement()) { 36352 composeUri("location", element.getLocationElement()); 36353 } 36354 if (element.hasEtagElement()) { 36355 composeString("etag", element.getEtagElement()); 36356 } 36357 if (element.hasLastModifiedElement()) { 36358 composeInstant("lastModified", element.getLastModifiedElement()); 36359 } 36360 if (element.hasOutcome()) { 36361 xml.enter(FHIR_NS, "outcome"); 36362 composeResource(element.getOutcome()); 36363 xml.exit(FHIR_NS, "outcome"); 36364 } 36365 } 36366 36367 protected void composeCapabilityStatement(String name, CapabilityStatement element) throws IOException { 36368 if (element != null) { 36369 composeResourceAttributes(element); 36370 xml.enter(FHIR_NS, name); 36371 composeCapabilityStatementElements(element); 36372 composeElementClose(element); 36373 xml.exit(FHIR_NS, name); 36374 } 36375 } 36376 36377 protected void composeCapabilityStatementElements(CapabilityStatement element) throws IOException { 36378 composeCanonicalResourceElements(element); 36379 if (element.hasUrlElement()) { 36380 composeUri("url", element.getUrlElement()); 36381 } 36382 if (element.hasIdentifier()) { 36383 for (Identifier e : element.getIdentifier()) 36384 composeIdentifier("identifier", e); 36385 } 36386 if (element.hasVersionElement()) { 36387 composeString("version", element.getVersionElement()); 36388 } 36389 if (element.hasVersionAlgorithm()) { 36390 composeType("versionAlgorithm", element.getVersionAlgorithm()); 36391 } if (element.hasNameElement()) { 36392 composeString("name", element.getNameElement()); 36393 } 36394 if (element.hasTitleElement()) { 36395 composeString("title", element.getTitleElement()); 36396 } 36397 if (element.hasStatusElement()) 36398 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 36399 if (element.hasExperimentalElement()) { 36400 composeBoolean("experimental", element.getExperimentalElement()); 36401 } 36402 if (element.hasDateElement()) { 36403 composeDateTime("date", element.getDateElement()); 36404 } 36405 if (element.hasPublisherElement()) { 36406 composeString("publisher", element.getPublisherElement()); 36407 } 36408 if (element.hasContact()) { 36409 for (ContactDetail e : element.getContact()) 36410 composeContactDetail("contact", e); 36411 } 36412 if (element.hasDescriptionElement()) { 36413 composeMarkdown("description", element.getDescriptionElement()); 36414 } 36415 if (element.hasUseContext()) { 36416 for (UsageContext e : element.getUseContext()) 36417 composeUsageContext("useContext", e); 36418 } 36419 if (element.hasJurisdiction()) { 36420 for (CodeableConcept e : element.getJurisdiction()) 36421 composeCodeableConcept("jurisdiction", e); 36422 } 36423 if (element.hasPurposeElement()) { 36424 composeMarkdown("purpose", element.getPurposeElement()); 36425 } 36426 if (element.hasCopyrightElement()) { 36427 composeMarkdown("copyright", element.getCopyrightElement()); 36428 } 36429 if (element.hasCopyrightLabelElement()) { 36430 composeString("copyrightLabel", element.getCopyrightLabelElement()); 36431 } 36432 if (element.hasKindElement()) 36433 composeEnumeration("kind", element.getKindElement(), new Enumerations.CapabilityStatementKindEnumFactory()); 36434 if (element.hasInstantiates()) { 36435 for (CanonicalType e : element.getInstantiates()) 36436 composeCanonical("instantiates", e); 36437 } 36438 if (element.hasImports()) { 36439 for (CanonicalType e : element.getImports()) 36440 composeCanonical("imports", e); 36441 } 36442 if (element.hasSoftware()) { 36443 composeCapabilityStatementSoftwareComponent("software", element.getSoftware()); 36444 } 36445 if (element.hasImplementation()) { 36446 composeCapabilityStatementImplementationComponent("implementation", element.getImplementation()); 36447 } 36448 if (element.hasFhirVersionElement()) 36449 composeEnumeration("fhirVersion", element.getFhirVersionElement(), new Enumerations.FHIRVersionEnumFactory()); 36450 if (element.hasFormat()) { 36451 for (CodeType e : element.getFormat()) 36452 composeCode("format", e); 36453 } 36454 if (element.hasPatchFormat()) { 36455 for (CodeType e : element.getPatchFormat()) 36456 composeCode("patchFormat", e); 36457 } 36458 if (element.hasAcceptLanguage()) { 36459 for (CodeType e : element.getAcceptLanguage()) 36460 composeCode("acceptLanguage", e); 36461 } 36462 if (element.hasImplementationGuide()) { 36463 for (CanonicalType e : element.getImplementationGuide()) 36464 composeCanonical("implementationGuide", e); 36465 } 36466 if (element.hasRest()) { 36467 for (CapabilityStatement.CapabilityStatementRestComponent e : element.getRest()) 36468 composeCapabilityStatementRestComponent("rest", e); 36469 } 36470 if (element.hasMessaging()) { 36471 for (CapabilityStatement.CapabilityStatementMessagingComponent e : element.getMessaging()) 36472 composeCapabilityStatementMessagingComponent("messaging", e); 36473 } 36474 if (element.hasDocument()) { 36475 for (CapabilityStatement.CapabilityStatementDocumentComponent e : element.getDocument()) 36476 composeCapabilityStatementDocumentComponent("document", e); 36477 } 36478 } 36479 36480 protected void composeCapabilityStatementSoftwareComponent(String name, CapabilityStatement.CapabilityStatementSoftwareComponent element) throws IOException { 36481 if (element != null) { 36482 composeElementAttributes(element); 36483 xml.enter(FHIR_NS, name); 36484 composeCapabilityStatementSoftwareComponentElements(element); 36485 composeElementClose(element); 36486 xml.exit(FHIR_NS, name); 36487 } 36488 } 36489 36490 protected void composeCapabilityStatementSoftwareComponentElements(CapabilityStatement.CapabilityStatementSoftwareComponent element) throws IOException { 36491 composeBackboneElementElements(element); 36492 if (element.hasNameElement()) { 36493 composeString("name", element.getNameElement()); 36494 } 36495 if (element.hasVersionElement()) { 36496 composeString("version", element.getVersionElement()); 36497 } 36498 if (element.hasReleaseDateElement()) { 36499 composeDateTime("releaseDate", element.getReleaseDateElement()); 36500 } 36501 } 36502 36503 protected void composeCapabilityStatementImplementationComponent(String name, CapabilityStatement.CapabilityStatementImplementationComponent element) throws IOException { 36504 if (element != null) { 36505 composeElementAttributes(element); 36506 xml.enter(FHIR_NS, name); 36507 composeCapabilityStatementImplementationComponentElements(element); 36508 composeElementClose(element); 36509 xml.exit(FHIR_NS, name); 36510 } 36511 } 36512 36513 protected void composeCapabilityStatementImplementationComponentElements(CapabilityStatement.CapabilityStatementImplementationComponent element) throws IOException { 36514 composeBackboneElementElements(element); 36515 if (element.hasDescriptionElement()) { 36516 composeMarkdown("description", element.getDescriptionElement()); 36517 } 36518 if (element.hasUrlElement()) { 36519 composeUrl("url", element.getUrlElement()); 36520 } 36521 if (element.hasCustodian()) { 36522 composeReference("custodian", element.getCustodian()); 36523 } 36524 } 36525 36526 protected void composeCapabilityStatementRestComponent(String name, CapabilityStatement.CapabilityStatementRestComponent element) throws IOException { 36527 if (element != null) { 36528 composeElementAttributes(element); 36529 xml.enter(FHIR_NS, name); 36530 composeCapabilityStatementRestComponentElements(element); 36531 composeElementClose(element); 36532 xml.exit(FHIR_NS, name); 36533 } 36534 } 36535 36536 protected void composeCapabilityStatementRestComponentElements(CapabilityStatement.CapabilityStatementRestComponent element) throws IOException { 36537 composeBackboneElementElements(element); 36538 if (element.hasModeElement()) 36539 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.RestfulCapabilityModeEnumFactory()); 36540 if (element.hasDocumentationElement()) { 36541 composeMarkdown("documentation", element.getDocumentationElement()); 36542 } 36543 if (element.hasSecurity()) { 36544 composeCapabilityStatementRestSecurityComponent("security", element.getSecurity()); 36545 } 36546 if (element.hasResource()) { 36547 for (CapabilityStatement.CapabilityStatementRestResourceComponent e : element.getResource()) 36548 composeCapabilityStatementRestResourceComponent("resource", e); 36549 } 36550 if (element.hasInteraction()) { 36551 for (CapabilityStatement.SystemInteractionComponent e : element.getInteraction()) 36552 composeCapabilityStatementSystemInteractionComponent("interaction", e); 36553 } 36554 if (element.hasSearchParam()) { 36555 for (CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent e : element.getSearchParam()) 36556 composeCapabilityStatementRestResourceSearchParamComponent("searchParam", e); 36557 } 36558 if (element.hasOperation()) { 36559 for (CapabilityStatement.CapabilityStatementRestResourceOperationComponent e : element.getOperation()) 36560 composeCapabilityStatementRestResourceOperationComponent("operation", e); 36561 } 36562 if (element.hasCompartment()) { 36563 for (CanonicalType e : element.getCompartment()) 36564 composeCanonical("compartment", e); 36565 } 36566 } 36567 36568 protected void composeCapabilityStatementRestSecurityComponent(String name, CapabilityStatement.CapabilityStatementRestSecurityComponent element) throws IOException { 36569 if (element != null) { 36570 composeElementAttributes(element); 36571 xml.enter(FHIR_NS, name); 36572 composeCapabilityStatementRestSecurityComponentElements(element); 36573 composeElementClose(element); 36574 xml.exit(FHIR_NS, name); 36575 } 36576 } 36577 36578 protected void composeCapabilityStatementRestSecurityComponentElements(CapabilityStatement.CapabilityStatementRestSecurityComponent element) throws IOException { 36579 composeBackboneElementElements(element); 36580 if (element.hasCorsElement()) { 36581 composeBoolean("cors", element.getCorsElement()); 36582 } 36583 if (element.hasService()) { 36584 for (CodeableConcept e : element.getService()) 36585 composeCodeableConcept("service", e); 36586 } 36587 if (element.hasDescriptionElement()) { 36588 composeMarkdown("description", element.getDescriptionElement()); 36589 } 36590 } 36591 36592 protected void composeCapabilityStatementRestResourceComponent(String name, CapabilityStatement.CapabilityStatementRestResourceComponent element) throws IOException { 36593 if (element != null) { 36594 composeElementAttributes(element); 36595 xml.enter(FHIR_NS, name); 36596 composeCapabilityStatementRestResourceComponentElements(element); 36597 composeElementClose(element); 36598 xml.exit(FHIR_NS, name); 36599 } 36600 } 36601 36602 protected void composeCapabilityStatementRestResourceComponentElements(CapabilityStatement.CapabilityStatementRestResourceComponent element) throws IOException { 36603 composeBackboneElementElements(element); 36604 if (element.hasTypeElement()) { 36605 composeCode("type", element.getTypeElement()); 36606 } 36607 if (element.hasProfileElement()) { 36608 composeCanonical("profile", element.getProfileElement()); 36609 } 36610 if (element.hasSupportedProfile()) { 36611 for (CanonicalType e : element.getSupportedProfile()) 36612 composeCanonical("supportedProfile", e); 36613 } 36614 if (element.hasDocumentationElement()) { 36615 composeMarkdown("documentation", element.getDocumentationElement()); 36616 } 36617 if (element.hasInteraction()) { 36618 for (CapabilityStatement.ResourceInteractionComponent e : element.getInteraction()) 36619 composeCapabilityStatementResourceInteractionComponent("interaction", e); 36620 } 36621 if (element.hasVersioningElement()) 36622 composeEnumeration("versioning", element.getVersioningElement(), new CapabilityStatement.ResourceVersionPolicyEnumFactory()); 36623 if (element.hasReadHistoryElement()) { 36624 composeBoolean("readHistory", element.getReadHistoryElement()); 36625 } 36626 if (element.hasUpdateCreateElement()) { 36627 composeBoolean("updateCreate", element.getUpdateCreateElement()); 36628 } 36629 if (element.hasConditionalCreateElement()) { 36630 composeBoolean("conditionalCreate", element.getConditionalCreateElement()); 36631 } 36632 if (element.hasConditionalReadElement()) 36633 composeEnumeration("conditionalRead", element.getConditionalReadElement(), new CapabilityStatement.ConditionalReadStatusEnumFactory()); 36634 if (element.hasConditionalUpdateElement()) { 36635 composeBoolean("conditionalUpdate", element.getConditionalUpdateElement()); 36636 } 36637 if (element.hasConditionalPatchElement()) { 36638 composeBoolean("conditionalPatch", element.getConditionalPatchElement()); 36639 } 36640 if (element.hasConditionalDeleteElement()) 36641 composeEnumeration("conditionalDelete", element.getConditionalDeleteElement(), new CapabilityStatement.ConditionalDeleteStatusEnumFactory()); 36642 if (element.hasReferencePolicy()) 36643 for (Enumeration<CapabilityStatement.ReferenceHandlingPolicy> e : element.getReferencePolicy()) 36644 composeEnumeration("referencePolicy", e, new CapabilityStatement.ReferenceHandlingPolicyEnumFactory()); 36645 if (element.hasSearchInclude()) { 36646 for (StringType e : element.getSearchInclude()) 36647 composeString("searchInclude", e); 36648 } 36649 if (element.hasSearchRevInclude()) { 36650 for (StringType e : element.getSearchRevInclude()) 36651 composeString("searchRevInclude", e); 36652 } 36653 if (element.hasSearchParam()) { 36654 for (CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent e : element.getSearchParam()) 36655 composeCapabilityStatementRestResourceSearchParamComponent("searchParam", e); 36656 } 36657 if (element.hasOperation()) { 36658 for (CapabilityStatement.CapabilityStatementRestResourceOperationComponent e : element.getOperation()) 36659 composeCapabilityStatementRestResourceOperationComponent("operation", e); 36660 } 36661 } 36662 36663 protected void composeCapabilityStatementResourceInteractionComponent(String name, CapabilityStatement.ResourceInteractionComponent element) throws IOException { 36664 if (element != null) { 36665 composeElementAttributes(element); 36666 xml.enter(FHIR_NS, name); 36667 composeCapabilityStatementResourceInteractionComponentElements(element); 36668 composeElementClose(element); 36669 xml.exit(FHIR_NS, name); 36670 } 36671 } 36672 36673 protected void composeCapabilityStatementResourceInteractionComponentElements(CapabilityStatement.ResourceInteractionComponent element) throws IOException { 36674 composeBackboneElementElements(element); 36675 if (element.hasCodeElement()) 36676 composeEnumeration("code", element.getCodeElement(), new CapabilityStatement.TypeRestfulInteractionEnumFactory()); 36677 if (element.hasDocumentationElement()) { 36678 composeMarkdown("documentation", element.getDocumentationElement()); 36679 } 36680 } 36681 36682 protected void composeCapabilityStatementRestResourceSearchParamComponent(String name, CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent element) throws IOException { 36683 if (element != null) { 36684 composeElementAttributes(element); 36685 xml.enter(FHIR_NS, name); 36686 composeCapabilityStatementRestResourceSearchParamComponentElements(element); 36687 composeElementClose(element); 36688 xml.exit(FHIR_NS, name); 36689 } 36690 } 36691 36692 protected void composeCapabilityStatementRestResourceSearchParamComponentElements(CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent element) throws IOException { 36693 composeBackboneElementElements(element); 36694 if (element.hasNameElement()) { 36695 composeString("name", element.getNameElement()); 36696 } 36697 if (element.hasDefinitionElement()) { 36698 composeCanonical("definition", element.getDefinitionElement()); 36699 } 36700 if (element.hasTypeElement()) 36701 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 36702 if (element.hasDocumentationElement()) { 36703 composeMarkdown("documentation", element.getDocumentationElement()); 36704 } 36705 } 36706 36707 protected void composeCapabilityStatementRestResourceOperationComponent(String name, CapabilityStatement.CapabilityStatementRestResourceOperationComponent element) throws IOException { 36708 if (element != null) { 36709 composeElementAttributes(element); 36710 xml.enter(FHIR_NS, name); 36711 composeCapabilityStatementRestResourceOperationComponentElements(element); 36712 composeElementClose(element); 36713 xml.exit(FHIR_NS, name); 36714 } 36715 } 36716 36717 protected void composeCapabilityStatementRestResourceOperationComponentElements(CapabilityStatement.CapabilityStatementRestResourceOperationComponent element) throws IOException { 36718 composeBackboneElementElements(element); 36719 if (element.hasNameElement()) { 36720 composeString("name", element.getNameElement()); 36721 } 36722 if (element.hasDefinitionElement()) { 36723 composeCanonical("definition", element.getDefinitionElement()); 36724 } 36725 if (element.hasDocumentationElement()) { 36726 composeMarkdown("documentation", element.getDocumentationElement()); 36727 } 36728 } 36729 36730 protected void composeCapabilityStatementSystemInteractionComponent(String name, CapabilityStatement.SystemInteractionComponent element) throws IOException { 36731 if (element != null) { 36732 composeElementAttributes(element); 36733 xml.enter(FHIR_NS, name); 36734 composeCapabilityStatementSystemInteractionComponentElements(element); 36735 composeElementClose(element); 36736 xml.exit(FHIR_NS, name); 36737 } 36738 } 36739 36740 protected void composeCapabilityStatementSystemInteractionComponentElements(CapabilityStatement.SystemInteractionComponent element) throws IOException { 36741 composeBackboneElementElements(element); 36742 if (element.hasCodeElement()) 36743 composeEnumeration("code", element.getCodeElement(), new CapabilityStatement.SystemRestfulInteractionEnumFactory()); 36744 if (element.hasDocumentationElement()) { 36745 composeMarkdown("documentation", element.getDocumentationElement()); 36746 } 36747 } 36748 36749 protected void composeCapabilityStatementMessagingComponent(String name, CapabilityStatement.CapabilityStatementMessagingComponent element) throws IOException { 36750 if (element != null) { 36751 composeElementAttributes(element); 36752 xml.enter(FHIR_NS, name); 36753 composeCapabilityStatementMessagingComponentElements(element); 36754 composeElementClose(element); 36755 xml.exit(FHIR_NS, name); 36756 } 36757 } 36758 36759 protected void composeCapabilityStatementMessagingComponentElements(CapabilityStatement.CapabilityStatementMessagingComponent element) throws IOException { 36760 composeBackboneElementElements(element); 36761 if (element.hasEndpoint()) { 36762 for (CapabilityStatement.CapabilityStatementMessagingEndpointComponent e : element.getEndpoint()) 36763 composeCapabilityStatementMessagingEndpointComponent("endpoint", e); 36764 } 36765 if (element.hasReliableCacheElement()) { 36766 composeUnsignedInt("reliableCache", element.getReliableCacheElement()); 36767 } 36768 if (element.hasDocumentationElement()) { 36769 composeMarkdown("documentation", element.getDocumentationElement()); 36770 } 36771 if (element.hasSupportedMessage()) { 36772 for (CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent e : element.getSupportedMessage()) 36773 composeCapabilityStatementMessagingSupportedMessageComponent("supportedMessage", e); 36774 } 36775 } 36776 36777 protected void composeCapabilityStatementMessagingEndpointComponent(String name, CapabilityStatement.CapabilityStatementMessagingEndpointComponent element) throws IOException { 36778 if (element != null) { 36779 composeElementAttributes(element); 36780 xml.enter(FHIR_NS, name); 36781 composeCapabilityStatementMessagingEndpointComponentElements(element); 36782 composeElementClose(element); 36783 xml.exit(FHIR_NS, name); 36784 } 36785 } 36786 36787 protected void composeCapabilityStatementMessagingEndpointComponentElements(CapabilityStatement.CapabilityStatementMessagingEndpointComponent element) throws IOException { 36788 composeBackboneElementElements(element); 36789 if (element.hasProtocol()) { 36790 composeCoding("protocol", element.getProtocol()); 36791 } 36792 if (element.hasAddressElement()) { 36793 composeUrl("address", element.getAddressElement()); 36794 } 36795 } 36796 36797 protected void composeCapabilityStatementMessagingSupportedMessageComponent(String name, CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent element) throws IOException { 36798 if (element != null) { 36799 composeElementAttributes(element); 36800 xml.enter(FHIR_NS, name); 36801 composeCapabilityStatementMessagingSupportedMessageComponentElements(element); 36802 composeElementClose(element); 36803 xml.exit(FHIR_NS, name); 36804 } 36805 } 36806 36807 protected void composeCapabilityStatementMessagingSupportedMessageComponentElements(CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent element) throws IOException { 36808 composeBackboneElementElements(element); 36809 if (element.hasModeElement()) 36810 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.EventCapabilityModeEnumFactory()); 36811 if (element.hasDefinitionElement()) { 36812 composeCanonical("definition", element.getDefinitionElement()); 36813 } 36814 } 36815 36816 protected void composeCapabilityStatementDocumentComponent(String name, CapabilityStatement.CapabilityStatementDocumentComponent element) throws IOException { 36817 if (element != null) { 36818 composeElementAttributes(element); 36819 xml.enter(FHIR_NS, name); 36820 composeCapabilityStatementDocumentComponentElements(element); 36821 composeElementClose(element); 36822 xml.exit(FHIR_NS, name); 36823 } 36824 } 36825 36826 protected void composeCapabilityStatementDocumentComponentElements(CapabilityStatement.CapabilityStatementDocumentComponent element) throws IOException { 36827 composeBackboneElementElements(element); 36828 if (element.hasModeElement()) 36829 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.DocumentModeEnumFactory()); 36830 if (element.hasDocumentationElement()) { 36831 composeMarkdown("documentation", element.getDocumentationElement()); 36832 } 36833 if (element.hasProfileElement()) { 36834 composeCanonical("profile", element.getProfileElement()); 36835 } 36836 } 36837 36838 protected void composeCarePlan(String name, CarePlan element) throws IOException { 36839 if (element != null) { 36840 composeResourceAttributes(element); 36841 xml.enter(FHIR_NS, name); 36842 composeCarePlanElements(element); 36843 composeElementClose(element); 36844 xml.exit(FHIR_NS, name); 36845 } 36846 } 36847 36848 protected void composeCarePlanElements(CarePlan element) throws IOException { 36849 composeDomainResourceElements(element); 36850 if (element.hasIdentifier()) { 36851 for (Identifier e : element.getIdentifier()) 36852 composeIdentifier("identifier", e); 36853 } 36854 if (element.hasInstantiatesCanonical()) { 36855 for (CanonicalType e : element.getInstantiatesCanonical()) 36856 composeCanonical("instantiatesCanonical", e); 36857 } 36858 if (element.hasInstantiatesUri()) { 36859 for (UriType e : element.getInstantiatesUri()) 36860 composeUri("instantiatesUri", e); 36861 } 36862 if (element.hasBasedOn()) { 36863 for (Reference e : element.getBasedOn()) 36864 composeReference("basedOn", e); 36865 } 36866 if (element.hasReplaces()) { 36867 for (Reference e : element.getReplaces()) 36868 composeReference("replaces", e); 36869 } 36870 if (element.hasPartOf()) { 36871 for (Reference e : element.getPartOf()) 36872 composeReference("partOf", e); 36873 } 36874 if (element.hasStatusElement()) 36875 composeEnumeration("status", element.getStatusElement(), new Enumerations.RequestStatusEnumFactory()); 36876 if (element.hasIntentElement()) 36877 composeEnumeration("intent", element.getIntentElement(), new CarePlan.CarePlanIntentEnumFactory()); 36878 if (element.hasCategory()) { 36879 for (CodeableConcept e : element.getCategory()) 36880 composeCodeableConcept("category", e); 36881 } 36882 if (element.hasTitleElement()) { 36883 composeString("title", element.getTitleElement()); 36884 } 36885 if (element.hasDescriptionElement()) { 36886 composeString("description", element.getDescriptionElement()); 36887 } 36888 if (element.hasSubject()) { 36889 composeReference("subject", element.getSubject()); 36890 } 36891 if (element.hasEncounter()) { 36892 composeReference("encounter", element.getEncounter()); 36893 } 36894 if (element.hasPeriod()) { 36895 composePeriod("period", element.getPeriod()); 36896 } 36897 if (element.hasCreatedElement()) { 36898 composeDateTime("created", element.getCreatedElement()); 36899 } 36900 if (element.hasCustodian()) { 36901 composeReference("custodian", element.getCustodian()); 36902 } 36903 if (element.hasContributor()) { 36904 for (Reference e : element.getContributor()) 36905 composeReference("contributor", e); 36906 } 36907 if (element.hasCareTeam()) { 36908 for (Reference e : element.getCareTeam()) 36909 composeReference("careTeam", e); 36910 } 36911 if (element.hasAddresses()) { 36912 for (CodeableReference e : element.getAddresses()) 36913 composeCodeableReference("addresses", e); 36914 } 36915 if (element.hasSupportingInfo()) { 36916 for (Reference e : element.getSupportingInfo()) 36917 composeReference("supportingInfo", e); 36918 } 36919 if (element.hasGoal()) { 36920 for (Reference e : element.getGoal()) 36921 composeReference("goal", e); 36922 } 36923 if (element.hasActivity()) { 36924 for (CarePlan.CarePlanActivityComponent e : element.getActivity()) 36925 composeCarePlanActivityComponent("activity", e); 36926 } 36927 if (element.hasNote()) { 36928 for (Annotation e : element.getNote()) 36929 composeAnnotation("note", e); 36930 } 36931 } 36932 36933 protected void composeCarePlanActivityComponent(String name, CarePlan.CarePlanActivityComponent element) throws IOException { 36934 if (element != null) { 36935 composeElementAttributes(element); 36936 xml.enter(FHIR_NS, name); 36937 composeCarePlanActivityComponentElements(element); 36938 composeElementClose(element); 36939 xml.exit(FHIR_NS, name); 36940 } 36941 } 36942 36943 protected void composeCarePlanActivityComponentElements(CarePlan.CarePlanActivityComponent element) throws IOException { 36944 composeBackboneElementElements(element); 36945 if (element.hasPerformedActivity()) { 36946 for (CodeableReference e : element.getPerformedActivity()) 36947 composeCodeableReference("performedActivity", e); 36948 } 36949 if (element.hasProgress()) { 36950 for (Annotation e : element.getProgress()) 36951 composeAnnotation("progress", e); 36952 } 36953 if (element.hasPlannedActivityReference()) { 36954 composeReference("plannedActivityReference", element.getPlannedActivityReference()); 36955 } 36956 } 36957 36958 protected void composeCareTeam(String name, CareTeam element) throws IOException { 36959 if (element != null) { 36960 composeResourceAttributes(element); 36961 xml.enter(FHIR_NS, name); 36962 composeCareTeamElements(element); 36963 composeElementClose(element); 36964 xml.exit(FHIR_NS, name); 36965 } 36966 } 36967 36968 protected void composeCareTeamElements(CareTeam element) throws IOException { 36969 composeDomainResourceElements(element); 36970 if (element.hasIdentifier()) { 36971 for (Identifier e : element.getIdentifier()) 36972 composeIdentifier("identifier", e); 36973 } 36974 if (element.hasStatusElement()) 36975 composeEnumeration("status", element.getStatusElement(), new CareTeam.CareTeamStatusEnumFactory()); 36976 if (element.hasCategory()) { 36977 for (CodeableConcept e : element.getCategory()) 36978 composeCodeableConcept("category", e); 36979 } 36980 if (element.hasNameElement()) { 36981 composeString("name", element.getNameElement()); 36982 } 36983 if (element.hasSubject()) { 36984 composeReference("subject", element.getSubject()); 36985 } 36986 if (element.hasPeriod()) { 36987 composePeriod("period", element.getPeriod()); 36988 } 36989 if (element.hasParticipant()) { 36990 for (CareTeam.CareTeamParticipantComponent e : element.getParticipant()) 36991 composeCareTeamParticipantComponent("participant", e); 36992 } 36993 if (element.hasReason()) { 36994 for (CodeableReference e : element.getReason()) 36995 composeCodeableReference("reason", e); 36996 } 36997 if (element.hasManagingOrganization()) { 36998 for (Reference e : element.getManagingOrganization()) 36999 composeReference("managingOrganization", e); 37000 } 37001 if (element.hasTelecom()) { 37002 for (ContactPoint e : element.getTelecom()) 37003 composeContactPoint("telecom", e); 37004 } 37005 if (element.hasNote()) { 37006 for (Annotation e : element.getNote()) 37007 composeAnnotation("note", e); 37008 } 37009 } 37010 37011 protected void composeCareTeamParticipantComponent(String name, CareTeam.CareTeamParticipantComponent element) throws IOException { 37012 if (element != null) { 37013 composeElementAttributes(element); 37014 xml.enter(FHIR_NS, name); 37015 composeCareTeamParticipantComponentElements(element); 37016 composeElementClose(element); 37017 xml.exit(FHIR_NS, name); 37018 } 37019 } 37020 37021 protected void composeCareTeamParticipantComponentElements(CareTeam.CareTeamParticipantComponent element) throws IOException { 37022 composeBackboneElementElements(element); 37023 if (element.hasRole()) { 37024 composeCodeableConcept("role", element.getRole()); 37025 } 37026 if (element.hasMember()) { 37027 composeReference("member", element.getMember()); 37028 } 37029 if (element.hasOnBehalfOf()) { 37030 composeReference("onBehalfOf", element.getOnBehalfOf()); 37031 } 37032 if (element.hasCoverage()) { 37033 composeType("coverage", element.getCoverage()); 37034 } } 37035 37036 protected void composeChargeItem(String name, ChargeItem element) throws IOException { 37037 if (element != null) { 37038 composeResourceAttributes(element); 37039 xml.enter(FHIR_NS, name); 37040 composeChargeItemElements(element); 37041 composeElementClose(element); 37042 xml.exit(FHIR_NS, name); 37043 } 37044 } 37045 37046 protected void composeChargeItemElements(ChargeItem element) throws IOException { 37047 composeDomainResourceElements(element); 37048 if (element.hasIdentifier()) { 37049 for (Identifier e : element.getIdentifier()) 37050 composeIdentifier("identifier", e); 37051 } 37052 if (element.hasDefinitionUri()) { 37053 for (UriType e : element.getDefinitionUri()) 37054 composeUri("definitionUri", e); 37055 } 37056 if (element.hasDefinitionCanonical()) { 37057 for (CanonicalType e : element.getDefinitionCanonical()) 37058 composeCanonical("definitionCanonical", e); 37059 } 37060 if (element.hasStatusElement()) 37061 composeEnumeration("status", element.getStatusElement(), new ChargeItem.ChargeItemStatusEnumFactory()); 37062 if (element.hasPartOf()) { 37063 for (Reference e : element.getPartOf()) 37064 composeReference("partOf", e); 37065 } 37066 if (element.hasCode()) { 37067 composeCodeableConcept("code", element.getCode()); 37068 } 37069 if (element.hasSubject()) { 37070 composeReference("subject", element.getSubject()); 37071 } 37072 if (element.hasEncounter()) { 37073 composeReference("encounter", element.getEncounter()); 37074 } 37075 if (element.hasOccurrence()) { 37076 composeType("occurrence", element.getOccurrence()); 37077 } if (element.hasPerformer()) { 37078 for (ChargeItem.ChargeItemPerformerComponent e : element.getPerformer()) 37079 composeChargeItemPerformerComponent("performer", e); 37080 } 37081 if (element.hasPerformingOrganization()) { 37082 composeReference("performingOrganization", element.getPerformingOrganization()); 37083 } 37084 if (element.hasRequestingOrganization()) { 37085 composeReference("requestingOrganization", element.getRequestingOrganization()); 37086 } 37087 if (element.hasCostCenter()) { 37088 composeReference("costCenter", element.getCostCenter()); 37089 } 37090 if (element.hasQuantity()) { 37091 composeQuantity("quantity", element.getQuantity()); 37092 } 37093 if (element.hasBodysite()) { 37094 for (CodeableConcept e : element.getBodysite()) 37095 composeCodeableConcept("bodysite", e); 37096 } 37097 if (element.hasUnitPriceComponent()) { 37098 composeMonetaryComponent("unitPriceComponent", element.getUnitPriceComponent()); 37099 } 37100 if (element.hasTotalPriceComponent()) { 37101 composeMonetaryComponent("totalPriceComponent", element.getTotalPriceComponent()); 37102 } 37103 if (element.hasOverrideReason()) { 37104 composeCodeableConcept("overrideReason", element.getOverrideReason()); 37105 } 37106 if (element.hasEnterer()) { 37107 composeReference("enterer", element.getEnterer()); 37108 } 37109 if (element.hasEnteredDateElement()) { 37110 composeDateTime("enteredDate", element.getEnteredDateElement()); 37111 } 37112 if (element.hasReason()) { 37113 for (CodeableConcept e : element.getReason()) 37114 composeCodeableConcept("reason", e); 37115 } 37116 if (element.hasService()) { 37117 for (CodeableReference e : element.getService()) 37118 composeCodeableReference("service", e); 37119 } 37120 if (element.hasProduct()) { 37121 for (CodeableReference e : element.getProduct()) 37122 composeCodeableReference("product", e); 37123 } 37124 if (element.hasAccount()) { 37125 for (Reference e : element.getAccount()) 37126 composeReference("account", e); 37127 } 37128 if (element.hasNote()) { 37129 for (Annotation e : element.getNote()) 37130 composeAnnotation("note", e); 37131 } 37132 if (element.hasSupportingInformation()) { 37133 for (Reference e : element.getSupportingInformation()) 37134 composeReference("supportingInformation", e); 37135 } 37136 } 37137 37138 protected void composeChargeItemPerformerComponent(String name, ChargeItem.ChargeItemPerformerComponent element) throws IOException { 37139 if (element != null) { 37140 composeElementAttributes(element); 37141 xml.enter(FHIR_NS, name); 37142 composeChargeItemPerformerComponentElements(element); 37143 composeElementClose(element); 37144 xml.exit(FHIR_NS, name); 37145 } 37146 } 37147 37148 protected void composeChargeItemPerformerComponentElements(ChargeItem.ChargeItemPerformerComponent element) throws IOException { 37149 composeBackboneElementElements(element); 37150 if (element.hasFunction()) { 37151 composeCodeableConcept("function", element.getFunction()); 37152 } 37153 if (element.hasActor()) { 37154 composeReference("actor", element.getActor()); 37155 } 37156 } 37157 37158 protected void composeChargeItemDefinition(String name, ChargeItemDefinition element) throws IOException { 37159 if (element != null) { 37160 composeResourceAttributes(element); 37161 xml.enter(FHIR_NS, name); 37162 composeChargeItemDefinitionElements(element); 37163 composeElementClose(element); 37164 xml.exit(FHIR_NS, name); 37165 } 37166 } 37167 37168 protected void composeChargeItemDefinitionElements(ChargeItemDefinition element) throws IOException { 37169 composeMetadataResourceElements(element); 37170 if (element.hasUrlElement()) { 37171 composeUri("url", element.getUrlElement()); 37172 } 37173 if (element.hasIdentifier()) { 37174 for (Identifier e : element.getIdentifier()) 37175 composeIdentifier("identifier", e); 37176 } 37177 if (element.hasVersionElement()) { 37178 composeString("version", element.getVersionElement()); 37179 } 37180 if (element.hasVersionAlgorithm()) { 37181 composeType("versionAlgorithm", element.getVersionAlgorithm()); 37182 } if (element.hasNameElement()) { 37183 composeString("name", element.getNameElement()); 37184 } 37185 if (element.hasTitleElement()) { 37186 composeString("title", element.getTitleElement()); 37187 } 37188 if (element.hasDerivedFromUri()) { 37189 for (UriType e : element.getDerivedFromUri()) 37190 composeUri("derivedFromUri", e); 37191 } 37192 if (element.hasPartOf()) { 37193 for (CanonicalType e : element.getPartOf()) 37194 composeCanonical("partOf", e); 37195 } 37196 if (element.hasReplaces()) { 37197 for (CanonicalType e : element.getReplaces()) 37198 composeCanonical("replaces", e); 37199 } 37200 if (element.hasStatusElement()) 37201 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 37202 if (element.hasExperimentalElement()) { 37203 composeBoolean("experimental", element.getExperimentalElement()); 37204 } 37205 if (element.hasDateElement()) { 37206 composeDateTime("date", element.getDateElement()); 37207 } 37208 if (element.hasPublisherElement()) { 37209 composeString("publisher", element.getPublisherElement()); 37210 } 37211 if (element.hasContact()) { 37212 for (ContactDetail e : element.getContact()) 37213 composeContactDetail("contact", e); 37214 } 37215 if (element.hasDescriptionElement()) { 37216 composeMarkdown("description", element.getDescriptionElement()); 37217 } 37218 if (element.hasUseContext()) { 37219 for (UsageContext e : element.getUseContext()) 37220 composeUsageContext("useContext", e); 37221 } 37222 if (element.hasJurisdiction()) { 37223 for (CodeableConcept e : element.getJurisdiction()) 37224 composeCodeableConcept("jurisdiction", e); 37225 } 37226 if (element.hasPurposeElement()) { 37227 composeMarkdown("purpose", element.getPurposeElement()); 37228 } 37229 if (element.hasCopyrightElement()) { 37230 composeMarkdown("copyright", element.getCopyrightElement()); 37231 } 37232 if (element.hasCopyrightLabelElement()) { 37233 composeString("copyrightLabel", element.getCopyrightLabelElement()); 37234 } 37235 if (element.hasApprovalDateElement()) { 37236 composeDate("approvalDate", element.getApprovalDateElement()); 37237 } 37238 if (element.hasLastReviewDateElement()) { 37239 composeDate("lastReviewDate", element.getLastReviewDateElement()); 37240 } 37241 if (element.hasCode()) { 37242 composeCodeableConcept("code", element.getCode()); 37243 } 37244 if (element.hasInstance()) { 37245 for (Reference e : element.getInstance()) 37246 composeReference("instance", e); 37247 } 37248 if (element.hasApplicability()) { 37249 for (ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent e : element.getApplicability()) 37250 composeChargeItemDefinitionApplicabilityComponent("applicability", e); 37251 } 37252 if (element.hasPropertyGroup()) { 37253 for (ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent e : element.getPropertyGroup()) 37254 composeChargeItemDefinitionPropertyGroupComponent("propertyGroup", e); 37255 } 37256 } 37257 37258 protected void composeChargeItemDefinitionApplicabilityComponent(String name, ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent element) throws IOException { 37259 if (element != null) { 37260 composeElementAttributes(element); 37261 xml.enter(FHIR_NS, name); 37262 composeChargeItemDefinitionApplicabilityComponentElements(element); 37263 composeElementClose(element); 37264 xml.exit(FHIR_NS, name); 37265 } 37266 } 37267 37268 protected void composeChargeItemDefinitionApplicabilityComponentElements(ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent element) throws IOException { 37269 composeBackboneElementElements(element); 37270 if (element.hasCondition()) { 37271 composeExpression("condition", element.getCondition()); 37272 } 37273 if (element.hasEffectivePeriod()) { 37274 composePeriod("effectivePeriod", element.getEffectivePeriod()); 37275 } 37276 if (element.hasRelatedArtifact()) { 37277 composeRelatedArtifact("relatedArtifact", element.getRelatedArtifact()); 37278 } 37279 } 37280 37281 protected void composeChargeItemDefinitionPropertyGroupComponent(String name, ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent element) throws IOException { 37282 if (element != null) { 37283 composeElementAttributes(element); 37284 xml.enter(FHIR_NS, name); 37285 composeChargeItemDefinitionPropertyGroupComponentElements(element); 37286 composeElementClose(element); 37287 xml.exit(FHIR_NS, name); 37288 } 37289 } 37290 37291 protected void composeChargeItemDefinitionPropertyGroupComponentElements(ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent element) throws IOException { 37292 composeBackboneElementElements(element); 37293 if (element.hasApplicability()) { 37294 for (ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent e : element.getApplicability()) 37295 composeChargeItemDefinitionApplicabilityComponent("applicability", e); 37296 } 37297 if (element.hasPriceComponent()) { 37298 for (MonetaryComponent e : element.getPriceComponent()) 37299 composeMonetaryComponent("priceComponent", e); 37300 } 37301 } 37302 37303 protected void composeCitation(String name, Citation element) throws IOException { 37304 if (element != null) { 37305 composeResourceAttributes(element); 37306 xml.enter(FHIR_NS, name); 37307 composeCitationElements(element); 37308 composeElementClose(element); 37309 xml.exit(FHIR_NS, name); 37310 } 37311 } 37312 37313 protected void composeCitationElements(Citation element) throws IOException { 37314 composeMetadataResourceElements(element); 37315 if (element.hasUrlElement()) { 37316 composeUri("url", element.getUrlElement()); 37317 } 37318 if (element.hasIdentifier()) { 37319 for (Identifier e : element.getIdentifier()) 37320 composeIdentifier("identifier", e); 37321 } 37322 if (element.hasVersionElement()) { 37323 composeString("version", element.getVersionElement()); 37324 } 37325 if (element.hasVersionAlgorithm()) { 37326 composeType("versionAlgorithm", element.getVersionAlgorithm()); 37327 } if (element.hasNameElement()) { 37328 composeString("name", element.getNameElement()); 37329 } 37330 if (element.hasTitleElement()) { 37331 composeString("title", element.getTitleElement()); 37332 } 37333 if (element.hasStatusElement()) 37334 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 37335 if (element.hasExperimentalElement()) { 37336 composeBoolean("experimental", element.getExperimentalElement()); 37337 } 37338 if (element.hasDateElement()) { 37339 composeDateTime("date", element.getDateElement()); 37340 } 37341 if (element.hasPublisherElement()) { 37342 composeString("publisher", element.getPublisherElement()); 37343 } 37344 if (element.hasContact()) { 37345 for (ContactDetail e : element.getContact()) 37346 composeContactDetail("contact", e); 37347 } 37348 if (element.hasDescriptionElement()) { 37349 composeMarkdown("description", element.getDescriptionElement()); 37350 } 37351 if (element.hasUseContext()) { 37352 for (UsageContext e : element.getUseContext()) 37353 composeUsageContext("useContext", e); 37354 } 37355 if (element.hasJurisdiction()) { 37356 for (CodeableConcept e : element.getJurisdiction()) 37357 composeCodeableConcept("jurisdiction", e); 37358 } 37359 if (element.hasPurposeElement()) { 37360 composeMarkdown("purpose", element.getPurposeElement()); 37361 } 37362 if (element.hasCopyrightElement()) { 37363 composeMarkdown("copyright", element.getCopyrightElement()); 37364 } 37365 if (element.hasCopyrightLabelElement()) { 37366 composeString("copyrightLabel", element.getCopyrightLabelElement()); 37367 } 37368 if (element.hasApprovalDateElement()) { 37369 composeDate("approvalDate", element.getApprovalDateElement()); 37370 } 37371 if (element.hasLastReviewDateElement()) { 37372 composeDate("lastReviewDate", element.getLastReviewDateElement()); 37373 } 37374 if (element.hasEffectivePeriod()) { 37375 composePeriod("effectivePeriod", element.getEffectivePeriod()); 37376 } 37377 if (element.hasAuthor()) { 37378 for (ContactDetail e : element.getAuthor()) 37379 composeContactDetail("author", e); 37380 } 37381 if (element.hasEditor()) { 37382 for (ContactDetail e : element.getEditor()) 37383 composeContactDetail("editor", e); 37384 } 37385 if (element.hasReviewer()) { 37386 for (ContactDetail e : element.getReviewer()) 37387 composeContactDetail("reviewer", e); 37388 } 37389 if (element.hasEndorser()) { 37390 for (ContactDetail e : element.getEndorser()) 37391 composeContactDetail("endorser", e); 37392 } 37393 if (element.hasSummary()) { 37394 for (Citation.CitationSummaryComponent e : element.getSummary()) 37395 composeCitationSummaryComponent("summary", e); 37396 } 37397 if (element.hasClassification()) { 37398 for (Citation.CitationClassificationComponent e : element.getClassification()) 37399 composeCitationClassificationComponent("classification", e); 37400 } 37401 if (element.hasNote()) { 37402 for (Annotation e : element.getNote()) 37403 composeAnnotation("note", e); 37404 } 37405 if (element.hasCurrentState()) { 37406 for (CodeableConcept e : element.getCurrentState()) 37407 composeCodeableConcept("currentState", e); 37408 } 37409 if (element.hasStatusDate()) { 37410 for (Citation.CitationStatusDateComponent e : element.getStatusDate()) 37411 composeCitationStatusDateComponent("statusDate", e); 37412 } 37413 if (element.hasRelatedArtifact()) { 37414 for (RelatedArtifact e : element.getRelatedArtifact()) 37415 composeRelatedArtifact("relatedArtifact", e); 37416 } 37417 if (element.hasCitedArtifact()) { 37418 composeCitationCitedArtifactComponent("citedArtifact", element.getCitedArtifact()); 37419 } 37420 } 37421 37422 protected void composeCitationSummaryComponent(String name, Citation.CitationSummaryComponent element) throws IOException { 37423 if (element != null) { 37424 composeElementAttributes(element); 37425 xml.enter(FHIR_NS, name); 37426 composeCitationSummaryComponentElements(element); 37427 composeElementClose(element); 37428 xml.exit(FHIR_NS, name); 37429 } 37430 } 37431 37432 protected void composeCitationSummaryComponentElements(Citation.CitationSummaryComponent element) throws IOException { 37433 composeBackboneElementElements(element); 37434 if (element.hasStyle()) { 37435 composeCodeableConcept("style", element.getStyle()); 37436 } 37437 if (element.hasTextElement()) { 37438 composeMarkdown("text", element.getTextElement()); 37439 } 37440 } 37441 37442 protected void composeCitationClassificationComponent(String name, Citation.CitationClassificationComponent element) throws IOException { 37443 if (element != null) { 37444 composeElementAttributes(element); 37445 xml.enter(FHIR_NS, name); 37446 composeCitationClassificationComponentElements(element); 37447 composeElementClose(element); 37448 xml.exit(FHIR_NS, name); 37449 } 37450 } 37451 37452 protected void composeCitationClassificationComponentElements(Citation.CitationClassificationComponent element) throws IOException { 37453 composeBackboneElementElements(element); 37454 if (element.hasType()) { 37455 composeCodeableConcept("type", element.getType()); 37456 } 37457 if (element.hasClassifier()) { 37458 for (CodeableConcept e : element.getClassifier()) 37459 composeCodeableConcept("classifier", e); 37460 } 37461 } 37462 37463 protected void composeCitationStatusDateComponent(String name, Citation.CitationStatusDateComponent element) throws IOException { 37464 if (element != null) { 37465 composeElementAttributes(element); 37466 xml.enter(FHIR_NS, name); 37467 composeCitationStatusDateComponentElements(element); 37468 composeElementClose(element); 37469 xml.exit(FHIR_NS, name); 37470 } 37471 } 37472 37473 protected void composeCitationStatusDateComponentElements(Citation.CitationStatusDateComponent element) throws IOException { 37474 composeBackboneElementElements(element); 37475 if (element.hasActivity()) { 37476 composeCodeableConcept("activity", element.getActivity()); 37477 } 37478 if (element.hasActualElement()) { 37479 composeBoolean("actual", element.getActualElement()); 37480 } 37481 if (element.hasPeriod()) { 37482 composePeriod("period", element.getPeriod()); 37483 } 37484 } 37485 37486 protected void composeCitationCitedArtifactComponent(String name, Citation.CitationCitedArtifactComponent element) throws IOException { 37487 if (element != null) { 37488 composeElementAttributes(element); 37489 xml.enter(FHIR_NS, name); 37490 composeCitationCitedArtifactComponentElements(element); 37491 composeElementClose(element); 37492 xml.exit(FHIR_NS, name); 37493 } 37494 } 37495 37496 protected void composeCitationCitedArtifactComponentElements(Citation.CitationCitedArtifactComponent element) throws IOException { 37497 composeBackboneElementElements(element); 37498 if (element.hasIdentifier()) { 37499 for (Identifier e : element.getIdentifier()) 37500 composeIdentifier("identifier", e); 37501 } 37502 if (element.hasRelatedIdentifier()) { 37503 for (Identifier e : element.getRelatedIdentifier()) 37504 composeIdentifier("relatedIdentifier", e); 37505 } 37506 if (element.hasDateAccessedElement()) { 37507 composeDateTime("dateAccessed", element.getDateAccessedElement()); 37508 } 37509 if (element.hasVersion()) { 37510 composeCitationCitedArtifactVersionComponent("version", element.getVersion()); 37511 } 37512 if (element.hasCurrentState()) { 37513 for (CodeableConcept e : element.getCurrentState()) 37514 composeCodeableConcept("currentState", e); 37515 } 37516 if (element.hasStatusDate()) { 37517 for (Citation.CitationCitedArtifactStatusDateComponent e : element.getStatusDate()) 37518 composeCitationCitedArtifactStatusDateComponent("statusDate", e); 37519 } 37520 if (element.hasTitle()) { 37521 for (Citation.CitationCitedArtifactTitleComponent e : element.getTitle()) 37522 composeCitationCitedArtifactTitleComponent("title", e); 37523 } 37524 if (element.hasAbstract()) { 37525 for (Citation.CitationCitedArtifactAbstractComponent e : element.getAbstract()) 37526 composeCitationCitedArtifactAbstractComponent("abstract", e); 37527 } 37528 if (element.hasPart()) { 37529 composeCitationCitedArtifactPartComponent("part", element.getPart()); 37530 } 37531 if (element.hasRelatesTo()) { 37532 for (Citation.CitationCitedArtifactRelatesToComponent e : element.getRelatesTo()) 37533 composeCitationCitedArtifactRelatesToComponent("relatesTo", e); 37534 } 37535 if (element.hasPublicationForm()) { 37536 for (Citation.CitationCitedArtifactPublicationFormComponent e : element.getPublicationForm()) 37537 composeCitationCitedArtifactPublicationFormComponent("publicationForm", e); 37538 } 37539 if (element.hasWebLocation()) { 37540 for (Citation.CitationCitedArtifactWebLocationComponent e : element.getWebLocation()) 37541 composeCitationCitedArtifactWebLocationComponent("webLocation", e); 37542 } 37543 if (element.hasClassification()) { 37544 for (Citation.CitationCitedArtifactClassificationComponent e : element.getClassification()) 37545 composeCitationCitedArtifactClassificationComponent("classification", e); 37546 } 37547 if (element.hasContributorship()) { 37548 composeCitationCitedArtifactContributorshipComponent("contributorship", element.getContributorship()); 37549 } 37550 if (element.hasNote()) { 37551 for (Annotation e : element.getNote()) 37552 composeAnnotation("note", e); 37553 } 37554 } 37555 37556 protected void composeCitationCitedArtifactVersionComponent(String name, Citation.CitationCitedArtifactVersionComponent element) throws IOException { 37557 if (element != null) { 37558 composeElementAttributes(element); 37559 xml.enter(FHIR_NS, name); 37560 composeCitationCitedArtifactVersionComponentElements(element); 37561 composeElementClose(element); 37562 xml.exit(FHIR_NS, name); 37563 } 37564 } 37565 37566 protected void composeCitationCitedArtifactVersionComponentElements(Citation.CitationCitedArtifactVersionComponent element) throws IOException { 37567 composeBackboneElementElements(element); 37568 if (element.hasValueElement()) { 37569 composeString("value", element.getValueElement()); 37570 } 37571 if (element.hasBaseCitation()) { 37572 composeReference("baseCitation", element.getBaseCitation()); 37573 } 37574 } 37575 37576 protected void composeCitationCitedArtifactStatusDateComponent(String name, Citation.CitationCitedArtifactStatusDateComponent element) throws IOException { 37577 if (element != null) { 37578 composeElementAttributes(element); 37579 xml.enter(FHIR_NS, name); 37580 composeCitationCitedArtifactStatusDateComponentElements(element); 37581 composeElementClose(element); 37582 xml.exit(FHIR_NS, name); 37583 } 37584 } 37585 37586 protected void composeCitationCitedArtifactStatusDateComponentElements(Citation.CitationCitedArtifactStatusDateComponent element) throws IOException { 37587 composeBackboneElementElements(element); 37588 if (element.hasActivity()) { 37589 composeCodeableConcept("activity", element.getActivity()); 37590 } 37591 if (element.hasActualElement()) { 37592 composeBoolean("actual", element.getActualElement()); 37593 } 37594 if (element.hasPeriod()) { 37595 composePeriod("period", element.getPeriod()); 37596 } 37597 } 37598 37599 protected void composeCitationCitedArtifactTitleComponent(String name, Citation.CitationCitedArtifactTitleComponent element) throws IOException { 37600 if (element != null) { 37601 composeElementAttributes(element); 37602 xml.enter(FHIR_NS, name); 37603 composeCitationCitedArtifactTitleComponentElements(element); 37604 composeElementClose(element); 37605 xml.exit(FHIR_NS, name); 37606 } 37607 } 37608 37609 protected void composeCitationCitedArtifactTitleComponentElements(Citation.CitationCitedArtifactTitleComponent element) throws IOException { 37610 composeBackboneElementElements(element); 37611 if (element.hasType()) { 37612 for (CodeableConcept e : element.getType()) 37613 composeCodeableConcept("type", e); 37614 } 37615 if (element.hasLanguage()) { 37616 composeCodeableConcept("language", element.getLanguage()); 37617 } 37618 if (element.hasTextElement()) { 37619 composeMarkdown("text", element.getTextElement()); 37620 } 37621 } 37622 37623 protected void composeCitationCitedArtifactAbstractComponent(String name, Citation.CitationCitedArtifactAbstractComponent element) throws IOException { 37624 if (element != null) { 37625 composeElementAttributes(element); 37626 xml.enter(FHIR_NS, name); 37627 composeCitationCitedArtifactAbstractComponentElements(element); 37628 composeElementClose(element); 37629 xml.exit(FHIR_NS, name); 37630 } 37631 } 37632 37633 protected void composeCitationCitedArtifactAbstractComponentElements(Citation.CitationCitedArtifactAbstractComponent element) throws IOException { 37634 composeBackboneElementElements(element); 37635 if (element.hasType()) { 37636 composeCodeableConcept("type", element.getType()); 37637 } 37638 if (element.hasLanguage()) { 37639 composeCodeableConcept("language", element.getLanguage()); 37640 } 37641 if (element.hasTextElement()) { 37642 composeMarkdown("text", element.getTextElement()); 37643 } 37644 if (element.hasCopyrightElement()) { 37645 composeMarkdown("copyright", element.getCopyrightElement()); 37646 } 37647 } 37648 37649 protected void composeCitationCitedArtifactPartComponent(String name, Citation.CitationCitedArtifactPartComponent element) throws IOException { 37650 if (element != null) { 37651 composeElementAttributes(element); 37652 xml.enter(FHIR_NS, name); 37653 composeCitationCitedArtifactPartComponentElements(element); 37654 composeElementClose(element); 37655 xml.exit(FHIR_NS, name); 37656 } 37657 } 37658 37659 protected void composeCitationCitedArtifactPartComponentElements(Citation.CitationCitedArtifactPartComponent element) throws IOException { 37660 composeBackboneElementElements(element); 37661 if (element.hasType()) { 37662 composeCodeableConcept("type", element.getType()); 37663 } 37664 if (element.hasValueElement()) { 37665 composeString("value", element.getValueElement()); 37666 } 37667 if (element.hasBaseCitation()) { 37668 composeReference("baseCitation", element.getBaseCitation()); 37669 } 37670 } 37671 37672 protected void composeCitationCitedArtifactRelatesToComponent(String name, Citation.CitationCitedArtifactRelatesToComponent element) throws IOException { 37673 if (element != null) { 37674 composeElementAttributes(element); 37675 xml.enter(FHIR_NS, name); 37676 composeCitationCitedArtifactRelatesToComponentElements(element); 37677 composeElementClose(element); 37678 xml.exit(FHIR_NS, name); 37679 } 37680 } 37681 37682 protected void composeCitationCitedArtifactRelatesToComponentElements(Citation.CitationCitedArtifactRelatesToComponent element) throws IOException { 37683 composeBackboneElementElements(element); 37684 if (element.hasTypeElement()) 37685 composeEnumeration("type", element.getTypeElement(), new Citation.RelatedArtifactTypeExpandedEnumFactory()); 37686 if (element.hasClassifier()) { 37687 for (CodeableConcept e : element.getClassifier()) 37688 composeCodeableConcept("classifier", e); 37689 } 37690 if (element.hasLabelElement()) { 37691 composeString("label", element.getLabelElement()); 37692 } 37693 if (element.hasDisplayElement()) { 37694 composeString("display", element.getDisplayElement()); 37695 } 37696 if (element.hasCitationElement()) { 37697 composeMarkdown("citation", element.getCitationElement()); 37698 } 37699 if (element.hasDocument()) { 37700 composeAttachment("document", element.getDocument()); 37701 } 37702 if (element.hasResourceElement()) { 37703 composeCanonical("resource", element.getResourceElement()); 37704 } 37705 if (element.hasResourceReference()) { 37706 composeReference("resourceReference", element.getResourceReference()); 37707 } 37708 } 37709 37710 protected void composeCitationCitedArtifactPublicationFormComponent(String name, Citation.CitationCitedArtifactPublicationFormComponent element) throws IOException { 37711 if (element != null) { 37712 composeElementAttributes(element); 37713 xml.enter(FHIR_NS, name); 37714 composeCitationCitedArtifactPublicationFormComponentElements(element); 37715 composeElementClose(element); 37716 xml.exit(FHIR_NS, name); 37717 } 37718 } 37719 37720 protected void composeCitationCitedArtifactPublicationFormComponentElements(Citation.CitationCitedArtifactPublicationFormComponent element) throws IOException { 37721 composeBackboneElementElements(element); 37722 if (element.hasPublishedIn()) { 37723 composeCitationCitedArtifactPublicationFormPublishedInComponent("publishedIn", element.getPublishedIn()); 37724 } 37725 if (element.hasCitedMedium()) { 37726 composeCodeableConcept("citedMedium", element.getCitedMedium()); 37727 } 37728 if (element.hasVolumeElement()) { 37729 composeString("volume", element.getVolumeElement()); 37730 } 37731 if (element.hasIssueElement()) { 37732 composeString("issue", element.getIssueElement()); 37733 } 37734 if (element.hasArticleDateElement()) { 37735 composeDateTime("articleDate", element.getArticleDateElement()); 37736 } 37737 if (element.hasPublicationDateTextElement()) { 37738 composeString("publicationDateText", element.getPublicationDateTextElement()); 37739 } 37740 if (element.hasPublicationDateSeasonElement()) { 37741 composeString("publicationDateSeason", element.getPublicationDateSeasonElement()); 37742 } 37743 if (element.hasLastRevisionDateElement()) { 37744 composeDateTime("lastRevisionDate", element.getLastRevisionDateElement()); 37745 } 37746 if (element.hasLanguage()) { 37747 for (CodeableConcept e : element.getLanguage()) 37748 composeCodeableConcept("language", e); 37749 } 37750 if (element.hasAccessionNumberElement()) { 37751 composeString("accessionNumber", element.getAccessionNumberElement()); 37752 } 37753 if (element.hasPageStringElement()) { 37754 composeString("pageString", element.getPageStringElement()); 37755 } 37756 if (element.hasFirstPageElement()) { 37757 composeString("firstPage", element.getFirstPageElement()); 37758 } 37759 if (element.hasLastPageElement()) { 37760 composeString("lastPage", element.getLastPageElement()); 37761 } 37762 if (element.hasPageCountElement()) { 37763 composeString("pageCount", element.getPageCountElement()); 37764 } 37765 if (element.hasCopyrightElement()) { 37766 composeMarkdown("copyright", element.getCopyrightElement()); 37767 } 37768 } 37769 37770 protected void composeCitationCitedArtifactPublicationFormPublishedInComponent(String name, Citation.CitationCitedArtifactPublicationFormPublishedInComponent element) throws IOException { 37771 if (element != null) { 37772 composeElementAttributes(element); 37773 xml.enter(FHIR_NS, name); 37774 composeCitationCitedArtifactPublicationFormPublishedInComponentElements(element); 37775 composeElementClose(element); 37776 xml.exit(FHIR_NS, name); 37777 } 37778 } 37779 37780 protected void composeCitationCitedArtifactPublicationFormPublishedInComponentElements(Citation.CitationCitedArtifactPublicationFormPublishedInComponent element) throws IOException { 37781 composeBackboneElementElements(element); 37782 if (element.hasType()) { 37783 composeCodeableConcept("type", element.getType()); 37784 } 37785 if (element.hasIdentifier()) { 37786 for (Identifier e : element.getIdentifier()) 37787 composeIdentifier("identifier", e); 37788 } 37789 if (element.hasTitleElement()) { 37790 composeString("title", element.getTitleElement()); 37791 } 37792 if (element.hasPublisher()) { 37793 composeReference("publisher", element.getPublisher()); 37794 } 37795 if (element.hasPublisherLocationElement()) { 37796 composeString("publisherLocation", element.getPublisherLocationElement()); 37797 } 37798 } 37799 37800 protected void composeCitationCitedArtifactWebLocationComponent(String name, Citation.CitationCitedArtifactWebLocationComponent element) throws IOException { 37801 if (element != null) { 37802 composeElementAttributes(element); 37803 xml.enter(FHIR_NS, name); 37804 composeCitationCitedArtifactWebLocationComponentElements(element); 37805 composeElementClose(element); 37806 xml.exit(FHIR_NS, name); 37807 } 37808 } 37809 37810 protected void composeCitationCitedArtifactWebLocationComponentElements(Citation.CitationCitedArtifactWebLocationComponent element) throws IOException { 37811 composeBackboneElementElements(element); 37812 if (element.hasClassifier()) { 37813 for (CodeableConcept e : element.getClassifier()) 37814 composeCodeableConcept("classifier", e); 37815 } 37816 if (element.hasUrlElement()) { 37817 composeUri("url", element.getUrlElement()); 37818 } 37819 } 37820 37821 protected void composeCitationCitedArtifactClassificationComponent(String name, Citation.CitationCitedArtifactClassificationComponent element) throws IOException { 37822 if (element != null) { 37823 composeElementAttributes(element); 37824 xml.enter(FHIR_NS, name); 37825 composeCitationCitedArtifactClassificationComponentElements(element); 37826 composeElementClose(element); 37827 xml.exit(FHIR_NS, name); 37828 } 37829 } 37830 37831 protected void composeCitationCitedArtifactClassificationComponentElements(Citation.CitationCitedArtifactClassificationComponent element) throws IOException { 37832 composeBackboneElementElements(element); 37833 if (element.hasType()) { 37834 composeCodeableConcept("type", element.getType()); 37835 } 37836 if (element.hasClassifier()) { 37837 for (CodeableConcept e : element.getClassifier()) 37838 composeCodeableConcept("classifier", e); 37839 } 37840 if (element.hasArtifactAssessment()) { 37841 for (Reference e : element.getArtifactAssessment()) 37842 composeReference("artifactAssessment", e); 37843 } 37844 } 37845 37846 protected void composeCitationCitedArtifactContributorshipComponent(String name, Citation.CitationCitedArtifactContributorshipComponent element) throws IOException { 37847 if (element != null) { 37848 composeElementAttributes(element); 37849 xml.enter(FHIR_NS, name); 37850 composeCitationCitedArtifactContributorshipComponentElements(element); 37851 composeElementClose(element); 37852 xml.exit(FHIR_NS, name); 37853 } 37854 } 37855 37856 protected void composeCitationCitedArtifactContributorshipComponentElements(Citation.CitationCitedArtifactContributorshipComponent element) throws IOException { 37857 composeBackboneElementElements(element); 37858 if (element.hasCompleteElement()) { 37859 composeBoolean("complete", element.getCompleteElement()); 37860 } 37861 if (element.hasEntry()) { 37862 for (Citation.CitationCitedArtifactContributorshipEntryComponent e : element.getEntry()) 37863 composeCitationCitedArtifactContributorshipEntryComponent("entry", e); 37864 } 37865 if (element.hasSummary()) { 37866 for (Citation.ContributorshipSummaryComponent e : element.getSummary()) 37867 composeCitationContributorshipSummaryComponent("summary", e); 37868 } 37869 } 37870 37871 protected void composeCitationCitedArtifactContributorshipEntryComponent(String name, Citation.CitationCitedArtifactContributorshipEntryComponent element) throws IOException { 37872 if (element != null) { 37873 composeElementAttributes(element); 37874 xml.enter(FHIR_NS, name); 37875 composeCitationCitedArtifactContributorshipEntryComponentElements(element); 37876 composeElementClose(element); 37877 xml.exit(FHIR_NS, name); 37878 } 37879 } 37880 37881 protected void composeCitationCitedArtifactContributorshipEntryComponentElements(Citation.CitationCitedArtifactContributorshipEntryComponent element) throws IOException { 37882 composeBackboneElementElements(element); 37883 if (element.hasContributor()) { 37884 composeReference("contributor", element.getContributor()); 37885 } 37886 if (element.hasForenameInitialsElement()) { 37887 composeString("forenameInitials", element.getForenameInitialsElement()); 37888 } 37889 if (element.hasAffiliation()) { 37890 for (Reference e : element.getAffiliation()) 37891 composeReference("affiliation", e); 37892 } 37893 if (element.hasContributionType()) { 37894 for (CodeableConcept e : element.getContributionType()) 37895 composeCodeableConcept("contributionType", e); 37896 } 37897 if (element.hasRole()) { 37898 composeCodeableConcept("role", element.getRole()); 37899 } 37900 if (element.hasContributionInstance()) { 37901 for (Citation.CitationCitedArtifactContributorshipEntryContributionInstanceComponent e : element.getContributionInstance()) 37902 composeCitationCitedArtifactContributorshipEntryContributionInstanceComponent("contributionInstance", e); 37903 } 37904 if (element.hasCorrespondingContactElement()) { 37905 composeBoolean("correspondingContact", element.getCorrespondingContactElement()); 37906 } 37907 if (element.hasRankingOrderElement()) { 37908 composePositiveInt("rankingOrder", element.getRankingOrderElement()); 37909 } 37910 } 37911 37912 protected void composeCitationCitedArtifactContributorshipEntryContributionInstanceComponent(String name, Citation.CitationCitedArtifactContributorshipEntryContributionInstanceComponent element) throws IOException { 37913 if (element != null) { 37914 composeElementAttributes(element); 37915 xml.enter(FHIR_NS, name); 37916 composeCitationCitedArtifactContributorshipEntryContributionInstanceComponentElements(element); 37917 composeElementClose(element); 37918 xml.exit(FHIR_NS, name); 37919 } 37920 } 37921 37922 protected void composeCitationCitedArtifactContributorshipEntryContributionInstanceComponentElements(Citation.CitationCitedArtifactContributorshipEntryContributionInstanceComponent element) throws IOException { 37923 composeBackboneElementElements(element); 37924 if (element.hasType()) { 37925 composeCodeableConcept("type", element.getType()); 37926 } 37927 if (element.hasTimeElement()) { 37928 composeDateTime("time", element.getTimeElement()); 37929 } 37930 } 37931 37932 protected void composeCitationContributorshipSummaryComponent(String name, Citation.ContributorshipSummaryComponent element) throws IOException { 37933 if (element != null) { 37934 composeElementAttributes(element); 37935 xml.enter(FHIR_NS, name); 37936 composeCitationContributorshipSummaryComponentElements(element); 37937 composeElementClose(element); 37938 xml.exit(FHIR_NS, name); 37939 } 37940 } 37941 37942 protected void composeCitationContributorshipSummaryComponentElements(Citation.ContributorshipSummaryComponent element) throws IOException { 37943 composeBackboneElementElements(element); 37944 if (element.hasType()) { 37945 composeCodeableConcept("type", element.getType()); 37946 } 37947 if (element.hasStyle()) { 37948 composeCodeableConcept("style", element.getStyle()); 37949 } 37950 if (element.hasSource()) { 37951 composeCodeableConcept("source", element.getSource()); 37952 } 37953 if (element.hasValueElement()) { 37954 composeMarkdown("value", element.getValueElement()); 37955 } 37956 } 37957 37958 protected void composeClaim(String name, Claim element) throws IOException { 37959 if (element != null) { 37960 composeResourceAttributes(element); 37961 xml.enter(FHIR_NS, name); 37962 composeClaimElements(element); 37963 composeElementClose(element); 37964 xml.exit(FHIR_NS, name); 37965 } 37966 } 37967 37968 protected void composeClaimElements(Claim element) throws IOException { 37969 composeDomainResourceElements(element); 37970 if (element.hasIdentifier()) { 37971 for (Identifier e : element.getIdentifier()) 37972 composeIdentifier("identifier", e); 37973 } 37974 if (element.hasTraceNumber()) { 37975 for (Identifier e : element.getTraceNumber()) 37976 composeIdentifier("traceNumber", e); 37977 } 37978 if (element.hasStatusElement()) 37979 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 37980 if (element.hasType()) { 37981 composeCodeableConcept("type", element.getType()); 37982 } 37983 if (element.hasSubType()) { 37984 composeCodeableConcept("subType", element.getSubType()); 37985 } 37986 if (element.hasUseElement()) 37987 composeEnumeration("use", element.getUseElement(), new Enumerations.UseEnumFactory()); 37988 if (element.hasPatient()) { 37989 composeReference("patient", element.getPatient()); 37990 } 37991 if (element.hasBillablePeriod()) { 37992 composePeriod("billablePeriod", element.getBillablePeriod()); 37993 } 37994 if (element.hasCreatedElement()) { 37995 composeDateTime("created", element.getCreatedElement()); 37996 } 37997 if (element.hasEnterer()) { 37998 composeReference("enterer", element.getEnterer()); 37999 } 38000 if (element.hasInsurer()) { 38001 composeReference("insurer", element.getInsurer()); 38002 } 38003 if (element.hasProvider()) { 38004 composeReference("provider", element.getProvider()); 38005 } 38006 if (element.hasPriority()) { 38007 composeCodeableConcept("priority", element.getPriority()); 38008 } 38009 if (element.hasFundsReserve()) { 38010 composeCodeableConcept("fundsReserve", element.getFundsReserve()); 38011 } 38012 if (element.hasRelated()) { 38013 for (Claim.RelatedClaimComponent e : element.getRelated()) 38014 composeClaimRelatedClaimComponent("related", e); 38015 } 38016 if (element.hasPrescription()) { 38017 composeReference("prescription", element.getPrescription()); 38018 } 38019 if (element.hasOriginalPrescription()) { 38020 composeReference("originalPrescription", element.getOriginalPrescription()); 38021 } 38022 if (element.hasPayee()) { 38023 composeClaimPayeeComponent("payee", element.getPayee()); 38024 } 38025 if (element.hasReferral()) { 38026 composeReference("referral", element.getReferral()); 38027 } 38028 if (element.hasEncounter()) { 38029 for (Reference e : element.getEncounter()) 38030 composeReference("encounter", e); 38031 } 38032 if (element.hasFacility()) { 38033 composeReference("facility", element.getFacility()); 38034 } 38035 if (element.hasDiagnosisRelatedGroup()) { 38036 composeCodeableConcept("diagnosisRelatedGroup", element.getDiagnosisRelatedGroup()); 38037 } 38038 if (element.hasEvent()) { 38039 for (Claim.ClaimEventComponent e : element.getEvent()) 38040 composeClaimEventComponent("event", e); 38041 } 38042 if (element.hasCareTeam()) { 38043 for (Claim.CareTeamComponent e : element.getCareTeam()) 38044 composeClaimCareTeamComponent("careTeam", e); 38045 } 38046 if (element.hasSupportingInfo()) { 38047 for (Claim.SupportingInformationComponent e : element.getSupportingInfo()) 38048 composeClaimSupportingInformationComponent("supportingInfo", e); 38049 } 38050 if (element.hasDiagnosis()) { 38051 for (Claim.DiagnosisComponent e : element.getDiagnosis()) 38052 composeClaimDiagnosisComponent("diagnosis", e); 38053 } 38054 if (element.hasProcedure()) { 38055 for (Claim.ProcedureComponent e : element.getProcedure()) 38056 composeClaimProcedureComponent("procedure", e); 38057 } 38058 if (element.hasInsurance()) { 38059 for (Claim.InsuranceComponent e : element.getInsurance()) 38060 composeClaimInsuranceComponent("insurance", e); 38061 } 38062 if (element.hasAccident()) { 38063 composeClaimAccidentComponent("accident", element.getAccident()); 38064 } 38065 if (element.hasPatientPaid()) { 38066 composeMoney("patientPaid", element.getPatientPaid()); 38067 } 38068 if (element.hasItem()) { 38069 for (Claim.ItemComponent e : element.getItem()) 38070 composeClaimItemComponent("item", e); 38071 } 38072 if (element.hasTotal()) { 38073 composeMoney("total", element.getTotal()); 38074 } 38075 } 38076 38077 protected void composeClaimRelatedClaimComponent(String name, Claim.RelatedClaimComponent element) throws IOException { 38078 if (element != null) { 38079 composeElementAttributes(element); 38080 xml.enter(FHIR_NS, name); 38081 composeClaimRelatedClaimComponentElements(element); 38082 composeElementClose(element); 38083 xml.exit(FHIR_NS, name); 38084 } 38085 } 38086 38087 protected void composeClaimRelatedClaimComponentElements(Claim.RelatedClaimComponent element) throws IOException { 38088 composeBackboneElementElements(element); 38089 if (element.hasClaim()) { 38090 composeReference("claim", element.getClaim()); 38091 } 38092 if (element.hasRelationship()) { 38093 composeCodeableConcept("relationship", element.getRelationship()); 38094 } 38095 if (element.hasReference()) { 38096 composeIdentifier("reference", element.getReference()); 38097 } 38098 } 38099 38100 protected void composeClaimPayeeComponent(String name, Claim.PayeeComponent element) throws IOException { 38101 if (element != null) { 38102 composeElementAttributes(element); 38103 xml.enter(FHIR_NS, name); 38104 composeClaimPayeeComponentElements(element); 38105 composeElementClose(element); 38106 xml.exit(FHIR_NS, name); 38107 } 38108 } 38109 38110 protected void composeClaimPayeeComponentElements(Claim.PayeeComponent element) throws IOException { 38111 composeBackboneElementElements(element); 38112 if (element.hasType()) { 38113 composeCodeableConcept("type", element.getType()); 38114 } 38115 if (element.hasParty()) { 38116 composeReference("party", element.getParty()); 38117 } 38118 } 38119 38120 protected void composeClaimEventComponent(String name, Claim.ClaimEventComponent element) throws IOException { 38121 if (element != null) { 38122 composeElementAttributes(element); 38123 xml.enter(FHIR_NS, name); 38124 composeClaimEventComponentElements(element); 38125 composeElementClose(element); 38126 xml.exit(FHIR_NS, name); 38127 } 38128 } 38129 38130 protected void composeClaimEventComponentElements(Claim.ClaimEventComponent element) throws IOException { 38131 composeBackboneElementElements(element); 38132 if (element.hasType()) { 38133 composeCodeableConcept("type", element.getType()); 38134 } 38135 if (element.hasWhen()) { 38136 composeType("when", element.getWhen()); 38137 } } 38138 38139 protected void composeClaimCareTeamComponent(String name, Claim.CareTeamComponent element) throws IOException { 38140 if (element != null) { 38141 composeElementAttributes(element); 38142 xml.enter(FHIR_NS, name); 38143 composeClaimCareTeamComponentElements(element); 38144 composeElementClose(element); 38145 xml.exit(FHIR_NS, name); 38146 } 38147 } 38148 38149 protected void composeClaimCareTeamComponentElements(Claim.CareTeamComponent element) throws IOException { 38150 composeBackboneElementElements(element); 38151 if (element.hasSequenceElement()) { 38152 composePositiveInt("sequence", element.getSequenceElement()); 38153 } 38154 if (element.hasProvider()) { 38155 composeReference("provider", element.getProvider()); 38156 } 38157 if (element.hasResponsibleElement()) { 38158 composeBoolean("responsible", element.getResponsibleElement()); 38159 } 38160 if (element.hasRole()) { 38161 composeCodeableConcept("role", element.getRole()); 38162 } 38163 if (element.hasSpecialty()) { 38164 composeCodeableConcept("specialty", element.getSpecialty()); 38165 } 38166 } 38167 38168 protected void composeClaimSupportingInformationComponent(String name, Claim.SupportingInformationComponent element) throws IOException { 38169 if (element != null) { 38170 composeElementAttributes(element); 38171 xml.enter(FHIR_NS, name); 38172 composeClaimSupportingInformationComponentElements(element); 38173 composeElementClose(element); 38174 xml.exit(FHIR_NS, name); 38175 } 38176 } 38177 38178 protected void composeClaimSupportingInformationComponentElements(Claim.SupportingInformationComponent element) throws IOException { 38179 composeBackboneElementElements(element); 38180 if (element.hasSequenceElement()) { 38181 composePositiveInt("sequence", element.getSequenceElement()); 38182 } 38183 if (element.hasCategory()) { 38184 composeCodeableConcept("category", element.getCategory()); 38185 } 38186 if (element.hasCode()) { 38187 composeCodeableConcept("code", element.getCode()); 38188 } 38189 if (element.hasTiming()) { 38190 composeType("timing", element.getTiming()); 38191 } if (element.hasValue()) { 38192 composeType("value", element.getValue()); 38193 } if (element.hasReason()) { 38194 composeCodeableConcept("reason", element.getReason()); 38195 } 38196 } 38197 38198 protected void composeClaimDiagnosisComponent(String name, Claim.DiagnosisComponent element) throws IOException { 38199 if (element != null) { 38200 composeElementAttributes(element); 38201 xml.enter(FHIR_NS, name); 38202 composeClaimDiagnosisComponentElements(element); 38203 composeElementClose(element); 38204 xml.exit(FHIR_NS, name); 38205 } 38206 } 38207 38208 protected void composeClaimDiagnosisComponentElements(Claim.DiagnosisComponent element) throws IOException { 38209 composeBackboneElementElements(element); 38210 if (element.hasSequenceElement()) { 38211 composePositiveInt("sequence", element.getSequenceElement()); 38212 } 38213 if (element.hasDiagnosis()) { 38214 composeType("diagnosis", element.getDiagnosis()); 38215 } if (element.hasType()) { 38216 for (CodeableConcept e : element.getType()) 38217 composeCodeableConcept("type", e); 38218 } 38219 if (element.hasOnAdmission()) { 38220 composeCodeableConcept("onAdmission", element.getOnAdmission()); 38221 } 38222 } 38223 38224 protected void composeClaimProcedureComponent(String name, Claim.ProcedureComponent element) throws IOException { 38225 if (element != null) { 38226 composeElementAttributes(element); 38227 xml.enter(FHIR_NS, name); 38228 composeClaimProcedureComponentElements(element); 38229 composeElementClose(element); 38230 xml.exit(FHIR_NS, name); 38231 } 38232 } 38233 38234 protected void composeClaimProcedureComponentElements(Claim.ProcedureComponent element) throws IOException { 38235 composeBackboneElementElements(element); 38236 if (element.hasSequenceElement()) { 38237 composePositiveInt("sequence", element.getSequenceElement()); 38238 } 38239 if (element.hasType()) { 38240 for (CodeableConcept e : element.getType()) 38241 composeCodeableConcept("type", e); 38242 } 38243 if (element.hasDateElement()) { 38244 composeDateTime("date", element.getDateElement()); 38245 } 38246 if (element.hasProcedure()) { 38247 composeType("procedure", element.getProcedure()); 38248 } if (element.hasUdi()) { 38249 for (Reference e : element.getUdi()) 38250 composeReference("udi", e); 38251 } 38252 } 38253 38254 protected void composeClaimInsuranceComponent(String name, Claim.InsuranceComponent element) throws IOException { 38255 if (element != null) { 38256 composeElementAttributes(element); 38257 xml.enter(FHIR_NS, name); 38258 composeClaimInsuranceComponentElements(element); 38259 composeElementClose(element); 38260 xml.exit(FHIR_NS, name); 38261 } 38262 } 38263 38264 protected void composeClaimInsuranceComponentElements(Claim.InsuranceComponent element) throws IOException { 38265 composeBackboneElementElements(element); 38266 if (element.hasSequenceElement()) { 38267 composePositiveInt("sequence", element.getSequenceElement()); 38268 } 38269 if (element.hasFocalElement()) { 38270 composeBoolean("focal", element.getFocalElement()); 38271 } 38272 if (element.hasIdentifier()) { 38273 composeIdentifier("identifier", element.getIdentifier()); 38274 } 38275 if (element.hasCoverage()) { 38276 composeReference("coverage", element.getCoverage()); 38277 } 38278 if (element.hasBusinessArrangementElement()) { 38279 composeString("businessArrangement", element.getBusinessArrangementElement()); 38280 } 38281 if (element.hasPreAuthRef()) { 38282 for (StringType e : element.getPreAuthRef()) 38283 composeString("preAuthRef", e); 38284 } 38285 if (element.hasClaimResponse()) { 38286 composeReference("claimResponse", element.getClaimResponse()); 38287 } 38288 } 38289 38290 protected void composeClaimAccidentComponent(String name, Claim.AccidentComponent element) throws IOException { 38291 if (element != null) { 38292 composeElementAttributes(element); 38293 xml.enter(FHIR_NS, name); 38294 composeClaimAccidentComponentElements(element); 38295 composeElementClose(element); 38296 xml.exit(FHIR_NS, name); 38297 } 38298 } 38299 38300 protected void composeClaimAccidentComponentElements(Claim.AccidentComponent element) throws IOException { 38301 composeBackboneElementElements(element); 38302 if (element.hasDateElement()) { 38303 composeDate("date", element.getDateElement()); 38304 } 38305 if (element.hasType()) { 38306 composeCodeableConcept("type", element.getType()); 38307 } 38308 if (element.hasLocation()) { 38309 composeType("location", element.getLocation()); 38310 } } 38311 38312 protected void composeClaimItemComponent(String name, Claim.ItemComponent element) throws IOException { 38313 if (element != null) { 38314 composeElementAttributes(element); 38315 xml.enter(FHIR_NS, name); 38316 composeClaimItemComponentElements(element); 38317 composeElementClose(element); 38318 xml.exit(FHIR_NS, name); 38319 } 38320 } 38321 38322 protected void composeClaimItemComponentElements(Claim.ItemComponent element) throws IOException { 38323 composeBackboneElementElements(element); 38324 if (element.hasSequenceElement()) { 38325 composePositiveInt("sequence", element.getSequenceElement()); 38326 } 38327 if (element.hasTraceNumber()) { 38328 for (Identifier e : element.getTraceNumber()) 38329 composeIdentifier("traceNumber", e); 38330 } 38331 if (element.hasCareTeamSequence()) { 38332 for (PositiveIntType e : element.getCareTeamSequence()) 38333 composePositiveInt("careTeamSequence", e); 38334 } 38335 if (element.hasDiagnosisSequence()) { 38336 for (PositiveIntType e : element.getDiagnosisSequence()) 38337 composePositiveInt("diagnosisSequence", e); 38338 } 38339 if (element.hasProcedureSequence()) { 38340 for (PositiveIntType e : element.getProcedureSequence()) 38341 composePositiveInt("procedureSequence", e); 38342 } 38343 if (element.hasInformationSequence()) { 38344 for (PositiveIntType e : element.getInformationSequence()) 38345 composePositiveInt("informationSequence", e); 38346 } 38347 if (element.hasRevenue()) { 38348 composeCodeableConcept("revenue", element.getRevenue()); 38349 } 38350 if (element.hasCategory()) { 38351 composeCodeableConcept("category", element.getCategory()); 38352 } 38353 if (element.hasProductOrService()) { 38354 composeCodeableConcept("productOrService", element.getProductOrService()); 38355 } 38356 if (element.hasProductOrServiceEnd()) { 38357 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 38358 } 38359 if (element.hasRequest()) { 38360 for (Reference e : element.getRequest()) 38361 composeReference("request", e); 38362 } 38363 if (element.hasModifier()) { 38364 for (CodeableConcept e : element.getModifier()) 38365 composeCodeableConcept("modifier", e); 38366 } 38367 if (element.hasProgramCode()) { 38368 for (CodeableConcept e : element.getProgramCode()) 38369 composeCodeableConcept("programCode", e); 38370 } 38371 if (element.hasServiced()) { 38372 composeType("serviced", element.getServiced()); 38373 } if (element.hasLocation()) { 38374 composeType("location", element.getLocation()); 38375 } if (element.hasPatientPaid()) { 38376 composeMoney("patientPaid", element.getPatientPaid()); 38377 } 38378 if (element.hasQuantity()) { 38379 composeQuantity("quantity", element.getQuantity()); 38380 } 38381 if (element.hasUnitPrice()) { 38382 composeMoney("unitPrice", element.getUnitPrice()); 38383 } 38384 if (element.hasFactorElement()) { 38385 composeDecimal("factor", element.getFactorElement()); 38386 } 38387 if (element.hasTax()) { 38388 composeMoney("tax", element.getTax()); 38389 } 38390 if (element.hasNet()) { 38391 composeMoney("net", element.getNet()); 38392 } 38393 if (element.hasUdi()) { 38394 for (Reference e : element.getUdi()) 38395 composeReference("udi", e); 38396 } 38397 if (element.hasBodySite()) { 38398 for (Claim.BodySiteComponent e : element.getBodySite()) 38399 composeClaimBodySiteComponent("bodySite", e); 38400 } 38401 if (element.hasEncounter()) { 38402 for (Reference e : element.getEncounter()) 38403 composeReference("encounter", e); 38404 } 38405 if (element.hasDetail()) { 38406 for (Claim.DetailComponent e : element.getDetail()) 38407 composeClaimDetailComponent("detail", e); 38408 } 38409 } 38410 38411 protected void composeClaimBodySiteComponent(String name, Claim.BodySiteComponent element) throws IOException { 38412 if (element != null) { 38413 composeElementAttributes(element); 38414 xml.enter(FHIR_NS, name); 38415 composeClaimBodySiteComponentElements(element); 38416 composeElementClose(element); 38417 xml.exit(FHIR_NS, name); 38418 } 38419 } 38420 38421 protected void composeClaimBodySiteComponentElements(Claim.BodySiteComponent element) throws IOException { 38422 composeBackboneElementElements(element); 38423 if (element.hasSite()) { 38424 for (CodeableReference e : element.getSite()) 38425 composeCodeableReference("site", e); 38426 } 38427 if (element.hasSubSite()) { 38428 for (CodeableConcept e : element.getSubSite()) 38429 composeCodeableConcept("subSite", e); 38430 } 38431 } 38432 38433 protected void composeClaimDetailComponent(String name, Claim.DetailComponent element) throws IOException { 38434 if (element != null) { 38435 composeElementAttributes(element); 38436 xml.enter(FHIR_NS, name); 38437 composeClaimDetailComponentElements(element); 38438 composeElementClose(element); 38439 xml.exit(FHIR_NS, name); 38440 } 38441 } 38442 38443 protected void composeClaimDetailComponentElements(Claim.DetailComponent element) throws IOException { 38444 composeBackboneElementElements(element); 38445 if (element.hasSequenceElement()) { 38446 composePositiveInt("sequence", element.getSequenceElement()); 38447 } 38448 if (element.hasTraceNumber()) { 38449 for (Identifier e : element.getTraceNumber()) 38450 composeIdentifier("traceNumber", e); 38451 } 38452 if (element.hasRevenue()) { 38453 composeCodeableConcept("revenue", element.getRevenue()); 38454 } 38455 if (element.hasCategory()) { 38456 composeCodeableConcept("category", element.getCategory()); 38457 } 38458 if (element.hasProductOrService()) { 38459 composeCodeableConcept("productOrService", element.getProductOrService()); 38460 } 38461 if (element.hasProductOrServiceEnd()) { 38462 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 38463 } 38464 if (element.hasModifier()) { 38465 for (CodeableConcept e : element.getModifier()) 38466 composeCodeableConcept("modifier", e); 38467 } 38468 if (element.hasProgramCode()) { 38469 for (CodeableConcept e : element.getProgramCode()) 38470 composeCodeableConcept("programCode", e); 38471 } 38472 if (element.hasPatientPaid()) { 38473 composeMoney("patientPaid", element.getPatientPaid()); 38474 } 38475 if (element.hasQuantity()) { 38476 composeQuantity("quantity", element.getQuantity()); 38477 } 38478 if (element.hasUnitPrice()) { 38479 composeMoney("unitPrice", element.getUnitPrice()); 38480 } 38481 if (element.hasFactorElement()) { 38482 composeDecimal("factor", element.getFactorElement()); 38483 } 38484 if (element.hasTax()) { 38485 composeMoney("tax", element.getTax()); 38486 } 38487 if (element.hasNet()) { 38488 composeMoney("net", element.getNet()); 38489 } 38490 if (element.hasUdi()) { 38491 for (Reference e : element.getUdi()) 38492 composeReference("udi", e); 38493 } 38494 if (element.hasSubDetail()) { 38495 for (Claim.SubDetailComponent e : element.getSubDetail()) 38496 composeClaimSubDetailComponent("subDetail", e); 38497 } 38498 } 38499 38500 protected void composeClaimSubDetailComponent(String name, Claim.SubDetailComponent element) throws IOException { 38501 if (element != null) { 38502 composeElementAttributes(element); 38503 xml.enter(FHIR_NS, name); 38504 composeClaimSubDetailComponentElements(element); 38505 composeElementClose(element); 38506 xml.exit(FHIR_NS, name); 38507 } 38508 } 38509 38510 protected void composeClaimSubDetailComponentElements(Claim.SubDetailComponent element) throws IOException { 38511 composeBackboneElementElements(element); 38512 if (element.hasSequenceElement()) { 38513 composePositiveInt("sequence", element.getSequenceElement()); 38514 } 38515 if (element.hasTraceNumber()) { 38516 for (Identifier e : element.getTraceNumber()) 38517 composeIdentifier("traceNumber", e); 38518 } 38519 if (element.hasRevenue()) { 38520 composeCodeableConcept("revenue", element.getRevenue()); 38521 } 38522 if (element.hasCategory()) { 38523 composeCodeableConcept("category", element.getCategory()); 38524 } 38525 if (element.hasProductOrService()) { 38526 composeCodeableConcept("productOrService", element.getProductOrService()); 38527 } 38528 if (element.hasProductOrServiceEnd()) { 38529 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 38530 } 38531 if (element.hasModifier()) { 38532 for (CodeableConcept e : element.getModifier()) 38533 composeCodeableConcept("modifier", e); 38534 } 38535 if (element.hasProgramCode()) { 38536 for (CodeableConcept e : element.getProgramCode()) 38537 composeCodeableConcept("programCode", e); 38538 } 38539 if (element.hasPatientPaid()) { 38540 composeMoney("patientPaid", element.getPatientPaid()); 38541 } 38542 if (element.hasQuantity()) { 38543 composeQuantity("quantity", element.getQuantity()); 38544 } 38545 if (element.hasUnitPrice()) { 38546 composeMoney("unitPrice", element.getUnitPrice()); 38547 } 38548 if (element.hasFactorElement()) { 38549 composeDecimal("factor", element.getFactorElement()); 38550 } 38551 if (element.hasTax()) { 38552 composeMoney("tax", element.getTax()); 38553 } 38554 if (element.hasNet()) { 38555 composeMoney("net", element.getNet()); 38556 } 38557 if (element.hasUdi()) { 38558 for (Reference e : element.getUdi()) 38559 composeReference("udi", e); 38560 } 38561 } 38562 38563 protected void composeClaimResponse(String name, ClaimResponse element) throws IOException { 38564 if (element != null) { 38565 composeResourceAttributes(element); 38566 xml.enter(FHIR_NS, name); 38567 composeClaimResponseElements(element); 38568 composeElementClose(element); 38569 xml.exit(FHIR_NS, name); 38570 } 38571 } 38572 38573 protected void composeClaimResponseElements(ClaimResponse element) throws IOException { 38574 composeDomainResourceElements(element); 38575 if (element.hasIdentifier()) { 38576 for (Identifier e : element.getIdentifier()) 38577 composeIdentifier("identifier", e); 38578 } 38579 if (element.hasTraceNumber()) { 38580 for (Identifier e : element.getTraceNumber()) 38581 composeIdentifier("traceNumber", e); 38582 } 38583 if (element.hasStatusElement()) 38584 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 38585 if (element.hasType()) { 38586 composeCodeableConcept("type", element.getType()); 38587 } 38588 if (element.hasSubType()) { 38589 composeCodeableConcept("subType", element.getSubType()); 38590 } 38591 if (element.hasUseElement()) 38592 composeEnumeration("use", element.getUseElement(), new Enumerations.UseEnumFactory()); 38593 if (element.hasPatient()) { 38594 composeReference("patient", element.getPatient()); 38595 } 38596 if (element.hasCreatedElement()) { 38597 composeDateTime("created", element.getCreatedElement()); 38598 } 38599 if (element.hasInsurer()) { 38600 composeReference("insurer", element.getInsurer()); 38601 } 38602 if (element.hasRequestor()) { 38603 composeReference("requestor", element.getRequestor()); 38604 } 38605 if (element.hasRequest()) { 38606 composeReference("request", element.getRequest()); 38607 } 38608 if (element.hasOutcomeElement()) 38609 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.ClaimProcessingCodesEnumFactory()); 38610 if (element.hasDecision()) { 38611 composeCodeableConcept("decision", element.getDecision()); 38612 } 38613 if (element.hasDispositionElement()) { 38614 composeString("disposition", element.getDispositionElement()); 38615 } 38616 if (element.hasPreAuthRefElement()) { 38617 composeString("preAuthRef", element.getPreAuthRefElement()); 38618 } 38619 if (element.hasPreAuthPeriod()) { 38620 composePeriod("preAuthPeriod", element.getPreAuthPeriod()); 38621 } 38622 if (element.hasEvent()) { 38623 for (ClaimResponse.ClaimResponseEventComponent e : element.getEvent()) 38624 composeClaimResponseEventComponent("event", e); 38625 } 38626 if (element.hasPayeeType()) { 38627 composeCodeableConcept("payeeType", element.getPayeeType()); 38628 } 38629 if (element.hasEncounter()) { 38630 for (Reference e : element.getEncounter()) 38631 composeReference("encounter", e); 38632 } 38633 if (element.hasDiagnosisRelatedGroup()) { 38634 composeCodeableConcept("diagnosisRelatedGroup", element.getDiagnosisRelatedGroup()); 38635 } 38636 if (element.hasItem()) { 38637 for (ClaimResponse.ItemComponent e : element.getItem()) 38638 composeClaimResponseItemComponent("item", e); 38639 } 38640 if (element.hasAddItem()) { 38641 for (ClaimResponse.AddedItemComponent e : element.getAddItem()) 38642 composeClaimResponseAddedItemComponent("addItem", e); 38643 } 38644 if (element.hasAdjudication()) { 38645 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 38646 composeClaimResponseAdjudicationComponent("adjudication", e); 38647 } 38648 if (element.hasTotal()) { 38649 for (ClaimResponse.TotalComponent e : element.getTotal()) 38650 composeClaimResponseTotalComponent("total", e); 38651 } 38652 if (element.hasPayment()) { 38653 composeClaimResponsePaymentComponent("payment", element.getPayment()); 38654 } 38655 if (element.hasFundsReserve()) { 38656 composeCodeableConcept("fundsReserve", element.getFundsReserve()); 38657 } 38658 if (element.hasFormCode()) { 38659 composeCodeableConcept("formCode", element.getFormCode()); 38660 } 38661 if (element.hasForm()) { 38662 composeAttachment("form", element.getForm()); 38663 } 38664 if (element.hasProcessNote()) { 38665 for (ClaimResponse.NoteComponent e : element.getProcessNote()) 38666 composeClaimResponseNoteComponent("processNote", e); 38667 } 38668 if (element.hasCommunicationRequest()) { 38669 for (Reference e : element.getCommunicationRequest()) 38670 composeReference("communicationRequest", e); 38671 } 38672 if (element.hasInsurance()) { 38673 for (ClaimResponse.InsuranceComponent e : element.getInsurance()) 38674 composeClaimResponseInsuranceComponent("insurance", e); 38675 } 38676 if (element.hasError()) { 38677 for (ClaimResponse.ErrorComponent e : element.getError()) 38678 composeClaimResponseErrorComponent("error", e); 38679 } 38680 } 38681 38682 protected void composeClaimResponseEventComponent(String name, ClaimResponse.ClaimResponseEventComponent element) throws IOException { 38683 if (element != null) { 38684 composeElementAttributes(element); 38685 xml.enter(FHIR_NS, name); 38686 composeClaimResponseEventComponentElements(element); 38687 composeElementClose(element); 38688 xml.exit(FHIR_NS, name); 38689 } 38690 } 38691 38692 protected void composeClaimResponseEventComponentElements(ClaimResponse.ClaimResponseEventComponent element) throws IOException { 38693 composeBackboneElementElements(element); 38694 if (element.hasType()) { 38695 composeCodeableConcept("type", element.getType()); 38696 } 38697 if (element.hasWhen()) { 38698 composeType("when", element.getWhen()); 38699 } } 38700 38701 protected void composeClaimResponseItemComponent(String name, ClaimResponse.ItemComponent element) throws IOException { 38702 if (element != null) { 38703 composeElementAttributes(element); 38704 xml.enter(FHIR_NS, name); 38705 composeClaimResponseItemComponentElements(element); 38706 composeElementClose(element); 38707 xml.exit(FHIR_NS, name); 38708 } 38709 } 38710 38711 protected void composeClaimResponseItemComponentElements(ClaimResponse.ItemComponent element) throws IOException { 38712 composeBackboneElementElements(element); 38713 if (element.hasItemSequenceElement()) { 38714 composePositiveInt("itemSequence", element.getItemSequenceElement()); 38715 } 38716 if (element.hasTraceNumber()) { 38717 for (Identifier e : element.getTraceNumber()) 38718 composeIdentifier("traceNumber", e); 38719 } 38720 if (element.hasNoteNumber()) { 38721 for (PositiveIntType e : element.getNoteNumber()) 38722 composePositiveInt("noteNumber", e); 38723 } 38724 if (element.hasReviewOutcome()) { 38725 composeClaimResponseReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 38726 } 38727 if (element.hasAdjudication()) { 38728 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 38729 composeClaimResponseAdjudicationComponent("adjudication", e); 38730 } 38731 if (element.hasDetail()) { 38732 for (ClaimResponse.ItemDetailComponent e : element.getDetail()) 38733 composeClaimResponseItemDetailComponent("detail", e); 38734 } 38735 } 38736 38737 protected void composeClaimResponseReviewOutcomeComponent(String name, ClaimResponse.ReviewOutcomeComponent element) throws IOException { 38738 if (element != null) { 38739 composeElementAttributes(element); 38740 xml.enter(FHIR_NS, name); 38741 composeClaimResponseReviewOutcomeComponentElements(element); 38742 composeElementClose(element); 38743 xml.exit(FHIR_NS, name); 38744 } 38745 } 38746 38747 protected void composeClaimResponseReviewOutcomeComponentElements(ClaimResponse.ReviewOutcomeComponent element) throws IOException { 38748 composeBackboneElementElements(element); 38749 if (element.hasDecision()) { 38750 composeCodeableConcept("decision", element.getDecision()); 38751 } 38752 if (element.hasReason()) { 38753 for (CodeableConcept e : element.getReason()) 38754 composeCodeableConcept("reason", e); 38755 } 38756 if (element.hasPreAuthRefElement()) { 38757 composeString("preAuthRef", element.getPreAuthRefElement()); 38758 } 38759 if (element.hasPreAuthPeriod()) { 38760 composePeriod("preAuthPeriod", element.getPreAuthPeriod()); 38761 } 38762 } 38763 38764 protected void composeClaimResponseAdjudicationComponent(String name, ClaimResponse.AdjudicationComponent element) throws IOException { 38765 if (element != null) { 38766 composeElementAttributes(element); 38767 xml.enter(FHIR_NS, name); 38768 composeClaimResponseAdjudicationComponentElements(element); 38769 composeElementClose(element); 38770 xml.exit(FHIR_NS, name); 38771 } 38772 } 38773 38774 protected void composeClaimResponseAdjudicationComponentElements(ClaimResponse.AdjudicationComponent element) throws IOException { 38775 composeBackboneElementElements(element); 38776 if (element.hasCategory()) { 38777 composeCodeableConcept("category", element.getCategory()); 38778 } 38779 if (element.hasReason()) { 38780 composeCodeableConcept("reason", element.getReason()); 38781 } 38782 if (element.hasAmount()) { 38783 composeMoney("amount", element.getAmount()); 38784 } 38785 if (element.hasQuantity()) { 38786 composeQuantity("quantity", element.getQuantity()); 38787 } 38788 } 38789 38790 protected void composeClaimResponseItemDetailComponent(String name, ClaimResponse.ItemDetailComponent element) throws IOException { 38791 if (element != null) { 38792 composeElementAttributes(element); 38793 xml.enter(FHIR_NS, name); 38794 composeClaimResponseItemDetailComponentElements(element); 38795 composeElementClose(element); 38796 xml.exit(FHIR_NS, name); 38797 } 38798 } 38799 38800 protected void composeClaimResponseItemDetailComponentElements(ClaimResponse.ItemDetailComponent element) throws IOException { 38801 composeBackboneElementElements(element); 38802 if (element.hasDetailSequenceElement()) { 38803 composePositiveInt("detailSequence", element.getDetailSequenceElement()); 38804 } 38805 if (element.hasTraceNumber()) { 38806 for (Identifier e : element.getTraceNumber()) 38807 composeIdentifier("traceNumber", e); 38808 } 38809 if (element.hasNoteNumber()) { 38810 for (PositiveIntType e : element.getNoteNumber()) 38811 composePositiveInt("noteNumber", e); 38812 } 38813 if (element.hasReviewOutcome()) { 38814 composeClaimResponseReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 38815 } 38816 if (element.hasAdjudication()) { 38817 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 38818 composeClaimResponseAdjudicationComponent("adjudication", e); 38819 } 38820 if (element.hasSubDetail()) { 38821 for (ClaimResponse.SubDetailComponent e : element.getSubDetail()) 38822 composeClaimResponseSubDetailComponent("subDetail", e); 38823 } 38824 } 38825 38826 protected void composeClaimResponseSubDetailComponent(String name, ClaimResponse.SubDetailComponent element) throws IOException { 38827 if (element != null) { 38828 composeElementAttributes(element); 38829 xml.enter(FHIR_NS, name); 38830 composeClaimResponseSubDetailComponentElements(element); 38831 composeElementClose(element); 38832 xml.exit(FHIR_NS, name); 38833 } 38834 } 38835 38836 protected void composeClaimResponseSubDetailComponentElements(ClaimResponse.SubDetailComponent element) throws IOException { 38837 composeBackboneElementElements(element); 38838 if (element.hasSubDetailSequenceElement()) { 38839 composePositiveInt("subDetailSequence", element.getSubDetailSequenceElement()); 38840 } 38841 if (element.hasTraceNumber()) { 38842 for (Identifier e : element.getTraceNumber()) 38843 composeIdentifier("traceNumber", e); 38844 } 38845 if (element.hasNoteNumber()) { 38846 for (PositiveIntType e : element.getNoteNumber()) 38847 composePositiveInt("noteNumber", e); 38848 } 38849 if (element.hasReviewOutcome()) { 38850 composeClaimResponseReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 38851 } 38852 if (element.hasAdjudication()) { 38853 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 38854 composeClaimResponseAdjudicationComponent("adjudication", e); 38855 } 38856 } 38857 38858 protected void composeClaimResponseAddedItemComponent(String name, ClaimResponse.AddedItemComponent element) throws IOException { 38859 if (element != null) { 38860 composeElementAttributes(element); 38861 xml.enter(FHIR_NS, name); 38862 composeClaimResponseAddedItemComponentElements(element); 38863 composeElementClose(element); 38864 xml.exit(FHIR_NS, name); 38865 } 38866 } 38867 38868 protected void composeClaimResponseAddedItemComponentElements(ClaimResponse.AddedItemComponent element) throws IOException { 38869 composeBackboneElementElements(element); 38870 if (element.hasItemSequence()) { 38871 for (PositiveIntType e : element.getItemSequence()) 38872 composePositiveInt("itemSequence", e); 38873 } 38874 if (element.hasDetailSequence()) { 38875 for (PositiveIntType e : element.getDetailSequence()) 38876 composePositiveInt("detailSequence", e); 38877 } 38878 if (element.hasSubdetailSequence()) { 38879 for (PositiveIntType e : element.getSubdetailSequence()) 38880 composePositiveInt("subdetailSequence", e); 38881 } 38882 if (element.hasTraceNumber()) { 38883 for (Identifier e : element.getTraceNumber()) 38884 composeIdentifier("traceNumber", e); 38885 } 38886 if (element.hasProvider()) { 38887 for (Reference e : element.getProvider()) 38888 composeReference("provider", e); 38889 } 38890 if (element.hasRevenue()) { 38891 composeCodeableConcept("revenue", element.getRevenue()); 38892 } 38893 if (element.hasProductOrService()) { 38894 composeCodeableConcept("productOrService", element.getProductOrService()); 38895 } 38896 if (element.hasProductOrServiceEnd()) { 38897 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 38898 } 38899 if (element.hasRequest()) { 38900 for (Reference e : element.getRequest()) 38901 composeReference("request", e); 38902 } 38903 if (element.hasModifier()) { 38904 for (CodeableConcept e : element.getModifier()) 38905 composeCodeableConcept("modifier", e); 38906 } 38907 if (element.hasProgramCode()) { 38908 for (CodeableConcept e : element.getProgramCode()) 38909 composeCodeableConcept("programCode", e); 38910 } 38911 if (element.hasServiced()) { 38912 composeType("serviced", element.getServiced()); 38913 } if (element.hasLocation()) { 38914 composeType("location", element.getLocation()); 38915 } if (element.hasQuantity()) { 38916 composeQuantity("quantity", element.getQuantity()); 38917 } 38918 if (element.hasUnitPrice()) { 38919 composeMoney("unitPrice", element.getUnitPrice()); 38920 } 38921 if (element.hasFactorElement()) { 38922 composeDecimal("factor", element.getFactorElement()); 38923 } 38924 if (element.hasTax()) { 38925 composeMoney("tax", element.getTax()); 38926 } 38927 if (element.hasNet()) { 38928 composeMoney("net", element.getNet()); 38929 } 38930 if (element.hasBodySite()) { 38931 for (ClaimResponse.BodySiteComponent e : element.getBodySite()) 38932 composeClaimResponseBodySiteComponent("bodySite", e); 38933 } 38934 if (element.hasNoteNumber()) { 38935 for (PositiveIntType e : element.getNoteNumber()) 38936 composePositiveInt("noteNumber", e); 38937 } 38938 if (element.hasReviewOutcome()) { 38939 composeClaimResponseReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 38940 } 38941 if (element.hasAdjudication()) { 38942 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 38943 composeClaimResponseAdjudicationComponent("adjudication", e); 38944 } 38945 if (element.hasDetail()) { 38946 for (ClaimResponse.AddedItemDetailComponent e : element.getDetail()) 38947 composeClaimResponseAddedItemDetailComponent("detail", e); 38948 } 38949 } 38950 38951 protected void composeClaimResponseBodySiteComponent(String name, ClaimResponse.BodySiteComponent element) throws IOException { 38952 if (element != null) { 38953 composeElementAttributes(element); 38954 xml.enter(FHIR_NS, name); 38955 composeClaimResponseBodySiteComponentElements(element); 38956 composeElementClose(element); 38957 xml.exit(FHIR_NS, name); 38958 } 38959 } 38960 38961 protected void composeClaimResponseBodySiteComponentElements(ClaimResponse.BodySiteComponent element) throws IOException { 38962 composeBackboneElementElements(element); 38963 if (element.hasSite()) { 38964 for (CodeableReference e : element.getSite()) 38965 composeCodeableReference("site", e); 38966 } 38967 if (element.hasSubSite()) { 38968 for (CodeableConcept e : element.getSubSite()) 38969 composeCodeableConcept("subSite", e); 38970 } 38971 } 38972 38973 protected void composeClaimResponseAddedItemDetailComponent(String name, ClaimResponse.AddedItemDetailComponent element) throws IOException { 38974 if (element != null) { 38975 composeElementAttributes(element); 38976 xml.enter(FHIR_NS, name); 38977 composeClaimResponseAddedItemDetailComponentElements(element); 38978 composeElementClose(element); 38979 xml.exit(FHIR_NS, name); 38980 } 38981 } 38982 38983 protected void composeClaimResponseAddedItemDetailComponentElements(ClaimResponse.AddedItemDetailComponent element) throws IOException { 38984 composeBackboneElementElements(element); 38985 if (element.hasTraceNumber()) { 38986 for (Identifier e : element.getTraceNumber()) 38987 composeIdentifier("traceNumber", e); 38988 } 38989 if (element.hasRevenue()) { 38990 composeCodeableConcept("revenue", element.getRevenue()); 38991 } 38992 if (element.hasProductOrService()) { 38993 composeCodeableConcept("productOrService", element.getProductOrService()); 38994 } 38995 if (element.hasProductOrServiceEnd()) { 38996 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 38997 } 38998 if (element.hasModifier()) { 38999 for (CodeableConcept e : element.getModifier()) 39000 composeCodeableConcept("modifier", e); 39001 } 39002 if (element.hasQuantity()) { 39003 composeQuantity("quantity", element.getQuantity()); 39004 } 39005 if (element.hasUnitPrice()) { 39006 composeMoney("unitPrice", element.getUnitPrice()); 39007 } 39008 if (element.hasFactorElement()) { 39009 composeDecimal("factor", element.getFactorElement()); 39010 } 39011 if (element.hasTax()) { 39012 composeMoney("tax", element.getTax()); 39013 } 39014 if (element.hasNet()) { 39015 composeMoney("net", element.getNet()); 39016 } 39017 if (element.hasNoteNumber()) { 39018 for (PositiveIntType e : element.getNoteNumber()) 39019 composePositiveInt("noteNumber", e); 39020 } 39021 if (element.hasReviewOutcome()) { 39022 composeClaimResponseReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 39023 } 39024 if (element.hasAdjudication()) { 39025 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 39026 composeClaimResponseAdjudicationComponent("adjudication", e); 39027 } 39028 if (element.hasSubDetail()) { 39029 for (ClaimResponse.AddedItemSubDetailComponent e : element.getSubDetail()) 39030 composeClaimResponseAddedItemSubDetailComponent("subDetail", e); 39031 } 39032 } 39033 39034 protected void composeClaimResponseAddedItemSubDetailComponent(String name, ClaimResponse.AddedItemSubDetailComponent element) throws IOException { 39035 if (element != null) { 39036 composeElementAttributes(element); 39037 xml.enter(FHIR_NS, name); 39038 composeClaimResponseAddedItemSubDetailComponentElements(element); 39039 composeElementClose(element); 39040 xml.exit(FHIR_NS, name); 39041 } 39042 } 39043 39044 protected void composeClaimResponseAddedItemSubDetailComponentElements(ClaimResponse.AddedItemSubDetailComponent element) throws IOException { 39045 composeBackboneElementElements(element); 39046 if (element.hasTraceNumber()) { 39047 for (Identifier e : element.getTraceNumber()) 39048 composeIdentifier("traceNumber", e); 39049 } 39050 if (element.hasRevenue()) { 39051 composeCodeableConcept("revenue", element.getRevenue()); 39052 } 39053 if (element.hasProductOrService()) { 39054 composeCodeableConcept("productOrService", element.getProductOrService()); 39055 } 39056 if (element.hasProductOrServiceEnd()) { 39057 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 39058 } 39059 if (element.hasModifier()) { 39060 for (CodeableConcept e : element.getModifier()) 39061 composeCodeableConcept("modifier", e); 39062 } 39063 if (element.hasQuantity()) { 39064 composeQuantity("quantity", element.getQuantity()); 39065 } 39066 if (element.hasUnitPrice()) { 39067 composeMoney("unitPrice", element.getUnitPrice()); 39068 } 39069 if (element.hasFactorElement()) { 39070 composeDecimal("factor", element.getFactorElement()); 39071 } 39072 if (element.hasTax()) { 39073 composeMoney("tax", element.getTax()); 39074 } 39075 if (element.hasNet()) { 39076 composeMoney("net", element.getNet()); 39077 } 39078 if (element.hasNoteNumber()) { 39079 for (PositiveIntType e : element.getNoteNumber()) 39080 composePositiveInt("noteNumber", e); 39081 } 39082 if (element.hasReviewOutcome()) { 39083 composeClaimResponseReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 39084 } 39085 if (element.hasAdjudication()) { 39086 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 39087 composeClaimResponseAdjudicationComponent("adjudication", e); 39088 } 39089 } 39090 39091 protected void composeClaimResponseTotalComponent(String name, ClaimResponse.TotalComponent element) throws IOException { 39092 if (element != null) { 39093 composeElementAttributes(element); 39094 xml.enter(FHIR_NS, name); 39095 composeClaimResponseTotalComponentElements(element); 39096 composeElementClose(element); 39097 xml.exit(FHIR_NS, name); 39098 } 39099 } 39100 39101 protected void composeClaimResponseTotalComponentElements(ClaimResponse.TotalComponent element) throws IOException { 39102 composeBackboneElementElements(element); 39103 if (element.hasCategory()) { 39104 composeCodeableConcept("category", element.getCategory()); 39105 } 39106 if (element.hasAmount()) { 39107 composeMoney("amount", element.getAmount()); 39108 } 39109 } 39110 39111 protected void composeClaimResponsePaymentComponent(String name, ClaimResponse.PaymentComponent element) throws IOException { 39112 if (element != null) { 39113 composeElementAttributes(element); 39114 xml.enter(FHIR_NS, name); 39115 composeClaimResponsePaymentComponentElements(element); 39116 composeElementClose(element); 39117 xml.exit(FHIR_NS, name); 39118 } 39119 } 39120 39121 protected void composeClaimResponsePaymentComponentElements(ClaimResponse.PaymentComponent element) throws IOException { 39122 composeBackboneElementElements(element); 39123 if (element.hasType()) { 39124 composeCodeableConcept("type", element.getType()); 39125 } 39126 if (element.hasAdjustment()) { 39127 composeMoney("adjustment", element.getAdjustment()); 39128 } 39129 if (element.hasAdjustmentReason()) { 39130 composeCodeableConcept("adjustmentReason", element.getAdjustmentReason()); 39131 } 39132 if (element.hasDateElement()) { 39133 composeDate("date", element.getDateElement()); 39134 } 39135 if (element.hasAmount()) { 39136 composeMoney("amount", element.getAmount()); 39137 } 39138 if (element.hasIdentifier()) { 39139 composeIdentifier("identifier", element.getIdentifier()); 39140 } 39141 } 39142 39143 protected void composeClaimResponseNoteComponent(String name, ClaimResponse.NoteComponent element) throws IOException { 39144 if (element != null) { 39145 composeElementAttributes(element); 39146 xml.enter(FHIR_NS, name); 39147 composeClaimResponseNoteComponentElements(element); 39148 composeElementClose(element); 39149 xml.exit(FHIR_NS, name); 39150 } 39151 } 39152 39153 protected void composeClaimResponseNoteComponentElements(ClaimResponse.NoteComponent element) throws IOException { 39154 composeBackboneElementElements(element); 39155 if (element.hasNumberElement()) { 39156 composePositiveInt("number", element.getNumberElement()); 39157 } 39158 if (element.hasType()) { 39159 composeCodeableConcept("type", element.getType()); 39160 } 39161 if (element.hasTextElement()) { 39162 composeString("text", element.getTextElement()); 39163 } 39164 if (element.hasLanguage()) { 39165 composeCodeableConcept("language", element.getLanguage()); 39166 } 39167 } 39168 39169 protected void composeClaimResponseInsuranceComponent(String name, ClaimResponse.InsuranceComponent element) throws IOException { 39170 if (element != null) { 39171 composeElementAttributes(element); 39172 xml.enter(FHIR_NS, name); 39173 composeClaimResponseInsuranceComponentElements(element); 39174 composeElementClose(element); 39175 xml.exit(FHIR_NS, name); 39176 } 39177 } 39178 39179 protected void composeClaimResponseInsuranceComponentElements(ClaimResponse.InsuranceComponent element) throws IOException { 39180 composeBackboneElementElements(element); 39181 if (element.hasSequenceElement()) { 39182 composePositiveInt("sequence", element.getSequenceElement()); 39183 } 39184 if (element.hasFocalElement()) { 39185 composeBoolean("focal", element.getFocalElement()); 39186 } 39187 if (element.hasCoverage()) { 39188 composeReference("coverage", element.getCoverage()); 39189 } 39190 if (element.hasBusinessArrangementElement()) { 39191 composeString("businessArrangement", element.getBusinessArrangementElement()); 39192 } 39193 if (element.hasClaimResponse()) { 39194 composeReference("claimResponse", element.getClaimResponse()); 39195 } 39196 } 39197 39198 protected void composeClaimResponseErrorComponent(String name, ClaimResponse.ErrorComponent element) throws IOException { 39199 if (element != null) { 39200 composeElementAttributes(element); 39201 xml.enter(FHIR_NS, name); 39202 composeClaimResponseErrorComponentElements(element); 39203 composeElementClose(element); 39204 xml.exit(FHIR_NS, name); 39205 } 39206 } 39207 39208 protected void composeClaimResponseErrorComponentElements(ClaimResponse.ErrorComponent element) throws IOException { 39209 composeBackboneElementElements(element); 39210 if (element.hasItemSequenceElement()) { 39211 composePositiveInt("itemSequence", element.getItemSequenceElement()); 39212 } 39213 if (element.hasDetailSequenceElement()) { 39214 composePositiveInt("detailSequence", element.getDetailSequenceElement()); 39215 } 39216 if (element.hasSubDetailSequenceElement()) { 39217 composePositiveInt("subDetailSequence", element.getSubDetailSequenceElement()); 39218 } 39219 if (element.hasCode()) { 39220 composeCodeableConcept("code", element.getCode()); 39221 } 39222 if (element.hasExpression()) { 39223 for (StringType e : element.getExpression()) 39224 composeString("expression", e); 39225 } 39226 } 39227 39228 protected void composeClinicalImpression(String name, ClinicalImpression element) throws IOException { 39229 if (element != null) { 39230 composeResourceAttributes(element); 39231 xml.enter(FHIR_NS, name); 39232 composeClinicalImpressionElements(element); 39233 composeElementClose(element); 39234 xml.exit(FHIR_NS, name); 39235 } 39236 } 39237 39238 protected void composeClinicalImpressionElements(ClinicalImpression element) throws IOException { 39239 composeDomainResourceElements(element); 39240 if (element.hasIdentifier()) { 39241 for (Identifier e : element.getIdentifier()) 39242 composeIdentifier("identifier", e); 39243 } 39244 if (element.hasStatusElement()) 39245 composeEnumeration("status", element.getStatusElement(), new Enumerations.EventStatusEnumFactory()); 39246 if (element.hasStatusReason()) { 39247 composeCodeableConcept("statusReason", element.getStatusReason()); 39248 } 39249 if (element.hasDescriptionElement()) { 39250 composeString("description", element.getDescriptionElement()); 39251 } 39252 if (element.hasSubject()) { 39253 composeReference("subject", element.getSubject()); 39254 } 39255 if (element.hasEncounter()) { 39256 composeReference("encounter", element.getEncounter()); 39257 } 39258 if (element.hasEffective()) { 39259 composeType("effective", element.getEffective()); 39260 } if (element.hasDateElement()) { 39261 composeDateTime("date", element.getDateElement()); 39262 } 39263 if (element.hasPerformer()) { 39264 composeReference("performer", element.getPerformer()); 39265 } 39266 if (element.hasPrevious()) { 39267 composeReference("previous", element.getPrevious()); 39268 } 39269 if (element.hasProblem()) { 39270 for (Reference e : element.getProblem()) 39271 composeReference("problem", e); 39272 } 39273 if (element.hasChangePattern()) { 39274 composeCodeableConcept("changePattern", element.getChangePattern()); 39275 } 39276 if (element.hasProtocol()) { 39277 for (UriType e : element.getProtocol()) 39278 composeUri("protocol", e); 39279 } 39280 if (element.hasSummaryElement()) { 39281 composeString("summary", element.getSummaryElement()); 39282 } 39283 if (element.hasFinding()) { 39284 for (ClinicalImpression.ClinicalImpressionFindingComponent e : element.getFinding()) 39285 composeClinicalImpressionFindingComponent("finding", e); 39286 } 39287 if (element.hasPrognosisCodeableConcept()) { 39288 for (CodeableConcept e : element.getPrognosisCodeableConcept()) 39289 composeCodeableConcept("prognosisCodeableConcept", e); 39290 } 39291 if (element.hasPrognosisReference()) { 39292 for (Reference e : element.getPrognosisReference()) 39293 composeReference("prognosisReference", e); 39294 } 39295 if (element.hasSupportingInfo()) { 39296 for (Reference e : element.getSupportingInfo()) 39297 composeReference("supportingInfo", e); 39298 } 39299 if (element.hasNote()) { 39300 for (Annotation e : element.getNote()) 39301 composeAnnotation("note", e); 39302 } 39303 } 39304 39305 protected void composeClinicalImpressionFindingComponent(String name, ClinicalImpression.ClinicalImpressionFindingComponent element) throws IOException { 39306 if (element != null) { 39307 composeElementAttributes(element); 39308 xml.enter(FHIR_NS, name); 39309 composeClinicalImpressionFindingComponentElements(element); 39310 composeElementClose(element); 39311 xml.exit(FHIR_NS, name); 39312 } 39313 } 39314 39315 protected void composeClinicalImpressionFindingComponentElements(ClinicalImpression.ClinicalImpressionFindingComponent element) throws IOException { 39316 composeBackboneElementElements(element); 39317 if (element.hasItem()) { 39318 composeCodeableReference("item", element.getItem()); 39319 } 39320 if (element.hasBasisElement()) { 39321 composeString("basis", element.getBasisElement()); 39322 } 39323 } 39324 39325 protected void composeClinicalUseDefinition(String name, ClinicalUseDefinition element) throws IOException { 39326 if (element != null) { 39327 composeResourceAttributes(element); 39328 xml.enter(FHIR_NS, name); 39329 composeClinicalUseDefinitionElements(element); 39330 composeElementClose(element); 39331 xml.exit(FHIR_NS, name); 39332 } 39333 } 39334 39335 protected void composeClinicalUseDefinitionElements(ClinicalUseDefinition element) throws IOException { 39336 composeDomainResourceElements(element); 39337 if (element.hasIdentifier()) { 39338 for (Identifier e : element.getIdentifier()) 39339 composeIdentifier("identifier", e); 39340 } 39341 if (element.hasTypeElement()) 39342 composeEnumeration("type", element.getTypeElement(), new ClinicalUseDefinition.ClinicalUseDefinitionTypeEnumFactory()); 39343 if (element.hasCategory()) { 39344 for (CodeableConcept e : element.getCategory()) 39345 composeCodeableConcept("category", e); 39346 } 39347 if (element.hasSubject()) { 39348 for (Reference e : element.getSubject()) 39349 composeReference("subject", e); 39350 } 39351 if (element.hasStatus()) { 39352 composeCodeableConcept("status", element.getStatus()); 39353 } 39354 if (element.hasContraindication()) { 39355 composeClinicalUseDefinitionContraindicationComponent("contraindication", element.getContraindication()); 39356 } 39357 if (element.hasIndication()) { 39358 composeClinicalUseDefinitionIndicationComponent("indication", element.getIndication()); 39359 } 39360 if (element.hasInteraction()) { 39361 composeClinicalUseDefinitionInteractionComponent("interaction", element.getInteraction()); 39362 } 39363 if (element.hasPopulation()) { 39364 for (Reference e : element.getPopulation()) 39365 composeReference("population", e); 39366 } 39367 if (element.hasLibrary()) { 39368 for (CanonicalType e : element.getLibrary()) 39369 composeCanonical("library", e); 39370 } 39371 if (element.hasUndesirableEffect()) { 39372 composeClinicalUseDefinitionUndesirableEffectComponent("undesirableEffect", element.getUndesirableEffect()); 39373 } 39374 if (element.hasWarning()) { 39375 composeClinicalUseDefinitionWarningComponent("warning", element.getWarning()); 39376 } 39377 } 39378 39379 protected void composeClinicalUseDefinitionContraindicationComponent(String name, ClinicalUseDefinition.ClinicalUseDefinitionContraindicationComponent element) throws IOException { 39380 if (element != null) { 39381 composeElementAttributes(element); 39382 xml.enter(FHIR_NS, name); 39383 composeClinicalUseDefinitionContraindicationComponentElements(element); 39384 composeElementClose(element); 39385 xml.exit(FHIR_NS, name); 39386 } 39387 } 39388 39389 protected void composeClinicalUseDefinitionContraindicationComponentElements(ClinicalUseDefinition.ClinicalUseDefinitionContraindicationComponent element) throws IOException { 39390 composeBackboneElementElements(element); 39391 if (element.hasDiseaseSymptomProcedure()) { 39392 composeCodeableReference("diseaseSymptomProcedure", element.getDiseaseSymptomProcedure()); 39393 } 39394 if (element.hasDiseaseStatus()) { 39395 composeCodeableReference("diseaseStatus", element.getDiseaseStatus()); 39396 } 39397 if (element.hasComorbidity()) { 39398 for (CodeableReference e : element.getComorbidity()) 39399 composeCodeableReference("comorbidity", e); 39400 } 39401 if (element.hasIndication()) { 39402 for (Reference e : element.getIndication()) 39403 composeReference("indication", e); 39404 } 39405 if (element.hasApplicability()) { 39406 composeExpression("applicability", element.getApplicability()); 39407 } 39408 if (element.hasOtherTherapy()) { 39409 for (ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent e : element.getOtherTherapy()) 39410 composeClinicalUseDefinitionContraindicationOtherTherapyComponent("otherTherapy", e); 39411 } 39412 } 39413 39414 protected void composeClinicalUseDefinitionContraindicationOtherTherapyComponent(String name, ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent element) throws IOException { 39415 if (element != null) { 39416 composeElementAttributes(element); 39417 xml.enter(FHIR_NS, name); 39418 composeClinicalUseDefinitionContraindicationOtherTherapyComponentElements(element); 39419 composeElementClose(element); 39420 xml.exit(FHIR_NS, name); 39421 } 39422 } 39423 39424 protected void composeClinicalUseDefinitionContraindicationOtherTherapyComponentElements(ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent element) throws IOException { 39425 composeBackboneElementElements(element); 39426 if (element.hasRelationshipType()) { 39427 composeCodeableConcept("relationshipType", element.getRelationshipType()); 39428 } 39429 if (element.hasTreatment()) { 39430 composeCodeableReference("treatment", element.getTreatment()); 39431 } 39432 } 39433 39434 protected void composeClinicalUseDefinitionIndicationComponent(String name, ClinicalUseDefinition.ClinicalUseDefinitionIndicationComponent element) throws IOException { 39435 if (element != null) { 39436 composeElementAttributes(element); 39437 xml.enter(FHIR_NS, name); 39438 composeClinicalUseDefinitionIndicationComponentElements(element); 39439 composeElementClose(element); 39440 xml.exit(FHIR_NS, name); 39441 } 39442 } 39443 39444 protected void composeClinicalUseDefinitionIndicationComponentElements(ClinicalUseDefinition.ClinicalUseDefinitionIndicationComponent element) throws IOException { 39445 composeBackboneElementElements(element); 39446 if (element.hasDiseaseSymptomProcedure()) { 39447 composeCodeableReference("diseaseSymptomProcedure", element.getDiseaseSymptomProcedure()); 39448 } 39449 if (element.hasDiseaseStatus()) { 39450 composeCodeableReference("diseaseStatus", element.getDiseaseStatus()); 39451 } 39452 if (element.hasComorbidity()) { 39453 for (CodeableReference e : element.getComorbidity()) 39454 composeCodeableReference("comorbidity", e); 39455 } 39456 if (element.hasIntendedEffect()) { 39457 composeCodeableReference("intendedEffect", element.getIntendedEffect()); 39458 } 39459 if (element.hasDuration()) { 39460 composeType("duration", element.getDuration()); 39461 } if (element.hasUndesirableEffect()) { 39462 for (Reference e : element.getUndesirableEffect()) 39463 composeReference("undesirableEffect", e); 39464 } 39465 if (element.hasApplicability()) { 39466 composeExpression("applicability", element.getApplicability()); 39467 } 39468 if (element.hasOtherTherapy()) { 39469 for (ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent e : element.getOtherTherapy()) 39470 composeClinicalUseDefinitionContraindicationOtherTherapyComponent("otherTherapy", e); 39471 } 39472 } 39473 39474 protected void composeClinicalUseDefinitionInteractionComponent(String name, ClinicalUseDefinition.ClinicalUseDefinitionInteractionComponent element) throws IOException { 39475 if (element != null) { 39476 composeElementAttributes(element); 39477 xml.enter(FHIR_NS, name); 39478 composeClinicalUseDefinitionInteractionComponentElements(element); 39479 composeElementClose(element); 39480 xml.exit(FHIR_NS, name); 39481 } 39482 } 39483 39484 protected void composeClinicalUseDefinitionInteractionComponentElements(ClinicalUseDefinition.ClinicalUseDefinitionInteractionComponent element) throws IOException { 39485 composeBackboneElementElements(element); 39486 if (element.hasInteractant()) { 39487 for (ClinicalUseDefinition.ClinicalUseDefinitionInteractionInteractantComponent e : element.getInteractant()) 39488 composeClinicalUseDefinitionInteractionInteractantComponent("interactant", e); 39489 } 39490 if (element.hasType()) { 39491 composeCodeableConcept("type", element.getType()); 39492 } 39493 if (element.hasEffect()) { 39494 composeCodeableReference("effect", element.getEffect()); 39495 } 39496 if (element.hasIncidence()) { 39497 composeCodeableConcept("incidence", element.getIncidence()); 39498 } 39499 if (element.hasManagement()) { 39500 for (CodeableConcept e : element.getManagement()) 39501 composeCodeableConcept("management", e); 39502 } 39503 } 39504 39505 protected void composeClinicalUseDefinitionInteractionInteractantComponent(String name, ClinicalUseDefinition.ClinicalUseDefinitionInteractionInteractantComponent element) throws IOException { 39506 if (element != null) { 39507 composeElementAttributes(element); 39508 xml.enter(FHIR_NS, name); 39509 composeClinicalUseDefinitionInteractionInteractantComponentElements(element); 39510 composeElementClose(element); 39511 xml.exit(FHIR_NS, name); 39512 } 39513 } 39514 39515 protected void composeClinicalUseDefinitionInteractionInteractantComponentElements(ClinicalUseDefinition.ClinicalUseDefinitionInteractionInteractantComponent element) throws IOException { 39516 composeBackboneElementElements(element); 39517 if (element.hasItem()) { 39518 composeType("item", element.getItem()); 39519 } } 39520 39521 protected void composeClinicalUseDefinitionUndesirableEffectComponent(String name, ClinicalUseDefinition.ClinicalUseDefinitionUndesirableEffectComponent element) throws IOException { 39522 if (element != null) { 39523 composeElementAttributes(element); 39524 xml.enter(FHIR_NS, name); 39525 composeClinicalUseDefinitionUndesirableEffectComponentElements(element); 39526 composeElementClose(element); 39527 xml.exit(FHIR_NS, name); 39528 } 39529 } 39530 39531 protected void composeClinicalUseDefinitionUndesirableEffectComponentElements(ClinicalUseDefinition.ClinicalUseDefinitionUndesirableEffectComponent element) throws IOException { 39532 composeBackboneElementElements(element); 39533 if (element.hasSymptomConditionEffect()) { 39534 composeCodeableReference("symptomConditionEffect", element.getSymptomConditionEffect()); 39535 } 39536 if (element.hasClassification()) { 39537 composeCodeableConcept("classification", element.getClassification()); 39538 } 39539 if (element.hasFrequencyOfOccurrence()) { 39540 composeCodeableConcept("frequencyOfOccurrence", element.getFrequencyOfOccurrence()); 39541 } 39542 } 39543 39544 protected void composeClinicalUseDefinitionWarningComponent(String name, ClinicalUseDefinition.ClinicalUseDefinitionWarningComponent element) throws IOException { 39545 if (element != null) { 39546 composeElementAttributes(element); 39547 xml.enter(FHIR_NS, name); 39548 composeClinicalUseDefinitionWarningComponentElements(element); 39549 composeElementClose(element); 39550 xml.exit(FHIR_NS, name); 39551 } 39552 } 39553 39554 protected void composeClinicalUseDefinitionWarningComponentElements(ClinicalUseDefinition.ClinicalUseDefinitionWarningComponent element) throws IOException { 39555 composeBackboneElementElements(element); 39556 if (element.hasDescriptionElement()) { 39557 composeMarkdown("description", element.getDescriptionElement()); 39558 } 39559 if (element.hasCode()) { 39560 composeCodeableConcept("code", element.getCode()); 39561 } 39562 } 39563 39564 protected void composeCodeSystem(String name, CodeSystem element) throws IOException { 39565 if (element != null) { 39566 composeResourceAttributes(element); 39567 xml.enter(FHIR_NS, name); 39568 composeCodeSystemElements(element); 39569 composeElementClose(element); 39570 xml.exit(FHIR_NS, name); 39571 } 39572 } 39573 39574 protected void composeCodeSystemElements(CodeSystem element) throws IOException { 39575 composeMetadataResourceElements(element); 39576 if (element.hasUrlElement()) { 39577 composeUri("url", element.getUrlElement()); 39578 } 39579 if (element.hasIdentifier()) { 39580 for (Identifier e : element.getIdentifier()) 39581 composeIdentifier("identifier", e); 39582 } 39583 if (element.hasVersionElement()) { 39584 composeString("version", element.getVersionElement()); 39585 } 39586 if (element.hasVersionAlgorithm()) { 39587 composeType("versionAlgorithm", element.getVersionAlgorithm()); 39588 } if (element.hasNameElement()) { 39589 composeString("name", element.getNameElement()); 39590 } 39591 if (element.hasTitleElement()) { 39592 composeString("title", element.getTitleElement()); 39593 } 39594 if (element.hasStatusElement()) 39595 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 39596 if (element.hasExperimentalElement()) { 39597 composeBoolean("experimental", element.getExperimentalElement()); 39598 } 39599 if (element.hasDateElement()) { 39600 composeDateTime("date", element.getDateElement()); 39601 } 39602 if (element.hasPublisherElement()) { 39603 composeString("publisher", element.getPublisherElement()); 39604 } 39605 if (element.hasContact()) { 39606 for (ContactDetail e : element.getContact()) 39607 composeContactDetail("contact", e); 39608 } 39609 if (element.hasDescriptionElement()) { 39610 composeMarkdown("description", element.getDescriptionElement()); 39611 } 39612 if (element.hasUseContext()) { 39613 for (UsageContext e : element.getUseContext()) 39614 composeUsageContext("useContext", e); 39615 } 39616 if (element.hasJurisdiction()) { 39617 for (CodeableConcept e : element.getJurisdiction()) 39618 composeCodeableConcept("jurisdiction", e); 39619 } 39620 if (element.hasPurposeElement()) { 39621 composeMarkdown("purpose", element.getPurposeElement()); 39622 } 39623 if (element.hasCopyrightElement()) { 39624 composeMarkdown("copyright", element.getCopyrightElement()); 39625 } 39626 if (element.hasCopyrightLabelElement()) { 39627 composeString("copyrightLabel", element.getCopyrightLabelElement()); 39628 } 39629 if (element.hasApprovalDateElement()) { 39630 composeDate("approvalDate", element.getApprovalDateElement()); 39631 } 39632 if (element.hasLastReviewDateElement()) { 39633 composeDate("lastReviewDate", element.getLastReviewDateElement()); 39634 } 39635 if (element.hasEffectivePeriod()) { 39636 composePeriod("effectivePeriod", element.getEffectivePeriod()); 39637 } 39638 if (element.hasTopic()) { 39639 for (CodeableConcept e : element.getTopic()) 39640 composeCodeableConcept("topic", e); 39641 } 39642 if (element.hasAuthor()) { 39643 for (ContactDetail e : element.getAuthor()) 39644 composeContactDetail("author", e); 39645 } 39646 if (element.hasEditor()) { 39647 for (ContactDetail e : element.getEditor()) 39648 composeContactDetail("editor", e); 39649 } 39650 if (element.hasReviewer()) { 39651 for (ContactDetail e : element.getReviewer()) 39652 composeContactDetail("reviewer", e); 39653 } 39654 if (element.hasEndorser()) { 39655 for (ContactDetail e : element.getEndorser()) 39656 composeContactDetail("endorser", e); 39657 } 39658 if (element.hasRelatedArtifact()) { 39659 for (RelatedArtifact e : element.getRelatedArtifact()) 39660 composeRelatedArtifact("relatedArtifact", e); 39661 } 39662 if (element.hasCaseSensitiveElement()) { 39663 composeBoolean("caseSensitive", element.getCaseSensitiveElement()); 39664 } 39665 if (element.hasValueSetElement()) { 39666 composeCanonical("valueSet", element.getValueSetElement()); 39667 } 39668 if (element.hasHierarchyMeaningElement()) 39669 composeEnumeration("hierarchyMeaning", element.getHierarchyMeaningElement(), new CodeSystem.CodeSystemHierarchyMeaningEnumFactory()); 39670 if (element.hasCompositionalElement()) { 39671 composeBoolean("compositional", element.getCompositionalElement()); 39672 } 39673 if (element.hasVersionNeededElement()) { 39674 composeBoolean("versionNeeded", element.getVersionNeededElement()); 39675 } 39676 if (element.hasContentElement()) 39677 composeEnumeration("content", element.getContentElement(), new Enumerations.CodeSystemContentModeEnumFactory()); 39678 if (element.hasSupplementsElement()) { 39679 composeCanonical("supplements", element.getSupplementsElement()); 39680 } 39681 if (element.hasCountElement()) { 39682 composeUnsignedInt("count", element.getCountElement()); 39683 } 39684 if (element.hasFilter()) { 39685 for (CodeSystem.CodeSystemFilterComponent e : element.getFilter()) 39686 composeCodeSystemFilterComponent("filter", e); 39687 } 39688 if (element.hasProperty()) { 39689 for (CodeSystem.PropertyComponent e : element.getProperty()) 39690 composeCodeSystemPropertyComponent("property", e); 39691 } 39692 if (element.hasConcept()) { 39693 for (CodeSystem.ConceptDefinitionComponent e : element.getConcept()) 39694 composeCodeSystemConceptDefinitionComponent("concept", e); 39695 } 39696 } 39697 39698 protected void composeCodeSystemFilterComponent(String name, CodeSystem.CodeSystemFilterComponent element) throws IOException { 39699 if (element != null) { 39700 composeElementAttributes(element); 39701 xml.enter(FHIR_NS, name); 39702 composeCodeSystemFilterComponentElements(element); 39703 composeElementClose(element); 39704 xml.exit(FHIR_NS, name); 39705 } 39706 } 39707 39708 protected void composeCodeSystemFilterComponentElements(CodeSystem.CodeSystemFilterComponent element) throws IOException { 39709 composeBackboneElementElements(element); 39710 if (element.hasCodeElement()) { 39711 composeCode("code", element.getCodeElement()); 39712 } 39713 if (element.hasDescriptionElement()) { 39714 composeString("description", element.getDescriptionElement()); 39715 } 39716 if (element.hasOperator()) 39717 for (Enumeration<Enumerations.FilterOperator> e : element.getOperator()) 39718 composeEnumeration("operator", e, new Enumerations.FilterOperatorEnumFactory()); 39719 if (element.hasValueElement()) { 39720 composeString("value", element.getValueElement()); 39721 } 39722 } 39723 39724 protected void composeCodeSystemPropertyComponent(String name, CodeSystem.PropertyComponent element) throws IOException { 39725 if (element != null) { 39726 composeElementAttributes(element); 39727 xml.enter(FHIR_NS, name); 39728 composeCodeSystemPropertyComponentElements(element); 39729 composeElementClose(element); 39730 xml.exit(FHIR_NS, name); 39731 } 39732 } 39733 39734 protected void composeCodeSystemPropertyComponentElements(CodeSystem.PropertyComponent element) throws IOException { 39735 composeBackboneElementElements(element); 39736 if (element.hasCodeElement()) { 39737 composeCode("code", element.getCodeElement()); 39738 } 39739 if (element.hasUriElement()) { 39740 composeUri("uri", element.getUriElement()); 39741 } 39742 if (element.hasDescriptionElement()) { 39743 composeString("description", element.getDescriptionElement()); 39744 } 39745 if (element.hasTypeElement()) 39746 composeEnumeration("type", element.getTypeElement(), new CodeSystem.PropertyTypeEnumFactory()); 39747 } 39748 39749 protected void composeCodeSystemConceptDefinitionComponent(String name, CodeSystem.ConceptDefinitionComponent element) throws IOException { 39750 if (element != null) { 39751 composeElementAttributes(element); 39752 xml.enter(FHIR_NS, name); 39753 composeCodeSystemConceptDefinitionComponentElements(element); 39754 composeElementClose(element); 39755 xml.exit(FHIR_NS, name); 39756 } 39757 } 39758 39759 protected void composeCodeSystemConceptDefinitionComponentElements(CodeSystem.ConceptDefinitionComponent element) throws IOException { 39760 composeBackboneElementElements(element); 39761 if (element.hasCodeElement()) { 39762 composeCode("code", element.getCodeElement()); 39763 } 39764 if (element.hasDisplayElement()) { 39765 composeString("display", element.getDisplayElement()); 39766 } 39767 if (element.hasDefinitionElement()) { 39768 composeString("definition", element.getDefinitionElement()); 39769 } 39770 if (element.hasDesignation()) { 39771 for (CodeSystem.ConceptDefinitionDesignationComponent e : element.getDesignation()) 39772 composeCodeSystemConceptDefinitionDesignationComponent("designation", e); 39773 } 39774 if (element.hasProperty()) { 39775 for (CodeSystem.ConceptPropertyComponent e : element.getProperty()) 39776 composeCodeSystemConceptPropertyComponent("property", e); 39777 } 39778 if (element.hasConcept()) { 39779 for (CodeSystem.ConceptDefinitionComponent e : element.getConcept()) 39780 composeCodeSystemConceptDefinitionComponent("concept", e); 39781 } 39782 } 39783 39784 protected void composeCodeSystemConceptDefinitionDesignationComponent(String name, CodeSystem.ConceptDefinitionDesignationComponent element) throws IOException { 39785 if (element != null) { 39786 composeElementAttributes(element); 39787 xml.enter(FHIR_NS, name); 39788 composeCodeSystemConceptDefinitionDesignationComponentElements(element); 39789 composeElementClose(element); 39790 xml.exit(FHIR_NS, name); 39791 } 39792 } 39793 39794 protected void composeCodeSystemConceptDefinitionDesignationComponentElements(CodeSystem.ConceptDefinitionDesignationComponent element) throws IOException { 39795 composeBackboneElementElements(element); 39796 if (element.hasLanguageElement()) { 39797 composeCode("language", element.getLanguageElement()); 39798 } 39799 if (element.hasUse()) { 39800 composeCoding("use", element.getUse()); 39801 } 39802 if (element.hasAdditionalUse()) { 39803 for (Coding e : element.getAdditionalUse()) 39804 composeCoding("additionalUse", e); 39805 } 39806 if (element.hasValueElement()) { 39807 composeString("value", element.getValueElement()); 39808 } 39809 } 39810 39811 protected void composeCodeSystemConceptPropertyComponent(String name, CodeSystem.ConceptPropertyComponent element) throws IOException { 39812 if (element != null) { 39813 composeElementAttributes(element); 39814 xml.enter(FHIR_NS, name); 39815 composeCodeSystemConceptPropertyComponentElements(element); 39816 composeElementClose(element); 39817 xml.exit(FHIR_NS, name); 39818 } 39819 } 39820 39821 protected void composeCodeSystemConceptPropertyComponentElements(CodeSystem.ConceptPropertyComponent element) throws IOException { 39822 composeBackboneElementElements(element); 39823 if (element.hasCodeElement()) { 39824 composeCode("code", element.getCodeElement()); 39825 } 39826 if (element.hasValue()) { 39827 composeType("value", element.getValue()); 39828 } } 39829 39830 protected void composeCommunication(String name, Communication element) throws IOException { 39831 if (element != null) { 39832 composeResourceAttributes(element); 39833 xml.enter(FHIR_NS, name); 39834 composeCommunicationElements(element); 39835 composeElementClose(element); 39836 xml.exit(FHIR_NS, name); 39837 } 39838 } 39839 39840 protected void composeCommunicationElements(Communication element) throws IOException { 39841 composeDomainResourceElements(element); 39842 if (element.hasIdentifier()) { 39843 for (Identifier e : element.getIdentifier()) 39844 composeIdentifier("identifier", e); 39845 } 39846 if (element.hasInstantiatesCanonical()) { 39847 for (CanonicalType e : element.getInstantiatesCanonical()) 39848 composeCanonical("instantiatesCanonical", e); 39849 } 39850 if (element.hasInstantiatesUri()) { 39851 for (UriType e : element.getInstantiatesUri()) 39852 composeUri("instantiatesUri", e); 39853 } 39854 if (element.hasBasedOn()) { 39855 for (Reference e : element.getBasedOn()) 39856 composeReference("basedOn", e); 39857 } 39858 if (element.hasPartOf()) { 39859 for (Reference e : element.getPartOf()) 39860 composeReference("partOf", e); 39861 } 39862 if (element.hasInResponseTo()) { 39863 for (Reference e : element.getInResponseTo()) 39864 composeReference("inResponseTo", e); 39865 } 39866 if (element.hasStatusElement()) 39867 composeEnumeration("status", element.getStatusElement(), new Enumerations.EventStatusEnumFactory()); 39868 if (element.hasStatusReason()) { 39869 composeCodeableConcept("statusReason", element.getStatusReason()); 39870 } 39871 if (element.hasCategory()) { 39872 for (CodeableConcept e : element.getCategory()) 39873 composeCodeableConcept("category", e); 39874 } 39875 if (element.hasPriorityElement()) 39876 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 39877 if (element.hasMedium()) { 39878 for (CodeableConcept e : element.getMedium()) 39879 composeCodeableConcept("medium", e); 39880 } 39881 if (element.hasSubject()) { 39882 composeReference("subject", element.getSubject()); 39883 } 39884 if (element.hasTopic()) { 39885 composeCodeableConcept("topic", element.getTopic()); 39886 } 39887 if (element.hasAbout()) { 39888 for (Reference e : element.getAbout()) 39889 composeReference("about", e); 39890 } 39891 if (element.hasEncounter()) { 39892 composeReference("encounter", element.getEncounter()); 39893 } 39894 if (element.hasSentElement()) { 39895 composeDateTime("sent", element.getSentElement()); 39896 } 39897 if (element.hasReceivedElement()) { 39898 composeDateTime("received", element.getReceivedElement()); 39899 } 39900 if (element.hasRecipient()) { 39901 for (Reference e : element.getRecipient()) 39902 composeReference("recipient", e); 39903 } 39904 if (element.hasSender()) { 39905 composeReference("sender", element.getSender()); 39906 } 39907 if (element.hasReason()) { 39908 for (CodeableReference e : element.getReason()) 39909 composeCodeableReference("reason", e); 39910 } 39911 if (element.hasPayload()) { 39912 for (Communication.CommunicationPayloadComponent e : element.getPayload()) 39913 composeCommunicationPayloadComponent("payload", e); 39914 } 39915 if (element.hasNote()) { 39916 for (Annotation e : element.getNote()) 39917 composeAnnotation("note", e); 39918 } 39919 } 39920 39921 protected void composeCommunicationPayloadComponent(String name, Communication.CommunicationPayloadComponent element) throws IOException { 39922 if (element != null) { 39923 composeElementAttributes(element); 39924 xml.enter(FHIR_NS, name); 39925 composeCommunicationPayloadComponentElements(element); 39926 composeElementClose(element); 39927 xml.exit(FHIR_NS, name); 39928 } 39929 } 39930 39931 protected void composeCommunicationPayloadComponentElements(Communication.CommunicationPayloadComponent element) throws IOException { 39932 composeBackboneElementElements(element); 39933 if (element.hasContent()) { 39934 composeType("content", element.getContent()); 39935 } } 39936 39937 protected void composeCommunicationRequest(String name, CommunicationRequest element) throws IOException { 39938 if (element != null) { 39939 composeResourceAttributes(element); 39940 xml.enter(FHIR_NS, name); 39941 composeCommunicationRequestElements(element); 39942 composeElementClose(element); 39943 xml.exit(FHIR_NS, name); 39944 } 39945 } 39946 39947 protected void composeCommunicationRequestElements(CommunicationRequest element) throws IOException { 39948 composeDomainResourceElements(element); 39949 if (element.hasIdentifier()) { 39950 for (Identifier e : element.getIdentifier()) 39951 composeIdentifier("identifier", e); 39952 } 39953 if (element.hasBasedOn()) { 39954 for (Reference e : element.getBasedOn()) 39955 composeReference("basedOn", e); 39956 } 39957 if (element.hasReplaces()) { 39958 for (Reference e : element.getReplaces()) 39959 composeReference("replaces", e); 39960 } 39961 if (element.hasGroupIdentifier()) { 39962 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 39963 } 39964 if (element.hasStatusElement()) 39965 composeEnumeration("status", element.getStatusElement(), new Enumerations.RequestStatusEnumFactory()); 39966 if (element.hasStatusReason()) { 39967 composeCodeableConcept("statusReason", element.getStatusReason()); 39968 } 39969 if (element.hasIntentElement()) 39970 composeEnumeration("intent", element.getIntentElement(), new Enumerations.RequestIntentEnumFactory()); 39971 if (element.hasCategory()) { 39972 for (CodeableConcept e : element.getCategory()) 39973 composeCodeableConcept("category", e); 39974 } 39975 if (element.hasPriorityElement()) 39976 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 39977 if (element.hasDoNotPerformElement()) { 39978 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 39979 } 39980 if (element.hasMedium()) { 39981 for (CodeableConcept e : element.getMedium()) 39982 composeCodeableConcept("medium", e); 39983 } 39984 if (element.hasSubject()) { 39985 composeReference("subject", element.getSubject()); 39986 } 39987 if (element.hasAbout()) { 39988 for (Reference e : element.getAbout()) 39989 composeReference("about", e); 39990 } 39991 if (element.hasEncounter()) { 39992 composeReference("encounter", element.getEncounter()); 39993 } 39994 if (element.hasPayload()) { 39995 for (CommunicationRequest.CommunicationRequestPayloadComponent e : element.getPayload()) 39996 composeCommunicationRequestPayloadComponent("payload", e); 39997 } 39998 if (element.hasOccurrence()) { 39999 composeType("occurrence", element.getOccurrence()); 40000 } if (element.hasAuthoredOnElement()) { 40001 composeDateTime("authoredOn", element.getAuthoredOnElement()); 40002 } 40003 if (element.hasRequester()) { 40004 composeReference("requester", element.getRequester()); 40005 } 40006 if (element.hasRecipient()) { 40007 for (Reference e : element.getRecipient()) 40008 composeReference("recipient", e); 40009 } 40010 if (element.hasInformationProvider()) { 40011 for (Reference e : element.getInformationProvider()) 40012 composeReference("informationProvider", e); 40013 } 40014 if (element.hasReason()) { 40015 for (CodeableReference e : element.getReason()) 40016 composeCodeableReference("reason", e); 40017 } 40018 if (element.hasNote()) { 40019 for (Annotation e : element.getNote()) 40020 composeAnnotation("note", e); 40021 } 40022 } 40023 40024 protected void composeCommunicationRequestPayloadComponent(String name, CommunicationRequest.CommunicationRequestPayloadComponent element) throws IOException { 40025 if (element != null) { 40026 composeElementAttributes(element); 40027 xml.enter(FHIR_NS, name); 40028 composeCommunicationRequestPayloadComponentElements(element); 40029 composeElementClose(element); 40030 xml.exit(FHIR_NS, name); 40031 } 40032 } 40033 40034 protected void composeCommunicationRequestPayloadComponentElements(CommunicationRequest.CommunicationRequestPayloadComponent element) throws IOException { 40035 composeBackboneElementElements(element); 40036 if (element.hasContent()) { 40037 composeType("content", element.getContent()); 40038 } } 40039 40040 protected void composeCompartmentDefinition(String name, CompartmentDefinition element) throws IOException { 40041 if (element != null) { 40042 composeResourceAttributes(element); 40043 xml.enter(FHIR_NS, name); 40044 composeCompartmentDefinitionElements(element); 40045 composeElementClose(element); 40046 xml.exit(FHIR_NS, name); 40047 } 40048 } 40049 40050 protected void composeCompartmentDefinitionElements(CompartmentDefinition element) throws IOException { 40051 composeCanonicalResourceElements(element); 40052 if (element.hasUrlElement()) { 40053 composeUri("url", element.getUrlElement()); 40054 } 40055 if (element.hasVersionElement()) { 40056 composeString("version", element.getVersionElement()); 40057 } 40058 if (element.hasVersionAlgorithm()) { 40059 composeType("versionAlgorithm", element.getVersionAlgorithm()); 40060 } if (element.hasNameElement()) { 40061 composeString("name", element.getNameElement()); 40062 } 40063 if (element.hasTitleElement()) { 40064 composeString("title", element.getTitleElement()); 40065 } 40066 if (element.hasStatusElement()) 40067 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 40068 if (element.hasExperimentalElement()) { 40069 composeBoolean("experimental", element.getExperimentalElement()); 40070 } 40071 if (element.hasDateElement()) { 40072 composeDateTime("date", element.getDateElement()); 40073 } 40074 if (element.hasPublisherElement()) { 40075 composeString("publisher", element.getPublisherElement()); 40076 } 40077 if (element.hasContact()) { 40078 for (ContactDetail e : element.getContact()) 40079 composeContactDetail("contact", e); 40080 } 40081 if (element.hasDescriptionElement()) { 40082 composeMarkdown("description", element.getDescriptionElement()); 40083 } 40084 if (element.hasUseContext()) { 40085 for (UsageContext e : element.getUseContext()) 40086 composeUsageContext("useContext", e); 40087 } 40088 if (element.hasPurposeElement()) { 40089 composeMarkdown("purpose", element.getPurposeElement()); 40090 } 40091 if (element.hasCodeElement()) 40092 composeEnumeration("code", element.getCodeElement(), new Enumerations.CompartmentTypeEnumFactory()); 40093 if (element.hasSearchElement()) { 40094 composeBoolean("search", element.getSearchElement()); 40095 } 40096 if (element.hasResource()) { 40097 for (CompartmentDefinition.CompartmentDefinitionResourceComponent e : element.getResource()) 40098 composeCompartmentDefinitionResourceComponent("resource", e); 40099 } 40100 } 40101 40102 protected void composeCompartmentDefinitionResourceComponent(String name, CompartmentDefinition.CompartmentDefinitionResourceComponent element) throws IOException { 40103 if (element != null) { 40104 composeElementAttributes(element); 40105 xml.enter(FHIR_NS, name); 40106 composeCompartmentDefinitionResourceComponentElements(element); 40107 composeElementClose(element); 40108 xml.exit(FHIR_NS, name); 40109 } 40110 } 40111 40112 protected void composeCompartmentDefinitionResourceComponentElements(CompartmentDefinition.CompartmentDefinitionResourceComponent element) throws IOException { 40113 composeBackboneElementElements(element); 40114 if (element.hasCodeElement()) { 40115 composeCode("code", element.getCodeElement()); 40116 } 40117 if (element.hasParam()) { 40118 for (StringType e : element.getParam()) 40119 composeString("param", e); 40120 } 40121 if (element.hasDocumentationElement()) { 40122 composeString("documentation", element.getDocumentationElement()); 40123 } 40124 if (element.hasStartParamElement()) { 40125 composeUri("startParam", element.getStartParamElement()); 40126 } 40127 if (element.hasEndParamElement()) { 40128 composeUri("endParam", element.getEndParamElement()); 40129 } 40130 } 40131 40132 protected void composeComposition(String name, Composition element) throws IOException { 40133 if (element != null) { 40134 composeResourceAttributes(element); 40135 xml.enter(FHIR_NS, name); 40136 composeCompositionElements(element); 40137 composeElementClose(element); 40138 xml.exit(FHIR_NS, name); 40139 } 40140 } 40141 40142 protected void composeCompositionElements(Composition element) throws IOException { 40143 composeDomainResourceElements(element); 40144 if (element.hasUrlElement()) { 40145 composeUri("url", element.getUrlElement()); 40146 } 40147 if (element.hasIdentifier()) { 40148 for (Identifier e : element.getIdentifier()) 40149 composeIdentifier("identifier", e); 40150 } 40151 if (element.hasVersionElement()) { 40152 composeString("version", element.getVersionElement()); 40153 } 40154 if (element.hasStatusElement()) 40155 composeEnumeration("status", element.getStatusElement(), new Enumerations.CompositionStatusEnumFactory()); 40156 if (element.hasType()) { 40157 composeCodeableConcept("type", element.getType()); 40158 } 40159 if (element.hasCategory()) { 40160 for (CodeableConcept e : element.getCategory()) 40161 composeCodeableConcept("category", e); 40162 } 40163 if (element.hasSubject()) { 40164 for (Reference e : element.getSubject()) 40165 composeReference("subject", e); 40166 } 40167 if (element.hasEncounter()) { 40168 composeReference("encounter", element.getEncounter()); 40169 } 40170 if (element.hasDateElement()) { 40171 composeDateTime("date", element.getDateElement()); 40172 } 40173 if (element.hasUseContext()) { 40174 for (UsageContext e : element.getUseContext()) 40175 composeUsageContext("useContext", e); 40176 } 40177 if (element.hasAuthor()) { 40178 for (Reference e : element.getAuthor()) 40179 composeReference("author", e); 40180 } 40181 if (element.hasNameElement()) { 40182 composeString("name", element.getNameElement()); 40183 } 40184 if (element.hasTitleElement()) { 40185 composeString("title", element.getTitleElement()); 40186 } 40187 if (element.hasNote()) { 40188 for (Annotation e : element.getNote()) 40189 composeAnnotation("note", e); 40190 } 40191 if (element.hasAttester()) { 40192 for (Composition.CompositionAttesterComponent e : element.getAttester()) 40193 composeCompositionAttesterComponent("attester", e); 40194 } 40195 if (element.hasCustodian()) { 40196 composeReference("custodian", element.getCustodian()); 40197 } 40198 if (element.hasRelatesTo()) { 40199 for (RelatedArtifact e : element.getRelatesTo()) 40200 composeRelatedArtifact("relatesTo", e); 40201 } 40202 if (element.hasEvent()) { 40203 for (Composition.CompositionEventComponent e : element.getEvent()) 40204 composeCompositionEventComponent("event", e); 40205 } 40206 if (element.hasSection()) { 40207 for (Composition.SectionComponent e : element.getSection()) 40208 composeCompositionSectionComponent("section", e); 40209 } 40210 } 40211 40212 protected void composeCompositionAttesterComponent(String name, Composition.CompositionAttesterComponent element) throws IOException { 40213 if (element != null) { 40214 composeElementAttributes(element); 40215 xml.enter(FHIR_NS, name); 40216 composeCompositionAttesterComponentElements(element); 40217 composeElementClose(element); 40218 xml.exit(FHIR_NS, name); 40219 } 40220 } 40221 40222 protected void composeCompositionAttesterComponentElements(Composition.CompositionAttesterComponent element) throws IOException { 40223 composeBackboneElementElements(element); 40224 if (element.hasMode()) { 40225 composeCodeableConcept("mode", element.getMode()); 40226 } 40227 if (element.hasTimeElement()) { 40228 composeDateTime("time", element.getTimeElement()); 40229 } 40230 if (element.hasParty()) { 40231 composeReference("party", element.getParty()); 40232 } 40233 } 40234 40235 protected void composeCompositionEventComponent(String name, Composition.CompositionEventComponent element) throws IOException { 40236 if (element != null) { 40237 composeElementAttributes(element); 40238 xml.enter(FHIR_NS, name); 40239 composeCompositionEventComponentElements(element); 40240 composeElementClose(element); 40241 xml.exit(FHIR_NS, name); 40242 } 40243 } 40244 40245 protected void composeCompositionEventComponentElements(Composition.CompositionEventComponent element) throws IOException { 40246 composeBackboneElementElements(element); 40247 if (element.hasPeriod()) { 40248 composePeriod("period", element.getPeriod()); 40249 } 40250 if (element.hasDetail()) { 40251 for (CodeableReference e : element.getDetail()) 40252 composeCodeableReference("detail", e); 40253 } 40254 } 40255 40256 protected void composeCompositionSectionComponent(String name, Composition.SectionComponent element) throws IOException { 40257 if (element != null) { 40258 composeElementAttributes(element); 40259 xml.enter(FHIR_NS, name); 40260 composeCompositionSectionComponentElements(element); 40261 composeElementClose(element); 40262 xml.exit(FHIR_NS, name); 40263 } 40264 } 40265 40266 protected void composeCompositionSectionComponentElements(Composition.SectionComponent element) throws IOException { 40267 composeBackboneElementElements(element); 40268 if (element.hasTitleElement()) { 40269 composeString("title", element.getTitleElement()); 40270 } 40271 if (element.hasCode()) { 40272 composeCodeableConcept("code", element.getCode()); 40273 } 40274 if (element.hasAuthor()) { 40275 for (Reference e : element.getAuthor()) 40276 composeReference("author", e); 40277 } 40278 if (element.hasFocus()) { 40279 composeReference("focus", element.getFocus()); 40280 } 40281 if (element.hasText()) { 40282 composeNarrative("text", element.getText()); 40283 } 40284 if (element.hasOrderedBy()) { 40285 composeCodeableConcept("orderedBy", element.getOrderedBy()); 40286 } 40287 if (element.hasEntry()) { 40288 for (Reference e : element.getEntry()) 40289 composeReference("entry", e); 40290 } 40291 if (element.hasEmptyReason()) { 40292 composeCodeableConcept("emptyReason", element.getEmptyReason()); 40293 } 40294 if (element.hasSection()) { 40295 for (Composition.SectionComponent e : element.getSection()) 40296 composeCompositionSectionComponent("section", e); 40297 } 40298 } 40299 40300 protected void composeConceptMap(String name, ConceptMap element) throws IOException { 40301 if (element != null) { 40302 composeResourceAttributes(element); 40303 xml.enter(FHIR_NS, name); 40304 composeConceptMapElements(element); 40305 composeElementClose(element); 40306 xml.exit(FHIR_NS, name); 40307 } 40308 } 40309 40310 protected void composeConceptMapElements(ConceptMap element) throws IOException { 40311 composeMetadataResourceElements(element); 40312 if (element.hasUrlElement()) { 40313 composeUri("url", element.getUrlElement()); 40314 } 40315 if (element.hasIdentifier()) { 40316 for (Identifier e : element.getIdentifier()) 40317 composeIdentifier("identifier", e); 40318 } 40319 if (element.hasVersionElement()) { 40320 composeString("version", element.getVersionElement()); 40321 } 40322 if (element.hasVersionAlgorithm()) { 40323 composeType("versionAlgorithm", element.getVersionAlgorithm()); 40324 } if (element.hasNameElement()) { 40325 composeString("name", element.getNameElement()); 40326 } 40327 if (element.hasTitleElement()) { 40328 composeString("title", element.getTitleElement()); 40329 } 40330 if (element.hasStatusElement()) 40331 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 40332 if (element.hasExperimentalElement()) { 40333 composeBoolean("experimental", element.getExperimentalElement()); 40334 } 40335 if (element.hasDateElement()) { 40336 composeDateTime("date", element.getDateElement()); 40337 } 40338 if (element.hasPublisherElement()) { 40339 composeString("publisher", element.getPublisherElement()); 40340 } 40341 if (element.hasContact()) { 40342 for (ContactDetail e : element.getContact()) 40343 composeContactDetail("contact", e); 40344 } 40345 if (element.hasDescriptionElement()) { 40346 composeMarkdown("description", element.getDescriptionElement()); 40347 } 40348 if (element.hasUseContext()) { 40349 for (UsageContext e : element.getUseContext()) 40350 composeUsageContext("useContext", e); 40351 } 40352 if (element.hasJurisdiction()) { 40353 for (CodeableConcept e : element.getJurisdiction()) 40354 composeCodeableConcept("jurisdiction", e); 40355 } 40356 if (element.hasPurposeElement()) { 40357 composeMarkdown("purpose", element.getPurposeElement()); 40358 } 40359 if (element.hasCopyrightElement()) { 40360 composeMarkdown("copyright", element.getCopyrightElement()); 40361 } 40362 if (element.hasCopyrightLabelElement()) { 40363 composeString("copyrightLabel", element.getCopyrightLabelElement()); 40364 } 40365 if (element.hasApprovalDateElement()) { 40366 composeDate("approvalDate", element.getApprovalDateElement()); 40367 } 40368 if (element.hasLastReviewDateElement()) { 40369 composeDate("lastReviewDate", element.getLastReviewDateElement()); 40370 } 40371 if (element.hasEffectivePeriod()) { 40372 composePeriod("effectivePeriod", element.getEffectivePeriod()); 40373 } 40374 if (element.hasTopic()) { 40375 for (CodeableConcept e : element.getTopic()) 40376 composeCodeableConcept("topic", e); 40377 } 40378 if (element.hasAuthor()) { 40379 for (ContactDetail e : element.getAuthor()) 40380 composeContactDetail("author", e); 40381 } 40382 if (element.hasEditor()) { 40383 for (ContactDetail e : element.getEditor()) 40384 composeContactDetail("editor", e); 40385 } 40386 if (element.hasReviewer()) { 40387 for (ContactDetail e : element.getReviewer()) 40388 composeContactDetail("reviewer", e); 40389 } 40390 if (element.hasEndorser()) { 40391 for (ContactDetail e : element.getEndorser()) 40392 composeContactDetail("endorser", e); 40393 } 40394 if (element.hasRelatedArtifact()) { 40395 for (RelatedArtifact e : element.getRelatedArtifact()) 40396 composeRelatedArtifact("relatedArtifact", e); 40397 } 40398 if (element.hasProperty()) { 40399 for (ConceptMap.PropertyComponent e : element.getProperty()) 40400 composeConceptMapPropertyComponent("property", e); 40401 } 40402 if (element.hasAdditionalAttribute()) { 40403 for (ConceptMap.AdditionalAttributeComponent e : element.getAdditionalAttribute()) 40404 composeConceptMapAdditionalAttributeComponent("additionalAttribute", e); 40405 } 40406 if (element.hasSourceScope()) { 40407 composeType("sourceScope", element.getSourceScope()); 40408 } if (element.hasTargetScope()) { 40409 composeType("targetScope", element.getTargetScope()); 40410 } if (element.hasGroup()) { 40411 for (ConceptMap.ConceptMapGroupComponent e : element.getGroup()) 40412 composeConceptMapGroupComponent("group", e); 40413 } 40414 } 40415 40416 protected void composeConceptMapPropertyComponent(String name, ConceptMap.PropertyComponent element) throws IOException { 40417 if (element != null) { 40418 composeElementAttributes(element); 40419 xml.enter(FHIR_NS, name); 40420 composeConceptMapPropertyComponentElements(element); 40421 composeElementClose(element); 40422 xml.exit(FHIR_NS, name); 40423 } 40424 } 40425 40426 protected void composeConceptMapPropertyComponentElements(ConceptMap.PropertyComponent element) throws IOException { 40427 composeBackboneElementElements(element); 40428 if (element.hasCodeElement()) { 40429 composeCode("code", element.getCodeElement()); 40430 } 40431 if (element.hasUriElement()) { 40432 composeUri("uri", element.getUriElement()); 40433 } 40434 if (element.hasDescriptionElement()) { 40435 composeString("description", element.getDescriptionElement()); 40436 } 40437 if (element.hasTypeElement()) 40438 composeEnumeration("type", element.getTypeElement(), new ConceptMap.ConceptMapPropertyTypeEnumFactory()); 40439 if (element.hasSystemElement()) { 40440 composeCanonical("system", element.getSystemElement()); 40441 } 40442 } 40443 40444 protected void composeConceptMapAdditionalAttributeComponent(String name, ConceptMap.AdditionalAttributeComponent element) throws IOException { 40445 if (element != null) { 40446 composeElementAttributes(element); 40447 xml.enter(FHIR_NS, name); 40448 composeConceptMapAdditionalAttributeComponentElements(element); 40449 composeElementClose(element); 40450 xml.exit(FHIR_NS, name); 40451 } 40452 } 40453 40454 protected void composeConceptMapAdditionalAttributeComponentElements(ConceptMap.AdditionalAttributeComponent element) throws IOException { 40455 composeBackboneElementElements(element); 40456 if (element.hasCodeElement()) { 40457 composeCode("code", element.getCodeElement()); 40458 } 40459 if (element.hasUriElement()) { 40460 composeUri("uri", element.getUriElement()); 40461 } 40462 if (element.hasDescriptionElement()) { 40463 composeString("description", element.getDescriptionElement()); 40464 } 40465 if (element.hasTypeElement()) 40466 composeEnumeration("type", element.getTypeElement(), new ConceptMap.ConceptMapAttributeTypeEnumFactory()); 40467 } 40468 40469 protected void composeConceptMapGroupComponent(String name, ConceptMap.ConceptMapGroupComponent element) throws IOException { 40470 if (element != null) { 40471 composeElementAttributes(element); 40472 xml.enter(FHIR_NS, name); 40473 composeConceptMapGroupComponentElements(element); 40474 composeElementClose(element); 40475 xml.exit(FHIR_NS, name); 40476 } 40477 } 40478 40479 protected void composeConceptMapGroupComponentElements(ConceptMap.ConceptMapGroupComponent element) throws IOException { 40480 composeBackboneElementElements(element); 40481 if (element.hasSourceElement()) { 40482 composeCanonical("source", element.getSourceElement()); 40483 } 40484 if (element.hasTargetElement()) { 40485 composeCanonical("target", element.getTargetElement()); 40486 } 40487 if (element.hasElement()) { 40488 for (ConceptMap.SourceElementComponent e : element.getElement()) 40489 composeConceptMapSourceElementComponent("element", e); 40490 } 40491 if (element.hasUnmapped()) { 40492 composeConceptMapGroupUnmappedComponent("unmapped", element.getUnmapped()); 40493 } 40494 } 40495 40496 protected void composeConceptMapSourceElementComponent(String name, ConceptMap.SourceElementComponent element) throws IOException { 40497 if (element != null) { 40498 composeElementAttributes(element); 40499 xml.enter(FHIR_NS, name); 40500 composeConceptMapSourceElementComponentElements(element); 40501 composeElementClose(element); 40502 xml.exit(FHIR_NS, name); 40503 } 40504 } 40505 40506 protected void composeConceptMapSourceElementComponentElements(ConceptMap.SourceElementComponent element) throws IOException { 40507 composeBackboneElementElements(element); 40508 if (element.hasCodeElement()) { 40509 composeCode("code", element.getCodeElement()); 40510 } 40511 if (element.hasDisplayElement()) { 40512 composeString("display", element.getDisplayElement()); 40513 } 40514 if (element.hasValueSetElement()) { 40515 composeCanonical("valueSet", element.getValueSetElement()); 40516 } 40517 if (element.hasNoMapElement()) { 40518 composeBoolean("noMap", element.getNoMapElement()); 40519 } 40520 if (element.hasTarget()) { 40521 for (ConceptMap.TargetElementComponent e : element.getTarget()) 40522 composeConceptMapTargetElementComponent("target", e); 40523 } 40524 } 40525 40526 protected void composeConceptMapTargetElementComponent(String name, ConceptMap.TargetElementComponent element) throws IOException { 40527 if (element != null) { 40528 composeElementAttributes(element); 40529 xml.enter(FHIR_NS, name); 40530 composeConceptMapTargetElementComponentElements(element); 40531 composeElementClose(element); 40532 xml.exit(FHIR_NS, name); 40533 } 40534 } 40535 40536 protected void composeConceptMapTargetElementComponentElements(ConceptMap.TargetElementComponent element) throws IOException { 40537 composeBackboneElementElements(element); 40538 if (element.hasCodeElement()) { 40539 composeCode("code", element.getCodeElement()); 40540 } 40541 if (element.hasDisplayElement()) { 40542 composeString("display", element.getDisplayElement()); 40543 } 40544 if (element.hasValueSetElement()) { 40545 composeCanonical("valueSet", element.getValueSetElement()); 40546 } 40547 if (element.hasRelationshipElement()) 40548 composeEnumeration("relationship", element.getRelationshipElement(), new Enumerations.ConceptMapRelationshipEnumFactory()); 40549 if (element.hasCommentElement()) { 40550 composeString("comment", element.getCommentElement()); 40551 } 40552 if (element.hasProperty()) { 40553 for (ConceptMap.MappingPropertyComponent e : element.getProperty()) 40554 composeConceptMapMappingPropertyComponent("property", e); 40555 } 40556 if (element.hasDependsOn()) { 40557 for (ConceptMap.OtherElementComponent e : element.getDependsOn()) 40558 composeConceptMapOtherElementComponent("dependsOn", e); 40559 } 40560 if (element.hasProduct()) { 40561 for (ConceptMap.OtherElementComponent e : element.getProduct()) 40562 composeConceptMapOtherElementComponent("product", e); 40563 } 40564 } 40565 40566 protected void composeConceptMapMappingPropertyComponent(String name, ConceptMap.MappingPropertyComponent element) throws IOException { 40567 if (element != null) { 40568 composeElementAttributes(element); 40569 xml.enter(FHIR_NS, name); 40570 composeConceptMapMappingPropertyComponentElements(element); 40571 composeElementClose(element); 40572 xml.exit(FHIR_NS, name); 40573 } 40574 } 40575 40576 protected void composeConceptMapMappingPropertyComponentElements(ConceptMap.MappingPropertyComponent element) throws IOException { 40577 composeBackboneElementElements(element); 40578 if (element.hasCodeElement()) { 40579 composeCode("code", element.getCodeElement()); 40580 } 40581 if (element.hasValue()) { 40582 composeType("value", element.getValue()); 40583 } } 40584 40585 protected void composeConceptMapOtherElementComponent(String name, ConceptMap.OtherElementComponent element) throws IOException { 40586 if (element != null) { 40587 composeElementAttributes(element); 40588 xml.enter(FHIR_NS, name); 40589 composeConceptMapOtherElementComponentElements(element); 40590 composeElementClose(element); 40591 xml.exit(FHIR_NS, name); 40592 } 40593 } 40594 40595 protected void composeConceptMapOtherElementComponentElements(ConceptMap.OtherElementComponent element) throws IOException { 40596 composeBackboneElementElements(element); 40597 if (element.hasAttributeElement()) { 40598 composeCode("attribute", element.getAttributeElement()); 40599 } 40600 if (element.hasValue()) { 40601 composeType("value", element.getValue()); 40602 } if (element.hasValueSetElement()) { 40603 composeCanonical("valueSet", element.getValueSetElement()); 40604 } 40605 } 40606 40607 protected void composeConceptMapGroupUnmappedComponent(String name, ConceptMap.ConceptMapGroupUnmappedComponent element) throws IOException { 40608 if (element != null) { 40609 composeElementAttributes(element); 40610 xml.enter(FHIR_NS, name); 40611 composeConceptMapGroupUnmappedComponentElements(element); 40612 composeElementClose(element); 40613 xml.exit(FHIR_NS, name); 40614 } 40615 } 40616 40617 protected void composeConceptMapGroupUnmappedComponentElements(ConceptMap.ConceptMapGroupUnmappedComponent element) throws IOException { 40618 composeBackboneElementElements(element); 40619 if (element.hasModeElement()) 40620 composeEnumeration("mode", element.getModeElement(), new ConceptMap.ConceptMapGroupUnmappedModeEnumFactory()); 40621 if (element.hasCodeElement()) { 40622 composeCode("code", element.getCodeElement()); 40623 } 40624 if (element.hasDisplayElement()) { 40625 composeString("display", element.getDisplayElement()); 40626 } 40627 if (element.hasValueSetElement()) { 40628 composeCanonical("valueSet", element.getValueSetElement()); 40629 } 40630 if (element.hasRelationshipElement()) 40631 composeEnumeration("relationship", element.getRelationshipElement(), new Enumerations.ConceptMapRelationshipEnumFactory()); 40632 if (element.hasOtherMapElement()) { 40633 composeCanonical("otherMap", element.getOtherMapElement()); 40634 } 40635 } 40636 40637 protected void composeCondition(String name, Condition element) throws IOException { 40638 if (element != null) { 40639 composeResourceAttributes(element); 40640 xml.enter(FHIR_NS, name); 40641 composeConditionElements(element); 40642 composeElementClose(element); 40643 xml.exit(FHIR_NS, name); 40644 } 40645 } 40646 40647 protected void composeConditionElements(Condition element) throws IOException { 40648 composeDomainResourceElements(element); 40649 if (element.hasIdentifier()) { 40650 for (Identifier e : element.getIdentifier()) 40651 composeIdentifier("identifier", e); 40652 } 40653 if (element.hasClinicalStatus()) { 40654 composeCodeableConcept("clinicalStatus", element.getClinicalStatus()); 40655 } 40656 if (element.hasVerificationStatus()) { 40657 composeCodeableConcept("verificationStatus", element.getVerificationStatus()); 40658 } 40659 if (element.hasCategory()) { 40660 for (CodeableConcept e : element.getCategory()) 40661 composeCodeableConcept("category", e); 40662 } 40663 if (element.hasSeverity()) { 40664 composeCodeableConcept("severity", element.getSeverity()); 40665 } 40666 if (element.hasCode()) { 40667 composeCodeableConcept("code", element.getCode()); 40668 } 40669 if (element.hasBodySite()) { 40670 for (CodeableConcept e : element.getBodySite()) 40671 composeCodeableConcept("bodySite", e); 40672 } 40673 if (element.hasSubject()) { 40674 composeReference("subject", element.getSubject()); 40675 } 40676 if (element.hasEncounter()) { 40677 composeReference("encounter", element.getEncounter()); 40678 } 40679 if (element.hasOnset()) { 40680 composeType("onset", element.getOnset()); 40681 } if (element.hasAbatement()) { 40682 composeType("abatement", element.getAbatement()); 40683 } if (element.hasRecordedDateElement()) { 40684 composeDateTime("recordedDate", element.getRecordedDateElement()); 40685 } 40686 if (element.hasParticipant()) { 40687 for (Condition.ConditionParticipantComponent e : element.getParticipant()) 40688 composeConditionParticipantComponent("participant", e); 40689 } 40690 if (element.hasStage()) { 40691 for (Condition.ConditionStageComponent e : element.getStage()) 40692 composeConditionStageComponent("stage", e); 40693 } 40694 if (element.hasEvidence()) { 40695 for (CodeableReference e : element.getEvidence()) 40696 composeCodeableReference("evidence", e); 40697 } 40698 if (element.hasNote()) { 40699 for (Annotation e : element.getNote()) 40700 composeAnnotation("note", e); 40701 } 40702 } 40703 40704 protected void composeConditionParticipantComponent(String name, Condition.ConditionParticipantComponent element) throws IOException { 40705 if (element != null) { 40706 composeElementAttributes(element); 40707 xml.enter(FHIR_NS, name); 40708 composeConditionParticipantComponentElements(element); 40709 composeElementClose(element); 40710 xml.exit(FHIR_NS, name); 40711 } 40712 } 40713 40714 protected void composeConditionParticipantComponentElements(Condition.ConditionParticipantComponent element) throws IOException { 40715 composeBackboneElementElements(element); 40716 if (element.hasFunction()) { 40717 composeCodeableConcept("function", element.getFunction()); 40718 } 40719 if (element.hasActor()) { 40720 composeReference("actor", element.getActor()); 40721 } 40722 } 40723 40724 protected void composeConditionStageComponent(String name, Condition.ConditionStageComponent element) throws IOException { 40725 if (element != null) { 40726 composeElementAttributes(element); 40727 xml.enter(FHIR_NS, name); 40728 composeConditionStageComponentElements(element); 40729 composeElementClose(element); 40730 xml.exit(FHIR_NS, name); 40731 } 40732 } 40733 40734 protected void composeConditionStageComponentElements(Condition.ConditionStageComponent element) throws IOException { 40735 composeBackboneElementElements(element); 40736 if (element.hasSummary()) { 40737 composeCodeableConcept("summary", element.getSummary()); 40738 } 40739 if (element.hasAssessment()) { 40740 for (Reference e : element.getAssessment()) 40741 composeReference("assessment", e); 40742 } 40743 if (element.hasType()) { 40744 composeCodeableConcept("type", element.getType()); 40745 } 40746 } 40747 40748 protected void composeConditionDefinition(String name, ConditionDefinition element) throws IOException { 40749 if (element != null) { 40750 composeResourceAttributes(element); 40751 xml.enter(FHIR_NS, name); 40752 composeConditionDefinitionElements(element); 40753 composeElementClose(element); 40754 xml.exit(FHIR_NS, name); 40755 } 40756 } 40757 40758 protected void composeConditionDefinitionElements(ConditionDefinition element) throws IOException { 40759 composeMetadataResourceElements(element); 40760 if (element.hasUrlElement()) { 40761 composeUri("url", element.getUrlElement()); 40762 } 40763 if (element.hasIdentifier()) { 40764 for (Identifier e : element.getIdentifier()) 40765 composeIdentifier("identifier", e); 40766 } 40767 if (element.hasVersionElement()) { 40768 composeString("version", element.getVersionElement()); 40769 } 40770 if (element.hasVersionAlgorithm()) { 40771 composeType("versionAlgorithm", element.getVersionAlgorithm()); 40772 } if (element.hasNameElement()) { 40773 composeString("name", element.getNameElement()); 40774 } 40775 if (element.hasTitleElement()) { 40776 composeString("title", element.getTitleElement()); 40777 } 40778 if (element.hasSubtitleElement()) { 40779 composeString("subtitle", element.getSubtitleElement()); 40780 } 40781 if (element.hasStatusElement()) 40782 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 40783 if (element.hasExperimentalElement()) { 40784 composeBoolean("experimental", element.getExperimentalElement()); 40785 } 40786 if (element.hasDateElement()) { 40787 composeDateTime("date", element.getDateElement()); 40788 } 40789 if (element.hasPublisherElement()) { 40790 composeString("publisher", element.getPublisherElement()); 40791 } 40792 if (element.hasContact()) { 40793 for (ContactDetail e : element.getContact()) 40794 composeContactDetail("contact", e); 40795 } 40796 if (element.hasDescriptionElement()) { 40797 composeMarkdown("description", element.getDescriptionElement()); 40798 } 40799 if (element.hasUseContext()) { 40800 for (UsageContext e : element.getUseContext()) 40801 composeUsageContext("useContext", e); 40802 } 40803 if (element.hasJurisdiction()) { 40804 for (CodeableConcept e : element.getJurisdiction()) 40805 composeCodeableConcept("jurisdiction", e); 40806 } 40807 if (element.hasCode()) { 40808 composeCodeableConcept("code", element.getCode()); 40809 } 40810 if (element.hasSeverity()) { 40811 composeCodeableConcept("severity", element.getSeverity()); 40812 } 40813 if (element.hasBodySite()) { 40814 composeCodeableConcept("bodySite", element.getBodySite()); 40815 } 40816 if (element.hasStage()) { 40817 composeCodeableConcept("stage", element.getStage()); 40818 } 40819 if (element.hasHasSeverityElement()) { 40820 composeBoolean("hasSeverity", element.getHasSeverityElement()); 40821 } 40822 if (element.hasHasBodySiteElement()) { 40823 composeBoolean("hasBodySite", element.getHasBodySiteElement()); 40824 } 40825 if (element.hasHasStageElement()) { 40826 composeBoolean("hasStage", element.getHasStageElement()); 40827 } 40828 if (element.hasDefinition()) { 40829 for (UriType e : element.getDefinition()) 40830 composeUri("definition", e); 40831 } 40832 if (element.hasObservation()) { 40833 for (ConditionDefinition.ConditionDefinitionObservationComponent e : element.getObservation()) 40834 composeConditionDefinitionObservationComponent("observation", e); 40835 } 40836 if (element.hasMedication()) { 40837 for (ConditionDefinition.ConditionDefinitionMedicationComponent e : element.getMedication()) 40838 composeConditionDefinitionMedicationComponent("medication", e); 40839 } 40840 if (element.hasPrecondition()) { 40841 for (ConditionDefinition.ConditionDefinitionPreconditionComponent e : element.getPrecondition()) 40842 composeConditionDefinitionPreconditionComponent("precondition", e); 40843 } 40844 if (element.hasTeam()) { 40845 for (Reference e : element.getTeam()) 40846 composeReference("team", e); 40847 } 40848 if (element.hasQuestionnaire()) { 40849 for (ConditionDefinition.ConditionDefinitionQuestionnaireComponent e : element.getQuestionnaire()) 40850 composeConditionDefinitionQuestionnaireComponent("questionnaire", e); 40851 } 40852 if (element.hasPlan()) { 40853 for (ConditionDefinition.ConditionDefinitionPlanComponent e : element.getPlan()) 40854 composeConditionDefinitionPlanComponent("plan", e); 40855 } 40856 } 40857 40858 protected void composeConditionDefinitionObservationComponent(String name, ConditionDefinition.ConditionDefinitionObservationComponent element) throws IOException { 40859 if (element != null) { 40860 composeElementAttributes(element); 40861 xml.enter(FHIR_NS, name); 40862 composeConditionDefinitionObservationComponentElements(element); 40863 composeElementClose(element); 40864 xml.exit(FHIR_NS, name); 40865 } 40866 } 40867 40868 protected void composeConditionDefinitionObservationComponentElements(ConditionDefinition.ConditionDefinitionObservationComponent element) throws IOException { 40869 composeBackboneElementElements(element); 40870 if (element.hasCategory()) { 40871 composeCodeableConcept("category", element.getCategory()); 40872 } 40873 if (element.hasCode()) { 40874 composeCodeableConcept("code", element.getCode()); 40875 } 40876 } 40877 40878 protected void composeConditionDefinitionMedicationComponent(String name, ConditionDefinition.ConditionDefinitionMedicationComponent element) throws IOException { 40879 if (element != null) { 40880 composeElementAttributes(element); 40881 xml.enter(FHIR_NS, name); 40882 composeConditionDefinitionMedicationComponentElements(element); 40883 composeElementClose(element); 40884 xml.exit(FHIR_NS, name); 40885 } 40886 } 40887 40888 protected void composeConditionDefinitionMedicationComponentElements(ConditionDefinition.ConditionDefinitionMedicationComponent element) throws IOException { 40889 composeBackboneElementElements(element); 40890 if (element.hasCategory()) { 40891 composeCodeableConcept("category", element.getCategory()); 40892 } 40893 if (element.hasCode()) { 40894 composeCodeableConcept("code", element.getCode()); 40895 } 40896 } 40897 40898 protected void composeConditionDefinitionPreconditionComponent(String name, ConditionDefinition.ConditionDefinitionPreconditionComponent element) throws IOException { 40899 if (element != null) { 40900 composeElementAttributes(element); 40901 xml.enter(FHIR_NS, name); 40902 composeConditionDefinitionPreconditionComponentElements(element); 40903 composeElementClose(element); 40904 xml.exit(FHIR_NS, name); 40905 } 40906 } 40907 40908 protected void composeConditionDefinitionPreconditionComponentElements(ConditionDefinition.ConditionDefinitionPreconditionComponent element) throws IOException { 40909 composeBackboneElementElements(element); 40910 if (element.hasTypeElement()) 40911 composeEnumeration("type", element.getTypeElement(), new ConditionDefinition.ConditionPreconditionTypeEnumFactory()); 40912 if (element.hasCode()) { 40913 composeCodeableConcept("code", element.getCode()); 40914 } 40915 if (element.hasValue()) { 40916 composeType("value", element.getValue()); 40917 } } 40918 40919 protected void composeConditionDefinitionQuestionnaireComponent(String name, ConditionDefinition.ConditionDefinitionQuestionnaireComponent element) throws IOException { 40920 if (element != null) { 40921 composeElementAttributes(element); 40922 xml.enter(FHIR_NS, name); 40923 composeConditionDefinitionQuestionnaireComponentElements(element); 40924 composeElementClose(element); 40925 xml.exit(FHIR_NS, name); 40926 } 40927 } 40928 40929 protected void composeConditionDefinitionQuestionnaireComponentElements(ConditionDefinition.ConditionDefinitionQuestionnaireComponent element) throws IOException { 40930 composeBackboneElementElements(element); 40931 if (element.hasPurposeElement()) 40932 composeEnumeration("purpose", element.getPurposeElement(), new ConditionDefinition.ConditionQuestionnairePurposeEnumFactory()); 40933 if (element.hasReference()) { 40934 composeReference("reference", element.getReference()); 40935 } 40936 } 40937 40938 protected void composeConditionDefinitionPlanComponent(String name, ConditionDefinition.ConditionDefinitionPlanComponent element) throws IOException { 40939 if (element != null) { 40940 composeElementAttributes(element); 40941 xml.enter(FHIR_NS, name); 40942 composeConditionDefinitionPlanComponentElements(element); 40943 composeElementClose(element); 40944 xml.exit(FHIR_NS, name); 40945 } 40946 } 40947 40948 protected void composeConditionDefinitionPlanComponentElements(ConditionDefinition.ConditionDefinitionPlanComponent element) throws IOException { 40949 composeBackboneElementElements(element); 40950 if (element.hasRole()) { 40951 composeCodeableConcept("role", element.getRole()); 40952 } 40953 if (element.hasReference()) { 40954 composeReference("reference", element.getReference()); 40955 } 40956 } 40957 40958 protected void composeConsent(String name, Consent element) throws IOException { 40959 if (element != null) { 40960 composeResourceAttributes(element); 40961 xml.enter(FHIR_NS, name); 40962 composeConsentElements(element); 40963 composeElementClose(element); 40964 xml.exit(FHIR_NS, name); 40965 } 40966 } 40967 40968 protected void composeConsentElements(Consent element) throws IOException { 40969 composeDomainResourceElements(element); 40970 if (element.hasIdentifier()) { 40971 for (Identifier e : element.getIdentifier()) 40972 composeIdentifier("identifier", e); 40973 } 40974 if (element.hasStatusElement()) 40975 composeEnumeration("status", element.getStatusElement(), new Consent.ConsentStateEnumFactory()); 40976 if (element.hasCategory()) { 40977 for (CodeableConcept e : element.getCategory()) 40978 composeCodeableConcept("category", e); 40979 } 40980 if (element.hasSubject()) { 40981 composeReference("subject", element.getSubject()); 40982 } 40983 if (element.hasDateElement()) { 40984 composeDate("date", element.getDateElement()); 40985 } 40986 if (element.hasPeriod()) { 40987 composePeriod("period", element.getPeriod()); 40988 } 40989 if (element.hasGrantor()) { 40990 for (Reference e : element.getGrantor()) 40991 composeReference("grantor", e); 40992 } 40993 if (element.hasGrantee()) { 40994 for (Reference e : element.getGrantee()) 40995 composeReference("grantee", e); 40996 } 40997 if (element.hasManager()) { 40998 for (Reference e : element.getManager()) 40999 composeReference("manager", e); 41000 } 41001 if (element.hasController()) { 41002 for (Reference e : element.getController()) 41003 composeReference("controller", e); 41004 } 41005 if (element.hasSourceAttachment()) { 41006 for (Attachment e : element.getSourceAttachment()) 41007 composeAttachment("sourceAttachment", e); 41008 } 41009 if (element.hasSourceReference()) { 41010 for (Reference e : element.getSourceReference()) 41011 composeReference("sourceReference", e); 41012 } 41013 if (element.hasRegulatoryBasis()) { 41014 for (CodeableConcept e : element.getRegulatoryBasis()) 41015 composeCodeableConcept("regulatoryBasis", e); 41016 } 41017 if (element.hasPolicyBasis()) { 41018 composeConsentPolicyBasisComponent("policyBasis", element.getPolicyBasis()); 41019 } 41020 if (element.hasPolicyText()) { 41021 for (Reference e : element.getPolicyText()) 41022 composeReference("policyText", e); 41023 } 41024 if (element.hasVerification()) { 41025 for (Consent.ConsentVerificationComponent e : element.getVerification()) 41026 composeConsentVerificationComponent("verification", e); 41027 } 41028 if (element.hasDecisionElement()) 41029 composeEnumeration("decision", element.getDecisionElement(), new Enumerations.ConsentProvisionTypeEnumFactory()); 41030 if (element.hasProvision()) { 41031 for (Consent.ProvisionComponent e : element.getProvision()) 41032 composeConsentProvisionComponent("provision", e); 41033 } 41034 } 41035 41036 protected void composeConsentPolicyBasisComponent(String name, Consent.ConsentPolicyBasisComponent element) throws IOException { 41037 if (element != null) { 41038 composeElementAttributes(element); 41039 xml.enter(FHIR_NS, name); 41040 composeConsentPolicyBasisComponentElements(element); 41041 composeElementClose(element); 41042 xml.exit(FHIR_NS, name); 41043 } 41044 } 41045 41046 protected void composeConsentPolicyBasisComponentElements(Consent.ConsentPolicyBasisComponent element) throws IOException { 41047 composeBackboneElementElements(element); 41048 if (element.hasReference()) { 41049 composeReference("reference", element.getReference()); 41050 } 41051 if (element.hasUrlElement()) { 41052 composeUrl("url", element.getUrlElement()); 41053 } 41054 } 41055 41056 protected void composeConsentVerificationComponent(String name, Consent.ConsentVerificationComponent element) throws IOException { 41057 if (element != null) { 41058 composeElementAttributes(element); 41059 xml.enter(FHIR_NS, name); 41060 composeConsentVerificationComponentElements(element); 41061 composeElementClose(element); 41062 xml.exit(FHIR_NS, name); 41063 } 41064 } 41065 41066 protected void composeConsentVerificationComponentElements(Consent.ConsentVerificationComponent element) throws IOException { 41067 composeBackboneElementElements(element); 41068 if (element.hasVerifiedElement()) { 41069 composeBoolean("verified", element.getVerifiedElement()); 41070 } 41071 if (element.hasVerificationType()) { 41072 composeCodeableConcept("verificationType", element.getVerificationType()); 41073 } 41074 if (element.hasVerifiedBy()) { 41075 composeReference("verifiedBy", element.getVerifiedBy()); 41076 } 41077 if (element.hasVerifiedWith()) { 41078 composeReference("verifiedWith", element.getVerifiedWith()); 41079 } 41080 if (element.hasVerificationDate()) { 41081 for (DateTimeType e : element.getVerificationDate()) 41082 composeDateTime("verificationDate", e); 41083 } 41084 } 41085 41086 protected void composeConsentProvisionComponent(String name, Consent.ProvisionComponent element) throws IOException { 41087 if (element != null) { 41088 composeElementAttributes(element); 41089 xml.enter(FHIR_NS, name); 41090 composeConsentProvisionComponentElements(element); 41091 composeElementClose(element); 41092 xml.exit(FHIR_NS, name); 41093 } 41094 } 41095 41096 protected void composeConsentProvisionComponentElements(Consent.ProvisionComponent element) throws IOException { 41097 composeBackboneElementElements(element); 41098 if (element.hasPeriod()) { 41099 composePeriod("period", element.getPeriod()); 41100 } 41101 if (element.hasActor()) { 41102 for (Consent.ProvisionActorComponent e : element.getActor()) 41103 composeConsentProvisionActorComponent("actor", e); 41104 } 41105 if (element.hasAction()) { 41106 for (CodeableConcept e : element.getAction()) 41107 composeCodeableConcept("action", e); 41108 } 41109 if (element.hasSecurityLabel()) { 41110 for (Coding e : element.getSecurityLabel()) 41111 composeCoding("securityLabel", e); 41112 } 41113 if (element.hasPurpose()) { 41114 for (Coding e : element.getPurpose()) 41115 composeCoding("purpose", e); 41116 } 41117 if (element.hasDocumentType()) { 41118 for (Coding e : element.getDocumentType()) 41119 composeCoding("documentType", e); 41120 } 41121 if (element.hasResourceType()) { 41122 for (Coding e : element.getResourceType()) 41123 composeCoding("resourceType", e); 41124 } 41125 if (element.hasCode()) { 41126 for (CodeableConcept e : element.getCode()) 41127 composeCodeableConcept("code", e); 41128 } 41129 if (element.hasDataPeriod()) { 41130 composePeriod("dataPeriod", element.getDataPeriod()); 41131 } 41132 if (element.hasData()) { 41133 for (Consent.ProvisionDataComponent e : element.getData()) 41134 composeConsentProvisionDataComponent("data", e); 41135 } 41136 if (element.hasExpression()) { 41137 composeExpression("expression", element.getExpression()); 41138 } 41139 if (element.hasProvision()) { 41140 for (Consent.ProvisionComponent e : element.getProvision()) 41141 composeConsentProvisionComponent("provision", e); 41142 } 41143 } 41144 41145 protected void composeConsentProvisionActorComponent(String name, Consent.ProvisionActorComponent element) throws IOException { 41146 if (element != null) { 41147 composeElementAttributes(element); 41148 xml.enter(FHIR_NS, name); 41149 composeConsentProvisionActorComponentElements(element); 41150 composeElementClose(element); 41151 xml.exit(FHIR_NS, name); 41152 } 41153 } 41154 41155 protected void composeConsentProvisionActorComponentElements(Consent.ProvisionActorComponent element) throws IOException { 41156 composeBackboneElementElements(element); 41157 if (element.hasRole()) { 41158 composeCodeableConcept("role", element.getRole()); 41159 } 41160 if (element.hasReference()) { 41161 composeReference("reference", element.getReference()); 41162 } 41163 } 41164 41165 protected void composeConsentProvisionDataComponent(String name, Consent.ProvisionDataComponent element) throws IOException { 41166 if (element != null) { 41167 composeElementAttributes(element); 41168 xml.enter(FHIR_NS, name); 41169 composeConsentProvisionDataComponentElements(element); 41170 composeElementClose(element); 41171 xml.exit(FHIR_NS, name); 41172 } 41173 } 41174 41175 protected void composeConsentProvisionDataComponentElements(Consent.ProvisionDataComponent element) throws IOException { 41176 composeBackboneElementElements(element); 41177 if (element.hasMeaningElement()) 41178 composeEnumeration("meaning", element.getMeaningElement(), new Enumerations.ConsentDataMeaningEnumFactory()); 41179 if (element.hasReference()) { 41180 composeReference("reference", element.getReference()); 41181 } 41182 } 41183 41184 protected void composeContract(String name, Contract element) throws IOException { 41185 if (element != null) { 41186 composeResourceAttributes(element); 41187 xml.enter(FHIR_NS, name); 41188 composeContractElements(element); 41189 composeElementClose(element); 41190 xml.exit(FHIR_NS, name); 41191 } 41192 } 41193 41194 protected void composeContractElements(Contract element) throws IOException { 41195 composeDomainResourceElements(element); 41196 if (element.hasIdentifier()) { 41197 for (Identifier e : element.getIdentifier()) 41198 composeIdentifier("identifier", e); 41199 } 41200 if (element.hasUrlElement()) { 41201 composeUri("url", element.getUrlElement()); 41202 } 41203 if (element.hasVersionElement()) { 41204 composeString("version", element.getVersionElement()); 41205 } 41206 if (element.hasStatusElement()) 41207 composeEnumeration("status", element.getStatusElement(), new Contract.ContractResourceStatusCodesEnumFactory()); 41208 if (element.hasLegalState()) { 41209 composeCodeableConcept("legalState", element.getLegalState()); 41210 } 41211 if (element.hasInstantiatesCanonical()) { 41212 composeReference("instantiatesCanonical", element.getInstantiatesCanonical()); 41213 } 41214 if (element.hasInstantiatesUriElement()) { 41215 composeUri("instantiatesUri", element.getInstantiatesUriElement()); 41216 } 41217 if (element.hasContentDerivative()) { 41218 composeCodeableConcept("contentDerivative", element.getContentDerivative()); 41219 } 41220 if (element.hasIssuedElement()) { 41221 composeDateTime("issued", element.getIssuedElement()); 41222 } 41223 if (element.hasApplies()) { 41224 composePeriod("applies", element.getApplies()); 41225 } 41226 if (element.hasExpirationType()) { 41227 composeCodeableConcept("expirationType", element.getExpirationType()); 41228 } 41229 if (element.hasSubject()) { 41230 for (Reference e : element.getSubject()) 41231 composeReference("subject", e); 41232 } 41233 if (element.hasAuthority()) { 41234 for (Reference e : element.getAuthority()) 41235 composeReference("authority", e); 41236 } 41237 if (element.hasDomain()) { 41238 for (Reference e : element.getDomain()) 41239 composeReference("domain", e); 41240 } 41241 if (element.hasSite()) { 41242 for (Reference e : element.getSite()) 41243 composeReference("site", e); 41244 } 41245 if (element.hasNameElement()) { 41246 composeString("name", element.getNameElement()); 41247 } 41248 if (element.hasTitleElement()) { 41249 composeString("title", element.getTitleElement()); 41250 } 41251 if (element.hasSubtitleElement()) { 41252 composeString("subtitle", element.getSubtitleElement()); 41253 } 41254 if (element.hasAlias()) { 41255 for (StringType e : element.getAlias()) 41256 composeString("alias", e); 41257 } 41258 if (element.hasAuthor()) { 41259 composeReference("author", element.getAuthor()); 41260 } 41261 if (element.hasScope()) { 41262 composeCodeableConcept("scope", element.getScope()); 41263 } 41264 if (element.hasTopic()) { 41265 composeType("topic", element.getTopic()); 41266 } if (element.hasType()) { 41267 composeCodeableConcept("type", element.getType()); 41268 } 41269 if (element.hasSubType()) { 41270 for (CodeableConcept e : element.getSubType()) 41271 composeCodeableConcept("subType", e); 41272 } 41273 if (element.hasContentDefinition()) { 41274 composeContractContentDefinitionComponent("contentDefinition", element.getContentDefinition()); 41275 } 41276 if (element.hasTerm()) { 41277 for (Contract.TermComponent e : element.getTerm()) 41278 composeContractTermComponent("term", e); 41279 } 41280 if (element.hasSupportingInfo()) { 41281 for (Reference e : element.getSupportingInfo()) 41282 composeReference("supportingInfo", e); 41283 } 41284 if (element.hasRelevantHistory()) { 41285 for (Reference e : element.getRelevantHistory()) 41286 composeReference("relevantHistory", e); 41287 } 41288 if (element.hasSigner()) { 41289 for (Contract.SignatoryComponent e : element.getSigner()) 41290 composeContractSignatoryComponent("signer", e); 41291 } 41292 if (element.hasFriendly()) { 41293 for (Contract.FriendlyLanguageComponent e : element.getFriendly()) 41294 composeContractFriendlyLanguageComponent("friendly", e); 41295 } 41296 if (element.hasLegal()) { 41297 for (Contract.LegalLanguageComponent e : element.getLegal()) 41298 composeContractLegalLanguageComponent("legal", e); 41299 } 41300 if (element.hasRule()) { 41301 for (Contract.ComputableLanguageComponent e : element.getRule()) 41302 composeContractComputableLanguageComponent("rule", e); 41303 } 41304 if (element.hasLegallyBinding()) { 41305 composeType("legallyBinding", element.getLegallyBinding()); 41306 } } 41307 41308 protected void composeContractContentDefinitionComponent(String name, Contract.ContentDefinitionComponent element) throws IOException { 41309 if (element != null) { 41310 composeElementAttributes(element); 41311 xml.enter(FHIR_NS, name); 41312 composeContractContentDefinitionComponentElements(element); 41313 composeElementClose(element); 41314 xml.exit(FHIR_NS, name); 41315 } 41316 } 41317 41318 protected void composeContractContentDefinitionComponentElements(Contract.ContentDefinitionComponent element) throws IOException { 41319 composeBackboneElementElements(element); 41320 if (element.hasType()) { 41321 composeCodeableConcept("type", element.getType()); 41322 } 41323 if (element.hasSubType()) { 41324 composeCodeableConcept("subType", element.getSubType()); 41325 } 41326 if (element.hasPublisher()) { 41327 composeReference("publisher", element.getPublisher()); 41328 } 41329 if (element.hasPublicationDateElement()) { 41330 composeDateTime("publicationDate", element.getPublicationDateElement()); 41331 } 41332 if (element.hasPublicationStatusElement()) 41333 composeEnumeration("publicationStatus", element.getPublicationStatusElement(), new Contract.ContractResourcePublicationStatusCodesEnumFactory()); 41334 if (element.hasCopyrightElement()) { 41335 composeMarkdown("copyright", element.getCopyrightElement()); 41336 } 41337 } 41338 41339 protected void composeContractTermComponent(String name, Contract.TermComponent element) throws IOException { 41340 if (element != null) { 41341 composeElementAttributes(element); 41342 xml.enter(FHIR_NS, name); 41343 composeContractTermComponentElements(element); 41344 composeElementClose(element); 41345 xml.exit(FHIR_NS, name); 41346 } 41347 } 41348 41349 protected void composeContractTermComponentElements(Contract.TermComponent element) throws IOException { 41350 composeBackboneElementElements(element); 41351 if (element.hasIdentifier()) { 41352 composeIdentifier("identifier", element.getIdentifier()); 41353 } 41354 if (element.hasIssuedElement()) { 41355 composeDateTime("issued", element.getIssuedElement()); 41356 } 41357 if (element.hasApplies()) { 41358 composePeriod("applies", element.getApplies()); 41359 } 41360 if (element.hasTopic()) { 41361 composeType("topic", element.getTopic()); 41362 } if (element.hasType()) { 41363 composeCodeableConcept("type", element.getType()); 41364 } 41365 if (element.hasSubType()) { 41366 composeCodeableConcept("subType", element.getSubType()); 41367 } 41368 if (element.hasTextElement()) { 41369 composeString("text", element.getTextElement()); 41370 } 41371 if (element.hasSecurityLabel()) { 41372 for (Contract.SecurityLabelComponent e : element.getSecurityLabel()) 41373 composeContractSecurityLabelComponent("securityLabel", e); 41374 } 41375 if (element.hasOffer()) { 41376 composeContractOfferComponent("offer", element.getOffer()); 41377 } 41378 if (element.hasAsset()) { 41379 for (Contract.ContractAssetComponent e : element.getAsset()) 41380 composeContractAssetComponent("asset", e); 41381 } 41382 if (element.hasAction()) { 41383 for (Contract.ActionComponent e : element.getAction()) 41384 composeContractActionComponent("action", e); 41385 } 41386 if (element.hasGroup()) { 41387 for (Contract.TermComponent e : element.getGroup()) 41388 composeContractTermComponent("group", e); 41389 } 41390 } 41391 41392 protected void composeContractSecurityLabelComponent(String name, Contract.SecurityLabelComponent element) throws IOException { 41393 if (element != null) { 41394 composeElementAttributes(element); 41395 xml.enter(FHIR_NS, name); 41396 composeContractSecurityLabelComponentElements(element); 41397 composeElementClose(element); 41398 xml.exit(FHIR_NS, name); 41399 } 41400 } 41401 41402 protected void composeContractSecurityLabelComponentElements(Contract.SecurityLabelComponent element) throws IOException { 41403 composeBackboneElementElements(element); 41404 if (element.hasNumber()) { 41405 for (UnsignedIntType e : element.getNumber()) 41406 composeUnsignedInt("number", e); 41407 } 41408 if (element.hasClassification()) { 41409 composeCoding("classification", element.getClassification()); 41410 } 41411 if (element.hasCategory()) { 41412 for (Coding e : element.getCategory()) 41413 composeCoding("category", e); 41414 } 41415 if (element.hasControl()) { 41416 for (Coding e : element.getControl()) 41417 composeCoding("control", e); 41418 } 41419 } 41420 41421 protected void composeContractOfferComponent(String name, Contract.ContractOfferComponent element) throws IOException { 41422 if (element != null) { 41423 composeElementAttributes(element); 41424 xml.enter(FHIR_NS, name); 41425 composeContractOfferComponentElements(element); 41426 composeElementClose(element); 41427 xml.exit(FHIR_NS, name); 41428 } 41429 } 41430 41431 protected void composeContractOfferComponentElements(Contract.ContractOfferComponent element) throws IOException { 41432 composeBackboneElementElements(element); 41433 if (element.hasIdentifier()) { 41434 for (Identifier e : element.getIdentifier()) 41435 composeIdentifier("identifier", e); 41436 } 41437 if (element.hasParty()) { 41438 for (Contract.ContractPartyComponent e : element.getParty()) 41439 composeContractPartyComponent("party", e); 41440 } 41441 if (element.hasTopic()) { 41442 composeReference("topic", element.getTopic()); 41443 } 41444 if (element.hasType()) { 41445 composeCodeableConcept("type", element.getType()); 41446 } 41447 if (element.hasDecision()) { 41448 composeCodeableConcept("decision", element.getDecision()); 41449 } 41450 if (element.hasDecisionMode()) { 41451 for (CodeableConcept e : element.getDecisionMode()) 41452 composeCodeableConcept("decisionMode", e); 41453 } 41454 if (element.hasAnswer()) { 41455 for (Contract.AnswerComponent e : element.getAnswer()) 41456 composeContractAnswerComponent("answer", e); 41457 } 41458 if (element.hasTextElement()) { 41459 composeString("text", element.getTextElement()); 41460 } 41461 if (element.hasLinkId()) { 41462 for (StringType e : element.getLinkId()) 41463 composeString("linkId", e); 41464 } 41465 if (element.hasSecurityLabelNumber()) { 41466 for (UnsignedIntType e : element.getSecurityLabelNumber()) 41467 composeUnsignedInt("securityLabelNumber", e); 41468 } 41469 } 41470 41471 protected void composeContractPartyComponent(String name, Contract.ContractPartyComponent element) throws IOException { 41472 if (element != null) { 41473 composeElementAttributes(element); 41474 xml.enter(FHIR_NS, name); 41475 composeContractPartyComponentElements(element); 41476 composeElementClose(element); 41477 xml.exit(FHIR_NS, name); 41478 } 41479 } 41480 41481 protected void composeContractPartyComponentElements(Contract.ContractPartyComponent element) throws IOException { 41482 composeBackboneElementElements(element); 41483 if (element.hasReference()) { 41484 for (Reference e : element.getReference()) 41485 composeReference("reference", e); 41486 } 41487 if (element.hasRole()) { 41488 composeCodeableConcept("role", element.getRole()); 41489 } 41490 } 41491 41492 protected void composeContractAnswerComponent(String name, Contract.AnswerComponent element) throws IOException { 41493 if (element != null) { 41494 composeElementAttributes(element); 41495 xml.enter(FHIR_NS, name); 41496 composeContractAnswerComponentElements(element); 41497 composeElementClose(element); 41498 xml.exit(FHIR_NS, name); 41499 } 41500 } 41501 41502 protected void composeContractAnswerComponentElements(Contract.AnswerComponent element) throws IOException { 41503 composeBackboneElementElements(element); 41504 if (element.hasValue()) { 41505 composeType("value", element.getValue()); 41506 } } 41507 41508 protected void composeContractAssetComponent(String name, Contract.ContractAssetComponent element) throws IOException { 41509 if (element != null) { 41510 composeElementAttributes(element); 41511 xml.enter(FHIR_NS, name); 41512 composeContractAssetComponentElements(element); 41513 composeElementClose(element); 41514 xml.exit(FHIR_NS, name); 41515 } 41516 } 41517 41518 protected void composeContractAssetComponentElements(Contract.ContractAssetComponent element) throws IOException { 41519 composeBackboneElementElements(element); 41520 if (element.hasScope()) { 41521 composeCodeableConcept("scope", element.getScope()); 41522 } 41523 if (element.hasType()) { 41524 for (CodeableConcept e : element.getType()) 41525 composeCodeableConcept("type", e); 41526 } 41527 if (element.hasTypeReference()) { 41528 for (Reference e : element.getTypeReference()) 41529 composeReference("typeReference", e); 41530 } 41531 if (element.hasSubtype()) { 41532 for (CodeableConcept e : element.getSubtype()) 41533 composeCodeableConcept("subtype", e); 41534 } 41535 if (element.hasRelationship()) { 41536 composeCoding("relationship", element.getRelationship()); 41537 } 41538 if (element.hasContext()) { 41539 for (Contract.AssetContextComponent e : element.getContext()) 41540 composeContractAssetContextComponent("context", e); 41541 } 41542 if (element.hasConditionElement()) { 41543 composeString("condition", element.getConditionElement()); 41544 } 41545 if (element.hasPeriodType()) { 41546 for (CodeableConcept e : element.getPeriodType()) 41547 composeCodeableConcept("periodType", e); 41548 } 41549 if (element.hasPeriod()) { 41550 for (Period e : element.getPeriod()) 41551 composePeriod("period", e); 41552 } 41553 if (element.hasUsePeriod()) { 41554 for (Period e : element.getUsePeriod()) 41555 composePeriod("usePeriod", e); 41556 } 41557 if (element.hasTextElement()) { 41558 composeString("text", element.getTextElement()); 41559 } 41560 if (element.hasLinkId()) { 41561 for (StringType e : element.getLinkId()) 41562 composeString("linkId", e); 41563 } 41564 if (element.hasAnswer()) { 41565 for (Contract.AnswerComponent e : element.getAnswer()) 41566 composeContractAnswerComponent("answer", e); 41567 } 41568 if (element.hasSecurityLabelNumber()) { 41569 for (UnsignedIntType e : element.getSecurityLabelNumber()) 41570 composeUnsignedInt("securityLabelNumber", e); 41571 } 41572 if (element.hasValuedItem()) { 41573 for (Contract.ValuedItemComponent e : element.getValuedItem()) 41574 composeContractValuedItemComponent("valuedItem", e); 41575 } 41576 } 41577 41578 protected void composeContractAssetContextComponent(String name, Contract.AssetContextComponent element) throws IOException { 41579 if (element != null) { 41580 composeElementAttributes(element); 41581 xml.enter(FHIR_NS, name); 41582 composeContractAssetContextComponentElements(element); 41583 composeElementClose(element); 41584 xml.exit(FHIR_NS, name); 41585 } 41586 } 41587 41588 protected void composeContractAssetContextComponentElements(Contract.AssetContextComponent element) throws IOException { 41589 composeBackboneElementElements(element); 41590 if (element.hasReference()) { 41591 composeReference("reference", element.getReference()); 41592 } 41593 if (element.hasCode()) { 41594 for (CodeableConcept e : element.getCode()) 41595 composeCodeableConcept("code", e); 41596 } 41597 if (element.hasTextElement()) { 41598 composeString("text", element.getTextElement()); 41599 } 41600 } 41601 41602 protected void composeContractValuedItemComponent(String name, Contract.ValuedItemComponent element) throws IOException { 41603 if (element != null) { 41604 composeElementAttributes(element); 41605 xml.enter(FHIR_NS, name); 41606 composeContractValuedItemComponentElements(element); 41607 composeElementClose(element); 41608 xml.exit(FHIR_NS, name); 41609 } 41610 } 41611 41612 protected void composeContractValuedItemComponentElements(Contract.ValuedItemComponent element) throws IOException { 41613 composeBackboneElementElements(element); 41614 if (element.hasEntity()) { 41615 composeType("entity", element.getEntity()); 41616 } if (element.hasIdentifier()) { 41617 composeIdentifier("identifier", element.getIdentifier()); 41618 } 41619 if (element.hasEffectiveTimeElement()) { 41620 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 41621 } 41622 if (element.hasQuantity()) { 41623 composeQuantity("quantity", element.getQuantity()); 41624 } 41625 if (element.hasUnitPrice()) { 41626 composeMoney("unitPrice", element.getUnitPrice()); 41627 } 41628 if (element.hasFactorElement()) { 41629 composeDecimal("factor", element.getFactorElement()); 41630 } 41631 if (element.hasPointsElement()) { 41632 composeDecimal("points", element.getPointsElement()); 41633 } 41634 if (element.hasNet()) { 41635 composeMoney("net", element.getNet()); 41636 } 41637 if (element.hasPaymentElement()) { 41638 composeString("payment", element.getPaymentElement()); 41639 } 41640 if (element.hasPaymentDateElement()) { 41641 composeDateTime("paymentDate", element.getPaymentDateElement()); 41642 } 41643 if (element.hasResponsible()) { 41644 composeReference("responsible", element.getResponsible()); 41645 } 41646 if (element.hasRecipient()) { 41647 composeReference("recipient", element.getRecipient()); 41648 } 41649 if (element.hasLinkId()) { 41650 for (StringType e : element.getLinkId()) 41651 composeString("linkId", e); 41652 } 41653 if (element.hasSecurityLabelNumber()) { 41654 for (UnsignedIntType e : element.getSecurityLabelNumber()) 41655 composeUnsignedInt("securityLabelNumber", e); 41656 } 41657 } 41658 41659 protected void composeContractActionComponent(String name, Contract.ActionComponent element) throws IOException { 41660 if (element != null) { 41661 composeElementAttributes(element); 41662 xml.enter(FHIR_NS, name); 41663 composeContractActionComponentElements(element); 41664 composeElementClose(element); 41665 xml.exit(FHIR_NS, name); 41666 } 41667 } 41668 41669 protected void composeContractActionComponentElements(Contract.ActionComponent element) throws IOException { 41670 composeBackboneElementElements(element); 41671 if (element.hasDoNotPerformElement()) { 41672 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 41673 } 41674 if (element.hasType()) { 41675 composeCodeableConcept("type", element.getType()); 41676 } 41677 if (element.hasSubject()) { 41678 for (Contract.ActionSubjectComponent e : element.getSubject()) 41679 composeContractActionSubjectComponent("subject", e); 41680 } 41681 if (element.hasIntent()) { 41682 composeCodeableConcept("intent", element.getIntent()); 41683 } 41684 if (element.hasLinkId()) { 41685 for (StringType e : element.getLinkId()) 41686 composeString("linkId", e); 41687 } 41688 if (element.hasStatus()) { 41689 composeCodeableConcept("status", element.getStatus()); 41690 } 41691 if (element.hasContext()) { 41692 composeReference("context", element.getContext()); 41693 } 41694 if (element.hasContextLinkId()) { 41695 for (StringType e : element.getContextLinkId()) 41696 composeString("contextLinkId", e); 41697 } 41698 if (element.hasOccurrence()) { 41699 composeType("occurrence", element.getOccurrence()); 41700 } if (element.hasRequester()) { 41701 for (Reference e : element.getRequester()) 41702 composeReference("requester", e); 41703 } 41704 if (element.hasRequesterLinkId()) { 41705 for (StringType e : element.getRequesterLinkId()) 41706 composeString("requesterLinkId", e); 41707 } 41708 if (element.hasPerformerType()) { 41709 for (CodeableConcept e : element.getPerformerType()) 41710 composeCodeableConcept("performerType", e); 41711 } 41712 if (element.hasPerformerRole()) { 41713 composeCodeableConcept("performerRole", element.getPerformerRole()); 41714 } 41715 if (element.hasPerformer()) { 41716 composeReference("performer", element.getPerformer()); 41717 } 41718 if (element.hasPerformerLinkId()) { 41719 for (StringType e : element.getPerformerLinkId()) 41720 composeString("performerLinkId", e); 41721 } 41722 if (element.hasReason()) { 41723 for (CodeableReference e : element.getReason()) 41724 composeCodeableReference("reason", e); 41725 } 41726 if (element.hasReasonLinkId()) { 41727 for (StringType e : element.getReasonLinkId()) 41728 composeString("reasonLinkId", e); 41729 } 41730 if (element.hasNote()) { 41731 for (Annotation e : element.getNote()) 41732 composeAnnotation("note", e); 41733 } 41734 if (element.hasSecurityLabelNumber()) { 41735 for (UnsignedIntType e : element.getSecurityLabelNumber()) 41736 composeUnsignedInt("securityLabelNumber", e); 41737 } 41738 } 41739 41740 protected void composeContractActionSubjectComponent(String name, Contract.ActionSubjectComponent element) throws IOException { 41741 if (element != null) { 41742 composeElementAttributes(element); 41743 xml.enter(FHIR_NS, name); 41744 composeContractActionSubjectComponentElements(element); 41745 composeElementClose(element); 41746 xml.exit(FHIR_NS, name); 41747 } 41748 } 41749 41750 protected void composeContractActionSubjectComponentElements(Contract.ActionSubjectComponent element) throws IOException { 41751 composeBackboneElementElements(element); 41752 if (element.hasReference()) { 41753 for (Reference e : element.getReference()) 41754 composeReference("reference", e); 41755 } 41756 if (element.hasRole()) { 41757 composeCodeableConcept("role", element.getRole()); 41758 } 41759 } 41760 41761 protected void composeContractSignatoryComponent(String name, Contract.SignatoryComponent element) throws IOException { 41762 if (element != null) { 41763 composeElementAttributes(element); 41764 xml.enter(FHIR_NS, name); 41765 composeContractSignatoryComponentElements(element); 41766 composeElementClose(element); 41767 xml.exit(FHIR_NS, name); 41768 } 41769 } 41770 41771 protected void composeContractSignatoryComponentElements(Contract.SignatoryComponent element) throws IOException { 41772 composeBackboneElementElements(element); 41773 if (element.hasType()) { 41774 composeCoding("type", element.getType()); 41775 } 41776 if (element.hasParty()) { 41777 composeReference("party", element.getParty()); 41778 } 41779 if (element.hasSignature()) { 41780 for (Signature e : element.getSignature()) 41781 composeSignature("signature", e); 41782 } 41783 } 41784 41785 protected void composeContractFriendlyLanguageComponent(String name, Contract.FriendlyLanguageComponent element) throws IOException { 41786 if (element != null) { 41787 composeElementAttributes(element); 41788 xml.enter(FHIR_NS, name); 41789 composeContractFriendlyLanguageComponentElements(element); 41790 composeElementClose(element); 41791 xml.exit(FHIR_NS, name); 41792 } 41793 } 41794 41795 protected void composeContractFriendlyLanguageComponentElements(Contract.FriendlyLanguageComponent element) throws IOException { 41796 composeBackboneElementElements(element); 41797 if (element.hasContent()) { 41798 composeType("content", element.getContent()); 41799 } } 41800 41801 protected void composeContractLegalLanguageComponent(String name, Contract.LegalLanguageComponent element) throws IOException { 41802 if (element != null) { 41803 composeElementAttributes(element); 41804 xml.enter(FHIR_NS, name); 41805 composeContractLegalLanguageComponentElements(element); 41806 composeElementClose(element); 41807 xml.exit(FHIR_NS, name); 41808 } 41809 } 41810 41811 protected void composeContractLegalLanguageComponentElements(Contract.LegalLanguageComponent element) throws IOException { 41812 composeBackboneElementElements(element); 41813 if (element.hasContent()) { 41814 composeType("content", element.getContent()); 41815 } } 41816 41817 protected void composeContractComputableLanguageComponent(String name, Contract.ComputableLanguageComponent element) throws IOException { 41818 if (element != null) { 41819 composeElementAttributes(element); 41820 xml.enter(FHIR_NS, name); 41821 composeContractComputableLanguageComponentElements(element); 41822 composeElementClose(element); 41823 xml.exit(FHIR_NS, name); 41824 } 41825 } 41826 41827 protected void composeContractComputableLanguageComponentElements(Contract.ComputableLanguageComponent element) throws IOException { 41828 composeBackboneElementElements(element); 41829 if (element.hasContent()) { 41830 composeType("content", element.getContent()); 41831 } } 41832 41833 protected void composeCoverage(String name, Coverage element) throws IOException { 41834 if (element != null) { 41835 composeResourceAttributes(element); 41836 xml.enter(FHIR_NS, name); 41837 composeCoverageElements(element); 41838 composeElementClose(element); 41839 xml.exit(FHIR_NS, name); 41840 } 41841 } 41842 41843 protected void composeCoverageElements(Coverage element) throws IOException { 41844 composeDomainResourceElements(element); 41845 if (element.hasIdentifier()) { 41846 for (Identifier e : element.getIdentifier()) 41847 composeIdentifier("identifier", e); 41848 } 41849 if (element.hasStatusElement()) 41850 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 41851 if (element.hasKindElement()) 41852 composeEnumeration("kind", element.getKindElement(), new Coverage.KindEnumFactory()); 41853 if (element.hasPaymentBy()) { 41854 for (Coverage.CoveragePaymentByComponent e : element.getPaymentBy()) 41855 composeCoveragePaymentByComponent("paymentBy", e); 41856 } 41857 if (element.hasType()) { 41858 composeCodeableConcept("type", element.getType()); 41859 } 41860 if (element.hasPolicyHolder()) { 41861 composeReference("policyHolder", element.getPolicyHolder()); 41862 } 41863 if (element.hasSubscriber()) { 41864 composeReference("subscriber", element.getSubscriber()); 41865 } 41866 if (element.hasSubscriberId()) { 41867 for (Identifier e : element.getSubscriberId()) 41868 composeIdentifier("subscriberId", e); 41869 } 41870 if (element.hasBeneficiary()) { 41871 composeReference("beneficiary", element.getBeneficiary()); 41872 } 41873 if (element.hasDependentElement()) { 41874 composeString("dependent", element.getDependentElement()); 41875 } 41876 if (element.hasRelationship()) { 41877 composeCodeableConcept("relationship", element.getRelationship()); 41878 } 41879 if (element.hasPeriod()) { 41880 composePeriod("period", element.getPeriod()); 41881 } 41882 if (element.hasInsurer()) { 41883 composeReference("insurer", element.getInsurer()); 41884 } 41885 if (element.hasClass_()) { 41886 for (Coverage.ClassComponent e : element.getClass_()) 41887 composeCoverageClassComponent("class", e); 41888 } 41889 if (element.hasOrderElement()) { 41890 composePositiveInt("order", element.getOrderElement()); 41891 } 41892 if (element.hasNetworkElement()) { 41893 composeString("network", element.getNetworkElement()); 41894 } 41895 if (element.hasCostToBeneficiary()) { 41896 for (Coverage.CostToBeneficiaryComponent e : element.getCostToBeneficiary()) 41897 composeCoverageCostToBeneficiaryComponent("costToBeneficiary", e); 41898 } 41899 if (element.hasSubrogationElement()) { 41900 composeBoolean("subrogation", element.getSubrogationElement()); 41901 } 41902 if (element.hasContract()) { 41903 for (Reference e : element.getContract()) 41904 composeReference("contract", e); 41905 } 41906 if (element.hasInsurancePlan()) { 41907 composeReference("insurancePlan", element.getInsurancePlan()); 41908 } 41909 } 41910 41911 protected void composeCoveragePaymentByComponent(String name, Coverage.CoveragePaymentByComponent element) throws IOException { 41912 if (element != null) { 41913 composeElementAttributes(element); 41914 xml.enter(FHIR_NS, name); 41915 composeCoveragePaymentByComponentElements(element); 41916 composeElementClose(element); 41917 xml.exit(FHIR_NS, name); 41918 } 41919 } 41920 41921 protected void composeCoveragePaymentByComponentElements(Coverage.CoveragePaymentByComponent element) throws IOException { 41922 composeBackboneElementElements(element); 41923 if (element.hasParty()) { 41924 composeReference("party", element.getParty()); 41925 } 41926 if (element.hasResponsibilityElement()) { 41927 composeString("responsibility", element.getResponsibilityElement()); 41928 } 41929 } 41930 41931 protected void composeCoverageClassComponent(String name, Coverage.ClassComponent element) throws IOException { 41932 if (element != null) { 41933 composeElementAttributes(element); 41934 xml.enter(FHIR_NS, name); 41935 composeCoverageClassComponentElements(element); 41936 composeElementClose(element); 41937 xml.exit(FHIR_NS, name); 41938 } 41939 } 41940 41941 protected void composeCoverageClassComponentElements(Coverage.ClassComponent element) throws IOException { 41942 composeBackboneElementElements(element); 41943 if (element.hasType()) { 41944 composeCodeableConcept("type", element.getType()); 41945 } 41946 if (element.hasValue()) { 41947 composeIdentifier("value", element.getValue()); 41948 } 41949 if (element.hasNameElement()) { 41950 composeString("name", element.getNameElement()); 41951 } 41952 } 41953 41954 protected void composeCoverageCostToBeneficiaryComponent(String name, Coverage.CostToBeneficiaryComponent element) throws IOException { 41955 if (element != null) { 41956 composeElementAttributes(element); 41957 xml.enter(FHIR_NS, name); 41958 composeCoverageCostToBeneficiaryComponentElements(element); 41959 composeElementClose(element); 41960 xml.exit(FHIR_NS, name); 41961 } 41962 } 41963 41964 protected void composeCoverageCostToBeneficiaryComponentElements(Coverage.CostToBeneficiaryComponent element) throws IOException { 41965 composeBackboneElementElements(element); 41966 if (element.hasType()) { 41967 composeCodeableConcept("type", element.getType()); 41968 } 41969 if (element.hasCategory()) { 41970 composeCodeableConcept("category", element.getCategory()); 41971 } 41972 if (element.hasNetwork()) { 41973 composeCodeableConcept("network", element.getNetwork()); 41974 } 41975 if (element.hasUnit()) { 41976 composeCodeableConcept("unit", element.getUnit()); 41977 } 41978 if (element.hasTerm()) { 41979 composeCodeableConcept("term", element.getTerm()); 41980 } 41981 if (element.hasValue()) { 41982 composeType("value", element.getValue()); 41983 } if (element.hasException()) { 41984 for (Coverage.ExemptionComponent e : element.getException()) 41985 composeCoverageExemptionComponent("exception", e); 41986 } 41987 } 41988 41989 protected void composeCoverageExemptionComponent(String name, Coverage.ExemptionComponent element) throws IOException { 41990 if (element != null) { 41991 composeElementAttributes(element); 41992 xml.enter(FHIR_NS, name); 41993 composeCoverageExemptionComponentElements(element); 41994 composeElementClose(element); 41995 xml.exit(FHIR_NS, name); 41996 } 41997 } 41998 41999 protected void composeCoverageExemptionComponentElements(Coverage.ExemptionComponent element) throws IOException { 42000 composeBackboneElementElements(element); 42001 if (element.hasType()) { 42002 composeCodeableConcept("type", element.getType()); 42003 } 42004 if (element.hasPeriod()) { 42005 composePeriod("period", element.getPeriod()); 42006 } 42007 } 42008 42009 protected void composeCoverageEligibilityRequest(String name, CoverageEligibilityRequest element) throws IOException { 42010 if (element != null) { 42011 composeResourceAttributes(element); 42012 xml.enter(FHIR_NS, name); 42013 composeCoverageEligibilityRequestElements(element); 42014 composeElementClose(element); 42015 xml.exit(FHIR_NS, name); 42016 } 42017 } 42018 42019 protected void composeCoverageEligibilityRequestElements(CoverageEligibilityRequest element) throws IOException { 42020 composeDomainResourceElements(element); 42021 if (element.hasIdentifier()) { 42022 for (Identifier e : element.getIdentifier()) 42023 composeIdentifier("identifier", e); 42024 } 42025 if (element.hasStatusElement()) 42026 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 42027 if (element.hasPriority()) { 42028 composeCodeableConcept("priority", element.getPriority()); 42029 } 42030 if (element.hasPurpose()) 42031 for (Enumeration<CoverageEligibilityRequest.EligibilityRequestPurpose> e : element.getPurpose()) 42032 composeEnumeration("purpose", e, new CoverageEligibilityRequest.EligibilityRequestPurposeEnumFactory()); 42033 if (element.hasPatient()) { 42034 composeReference("patient", element.getPatient()); 42035 } 42036 if (element.hasEvent()) { 42037 for (CoverageEligibilityRequest.CoverageEligibilityRequestEventComponent e : element.getEvent()) 42038 composeCoverageEligibilityRequestEventComponent("event", e); 42039 } 42040 if (element.hasServiced()) { 42041 composeType("serviced", element.getServiced()); 42042 } if (element.hasCreatedElement()) { 42043 composeDateTime("created", element.getCreatedElement()); 42044 } 42045 if (element.hasEnterer()) { 42046 composeReference("enterer", element.getEnterer()); 42047 } 42048 if (element.hasProvider()) { 42049 composeReference("provider", element.getProvider()); 42050 } 42051 if (element.hasInsurer()) { 42052 composeReference("insurer", element.getInsurer()); 42053 } 42054 if (element.hasFacility()) { 42055 composeReference("facility", element.getFacility()); 42056 } 42057 if (element.hasSupportingInfo()) { 42058 for (CoverageEligibilityRequest.SupportingInformationComponent e : element.getSupportingInfo()) 42059 composeCoverageEligibilityRequestSupportingInformationComponent("supportingInfo", e); 42060 } 42061 if (element.hasInsurance()) { 42062 for (CoverageEligibilityRequest.InsuranceComponent e : element.getInsurance()) 42063 composeCoverageEligibilityRequestInsuranceComponent("insurance", e); 42064 } 42065 if (element.hasItem()) { 42066 for (CoverageEligibilityRequest.DetailsComponent e : element.getItem()) 42067 composeCoverageEligibilityRequestDetailsComponent("item", e); 42068 } 42069 } 42070 42071 protected void composeCoverageEligibilityRequestEventComponent(String name, CoverageEligibilityRequest.CoverageEligibilityRequestEventComponent element) throws IOException { 42072 if (element != null) { 42073 composeElementAttributes(element); 42074 xml.enter(FHIR_NS, name); 42075 composeCoverageEligibilityRequestEventComponentElements(element); 42076 composeElementClose(element); 42077 xml.exit(FHIR_NS, name); 42078 } 42079 } 42080 42081 protected void composeCoverageEligibilityRequestEventComponentElements(CoverageEligibilityRequest.CoverageEligibilityRequestEventComponent element) throws IOException { 42082 composeBackboneElementElements(element); 42083 if (element.hasType()) { 42084 composeCodeableConcept("type", element.getType()); 42085 } 42086 if (element.hasWhen()) { 42087 composeType("when", element.getWhen()); 42088 } } 42089 42090 protected void composeCoverageEligibilityRequestSupportingInformationComponent(String name, CoverageEligibilityRequest.SupportingInformationComponent element) throws IOException { 42091 if (element != null) { 42092 composeElementAttributes(element); 42093 xml.enter(FHIR_NS, name); 42094 composeCoverageEligibilityRequestSupportingInformationComponentElements(element); 42095 composeElementClose(element); 42096 xml.exit(FHIR_NS, name); 42097 } 42098 } 42099 42100 protected void composeCoverageEligibilityRequestSupportingInformationComponentElements(CoverageEligibilityRequest.SupportingInformationComponent element) throws IOException { 42101 composeBackboneElementElements(element); 42102 if (element.hasSequenceElement()) { 42103 composePositiveInt("sequence", element.getSequenceElement()); 42104 } 42105 if (element.hasInformation()) { 42106 composeReference("information", element.getInformation()); 42107 } 42108 if (element.hasAppliesToAllElement()) { 42109 composeBoolean("appliesToAll", element.getAppliesToAllElement()); 42110 } 42111 } 42112 42113 protected void composeCoverageEligibilityRequestInsuranceComponent(String name, CoverageEligibilityRequest.InsuranceComponent element) throws IOException { 42114 if (element != null) { 42115 composeElementAttributes(element); 42116 xml.enter(FHIR_NS, name); 42117 composeCoverageEligibilityRequestInsuranceComponentElements(element); 42118 composeElementClose(element); 42119 xml.exit(FHIR_NS, name); 42120 } 42121 } 42122 42123 protected void composeCoverageEligibilityRequestInsuranceComponentElements(CoverageEligibilityRequest.InsuranceComponent element) throws IOException { 42124 composeBackboneElementElements(element); 42125 if (element.hasFocalElement()) { 42126 composeBoolean("focal", element.getFocalElement()); 42127 } 42128 if (element.hasCoverage()) { 42129 composeReference("coverage", element.getCoverage()); 42130 } 42131 if (element.hasBusinessArrangementElement()) { 42132 composeString("businessArrangement", element.getBusinessArrangementElement()); 42133 } 42134 } 42135 42136 protected void composeCoverageEligibilityRequestDetailsComponent(String name, CoverageEligibilityRequest.DetailsComponent element) throws IOException { 42137 if (element != null) { 42138 composeElementAttributes(element); 42139 xml.enter(FHIR_NS, name); 42140 composeCoverageEligibilityRequestDetailsComponentElements(element); 42141 composeElementClose(element); 42142 xml.exit(FHIR_NS, name); 42143 } 42144 } 42145 42146 protected void composeCoverageEligibilityRequestDetailsComponentElements(CoverageEligibilityRequest.DetailsComponent element) throws IOException { 42147 composeBackboneElementElements(element); 42148 if (element.hasSupportingInfoSequence()) { 42149 for (PositiveIntType e : element.getSupportingInfoSequence()) 42150 composePositiveInt("supportingInfoSequence", e); 42151 } 42152 if (element.hasCategory()) { 42153 composeCodeableConcept("category", element.getCategory()); 42154 } 42155 if (element.hasProductOrService()) { 42156 composeCodeableConcept("productOrService", element.getProductOrService()); 42157 } 42158 if (element.hasModifier()) { 42159 for (CodeableConcept e : element.getModifier()) 42160 composeCodeableConcept("modifier", e); 42161 } 42162 if (element.hasProvider()) { 42163 composeReference("provider", element.getProvider()); 42164 } 42165 if (element.hasQuantity()) { 42166 composeQuantity("quantity", element.getQuantity()); 42167 } 42168 if (element.hasUnitPrice()) { 42169 composeMoney("unitPrice", element.getUnitPrice()); 42170 } 42171 if (element.hasFacility()) { 42172 composeReference("facility", element.getFacility()); 42173 } 42174 if (element.hasDiagnosis()) { 42175 for (CoverageEligibilityRequest.DiagnosisComponent e : element.getDiagnosis()) 42176 composeCoverageEligibilityRequestDiagnosisComponent("diagnosis", e); 42177 } 42178 if (element.hasDetail()) { 42179 for (Reference e : element.getDetail()) 42180 composeReference("detail", e); 42181 } 42182 } 42183 42184 protected void composeCoverageEligibilityRequestDiagnosisComponent(String name, CoverageEligibilityRequest.DiagnosisComponent element) throws IOException { 42185 if (element != null) { 42186 composeElementAttributes(element); 42187 xml.enter(FHIR_NS, name); 42188 composeCoverageEligibilityRequestDiagnosisComponentElements(element); 42189 composeElementClose(element); 42190 xml.exit(FHIR_NS, name); 42191 } 42192 } 42193 42194 protected void composeCoverageEligibilityRequestDiagnosisComponentElements(CoverageEligibilityRequest.DiagnosisComponent element) throws IOException { 42195 composeBackboneElementElements(element); 42196 if (element.hasDiagnosis()) { 42197 composeType("diagnosis", element.getDiagnosis()); 42198 } } 42199 42200 protected void composeCoverageEligibilityResponse(String name, CoverageEligibilityResponse element) throws IOException { 42201 if (element != null) { 42202 composeResourceAttributes(element); 42203 xml.enter(FHIR_NS, name); 42204 composeCoverageEligibilityResponseElements(element); 42205 composeElementClose(element); 42206 xml.exit(FHIR_NS, name); 42207 } 42208 } 42209 42210 protected void composeCoverageEligibilityResponseElements(CoverageEligibilityResponse element) throws IOException { 42211 composeDomainResourceElements(element); 42212 if (element.hasIdentifier()) { 42213 for (Identifier e : element.getIdentifier()) 42214 composeIdentifier("identifier", e); 42215 } 42216 if (element.hasStatusElement()) 42217 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 42218 if (element.hasPurpose()) 42219 for (Enumeration<CoverageEligibilityResponse.EligibilityResponsePurpose> e : element.getPurpose()) 42220 composeEnumeration("purpose", e, new CoverageEligibilityResponse.EligibilityResponsePurposeEnumFactory()); 42221 if (element.hasPatient()) { 42222 composeReference("patient", element.getPatient()); 42223 } 42224 if (element.hasEvent()) { 42225 for (CoverageEligibilityResponse.CoverageEligibilityResponseEventComponent e : element.getEvent()) 42226 composeCoverageEligibilityResponseEventComponent("event", e); 42227 } 42228 if (element.hasServiced()) { 42229 composeType("serviced", element.getServiced()); 42230 } if (element.hasCreatedElement()) { 42231 composeDateTime("created", element.getCreatedElement()); 42232 } 42233 if (element.hasRequestor()) { 42234 composeReference("requestor", element.getRequestor()); 42235 } 42236 if (element.hasRequest()) { 42237 composeReference("request", element.getRequest()); 42238 } 42239 if (element.hasOutcomeElement()) 42240 composeEnumeration("outcome", element.getOutcomeElement(), new CoverageEligibilityResponse.EligibilityOutcomeEnumFactory()); 42241 if (element.hasDispositionElement()) { 42242 composeString("disposition", element.getDispositionElement()); 42243 } 42244 if (element.hasInsurer()) { 42245 composeReference("insurer", element.getInsurer()); 42246 } 42247 if (element.hasInsurance()) { 42248 for (CoverageEligibilityResponse.InsuranceComponent e : element.getInsurance()) 42249 composeCoverageEligibilityResponseInsuranceComponent("insurance", e); 42250 } 42251 if (element.hasPreAuthRefElement()) { 42252 composeString("preAuthRef", element.getPreAuthRefElement()); 42253 } 42254 if (element.hasForm()) { 42255 composeCodeableConcept("form", element.getForm()); 42256 } 42257 if (element.hasError()) { 42258 for (CoverageEligibilityResponse.ErrorsComponent e : element.getError()) 42259 composeCoverageEligibilityResponseErrorsComponent("error", e); 42260 } 42261 } 42262 42263 protected void composeCoverageEligibilityResponseEventComponent(String name, CoverageEligibilityResponse.CoverageEligibilityResponseEventComponent element) throws IOException { 42264 if (element != null) { 42265 composeElementAttributes(element); 42266 xml.enter(FHIR_NS, name); 42267 composeCoverageEligibilityResponseEventComponentElements(element); 42268 composeElementClose(element); 42269 xml.exit(FHIR_NS, name); 42270 } 42271 } 42272 42273 protected void composeCoverageEligibilityResponseEventComponentElements(CoverageEligibilityResponse.CoverageEligibilityResponseEventComponent element) throws IOException { 42274 composeBackboneElementElements(element); 42275 if (element.hasType()) { 42276 composeCodeableConcept("type", element.getType()); 42277 } 42278 if (element.hasWhen()) { 42279 composeType("when", element.getWhen()); 42280 } } 42281 42282 protected void composeCoverageEligibilityResponseInsuranceComponent(String name, CoverageEligibilityResponse.InsuranceComponent element) throws IOException { 42283 if (element != null) { 42284 composeElementAttributes(element); 42285 xml.enter(FHIR_NS, name); 42286 composeCoverageEligibilityResponseInsuranceComponentElements(element); 42287 composeElementClose(element); 42288 xml.exit(FHIR_NS, name); 42289 } 42290 } 42291 42292 protected void composeCoverageEligibilityResponseInsuranceComponentElements(CoverageEligibilityResponse.InsuranceComponent element) throws IOException { 42293 composeBackboneElementElements(element); 42294 if (element.hasCoverage()) { 42295 composeReference("coverage", element.getCoverage()); 42296 } 42297 if (element.hasInforceElement()) { 42298 composeBoolean("inforce", element.getInforceElement()); 42299 } 42300 if (element.hasBenefitPeriod()) { 42301 composePeriod("benefitPeriod", element.getBenefitPeriod()); 42302 } 42303 if (element.hasItem()) { 42304 for (CoverageEligibilityResponse.ItemsComponent e : element.getItem()) 42305 composeCoverageEligibilityResponseItemsComponent("item", e); 42306 } 42307 } 42308 42309 protected void composeCoverageEligibilityResponseItemsComponent(String name, CoverageEligibilityResponse.ItemsComponent element) throws IOException { 42310 if (element != null) { 42311 composeElementAttributes(element); 42312 xml.enter(FHIR_NS, name); 42313 composeCoverageEligibilityResponseItemsComponentElements(element); 42314 composeElementClose(element); 42315 xml.exit(FHIR_NS, name); 42316 } 42317 } 42318 42319 protected void composeCoverageEligibilityResponseItemsComponentElements(CoverageEligibilityResponse.ItemsComponent element) throws IOException { 42320 composeBackboneElementElements(element); 42321 if (element.hasCategory()) { 42322 composeCodeableConcept("category", element.getCategory()); 42323 } 42324 if (element.hasProductOrService()) { 42325 composeCodeableConcept("productOrService", element.getProductOrService()); 42326 } 42327 if (element.hasModifier()) { 42328 for (CodeableConcept e : element.getModifier()) 42329 composeCodeableConcept("modifier", e); 42330 } 42331 if (element.hasProvider()) { 42332 composeReference("provider", element.getProvider()); 42333 } 42334 if (element.hasExcludedElement()) { 42335 composeBoolean("excluded", element.getExcludedElement()); 42336 } 42337 if (element.hasNameElement()) { 42338 composeString("name", element.getNameElement()); 42339 } 42340 if (element.hasDescriptionElement()) { 42341 composeString("description", element.getDescriptionElement()); 42342 } 42343 if (element.hasNetwork()) { 42344 composeCodeableConcept("network", element.getNetwork()); 42345 } 42346 if (element.hasUnit()) { 42347 composeCodeableConcept("unit", element.getUnit()); 42348 } 42349 if (element.hasTerm()) { 42350 composeCodeableConcept("term", element.getTerm()); 42351 } 42352 if (element.hasBenefit()) { 42353 for (CoverageEligibilityResponse.BenefitComponent e : element.getBenefit()) 42354 composeCoverageEligibilityResponseBenefitComponent("benefit", e); 42355 } 42356 if (element.hasAuthorizationRequiredElement()) { 42357 composeBoolean("authorizationRequired", element.getAuthorizationRequiredElement()); 42358 } 42359 if (element.hasAuthorizationSupporting()) { 42360 for (CodeableConcept e : element.getAuthorizationSupporting()) 42361 composeCodeableConcept("authorizationSupporting", e); 42362 } 42363 if (element.hasAuthorizationUrlElement()) { 42364 composeUri("authorizationUrl", element.getAuthorizationUrlElement()); 42365 } 42366 } 42367 42368 protected void composeCoverageEligibilityResponseBenefitComponent(String name, CoverageEligibilityResponse.BenefitComponent element) throws IOException { 42369 if (element != null) { 42370 composeElementAttributes(element); 42371 xml.enter(FHIR_NS, name); 42372 composeCoverageEligibilityResponseBenefitComponentElements(element); 42373 composeElementClose(element); 42374 xml.exit(FHIR_NS, name); 42375 } 42376 } 42377 42378 protected void composeCoverageEligibilityResponseBenefitComponentElements(CoverageEligibilityResponse.BenefitComponent element) throws IOException { 42379 composeBackboneElementElements(element); 42380 if (element.hasType()) { 42381 composeCodeableConcept("type", element.getType()); 42382 } 42383 if (element.hasAllowed()) { 42384 composeType("allowed", element.getAllowed()); 42385 } if (element.hasUsed()) { 42386 composeType("used", element.getUsed()); 42387 } } 42388 42389 protected void composeCoverageEligibilityResponseErrorsComponent(String name, CoverageEligibilityResponse.ErrorsComponent element) throws IOException { 42390 if (element != null) { 42391 composeElementAttributes(element); 42392 xml.enter(FHIR_NS, name); 42393 composeCoverageEligibilityResponseErrorsComponentElements(element); 42394 composeElementClose(element); 42395 xml.exit(FHIR_NS, name); 42396 } 42397 } 42398 42399 protected void composeCoverageEligibilityResponseErrorsComponentElements(CoverageEligibilityResponse.ErrorsComponent element) throws IOException { 42400 composeBackboneElementElements(element); 42401 if (element.hasCode()) { 42402 composeCodeableConcept("code", element.getCode()); 42403 } 42404 if (element.hasExpression()) { 42405 for (StringType e : element.getExpression()) 42406 composeString("expression", e); 42407 } 42408 } 42409 42410 protected void composeDetectedIssue(String name, DetectedIssue element) throws IOException { 42411 if (element != null) { 42412 composeResourceAttributes(element); 42413 xml.enter(FHIR_NS, name); 42414 composeDetectedIssueElements(element); 42415 composeElementClose(element); 42416 xml.exit(FHIR_NS, name); 42417 } 42418 } 42419 42420 protected void composeDetectedIssueElements(DetectedIssue element) throws IOException { 42421 composeDomainResourceElements(element); 42422 if (element.hasIdentifier()) { 42423 for (Identifier e : element.getIdentifier()) 42424 composeIdentifier("identifier", e); 42425 } 42426 if (element.hasStatusElement()) 42427 composeEnumeration("status", element.getStatusElement(), new DetectedIssue.DetectedIssueStatusEnumFactory()); 42428 if (element.hasCategory()) { 42429 for (CodeableConcept e : element.getCategory()) 42430 composeCodeableConcept("category", e); 42431 } 42432 if (element.hasCode()) { 42433 composeCodeableConcept("code", element.getCode()); 42434 } 42435 if (element.hasSeverityElement()) 42436 composeEnumeration("severity", element.getSeverityElement(), new DetectedIssue.DetectedIssueSeverityEnumFactory()); 42437 if (element.hasSubject()) { 42438 composeReference("subject", element.getSubject()); 42439 } 42440 if (element.hasEncounter()) { 42441 composeReference("encounter", element.getEncounter()); 42442 } 42443 if (element.hasIdentified()) { 42444 composeType("identified", element.getIdentified()); 42445 } if (element.hasAuthor()) { 42446 composeReference("author", element.getAuthor()); 42447 } 42448 if (element.hasImplicated()) { 42449 for (Reference e : element.getImplicated()) 42450 composeReference("implicated", e); 42451 } 42452 if (element.hasEvidence()) { 42453 for (DetectedIssue.DetectedIssueEvidenceComponent e : element.getEvidence()) 42454 composeDetectedIssueEvidenceComponent("evidence", e); 42455 } 42456 if (element.hasDetailElement()) { 42457 composeMarkdown("detail", element.getDetailElement()); 42458 } 42459 if (element.hasReferenceElement()) { 42460 composeUri("reference", element.getReferenceElement()); 42461 } 42462 if (element.hasMitigation()) { 42463 for (DetectedIssue.DetectedIssueMitigationComponent e : element.getMitigation()) 42464 composeDetectedIssueMitigationComponent("mitigation", e); 42465 } 42466 } 42467 42468 protected void composeDetectedIssueEvidenceComponent(String name, DetectedIssue.DetectedIssueEvidenceComponent element) throws IOException { 42469 if (element != null) { 42470 composeElementAttributes(element); 42471 xml.enter(FHIR_NS, name); 42472 composeDetectedIssueEvidenceComponentElements(element); 42473 composeElementClose(element); 42474 xml.exit(FHIR_NS, name); 42475 } 42476 } 42477 42478 protected void composeDetectedIssueEvidenceComponentElements(DetectedIssue.DetectedIssueEvidenceComponent element) throws IOException { 42479 composeBackboneElementElements(element); 42480 if (element.hasCode()) { 42481 for (CodeableConcept e : element.getCode()) 42482 composeCodeableConcept("code", e); 42483 } 42484 if (element.hasDetail()) { 42485 for (Reference e : element.getDetail()) 42486 composeReference("detail", e); 42487 } 42488 } 42489 42490 protected void composeDetectedIssueMitigationComponent(String name, DetectedIssue.DetectedIssueMitigationComponent element) throws IOException { 42491 if (element != null) { 42492 composeElementAttributes(element); 42493 xml.enter(FHIR_NS, name); 42494 composeDetectedIssueMitigationComponentElements(element); 42495 composeElementClose(element); 42496 xml.exit(FHIR_NS, name); 42497 } 42498 } 42499 42500 protected void composeDetectedIssueMitigationComponentElements(DetectedIssue.DetectedIssueMitigationComponent element) throws IOException { 42501 composeBackboneElementElements(element); 42502 if (element.hasAction()) { 42503 composeCodeableConcept("action", element.getAction()); 42504 } 42505 if (element.hasDateElement()) { 42506 composeDateTime("date", element.getDateElement()); 42507 } 42508 if (element.hasAuthor()) { 42509 composeReference("author", element.getAuthor()); 42510 } 42511 if (element.hasNote()) { 42512 for (Annotation e : element.getNote()) 42513 composeAnnotation("note", e); 42514 } 42515 } 42516 42517 protected void composeDevice(String name, Device element) throws IOException { 42518 if (element != null) { 42519 composeResourceAttributes(element); 42520 xml.enter(FHIR_NS, name); 42521 composeDeviceElements(element); 42522 composeElementClose(element); 42523 xml.exit(FHIR_NS, name); 42524 } 42525 } 42526 42527 protected void composeDeviceElements(Device element) throws IOException { 42528 composeDomainResourceElements(element); 42529 if (element.hasIdentifier()) { 42530 for (Identifier e : element.getIdentifier()) 42531 composeIdentifier("identifier", e); 42532 } 42533 if (element.hasDisplayNameElement()) { 42534 composeString("displayName", element.getDisplayNameElement()); 42535 } 42536 if (element.hasDefinition()) { 42537 composeCodeableReference("definition", element.getDefinition()); 42538 } 42539 if (element.hasUdiCarrier()) { 42540 for (Device.DeviceUdiCarrierComponent e : element.getUdiCarrier()) 42541 composeDeviceUdiCarrierComponent("udiCarrier", e); 42542 } 42543 if (element.hasStatusElement()) 42544 composeEnumeration("status", element.getStatusElement(), new Device.FHIRDeviceStatusEnumFactory()); 42545 if (element.hasAvailabilityStatus()) { 42546 composeCodeableConcept("availabilityStatus", element.getAvailabilityStatus()); 42547 } 42548 if (element.hasBiologicalSourceEvent()) { 42549 composeIdentifier("biologicalSourceEvent", element.getBiologicalSourceEvent()); 42550 } 42551 if (element.hasManufacturerElement()) { 42552 composeString("manufacturer", element.getManufacturerElement()); 42553 } 42554 if (element.hasManufactureDateElement()) { 42555 composeDateTime("manufactureDate", element.getManufactureDateElement()); 42556 } 42557 if (element.hasExpirationDateElement()) { 42558 composeDateTime("expirationDate", element.getExpirationDateElement()); 42559 } 42560 if (element.hasLotNumberElement()) { 42561 composeString("lotNumber", element.getLotNumberElement()); 42562 } 42563 if (element.hasSerialNumberElement()) { 42564 composeString("serialNumber", element.getSerialNumberElement()); 42565 } 42566 if (element.hasName()) { 42567 for (Device.DeviceNameComponent e : element.getName()) 42568 composeDeviceNameComponent("name", e); 42569 } 42570 if (element.hasModelNumberElement()) { 42571 composeString("modelNumber", element.getModelNumberElement()); 42572 } 42573 if (element.hasPartNumberElement()) { 42574 composeString("partNumber", element.getPartNumberElement()); 42575 } 42576 if (element.hasCategory()) { 42577 for (CodeableConcept e : element.getCategory()) 42578 composeCodeableConcept("category", e); 42579 } 42580 if (element.hasType()) { 42581 for (CodeableConcept e : element.getType()) 42582 composeCodeableConcept("type", e); 42583 } 42584 if (element.hasVersion()) { 42585 for (Device.DeviceVersionComponent e : element.getVersion()) 42586 composeDeviceVersionComponent("version", e); 42587 } 42588 if (element.hasConformsTo()) { 42589 for (Device.DeviceConformsToComponent e : element.getConformsTo()) 42590 composeDeviceConformsToComponent("conformsTo", e); 42591 } 42592 if (element.hasProperty()) { 42593 for (Device.DevicePropertyComponent e : element.getProperty()) 42594 composeDevicePropertyComponent("property", e); 42595 } 42596 if (element.hasMode()) { 42597 composeCodeableConcept("mode", element.getMode()); 42598 } 42599 if (element.hasCycle()) { 42600 composeCount("cycle", element.getCycle()); 42601 } 42602 if (element.hasDuration()) { 42603 composeDuration("duration", element.getDuration()); 42604 } 42605 if (element.hasOwner()) { 42606 composeReference("owner", element.getOwner()); 42607 } 42608 if (element.hasContact()) { 42609 for (ContactPoint e : element.getContact()) 42610 composeContactPoint("contact", e); 42611 } 42612 if (element.hasLocation()) { 42613 composeReference("location", element.getLocation()); 42614 } 42615 if (element.hasUrlElement()) { 42616 composeUri("url", element.getUrlElement()); 42617 } 42618 if (element.hasEndpoint()) { 42619 for (Reference e : element.getEndpoint()) 42620 composeReference("endpoint", e); 42621 } 42622 if (element.hasGateway()) { 42623 for (CodeableReference e : element.getGateway()) 42624 composeCodeableReference("gateway", e); 42625 } 42626 if (element.hasNote()) { 42627 for (Annotation e : element.getNote()) 42628 composeAnnotation("note", e); 42629 } 42630 if (element.hasSafety()) { 42631 for (CodeableConcept e : element.getSafety()) 42632 composeCodeableConcept("safety", e); 42633 } 42634 if (element.hasParent()) { 42635 composeReference("parent", element.getParent()); 42636 } 42637 } 42638 42639 protected void composeDeviceUdiCarrierComponent(String name, Device.DeviceUdiCarrierComponent element) throws IOException { 42640 if (element != null) { 42641 composeElementAttributes(element); 42642 xml.enter(FHIR_NS, name); 42643 composeDeviceUdiCarrierComponentElements(element); 42644 composeElementClose(element); 42645 xml.exit(FHIR_NS, name); 42646 } 42647 } 42648 42649 protected void composeDeviceUdiCarrierComponentElements(Device.DeviceUdiCarrierComponent element) throws IOException { 42650 composeBackboneElementElements(element); 42651 if (element.hasDeviceIdentifierElement()) { 42652 composeString("deviceIdentifier", element.getDeviceIdentifierElement()); 42653 } 42654 if (element.hasIssuerElement()) { 42655 composeUri("issuer", element.getIssuerElement()); 42656 } 42657 if (element.hasJurisdictionElement()) { 42658 composeUri("jurisdiction", element.getJurisdictionElement()); 42659 } 42660 if (element.hasCarrierAIDCElement()) { 42661 composeBase64Binary("carrierAIDC", element.getCarrierAIDCElement()); 42662 } 42663 if (element.hasCarrierHRFElement()) { 42664 composeString("carrierHRF", element.getCarrierHRFElement()); 42665 } 42666 if (element.hasEntryTypeElement()) 42667 composeEnumeration("entryType", element.getEntryTypeElement(), new Device.UDIEntryTypeEnumFactory()); 42668 } 42669 42670 protected void composeDeviceNameComponent(String name, Device.DeviceNameComponent element) throws IOException { 42671 if (element != null) { 42672 composeElementAttributes(element); 42673 xml.enter(FHIR_NS, name); 42674 composeDeviceNameComponentElements(element); 42675 composeElementClose(element); 42676 xml.exit(FHIR_NS, name); 42677 } 42678 } 42679 42680 protected void composeDeviceNameComponentElements(Device.DeviceNameComponent element) throws IOException { 42681 composeBackboneElementElements(element); 42682 if (element.hasValueElement()) { 42683 composeString("value", element.getValueElement()); 42684 } 42685 if (element.hasTypeElement()) 42686 composeEnumeration("type", element.getTypeElement(), new Enumerations.DeviceNameTypeEnumFactory()); 42687 if (element.hasDisplayElement()) { 42688 composeBoolean("display", element.getDisplayElement()); 42689 } 42690 } 42691 42692 protected void composeDeviceVersionComponent(String name, Device.DeviceVersionComponent element) throws IOException { 42693 if (element != null) { 42694 composeElementAttributes(element); 42695 xml.enter(FHIR_NS, name); 42696 composeDeviceVersionComponentElements(element); 42697 composeElementClose(element); 42698 xml.exit(FHIR_NS, name); 42699 } 42700 } 42701 42702 protected void composeDeviceVersionComponentElements(Device.DeviceVersionComponent element) throws IOException { 42703 composeBackboneElementElements(element); 42704 if (element.hasType()) { 42705 composeCodeableConcept("type", element.getType()); 42706 } 42707 if (element.hasComponent()) { 42708 composeIdentifier("component", element.getComponent()); 42709 } 42710 if (element.hasInstallDateElement()) { 42711 composeDateTime("installDate", element.getInstallDateElement()); 42712 } 42713 if (element.hasValueElement()) { 42714 composeString("value", element.getValueElement()); 42715 } 42716 } 42717 42718 protected void composeDeviceConformsToComponent(String name, Device.DeviceConformsToComponent element) throws IOException { 42719 if (element != null) { 42720 composeElementAttributes(element); 42721 xml.enter(FHIR_NS, name); 42722 composeDeviceConformsToComponentElements(element); 42723 composeElementClose(element); 42724 xml.exit(FHIR_NS, name); 42725 } 42726 } 42727 42728 protected void composeDeviceConformsToComponentElements(Device.DeviceConformsToComponent element) throws IOException { 42729 composeBackboneElementElements(element); 42730 if (element.hasCategory()) { 42731 composeCodeableConcept("category", element.getCategory()); 42732 } 42733 if (element.hasSpecification()) { 42734 composeCodeableConcept("specification", element.getSpecification()); 42735 } 42736 if (element.hasVersionElement()) { 42737 composeString("version", element.getVersionElement()); 42738 } 42739 } 42740 42741 protected void composeDevicePropertyComponent(String name, Device.DevicePropertyComponent element) throws IOException { 42742 if (element != null) { 42743 composeElementAttributes(element); 42744 xml.enter(FHIR_NS, name); 42745 composeDevicePropertyComponentElements(element); 42746 composeElementClose(element); 42747 xml.exit(FHIR_NS, name); 42748 } 42749 } 42750 42751 protected void composeDevicePropertyComponentElements(Device.DevicePropertyComponent element) throws IOException { 42752 composeBackboneElementElements(element); 42753 if (element.hasType()) { 42754 composeCodeableConcept("type", element.getType()); 42755 } 42756 if (element.hasValue()) { 42757 composeType("value", element.getValue()); 42758 } } 42759 42760 protected void composeDeviceAssociation(String name, DeviceAssociation element) throws IOException { 42761 if (element != null) { 42762 composeResourceAttributes(element); 42763 xml.enter(FHIR_NS, name); 42764 composeDeviceAssociationElements(element); 42765 composeElementClose(element); 42766 xml.exit(FHIR_NS, name); 42767 } 42768 } 42769 42770 protected void composeDeviceAssociationElements(DeviceAssociation element) throws IOException { 42771 composeDomainResourceElements(element); 42772 if (element.hasIdentifier()) { 42773 for (Identifier e : element.getIdentifier()) 42774 composeIdentifier("identifier", e); 42775 } 42776 if (element.hasDevice()) { 42777 composeReference("device", element.getDevice()); 42778 } 42779 if (element.hasCategory()) { 42780 for (CodeableConcept e : element.getCategory()) 42781 composeCodeableConcept("category", e); 42782 } 42783 if (element.hasStatus()) { 42784 composeCodeableConcept("status", element.getStatus()); 42785 } 42786 if (element.hasStatusReason()) { 42787 for (CodeableConcept e : element.getStatusReason()) 42788 composeCodeableConcept("statusReason", e); 42789 } 42790 if (element.hasSubject()) { 42791 composeReference("subject", element.getSubject()); 42792 } 42793 if (element.hasBodyStructure()) { 42794 composeReference("bodyStructure", element.getBodyStructure()); 42795 } 42796 if (element.hasPeriod()) { 42797 composePeriod("period", element.getPeriod()); 42798 } 42799 if (element.hasOperation()) { 42800 for (DeviceAssociation.DeviceAssociationOperationComponent e : element.getOperation()) 42801 composeDeviceAssociationOperationComponent("operation", e); 42802 } 42803 } 42804 42805 protected void composeDeviceAssociationOperationComponent(String name, DeviceAssociation.DeviceAssociationOperationComponent element) throws IOException { 42806 if (element != null) { 42807 composeElementAttributes(element); 42808 xml.enter(FHIR_NS, name); 42809 composeDeviceAssociationOperationComponentElements(element); 42810 composeElementClose(element); 42811 xml.exit(FHIR_NS, name); 42812 } 42813 } 42814 42815 protected void composeDeviceAssociationOperationComponentElements(DeviceAssociation.DeviceAssociationOperationComponent element) throws IOException { 42816 composeBackboneElementElements(element); 42817 if (element.hasStatus()) { 42818 composeCodeableConcept("status", element.getStatus()); 42819 } 42820 if (element.hasOperator()) { 42821 for (Reference e : element.getOperator()) 42822 composeReference("operator", e); 42823 } 42824 if (element.hasPeriod()) { 42825 composePeriod("period", element.getPeriod()); 42826 } 42827 } 42828 42829 protected void composeDeviceDefinition(String name, DeviceDefinition element) throws IOException { 42830 if (element != null) { 42831 composeResourceAttributes(element); 42832 xml.enter(FHIR_NS, name); 42833 composeDeviceDefinitionElements(element); 42834 composeElementClose(element); 42835 xml.exit(FHIR_NS, name); 42836 } 42837 } 42838 42839 protected void composeDeviceDefinitionElements(DeviceDefinition element) throws IOException { 42840 composeDomainResourceElements(element); 42841 if (element.hasDescriptionElement()) { 42842 composeMarkdown("description", element.getDescriptionElement()); 42843 } 42844 if (element.hasIdentifier()) { 42845 for (Identifier e : element.getIdentifier()) 42846 composeIdentifier("identifier", e); 42847 } 42848 if (element.hasUdiDeviceIdentifier()) { 42849 for (DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent e : element.getUdiDeviceIdentifier()) 42850 composeDeviceDefinitionUdiDeviceIdentifierComponent("udiDeviceIdentifier", e); 42851 } 42852 if (element.hasRegulatoryIdentifier()) { 42853 for (DeviceDefinition.DeviceDefinitionRegulatoryIdentifierComponent e : element.getRegulatoryIdentifier()) 42854 composeDeviceDefinitionRegulatoryIdentifierComponent("regulatoryIdentifier", e); 42855 } 42856 if (element.hasPartNumberElement()) { 42857 composeString("partNumber", element.getPartNumberElement()); 42858 } 42859 if (element.hasManufacturer()) { 42860 composeReference("manufacturer", element.getManufacturer()); 42861 } 42862 if (element.hasDeviceName()) { 42863 for (DeviceDefinition.DeviceDefinitionDeviceNameComponent e : element.getDeviceName()) 42864 composeDeviceDefinitionDeviceNameComponent("deviceName", e); 42865 } 42866 if (element.hasModelNumberElement()) { 42867 composeString("modelNumber", element.getModelNumberElement()); 42868 } 42869 if (element.hasClassification()) { 42870 for (DeviceDefinition.DeviceDefinitionClassificationComponent e : element.getClassification()) 42871 composeDeviceDefinitionClassificationComponent("classification", e); 42872 } 42873 if (element.hasConformsTo()) { 42874 for (DeviceDefinition.DeviceDefinitionConformsToComponent e : element.getConformsTo()) 42875 composeDeviceDefinitionConformsToComponent("conformsTo", e); 42876 } 42877 if (element.hasHasPart()) { 42878 for (DeviceDefinition.DeviceDefinitionHasPartComponent e : element.getHasPart()) 42879 composeDeviceDefinitionHasPartComponent("hasPart", e); 42880 } 42881 if (element.hasPackaging()) { 42882 for (DeviceDefinition.DeviceDefinitionPackagingComponent e : element.getPackaging()) 42883 composeDeviceDefinitionPackagingComponent("packaging", e); 42884 } 42885 if (element.hasVersion()) { 42886 for (DeviceDefinition.DeviceDefinitionVersionComponent e : element.getVersion()) 42887 composeDeviceDefinitionVersionComponent("version", e); 42888 } 42889 if (element.hasSafety()) { 42890 for (CodeableConcept e : element.getSafety()) 42891 composeCodeableConcept("safety", e); 42892 } 42893 if (element.hasShelfLifeStorage()) { 42894 for (ProductShelfLife e : element.getShelfLifeStorage()) 42895 composeProductShelfLife("shelfLifeStorage", e); 42896 } 42897 if (element.hasLanguageCode()) { 42898 for (CodeableConcept e : element.getLanguageCode()) 42899 composeCodeableConcept("languageCode", e); 42900 } 42901 if (element.hasProperty()) { 42902 for (DeviceDefinition.DeviceDefinitionPropertyComponent e : element.getProperty()) 42903 composeDeviceDefinitionPropertyComponent("property", e); 42904 } 42905 if (element.hasOwner()) { 42906 composeReference("owner", element.getOwner()); 42907 } 42908 if (element.hasContact()) { 42909 for (ContactPoint e : element.getContact()) 42910 composeContactPoint("contact", e); 42911 } 42912 if (element.hasLink()) { 42913 for (DeviceDefinition.DeviceDefinitionLinkComponent e : element.getLink()) 42914 composeDeviceDefinitionLinkComponent("link", e); 42915 } 42916 if (element.hasNote()) { 42917 for (Annotation e : element.getNote()) 42918 composeAnnotation("note", e); 42919 } 42920 if (element.hasMaterial()) { 42921 for (DeviceDefinition.DeviceDefinitionMaterialComponent e : element.getMaterial()) 42922 composeDeviceDefinitionMaterialComponent("material", e); 42923 } 42924 if (element.hasProductionIdentifierInUDI()) 42925 for (Enumeration<DeviceDefinition.DeviceProductionIdentifierInUDI> e : element.getProductionIdentifierInUDI()) 42926 composeEnumeration("productionIdentifierInUDI", e, new DeviceDefinition.DeviceProductionIdentifierInUDIEnumFactory()); 42927 if (element.hasGuideline()) { 42928 composeDeviceDefinitionGuidelineComponent("guideline", element.getGuideline()); 42929 } 42930 if (element.hasCorrectiveAction()) { 42931 composeDeviceDefinitionCorrectiveActionComponent("correctiveAction", element.getCorrectiveAction()); 42932 } 42933 if (element.hasChargeItem()) { 42934 for (DeviceDefinition.DeviceDefinitionChargeItemComponent e : element.getChargeItem()) 42935 composeDeviceDefinitionChargeItemComponent("chargeItem", e); 42936 } 42937 } 42938 42939 protected void composeDeviceDefinitionUdiDeviceIdentifierComponent(String name, DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent element) throws IOException { 42940 if (element != null) { 42941 composeElementAttributes(element); 42942 xml.enter(FHIR_NS, name); 42943 composeDeviceDefinitionUdiDeviceIdentifierComponentElements(element); 42944 composeElementClose(element); 42945 xml.exit(FHIR_NS, name); 42946 } 42947 } 42948 42949 protected void composeDeviceDefinitionUdiDeviceIdentifierComponentElements(DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent element) throws IOException { 42950 composeBackboneElementElements(element); 42951 if (element.hasDeviceIdentifierElement()) { 42952 composeString("deviceIdentifier", element.getDeviceIdentifierElement()); 42953 } 42954 if (element.hasIssuerElement()) { 42955 composeUri("issuer", element.getIssuerElement()); 42956 } 42957 if (element.hasJurisdictionElement()) { 42958 composeUri("jurisdiction", element.getJurisdictionElement()); 42959 } 42960 if (element.hasMarketDistribution()) { 42961 for (DeviceDefinition.UdiDeviceIdentifierMarketDistributionComponent e : element.getMarketDistribution()) 42962 composeDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponent("marketDistribution", e); 42963 } 42964 } 42965 42966 protected void composeDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponent(String name, DeviceDefinition.UdiDeviceIdentifierMarketDistributionComponent element) throws IOException { 42967 if (element != null) { 42968 composeElementAttributes(element); 42969 xml.enter(FHIR_NS, name); 42970 composeDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponentElements(element); 42971 composeElementClose(element); 42972 xml.exit(FHIR_NS, name); 42973 } 42974 } 42975 42976 protected void composeDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponentElements(DeviceDefinition.UdiDeviceIdentifierMarketDistributionComponent element) throws IOException { 42977 composeBackboneElementElements(element); 42978 if (element.hasMarketPeriod()) { 42979 composePeriod("marketPeriod", element.getMarketPeriod()); 42980 } 42981 if (element.hasSubJurisdictionElement()) { 42982 composeUri("subJurisdiction", element.getSubJurisdictionElement()); 42983 } 42984 } 42985 42986 protected void composeDeviceDefinitionRegulatoryIdentifierComponent(String name, DeviceDefinition.DeviceDefinitionRegulatoryIdentifierComponent element) throws IOException { 42987 if (element != null) { 42988 composeElementAttributes(element); 42989 xml.enter(FHIR_NS, name); 42990 composeDeviceDefinitionRegulatoryIdentifierComponentElements(element); 42991 composeElementClose(element); 42992 xml.exit(FHIR_NS, name); 42993 } 42994 } 42995 42996 protected void composeDeviceDefinitionRegulatoryIdentifierComponentElements(DeviceDefinition.DeviceDefinitionRegulatoryIdentifierComponent element) throws IOException { 42997 composeBackboneElementElements(element); 42998 if (element.hasTypeElement()) 42999 composeEnumeration("type", element.getTypeElement(), new DeviceDefinition.DeviceDefinitionRegulatoryIdentifierTypeEnumFactory()); 43000 if (element.hasDeviceIdentifierElement()) { 43001 composeString("deviceIdentifier", element.getDeviceIdentifierElement()); 43002 } 43003 if (element.hasIssuerElement()) { 43004 composeUri("issuer", element.getIssuerElement()); 43005 } 43006 if (element.hasJurisdictionElement()) { 43007 composeUri("jurisdiction", element.getJurisdictionElement()); 43008 } 43009 } 43010 43011 protected void composeDeviceDefinitionDeviceNameComponent(String name, DeviceDefinition.DeviceDefinitionDeviceNameComponent element) throws IOException { 43012 if (element != null) { 43013 composeElementAttributes(element); 43014 xml.enter(FHIR_NS, name); 43015 composeDeviceDefinitionDeviceNameComponentElements(element); 43016 composeElementClose(element); 43017 xml.exit(FHIR_NS, name); 43018 } 43019 } 43020 43021 protected void composeDeviceDefinitionDeviceNameComponentElements(DeviceDefinition.DeviceDefinitionDeviceNameComponent element) throws IOException { 43022 composeBackboneElementElements(element); 43023 if (element.hasNameElement()) { 43024 composeString("name", element.getNameElement()); 43025 } 43026 if (element.hasTypeElement()) 43027 composeEnumeration("type", element.getTypeElement(), new Enumerations.DeviceNameTypeEnumFactory()); 43028 } 43029 43030 protected void composeDeviceDefinitionClassificationComponent(String name, DeviceDefinition.DeviceDefinitionClassificationComponent element) throws IOException { 43031 if (element != null) { 43032 composeElementAttributes(element); 43033 xml.enter(FHIR_NS, name); 43034 composeDeviceDefinitionClassificationComponentElements(element); 43035 composeElementClose(element); 43036 xml.exit(FHIR_NS, name); 43037 } 43038 } 43039 43040 protected void composeDeviceDefinitionClassificationComponentElements(DeviceDefinition.DeviceDefinitionClassificationComponent element) throws IOException { 43041 composeBackboneElementElements(element); 43042 if (element.hasType()) { 43043 composeCodeableConcept("type", element.getType()); 43044 } 43045 if (element.hasJustification()) { 43046 for (RelatedArtifact e : element.getJustification()) 43047 composeRelatedArtifact("justification", e); 43048 } 43049 } 43050 43051 protected void composeDeviceDefinitionConformsToComponent(String name, DeviceDefinition.DeviceDefinitionConformsToComponent element) throws IOException { 43052 if (element != null) { 43053 composeElementAttributes(element); 43054 xml.enter(FHIR_NS, name); 43055 composeDeviceDefinitionConformsToComponentElements(element); 43056 composeElementClose(element); 43057 xml.exit(FHIR_NS, name); 43058 } 43059 } 43060 43061 protected void composeDeviceDefinitionConformsToComponentElements(DeviceDefinition.DeviceDefinitionConformsToComponent element) throws IOException { 43062 composeBackboneElementElements(element); 43063 if (element.hasCategory()) { 43064 composeCodeableConcept("category", element.getCategory()); 43065 } 43066 if (element.hasSpecification()) { 43067 composeCodeableConcept("specification", element.getSpecification()); 43068 } 43069 if (element.hasVersion()) { 43070 for (StringType e : element.getVersion()) 43071 composeString("version", e); 43072 } 43073 if (element.hasSource()) { 43074 for (RelatedArtifact e : element.getSource()) 43075 composeRelatedArtifact("source", e); 43076 } 43077 } 43078 43079 protected void composeDeviceDefinitionHasPartComponent(String name, DeviceDefinition.DeviceDefinitionHasPartComponent element) throws IOException { 43080 if (element != null) { 43081 composeElementAttributes(element); 43082 xml.enter(FHIR_NS, name); 43083 composeDeviceDefinitionHasPartComponentElements(element); 43084 composeElementClose(element); 43085 xml.exit(FHIR_NS, name); 43086 } 43087 } 43088 43089 protected void composeDeviceDefinitionHasPartComponentElements(DeviceDefinition.DeviceDefinitionHasPartComponent element) throws IOException { 43090 composeBackboneElementElements(element); 43091 if (element.hasReference()) { 43092 composeReference("reference", element.getReference()); 43093 } 43094 if (element.hasCountElement()) { 43095 composeInteger("count", element.getCountElement()); 43096 } 43097 } 43098 43099 protected void composeDeviceDefinitionPackagingComponent(String name, DeviceDefinition.DeviceDefinitionPackagingComponent element) throws IOException { 43100 if (element != null) { 43101 composeElementAttributes(element); 43102 xml.enter(FHIR_NS, name); 43103 composeDeviceDefinitionPackagingComponentElements(element); 43104 composeElementClose(element); 43105 xml.exit(FHIR_NS, name); 43106 } 43107 } 43108 43109 protected void composeDeviceDefinitionPackagingComponentElements(DeviceDefinition.DeviceDefinitionPackagingComponent element) throws IOException { 43110 composeBackboneElementElements(element); 43111 if (element.hasIdentifier()) { 43112 composeIdentifier("identifier", element.getIdentifier()); 43113 } 43114 if (element.hasType()) { 43115 composeCodeableConcept("type", element.getType()); 43116 } 43117 if (element.hasCountElement()) { 43118 composeInteger("count", element.getCountElement()); 43119 } 43120 if (element.hasDistributor()) { 43121 for (DeviceDefinition.PackagingDistributorComponent e : element.getDistributor()) 43122 composeDeviceDefinitionPackagingDistributorComponent("distributor", e); 43123 } 43124 if (element.hasUdiDeviceIdentifier()) { 43125 for (DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent e : element.getUdiDeviceIdentifier()) 43126 composeDeviceDefinitionUdiDeviceIdentifierComponent("udiDeviceIdentifier", e); 43127 } 43128 if (element.hasPackaging()) { 43129 for (DeviceDefinition.DeviceDefinitionPackagingComponent e : element.getPackaging()) 43130 composeDeviceDefinitionPackagingComponent("packaging", e); 43131 } 43132 } 43133 43134 protected void composeDeviceDefinitionPackagingDistributorComponent(String name, DeviceDefinition.PackagingDistributorComponent element) throws IOException { 43135 if (element != null) { 43136 composeElementAttributes(element); 43137 xml.enter(FHIR_NS, name); 43138 composeDeviceDefinitionPackagingDistributorComponentElements(element); 43139 composeElementClose(element); 43140 xml.exit(FHIR_NS, name); 43141 } 43142 } 43143 43144 protected void composeDeviceDefinitionPackagingDistributorComponentElements(DeviceDefinition.PackagingDistributorComponent element) throws IOException { 43145 composeBackboneElementElements(element); 43146 if (element.hasNameElement()) { 43147 composeString("name", element.getNameElement()); 43148 } 43149 if (element.hasOrganizationReference()) { 43150 for (Reference e : element.getOrganizationReference()) 43151 composeReference("organizationReference", e); 43152 } 43153 } 43154 43155 protected void composeDeviceDefinitionVersionComponent(String name, DeviceDefinition.DeviceDefinitionVersionComponent element) throws IOException { 43156 if (element != null) { 43157 composeElementAttributes(element); 43158 xml.enter(FHIR_NS, name); 43159 composeDeviceDefinitionVersionComponentElements(element); 43160 composeElementClose(element); 43161 xml.exit(FHIR_NS, name); 43162 } 43163 } 43164 43165 protected void composeDeviceDefinitionVersionComponentElements(DeviceDefinition.DeviceDefinitionVersionComponent element) throws IOException { 43166 composeBackboneElementElements(element); 43167 if (element.hasType()) { 43168 composeCodeableConcept("type", element.getType()); 43169 } 43170 if (element.hasComponent()) { 43171 composeIdentifier("component", element.getComponent()); 43172 } 43173 if (element.hasValueElement()) { 43174 composeString("value", element.getValueElement()); 43175 } 43176 } 43177 43178 protected void composeDeviceDefinitionPropertyComponent(String name, DeviceDefinition.DeviceDefinitionPropertyComponent element) throws IOException { 43179 if (element != null) { 43180 composeElementAttributes(element); 43181 xml.enter(FHIR_NS, name); 43182 composeDeviceDefinitionPropertyComponentElements(element); 43183 composeElementClose(element); 43184 xml.exit(FHIR_NS, name); 43185 } 43186 } 43187 43188 protected void composeDeviceDefinitionPropertyComponentElements(DeviceDefinition.DeviceDefinitionPropertyComponent element) throws IOException { 43189 composeBackboneElementElements(element); 43190 if (element.hasType()) { 43191 composeCodeableConcept("type", element.getType()); 43192 } 43193 if (element.hasValue()) { 43194 composeType("value", element.getValue()); 43195 } } 43196 43197 protected void composeDeviceDefinitionLinkComponent(String name, DeviceDefinition.DeviceDefinitionLinkComponent element) throws IOException { 43198 if (element != null) { 43199 composeElementAttributes(element); 43200 xml.enter(FHIR_NS, name); 43201 composeDeviceDefinitionLinkComponentElements(element); 43202 composeElementClose(element); 43203 xml.exit(FHIR_NS, name); 43204 } 43205 } 43206 43207 protected void composeDeviceDefinitionLinkComponentElements(DeviceDefinition.DeviceDefinitionLinkComponent element) throws IOException { 43208 composeBackboneElementElements(element); 43209 if (element.hasRelation()) { 43210 composeCoding("relation", element.getRelation()); 43211 } 43212 if (element.hasRelatedDevice()) { 43213 composeCodeableReference("relatedDevice", element.getRelatedDevice()); 43214 } 43215 } 43216 43217 protected void composeDeviceDefinitionMaterialComponent(String name, DeviceDefinition.DeviceDefinitionMaterialComponent element) throws IOException { 43218 if (element != null) { 43219 composeElementAttributes(element); 43220 xml.enter(FHIR_NS, name); 43221 composeDeviceDefinitionMaterialComponentElements(element); 43222 composeElementClose(element); 43223 xml.exit(FHIR_NS, name); 43224 } 43225 } 43226 43227 protected void composeDeviceDefinitionMaterialComponentElements(DeviceDefinition.DeviceDefinitionMaterialComponent element) throws IOException { 43228 composeBackboneElementElements(element); 43229 if (element.hasSubstance()) { 43230 composeCodeableConcept("substance", element.getSubstance()); 43231 } 43232 if (element.hasAlternateElement()) { 43233 composeBoolean("alternate", element.getAlternateElement()); 43234 } 43235 if (element.hasAllergenicIndicatorElement()) { 43236 composeBoolean("allergenicIndicator", element.getAllergenicIndicatorElement()); 43237 } 43238 } 43239 43240 protected void composeDeviceDefinitionGuidelineComponent(String name, DeviceDefinition.DeviceDefinitionGuidelineComponent element) throws IOException { 43241 if (element != null) { 43242 composeElementAttributes(element); 43243 xml.enter(FHIR_NS, name); 43244 composeDeviceDefinitionGuidelineComponentElements(element); 43245 composeElementClose(element); 43246 xml.exit(FHIR_NS, name); 43247 } 43248 } 43249 43250 protected void composeDeviceDefinitionGuidelineComponentElements(DeviceDefinition.DeviceDefinitionGuidelineComponent element) throws IOException { 43251 composeBackboneElementElements(element); 43252 if (element.hasUseContext()) { 43253 for (UsageContext e : element.getUseContext()) 43254 composeUsageContext("useContext", e); 43255 } 43256 if (element.hasUsageInstructionElement()) { 43257 composeMarkdown("usageInstruction", element.getUsageInstructionElement()); 43258 } 43259 if (element.hasRelatedArtifact()) { 43260 for (RelatedArtifact e : element.getRelatedArtifact()) 43261 composeRelatedArtifact("relatedArtifact", e); 43262 } 43263 if (element.hasIndication()) { 43264 for (CodeableConcept e : element.getIndication()) 43265 composeCodeableConcept("indication", e); 43266 } 43267 if (element.hasContraindication()) { 43268 for (CodeableConcept e : element.getContraindication()) 43269 composeCodeableConcept("contraindication", e); 43270 } 43271 if (element.hasWarning()) { 43272 for (CodeableConcept e : element.getWarning()) 43273 composeCodeableConcept("warning", e); 43274 } 43275 if (element.hasIntendedUseElement()) { 43276 composeString("intendedUse", element.getIntendedUseElement()); 43277 } 43278 } 43279 43280 protected void composeDeviceDefinitionCorrectiveActionComponent(String name, DeviceDefinition.DeviceDefinitionCorrectiveActionComponent element) throws IOException { 43281 if (element != null) { 43282 composeElementAttributes(element); 43283 xml.enter(FHIR_NS, name); 43284 composeDeviceDefinitionCorrectiveActionComponentElements(element); 43285 composeElementClose(element); 43286 xml.exit(FHIR_NS, name); 43287 } 43288 } 43289 43290 protected void composeDeviceDefinitionCorrectiveActionComponentElements(DeviceDefinition.DeviceDefinitionCorrectiveActionComponent element) throws IOException { 43291 composeBackboneElementElements(element); 43292 if (element.hasRecallElement()) { 43293 composeBoolean("recall", element.getRecallElement()); 43294 } 43295 if (element.hasScopeElement()) 43296 composeEnumeration("scope", element.getScopeElement(), new DeviceDefinition.DeviceCorrectiveActionScopeEnumFactory()); 43297 if (element.hasPeriod()) { 43298 composePeriod("period", element.getPeriod()); 43299 } 43300 } 43301 43302 protected void composeDeviceDefinitionChargeItemComponent(String name, DeviceDefinition.DeviceDefinitionChargeItemComponent element) throws IOException { 43303 if (element != null) { 43304 composeElementAttributes(element); 43305 xml.enter(FHIR_NS, name); 43306 composeDeviceDefinitionChargeItemComponentElements(element); 43307 composeElementClose(element); 43308 xml.exit(FHIR_NS, name); 43309 } 43310 } 43311 43312 protected void composeDeviceDefinitionChargeItemComponentElements(DeviceDefinition.DeviceDefinitionChargeItemComponent element) throws IOException { 43313 composeBackboneElementElements(element); 43314 if (element.hasChargeItemCode()) { 43315 composeCodeableReference("chargeItemCode", element.getChargeItemCode()); 43316 } 43317 if (element.hasCount()) { 43318 composeQuantity("count", element.getCount()); 43319 } 43320 if (element.hasEffectivePeriod()) { 43321 composePeriod("effectivePeriod", element.getEffectivePeriod()); 43322 } 43323 if (element.hasUseContext()) { 43324 for (UsageContext e : element.getUseContext()) 43325 composeUsageContext("useContext", e); 43326 } 43327 } 43328 43329 protected void composeDeviceDispense(String name, DeviceDispense element) throws IOException { 43330 if (element != null) { 43331 composeResourceAttributes(element); 43332 xml.enter(FHIR_NS, name); 43333 composeDeviceDispenseElements(element); 43334 composeElementClose(element); 43335 xml.exit(FHIR_NS, name); 43336 } 43337 } 43338 43339 protected void composeDeviceDispenseElements(DeviceDispense element) throws IOException { 43340 composeDomainResourceElements(element); 43341 if (element.hasIdentifier()) { 43342 for (Identifier e : element.getIdentifier()) 43343 composeIdentifier("identifier", e); 43344 } 43345 if (element.hasBasedOn()) { 43346 for (Reference e : element.getBasedOn()) 43347 composeReference("basedOn", e); 43348 } 43349 if (element.hasPartOf()) { 43350 for (Reference e : element.getPartOf()) 43351 composeReference("partOf", e); 43352 } 43353 if (element.hasStatusElement()) 43354 composeEnumeration("status", element.getStatusElement(), new DeviceDispense.DeviceDispenseStatusCodesEnumFactory()); 43355 if (element.hasStatusReason()) { 43356 composeCodeableReference("statusReason", element.getStatusReason()); 43357 } 43358 if (element.hasCategory()) { 43359 for (CodeableConcept e : element.getCategory()) 43360 composeCodeableConcept("category", e); 43361 } 43362 if (element.hasDevice()) { 43363 composeCodeableReference("device", element.getDevice()); 43364 } 43365 if (element.hasSubject()) { 43366 composeReference("subject", element.getSubject()); 43367 } 43368 if (element.hasReceiver()) { 43369 composeReference("receiver", element.getReceiver()); 43370 } 43371 if (element.hasEncounter()) { 43372 composeReference("encounter", element.getEncounter()); 43373 } 43374 if (element.hasSupportingInformation()) { 43375 for (Reference e : element.getSupportingInformation()) 43376 composeReference("supportingInformation", e); 43377 } 43378 if (element.hasPerformer()) { 43379 for (DeviceDispense.DeviceDispensePerformerComponent e : element.getPerformer()) 43380 composeDeviceDispensePerformerComponent("performer", e); 43381 } 43382 if (element.hasLocation()) { 43383 composeReference("location", element.getLocation()); 43384 } 43385 if (element.hasType()) { 43386 composeCodeableConcept("type", element.getType()); 43387 } 43388 if (element.hasQuantity()) { 43389 composeQuantity("quantity", element.getQuantity()); 43390 } 43391 if (element.hasPreparedDateElement()) { 43392 composeDateTime("preparedDate", element.getPreparedDateElement()); 43393 } 43394 if (element.hasWhenHandedOverElement()) { 43395 composeDateTime("whenHandedOver", element.getWhenHandedOverElement()); 43396 } 43397 if (element.hasDestination()) { 43398 composeReference("destination", element.getDestination()); 43399 } 43400 if (element.hasNote()) { 43401 for (Annotation e : element.getNote()) 43402 composeAnnotation("note", e); 43403 } 43404 if (element.hasUsageInstructionElement()) { 43405 composeMarkdown("usageInstruction", element.getUsageInstructionElement()); 43406 } 43407 if (element.hasEventHistory()) { 43408 for (Reference e : element.getEventHistory()) 43409 composeReference("eventHistory", e); 43410 } 43411 } 43412 43413 protected void composeDeviceDispensePerformerComponent(String name, DeviceDispense.DeviceDispensePerformerComponent element) throws IOException { 43414 if (element != null) { 43415 composeElementAttributes(element); 43416 xml.enter(FHIR_NS, name); 43417 composeDeviceDispensePerformerComponentElements(element); 43418 composeElementClose(element); 43419 xml.exit(FHIR_NS, name); 43420 } 43421 } 43422 43423 protected void composeDeviceDispensePerformerComponentElements(DeviceDispense.DeviceDispensePerformerComponent element) throws IOException { 43424 composeBackboneElementElements(element); 43425 if (element.hasFunction()) { 43426 composeCodeableConcept("function", element.getFunction()); 43427 } 43428 if (element.hasActor()) { 43429 composeReference("actor", element.getActor()); 43430 } 43431 } 43432 43433 protected void composeDeviceMetric(String name, DeviceMetric element) throws IOException { 43434 if (element != null) { 43435 composeResourceAttributes(element); 43436 xml.enter(FHIR_NS, name); 43437 composeDeviceMetricElements(element); 43438 composeElementClose(element); 43439 xml.exit(FHIR_NS, name); 43440 } 43441 } 43442 43443 protected void composeDeviceMetricElements(DeviceMetric element) throws IOException { 43444 composeDomainResourceElements(element); 43445 if (element.hasIdentifier()) { 43446 for (Identifier e : element.getIdentifier()) 43447 composeIdentifier("identifier", e); 43448 } 43449 if (element.hasType()) { 43450 composeCodeableConcept("type", element.getType()); 43451 } 43452 if (element.hasUnit()) { 43453 composeCodeableConcept("unit", element.getUnit()); 43454 } 43455 if (element.hasDevice()) { 43456 composeReference("device", element.getDevice()); 43457 } 43458 if (element.hasOperationalStatusElement()) 43459 composeEnumeration("operationalStatus", element.getOperationalStatusElement(), new DeviceMetric.DeviceMetricOperationalStatusEnumFactory()); 43460 if (element.hasColorElement()) { 43461 composeCode("color", element.getColorElement()); 43462 } 43463 if (element.hasCategoryElement()) 43464 composeEnumeration("category", element.getCategoryElement(), new DeviceMetric.DeviceMetricCategoryEnumFactory()); 43465 if (element.hasMeasurementFrequency()) { 43466 composeQuantity("measurementFrequency", element.getMeasurementFrequency()); 43467 } 43468 if (element.hasCalibration()) { 43469 for (DeviceMetric.DeviceMetricCalibrationComponent e : element.getCalibration()) 43470 composeDeviceMetricCalibrationComponent("calibration", e); 43471 } 43472 } 43473 43474 protected void composeDeviceMetricCalibrationComponent(String name, DeviceMetric.DeviceMetricCalibrationComponent element) throws IOException { 43475 if (element != null) { 43476 composeElementAttributes(element); 43477 xml.enter(FHIR_NS, name); 43478 composeDeviceMetricCalibrationComponentElements(element); 43479 composeElementClose(element); 43480 xml.exit(FHIR_NS, name); 43481 } 43482 } 43483 43484 protected void composeDeviceMetricCalibrationComponentElements(DeviceMetric.DeviceMetricCalibrationComponent element) throws IOException { 43485 composeBackboneElementElements(element); 43486 if (element.hasTypeElement()) 43487 composeEnumeration("type", element.getTypeElement(), new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory()); 43488 if (element.hasStateElement()) 43489 composeEnumeration("state", element.getStateElement(), new DeviceMetric.DeviceMetricCalibrationStateEnumFactory()); 43490 if (element.hasTimeElement()) { 43491 composeInstant("time", element.getTimeElement()); 43492 } 43493 } 43494 43495 protected void composeDeviceRequest(String name, DeviceRequest element) throws IOException { 43496 if (element != null) { 43497 composeResourceAttributes(element); 43498 xml.enter(FHIR_NS, name); 43499 composeDeviceRequestElements(element); 43500 composeElementClose(element); 43501 xml.exit(FHIR_NS, name); 43502 } 43503 } 43504 43505 protected void composeDeviceRequestElements(DeviceRequest element) throws IOException { 43506 composeDomainResourceElements(element); 43507 if (element.hasIdentifier()) { 43508 for (Identifier e : element.getIdentifier()) 43509 composeIdentifier("identifier", e); 43510 } 43511 if (element.hasInstantiatesCanonical()) { 43512 for (CanonicalType e : element.getInstantiatesCanonical()) 43513 composeCanonical("instantiatesCanonical", e); 43514 } 43515 if (element.hasInstantiatesUri()) { 43516 for (UriType e : element.getInstantiatesUri()) 43517 composeUri("instantiatesUri", e); 43518 } 43519 if (element.hasBasedOn()) { 43520 for (Reference e : element.getBasedOn()) 43521 composeReference("basedOn", e); 43522 } 43523 if (element.hasReplaces()) { 43524 for (Reference e : element.getReplaces()) 43525 composeReference("replaces", e); 43526 } 43527 if (element.hasGroupIdentifier()) { 43528 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 43529 } 43530 if (element.hasStatusElement()) 43531 composeEnumeration("status", element.getStatusElement(), new Enumerations.RequestStatusEnumFactory()); 43532 if (element.hasIntentElement()) 43533 composeEnumeration("intent", element.getIntentElement(), new Enumerations.RequestIntentEnumFactory()); 43534 if (element.hasPriorityElement()) 43535 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 43536 if (element.hasDoNotPerformElement()) { 43537 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 43538 } 43539 if (element.hasCode()) { 43540 composeCodeableReference("code", element.getCode()); 43541 } 43542 if (element.hasQuantityElement()) { 43543 composeInteger("quantity", element.getQuantityElement()); 43544 } 43545 if (element.hasParameter()) { 43546 for (DeviceRequest.DeviceRequestParameterComponent e : element.getParameter()) 43547 composeDeviceRequestParameterComponent("parameter", e); 43548 } 43549 if (element.hasSubject()) { 43550 composeReference("subject", element.getSubject()); 43551 } 43552 if (element.hasEncounter()) { 43553 composeReference("encounter", element.getEncounter()); 43554 } 43555 if (element.hasOccurrence()) { 43556 composeType("occurrence", element.getOccurrence()); 43557 } if (element.hasAuthoredOnElement()) { 43558 composeDateTime("authoredOn", element.getAuthoredOnElement()); 43559 } 43560 if (element.hasRequester()) { 43561 composeReference("requester", element.getRequester()); 43562 } 43563 if (element.hasPerformer()) { 43564 composeCodeableReference("performer", element.getPerformer()); 43565 } 43566 if (element.hasReason()) { 43567 for (CodeableReference e : element.getReason()) 43568 composeCodeableReference("reason", e); 43569 } 43570 if (element.hasAsNeededElement()) { 43571 composeBoolean("asNeeded", element.getAsNeededElement()); 43572 } 43573 if (element.hasAsNeededFor()) { 43574 composeCodeableConcept("asNeededFor", element.getAsNeededFor()); 43575 } 43576 if (element.hasInsurance()) { 43577 for (Reference e : element.getInsurance()) 43578 composeReference("insurance", e); 43579 } 43580 if (element.hasSupportingInfo()) { 43581 for (Reference e : element.getSupportingInfo()) 43582 composeReference("supportingInfo", e); 43583 } 43584 if (element.hasNote()) { 43585 for (Annotation e : element.getNote()) 43586 composeAnnotation("note", e); 43587 } 43588 if (element.hasRelevantHistory()) { 43589 for (Reference e : element.getRelevantHistory()) 43590 composeReference("relevantHistory", e); 43591 } 43592 } 43593 43594 protected void composeDeviceRequestParameterComponent(String name, DeviceRequest.DeviceRequestParameterComponent element) throws IOException { 43595 if (element != null) { 43596 composeElementAttributes(element); 43597 xml.enter(FHIR_NS, name); 43598 composeDeviceRequestParameterComponentElements(element); 43599 composeElementClose(element); 43600 xml.exit(FHIR_NS, name); 43601 } 43602 } 43603 43604 protected void composeDeviceRequestParameterComponentElements(DeviceRequest.DeviceRequestParameterComponent element) throws IOException { 43605 composeBackboneElementElements(element); 43606 if (element.hasCode()) { 43607 composeCodeableConcept("code", element.getCode()); 43608 } 43609 if (element.hasValue()) { 43610 composeType("value", element.getValue()); 43611 } } 43612 43613 protected void composeDeviceUsage(String name, DeviceUsage element) throws IOException { 43614 if (element != null) { 43615 composeResourceAttributes(element); 43616 xml.enter(FHIR_NS, name); 43617 composeDeviceUsageElements(element); 43618 composeElementClose(element); 43619 xml.exit(FHIR_NS, name); 43620 } 43621 } 43622 43623 protected void composeDeviceUsageElements(DeviceUsage element) throws IOException { 43624 composeDomainResourceElements(element); 43625 if (element.hasIdentifier()) { 43626 for (Identifier e : element.getIdentifier()) 43627 composeIdentifier("identifier", e); 43628 } 43629 if (element.hasBasedOn()) { 43630 for (Reference e : element.getBasedOn()) 43631 composeReference("basedOn", e); 43632 } 43633 if (element.hasStatusElement()) 43634 composeEnumeration("status", element.getStatusElement(), new DeviceUsage.DeviceUsageStatusEnumFactory()); 43635 if (element.hasCategory()) { 43636 for (CodeableConcept e : element.getCategory()) 43637 composeCodeableConcept("category", e); 43638 } 43639 if (element.hasPatient()) { 43640 composeReference("patient", element.getPatient()); 43641 } 43642 if (element.hasDerivedFrom()) { 43643 for (Reference e : element.getDerivedFrom()) 43644 composeReference("derivedFrom", e); 43645 } 43646 if (element.hasContext()) { 43647 composeReference("context", element.getContext()); 43648 } 43649 if (element.hasTiming()) { 43650 composeType("timing", element.getTiming()); 43651 } if (element.hasDateAssertedElement()) { 43652 composeDateTime("dateAsserted", element.getDateAssertedElement()); 43653 } 43654 if (element.hasUsageStatus()) { 43655 composeCodeableConcept("usageStatus", element.getUsageStatus()); 43656 } 43657 if (element.hasUsageReason()) { 43658 for (CodeableConcept e : element.getUsageReason()) 43659 composeCodeableConcept("usageReason", e); 43660 } 43661 if (element.hasAdherence()) { 43662 composeDeviceUsageAdherenceComponent("adherence", element.getAdherence()); 43663 } 43664 if (element.hasInformationSource()) { 43665 composeReference("informationSource", element.getInformationSource()); 43666 } 43667 if (element.hasDevice()) { 43668 composeCodeableReference("device", element.getDevice()); 43669 } 43670 if (element.hasReason()) { 43671 for (CodeableReference e : element.getReason()) 43672 composeCodeableReference("reason", e); 43673 } 43674 if (element.hasBodySite()) { 43675 composeCodeableReference("bodySite", element.getBodySite()); 43676 } 43677 if (element.hasNote()) { 43678 for (Annotation e : element.getNote()) 43679 composeAnnotation("note", e); 43680 } 43681 } 43682 43683 protected void composeDeviceUsageAdherenceComponent(String name, DeviceUsage.DeviceUsageAdherenceComponent element) throws IOException { 43684 if (element != null) { 43685 composeElementAttributes(element); 43686 xml.enter(FHIR_NS, name); 43687 composeDeviceUsageAdherenceComponentElements(element); 43688 composeElementClose(element); 43689 xml.exit(FHIR_NS, name); 43690 } 43691 } 43692 43693 protected void composeDeviceUsageAdherenceComponentElements(DeviceUsage.DeviceUsageAdherenceComponent element) throws IOException { 43694 composeBackboneElementElements(element); 43695 if (element.hasCode()) { 43696 composeCodeableConcept("code", element.getCode()); 43697 } 43698 if (element.hasReason()) { 43699 for (CodeableConcept e : element.getReason()) 43700 composeCodeableConcept("reason", e); 43701 } 43702 } 43703 43704 protected void composeDiagnosticReport(String name, DiagnosticReport element) throws IOException { 43705 if (element != null) { 43706 composeResourceAttributes(element); 43707 xml.enter(FHIR_NS, name); 43708 composeDiagnosticReportElements(element); 43709 composeElementClose(element); 43710 xml.exit(FHIR_NS, name); 43711 } 43712 } 43713 43714 protected void composeDiagnosticReportElements(DiagnosticReport element) throws IOException { 43715 composeDomainResourceElements(element); 43716 if (element.hasIdentifier()) { 43717 for (Identifier e : element.getIdentifier()) 43718 composeIdentifier("identifier", e); 43719 } 43720 if (element.hasBasedOn()) { 43721 for (Reference e : element.getBasedOn()) 43722 composeReference("basedOn", e); 43723 } 43724 if (element.hasStatusElement()) 43725 composeEnumeration("status", element.getStatusElement(), new DiagnosticReport.DiagnosticReportStatusEnumFactory()); 43726 if (element.hasCategory()) { 43727 for (CodeableConcept e : element.getCategory()) 43728 composeCodeableConcept("category", e); 43729 } 43730 if (element.hasCode()) { 43731 composeCodeableConcept("code", element.getCode()); 43732 } 43733 if (element.hasSubject()) { 43734 composeReference("subject", element.getSubject()); 43735 } 43736 if (element.hasEncounter()) { 43737 composeReference("encounter", element.getEncounter()); 43738 } 43739 if (element.hasEffective()) { 43740 composeType("effective", element.getEffective()); 43741 } if (element.hasIssuedElement()) { 43742 composeInstant("issued", element.getIssuedElement()); 43743 } 43744 if (element.hasPerformer()) { 43745 for (Reference e : element.getPerformer()) 43746 composeReference("performer", e); 43747 } 43748 if (element.hasResultsInterpreter()) { 43749 for (Reference e : element.getResultsInterpreter()) 43750 composeReference("resultsInterpreter", e); 43751 } 43752 if (element.hasSpecimen()) { 43753 for (Reference e : element.getSpecimen()) 43754 composeReference("specimen", e); 43755 } 43756 if (element.hasResult()) { 43757 for (Reference e : element.getResult()) 43758 composeReference("result", e); 43759 } 43760 if (element.hasNote()) { 43761 for (Annotation e : element.getNote()) 43762 composeAnnotation("note", e); 43763 } 43764 if (element.hasStudy()) { 43765 for (Reference e : element.getStudy()) 43766 composeReference("study", e); 43767 } 43768 if (element.hasSupportingInfo()) { 43769 for (DiagnosticReport.DiagnosticReportSupportingInfoComponent e : element.getSupportingInfo()) 43770 composeDiagnosticReportSupportingInfoComponent("supportingInfo", e); 43771 } 43772 if (element.hasMedia()) { 43773 for (DiagnosticReport.DiagnosticReportMediaComponent e : element.getMedia()) 43774 composeDiagnosticReportMediaComponent("media", e); 43775 } 43776 if (element.hasComposition()) { 43777 composeReference("composition", element.getComposition()); 43778 } 43779 if (element.hasConclusionElement()) { 43780 composeMarkdown("conclusion", element.getConclusionElement()); 43781 } 43782 if (element.hasConclusionCode()) { 43783 for (CodeableConcept e : element.getConclusionCode()) 43784 composeCodeableConcept("conclusionCode", e); 43785 } 43786 if (element.hasPresentedForm()) { 43787 for (Attachment e : element.getPresentedForm()) 43788 composeAttachment("presentedForm", e); 43789 } 43790 } 43791 43792 protected void composeDiagnosticReportSupportingInfoComponent(String name, DiagnosticReport.DiagnosticReportSupportingInfoComponent element) throws IOException { 43793 if (element != null) { 43794 composeElementAttributes(element); 43795 xml.enter(FHIR_NS, name); 43796 composeDiagnosticReportSupportingInfoComponentElements(element); 43797 composeElementClose(element); 43798 xml.exit(FHIR_NS, name); 43799 } 43800 } 43801 43802 protected void composeDiagnosticReportSupportingInfoComponentElements(DiagnosticReport.DiagnosticReportSupportingInfoComponent element) throws IOException { 43803 composeBackboneElementElements(element); 43804 if (element.hasType()) { 43805 composeCodeableConcept("type", element.getType()); 43806 } 43807 if (element.hasReference()) { 43808 composeReference("reference", element.getReference()); 43809 } 43810 } 43811 43812 protected void composeDiagnosticReportMediaComponent(String name, DiagnosticReport.DiagnosticReportMediaComponent element) throws IOException { 43813 if (element != null) { 43814 composeElementAttributes(element); 43815 xml.enter(FHIR_NS, name); 43816 composeDiagnosticReportMediaComponentElements(element); 43817 composeElementClose(element); 43818 xml.exit(FHIR_NS, name); 43819 } 43820 } 43821 43822 protected void composeDiagnosticReportMediaComponentElements(DiagnosticReport.DiagnosticReportMediaComponent element) throws IOException { 43823 composeBackboneElementElements(element); 43824 if (element.hasCommentElement()) { 43825 composeString("comment", element.getCommentElement()); 43826 } 43827 if (element.hasLink()) { 43828 composeReference("link", element.getLink()); 43829 } 43830 } 43831 43832 protected void composeDocumentReference(String name, DocumentReference element) throws IOException { 43833 if (element != null) { 43834 composeResourceAttributes(element); 43835 xml.enter(FHIR_NS, name); 43836 composeDocumentReferenceElements(element); 43837 composeElementClose(element); 43838 xml.exit(FHIR_NS, name); 43839 } 43840 } 43841 43842 protected void composeDocumentReferenceElements(DocumentReference element) throws IOException { 43843 composeDomainResourceElements(element); 43844 if (element.hasIdentifier()) { 43845 for (Identifier e : element.getIdentifier()) 43846 composeIdentifier("identifier", e); 43847 } 43848 if (element.hasVersionElement()) { 43849 composeString("version", element.getVersionElement()); 43850 } 43851 if (element.hasBasedOn()) { 43852 for (Reference e : element.getBasedOn()) 43853 composeReference("basedOn", e); 43854 } 43855 if (element.hasStatusElement()) 43856 composeEnumeration("status", element.getStatusElement(), new DocumentReference.DocumentReferenceStatusEnumFactory()); 43857 if (element.hasDocStatusElement()) 43858 composeEnumeration("docStatus", element.getDocStatusElement(), new Enumerations.CompositionStatusEnumFactory()); 43859 if (element.hasModality()) { 43860 for (CodeableConcept e : element.getModality()) 43861 composeCodeableConcept("modality", e); 43862 } 43863 if (element.hasType()) { 43864 composeCodeableConcept("type", element.getType()); 43865 } 43866 if (element.hasCategory()) { 43867 for (CodeableConcept e : element.getCategory()) 43868 composeCodeableConcept("category", e); 43869 } 43870 if (element.hasSubject()) { 43871 composeReference("subject", element.getSubject()); 43872 } 43873 if (element.hasContext()) { 43874 for (Reference e : element.getContext()) 43875 composeReference("context", e); 43876 } 43877 if (element.hasEvent()) { 43878 for (CodeableReference e : element.getEvent()) 43879 composeCodeableReference("event", e); 43880 } 43881 if (element.hasBodySite()) { 43882 for (CodeableReference e : element.getBodySite()) 43883 composeCodeableReference("bodySite", e); 43884 } 43885 if (element.hasFacilityType()) { 43886 composeCodeableConcept("facilityType", element.getFacilityType()); 43887 } 43888 if (element.hasPracticeSetting()) { 43889 composeCodeableConcept("practiceSetting", element.getPracticeSetting()); 43890 } 43891 if (element.hasPeriod()) { 43892 composePeriod("period", element.getPeriod()); 43893 } 43894 if (element.hasDateElement()) { 43895 composeInstant("date", element.getDateElement()); 43896 } 43897 if (element.hasAuthor()) { 43898 for (Reference e : element.getAuthor()) 43899 composeReference("author", e); 43900 } 43901 if (element.hasAttester()) { 43902 for (DocumentReference.DocumentReferenceAttesterComponent e : element.getAttester()) 43903 composeDocumentReferenceAttesterComponent("attester", e); 43904 } 43905 if (element.hasCustodian()) { 43906 composeReference("custodian", element.getCustodian()); 43907 } 43908 if (element.hasRelatesTo()) { 43909 for (DocumentReference.DocumentReferenceRelatesToComponent e : element.getRelatesTo()) 43910 composeDocumentReferenceRelatesToComponent("relatesTo", e); 43911 } 43912 if (element.hasDescriptionElement()) { 43913 composeMarkdown("description", element.getDescriptionElement()); 43914 } 43915 if (element.hasSecurityLabel()) { 43916 for (CodeableConcept e : element.getSecurityLabel()) 43917 composeCodeableConcept("securityLabel", e); 43918 } 43919 if (element.hasContent()) { 43920 for (DocumentReference.DocumentReferenceContentComponent e : element.getContent()) 43921 composeDocumentReferenceContentComponent("content", e); 43922 } 43923 } 43924 43925 protected void composeDocumentReferenceAttesterComponent(String name, DocumentReference.DocumentReferenceAttesterComponent element) throws IOException { 43926 if (element != null) { 43927 composeElementAttributes(element); 43928 xml.enter(FHIR_NS, name); 43929 composeDocumentReferenceAttesterComponentElements(element); 43930 composeElementClose(element); 43931 xml.exit(FHIR_NS, name); 43932 } 43933 } 43934 43935 protected void composeDocumentReferenceAttesterComponentElements(DocumentReference.DocumentReferenceAttesterComponent element) throws IOException { 43936 composeBackboneElementElements(element); 43937 if (element.hasMode()) { 43938 composeCodeableConcept("mode", element.getMode()); 43939 } 43940 if (element.hasTimeElement()) { 43941 composeDateTime("time", element.getTimeElement()); 43942 } 43943 if (element.hasParty()) { 43944 composeReference("party", element.getParty()); 43945 } 43946 } 43947 43948 protected void composeDocumentReferenceRelatesToComponent(String name, DocumentReference.DocumentReferenceRelatesToComponent element) throws IOException { 43949 if (element != null) { 43950 composeElementAttributes(element); 43951 xml.enter(FHIR_NS, name); 43952 composeDocumentReferenceRelatesToComponentElements(element); 43953 composeElementClose(element); 43954 xml.exit(FHIR_NS, name); 43955 } 43956 } 43957 43958 protected void composeDocumentReferenceRelatesToComponentElements(DocumentReference.DocumentReferenceRelatesToComponent element) throws IOException { 43959 composeBackboneElementElements(element); 43960 if (element.hasCode()) { 43961 composeCodeableConcept("code", element.getCode()); 43962 } 43963 if (element.hasTarget()) { 43964 composeReference("target", element.getTarget()); 43965 } 43966 } 43967 43968 protected void composeDocumentReferenceContentComponent(String name, DocumentReference.DocumentReferenceContentComponent element) throws IOException { 43969 if (element != null) { 43970 composeElementAttributes(element); 43971 xml.enter(FHIR_NS, name); 43972 composeDocumentReferenceContentComponentElements(element); 43973 composeElementClose(element); 43974 xml.exit(FHIR_NS, name); 43975 } 43976 } 43977 43978 protected void composeDocumentReferenceContentComponentElements(DocumentReference.DocumentReferenceContentComponent element) throws IOException { 43979 composeBackboneElementElements(element); 43980 if (element.hasAttachment()) { 43981 composeAttachment("attachment", element.getAttachment()); 43982 } 43983 if (element.hasProfile()) { 43984 for (DocumentReference.DocumentReferenceContentProfileComponent e : element.getProfile()) 43985 composeDocumentReferenceContentProfileComponent("profile", e); 43986 } 43987 } 43988 43989 protected void composeDocumentReferenceContentProfileComponent(String name, DocumentReference.DocumentReferenceContentProfileComponent element) throws IOException { 43990 if (element != null) { 43991 composeElementAttributes(element); 43992 xml.enter(FHIR_NS, name); 43993 composeDocumentReferenceContentProfileComponentElements(element); 43994 composeElementClose(element); 43995 xml.exit(FHIR_NS, name); 43996 } 43997 } 43998 43999 protected void composeDocumentReferenceContentProfileComponentElements(DocumentReference.DocumentReferenceContentProfileComponent element) throws IOException { 44000 composeBackboneElementElements(element); 44001 if (element.hasValue()) { 44002 composeType("value", element.getValue()); 44003 } } 44004 44005 protected void composeEncounter(String name, Encounter element) throws IOException { 44006 if (element != null) { 44007 composeResourceAttributes(element); 44008 xml.enter(FHIR_NS, name); 44009 composeEncounterElements(element); 44010 composeElementClose(element); 44011 xml.exit(FHIR_NS, name); 44012 } 44013 } 44014 44015 protected void composeEncounterElements(Encounter element) throws IOException { 44016 composeDomainResourceElements(element); 44017 if (element.hasIdentifier()) { 44018 for (Identifier e : element.getIdentifier()) 44019 composeIdentifier("identifier", e); 44020 } 44021 if (element.hasStatusElement()) 44022 composeEnumeration("status", element.getStatusElement(), new Enumerations.EncounterStatusEnumFactory()); 44023 if (element.hasClass_()) { 44024 for (CodeableConcept e : element.getClass_()) 44025 composeCodeableConcept("class", e); 44026 } 44027 if (element.hasPriority()) { 44028 composeCodeableConcept("priority", element.getPriority()); 44029 } 44030 if (element.hasType()) { 44031 for (CodeableConcept e : element.getType()) 44032 composeCodeableConcept("type", e); 44033 } 44034 if (element.hasServiceType()) { 44035 for (CodeableReference e : element.getServiceType()) 44036 composeCodeableReference("serviceType", e); 44037 } 44038 if (element.hasSubject()) { 44039 composeReference("subject", element.getSubject()); 44040 } 44041 if (element.hasSubjectStatus()) { 44042 composeCodeableConcept("subjectStatus", element.getSubjectStatus()); 44043 } 44044 if (element.hasEpisodeOfCare()) { 44045 for (Reference e : element.getEpisodeOfCare()) 44046 composeReference("episodeOfCare", e); 44047 } 44048 if (element.hasBasedOn()) { 44049 for (Reference e : element.getBasedOn()) 44050 composeReference("basedOn", e); 44051 } 44052 if (element.hasCareTeam()) { 44053 for (Reference e : element.getCareTeam()) 44054 composeReference("careTeam", e); 44055 } 44056 if (element.hasPartOf()) { 44057 composeReference("partOf", element.getPartOf()); 44058 } 44059 if (element.hasServiceProvider()) { 44060 composeReference("serviceProvider", element.getServiceProvider()); 44061 } 44062 if (element.hasParticipant()) { 44063 for (Encounter.EncounterParticipantComponent e : element.getParticipant()) 44064 composeEncounterParticipantComponent("participant", e); 44065 } 44066 if (element.hasAppointment()) { 44067 for (Reference e : element.getAppointment()) 44068 composeReference("appointment", e); 44069 } 44070 if (element.hasVirtualService()) { 44071 for (VirtualServiceDetail e : element.getVirtualService()) 44072 composeVirtualServiceDetail("virtualService", e); 44073 } 44074 if (element.hasActualPeriod()) { 44075 composePeriod("actualPeriod", element.getActualPeriod()); 44076 } 44077 if (element.hasPlannedStartDateElement()) { 44078 composeDateTime("plannedStartDate", element.getPlannedStartDateElement()); 44079 } 44080 if (element.hasPlannedEndDateElement()) { 44081 composeDateTime("plannedEndDate", element.getPlannedEndDateElement()); 44082 } 44083 if (element.hasLength()) { 44084 composeDuration("length", element.getLength()); 44085 } 44086 if (element.hasReason()) { 44087 for (Encounter.ReasonComponent e : element.getReason()) 44088 composeEncounterReasonComponent("reason", e); 44089 } 44090 if (element.hasDiagnosis()) { 44091 for (Encounter.DiagnosisComponent e : element.getDiagnosis()) 44092 composeEncounterDiagnosisComponent("diagnosis", e); 44093 } 44094 if (element.hasAccount()) { 44095 for (Reference e : element.getAccount()) 44096 composeReference("account", e); 44097 } 44098 if (element.hasDietPreference()) { 44099 for (CodeableConcept e : element.getDietPreference()) 44100 composeCodeableConcept("dietPreference", e); 44101 } 44102 if (element.hasSpecialArrangement()) { 44103 for (CodeableConcept e : element.getSpecialArrangement()) 44104 composeCodeableConcept("specialArrangement", e); 44105 } 44106 if (element.hasSpecialCourtesy()) { 44107 for (CodeableConcept e : element.getSpecialCourtesy()) 44108 composeCodeableConcept("specialCourtesy", e); 44109 } 44110 if (element.hasAdmission()) { 44111 composeEncounterAdmissionComponent("admission", element.getAdmission()); 44112 } 44113 if (element.hasLocation()) { 44114 for (Encounter.EncounterLocationComponent e : element.getLocation()) 44115 composeEncounterLocationComponent("location", e); 44116 } 44117 } 44118 44119 protected void composeEncounterParticipantComponent(String name, Encounter.EncounterParticipantComponent element) throws IOException { 44120 if (element != null) { 44121 composeElementAttributes(element); 44122 xml.enter(FHIR_NS, name); 44123 composeEncounterParticipantComponentElements(element); 44124 composeElementClose(element); 44125 xml.exit(FHIR_NS, name); 44126 } 44127 } 44128 44129 protected void composeEncounterParticipantComponentElements(Encounter.EncounterParticipantComponent element) throws IOException { 44130 composeBackboneElementElements(element); 44131 if (element.hasType()) { 44132 for (CodeableConcept e : element.getType()) 44133 composeCodeableConcept("type", e); 44134 } 44135 if (element.hasPeriod()) { 44136 composePeriod("period", element.getPeriod()); 44137 } 44138 if (element.hasActor()) { 44139 composeReference("actor", element.getActor()); 44140 } 44141 } 44142 44143 protected void composeEncounterReasonComponent(String name, Encounter.ReasonComponent element) throws IOException { 44144 if (element != null) { 44145 composeElementAttributes(element); 44146 xml.enter(FHIR_NS, name); 44147 composeEncounterReasonComponentElements(element); 44148 composeElementClose(element); 44149 xml.exit(FHIR_NS, name); 44150 } 44151 } 44152 44153 protected void composeEncounterReasonComponentElements(Encounter.ReasonComponent element) throws IOException { 44154 composeBackboneElementElements(element); 44155 if (element.hasUse()) { 44156 for (CodeableConcept e : element.getUse()) 44157 composeCodeableConcept("use", e); 44158 } 44159 if (element.hasValue()) { 44160 for (CodeableReference e : element.getValue()) 44161 composeCodeableReference("value", e); 44162 } 44163 } 44164 44165 protected void composeEncounterDiagnosisComponent(String name, Encounter.DiagnosisComponent element) throws IOException { 44166 if (element != null) { 44167 composeElementAttributes(element); 44168 xml.enter(FHIR_NS, name); 44169 composeEncounterDiagnosisComponentElements(element); 44170 composeElementClose(element); 44171 xml.exit(FHIR_NS, name); 44172 } 44173 } 44174 44175 protected void composeEncounterDiagnosisComponentElements(Encounter.DiagnosisComponent element) throws IOException { 44176 composeBackboneElementElements(element); 44177 if (element.hasCondition()) { 44178 for (CodeableReference e : element.getCondition()) 44179 composeCodeableReference("condition", e); 44180 } 44181 if (element.hasUse()) { 44182 for (CodeableConcept e : element.getUse()) 44183 composeCodeableConcept("use", e); 44184 } 44185 } 44186 44187 protected void composeEncounterAdmissionComponent(String name, Encounter.EncounterAdmissionComponent element) throws IOException { 44188 if (element != null) { 44189 composeElementAttributes(element); 44190 xml.enter(FHIR_NS, name); 44191 composeEncounterAdmissionComponentElements(element); 44192 composeElementClose(element); 44193 xml.exit(FHIR_NS, name); 44194 } 44195 } 44196 44197 protected void composeEncounterAdmissionComponentElements(Encounter.EncounterAdmissionComponent element) throws IOException { 44198 composeBackboneElementElements(element); 44199 if (element.hasPreAdmissionIdentifier()) { 44200 composeIdentifier("preAdmissionIdentifier", element.getPreAdmissionIdentifier()); 44201 } 44202 if (element.hasOrigin()) { 44203 composeReference("origin", element.getOrigin()); 44204 } 44205 if (element.hasAdmitSource()) { 44206 composeCodeableConcept("admitSource", element.getAdmitSource()); 44207 } 44208 if (element.hasReAdmission()) { 44209 composeCodeableConcept("reAdmission", element.getReAdmission()); 44210 } 44211 if (element.hasDestination()) { 44212 composeReference("destination", element.getDestination()); 44213 } 44214 if (element.hasDischargeDisposition()) { 44215 composeCodeableConcept("dischargeDisposition", element.getDischargeDisposition()); 44216 } 44217 } 44218 44219 protected void composeEncounterLocationComponent(String name, Encounter.EncounterLocationComponent element) throws IOException { 44220 if (element != null) { 44221 composeElementAttributes(element); 44222 xml.enter(FHIR_NS, name); 44223 composeEncounterLocationComponentElements(element); 44224 composeElementClose(element); 44225 xml.exit(FHIR_NS, name); 44226 } 44227 } 44228 44229 protected void composeEncounterLocationComponentElements(Encounter.EncounterLocationComponent element) throws IOException { 44230 composeBackboneElementElements(element); 44231 if (element.hasLocation()) { 44232 composeReference("location", element.getLocation()); 44233 } 44234 if (element.hasStatusElement()) 44235 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterLocationStatusEnumFactory()); 44236 if (element.hasForm()) { 44237 composeCodeableConcept("form", element.getForm()); 44238 } 44239 if (element.hasPeriod()) { 44240 composePeriod("period", element.getPeriod()); 44241 } 44242 } 44243 44244 protected void composeEncounterHistory(String name, EncounterHistory element) throws IOException { 44245 if (element != null) { 44246 composeResourceAttributes(element); 44247 xml.enter(FHIR_NS, name); 44248 composeEncounterHistoryElements(element); 44249 composeElementClose(element); 44250 xml.exit(FHIR_NS, name); 44251 } 44252 } 44253 44254 protected void composeEncounterHistoryElements(EncounterHistory element) throws IOException { 44255 composeDomainResourceElements(element); 44256 if (element.hasEncounter()) { 44257 composeReference("encounter", element.getEncounter()); 44258 } 44259 if (element.hasIdentifier()) { 44260 for (Identifier e : element.getIdentifier()) 44261 composeIdentifier("identifier", e); 44262 } 44263 if (element.hasStatusElement()) 44264 composeEnumeration("status", element.getStatusElement(), new Enumerations.EncounterStatusEnumFactory()); 44265 if (element.hasClass_()) { 44266 composeCodeableConcept("class", element.getClass_()); 44267 } 44268 if (element.hasType()) { 44269 for (CodeableConcept e : element.getType()) 44270 composeCodeableConcept("type", e); 44271 } 44272 if (element.hasServiceType()) { 44273 for (CodeableReference e : element.getServiceType()) 44274 composeCodeableReference("serviceType", e); 44275 } 44276 if (element.hasSubject()) { 44277 composeReference("subject", element.getSubject()); 44278 } 44279 if (element.hasSubjectStatus()) { 44280 composeCodeableConcept("subjectStatus", element.getSubjectStatus()); 44281 } 44282 if (element.hasActualPeriod()) { 44283 composePeriod("actualPeriod", element.getActualPeriod()); 44284 } 44285 if (element.hasPlannedStartDateElement()) { 44286 composeDateTime("plannedStartDate", element.getPlannedStartDateElement()); 44287 } 44288 if (element.hasPlannedEndDateElement()) { 44289 composeDateTime("plannedEndDate", element.getPlannedEndDateElement()); 44290 } 44291 if (element.hasLength()) { 44292 composeDuration("length", element.getLength()); 44293 } 44294 if (element.hasLocation()) { 44295 for (EncounterHistory.EncounterHistoryLocationComponent e : element.getLocation()) 44296 composeEncounterHistoryLocationComponent("location", e); 44297 } 44298 } 44299 44300 protected void composeEncounterHistoryLocationComponent(String name, EncounterHistory.EncounterHistoryLocationComponent element) throws IOException { 44301 if (element != null) { 44302 composeElementAttributes(element); 44303 xml.enter(FHIR_NS, name); 44304 composeEncounterHistoryLocationComponentElements(element); 44305 composeElementClose(element); 44306 xml.exit(FHIR_NS, name); 44307 } 44308 } 44309 44310 protected void composeEncounterHistoryLocationComponentElements(EncounterHistory.EncounterHistoryLocationComponent element) throws IOException { 44311 composeBackboneElementElements(element); 44312 if (element.hasLocation()) { 44313 composeReference("location", element.getLocation()); 44314 } 44315 if (element.hasForm()) { 44316 composeCodeableConcept("form", element.getForm()); 44317 } 44318 } 44319 44320 protected void composeEndpoint(String name, Endpoint element) throws IOException { 44321 if (element != null) { 44322 composeResourceAttributes(element); 44323 xml.enter(FHIR_NS, name); 44324 composeEndpointElements(element); 44325 composeElementClose(element); 44326 xml.exit(FHIR_NS, name); 44327 } 44328 } 44329 44330 protected void composeEndpointElements(Endpoint element) throws IOException { 44331 composeDomainResourceElements(element); 44332 if (element.hasIdentifier()) { 44333 for (Identifier e : element.getIdentifier()) 44334 composeIdentifier("identifier", e); 44335 } 44336 if (element.hasStatusElement()) 44337 composeEnumeration("status", element.getStatusElement(), new Endpoint.EndpointStatusEnumFactory()); 44338 if (element.hasConnectionType()) { 44339 for (CodeableConcept e : element.getConnectionType()) 44340 composeCodeableConcept("connectionType", e); 44341 } 44342 if (element.hasNameElement()) { 44343 composeString("name", element.getNameElement()); 44344 } 44345 if (element.hasDescriptionElement()) { 44346 composeString("description", element.getDescriptionElement()); 44347 } 44348 if (element.hasEnvironmentType()) { 44349 for (CodeableConcept e : element.getEnvironmentType()) 44350 composeCodeableConcept("environmentType", e); 44351 } 44352 if (element.hasManagingOrganization()) { 44353 composeReference("managingOrganization", element.getManagingOrganization()); 44354 } 44355 if (element.hasContact()) { 44356 for (ContactPoint e : element.getContact()) 44357 composeContactPoint("contact", e); 44358 } 44359 if (element.hasPeriod()) { 44360 composePeriod("period", element.getPeriod()); 44361 } 44362 if (element.hasPayload()) { 44363 for (Endpoint.EndpointPayloadComponent e : element.getPayload()) 44364 composeEndpointPayloadComponent("payload", e); 44365 } 44366 if (element.hasAddressElement()) { 44367 composeUrl("address", element.getAddressElement()); 44368 } 44369 if (element.hasHeader()) { 44370 for (StringType e : element.getHeader()) 44371 composeString("header", e); 44372 } 44373 } 44374 44375 protected void composeEndpointPayloadComponent(String name, Endpoint.EndpointPayloadComponent element) throws IOException { 44376 if (element != null) { 44377 composeElementAttributes(element); 44378 xml.enter(FHIR_NS, name); 44379 composeEndpointPayloadComponentElements(element); 44380 composeElementClose(element); 44381 xml.exit(FHIR_NS, name); 44382 } 44383 } 44384 44385 protected void composeEndpointPayloadComponentElements(Endpoint.EndpointPayloadComponent element) throws IOException { 44386 composeBackboneElementElements(element); 44387 if (element.hasType()) { 44388 for (CodeableConcept e : element.getType()) 44389 composeCodeableConcept("type", e); 44390 } 44391 if (element.hasMimeType()) { 44392 for (CodeType e : element.getMimeType()) 44393 composeCode("mimeType", e); 44394 } 44395 } 44396 44397 protected void composeEnrollmentRequest(String name, EnrollmentRequest element) throws IOException { 44398 if (element != null) { 44399 composeResourceAttributes(element); 44400 xml.enter(FHIR_NS, name); 44401 composeEnrollmentRequestElements(element); 44402 composeElementClose(element); 44403 xml.exit(FHIR_NS, name); 44404 } 44405 } 44406 44407 protected void composeEnrollmentRequestElements(EnrollmentRequest element) throws IOException { 44408 composeDomainResourceElements(element); 44409 if (element.hasIdentifier()) { 44410 for (Identifier e : element.getIdentifier()) 44411 composeIdentifier("identifier", e); 44412 } 44413 if (element.hasStatusElement()) 44414 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 44415 if (element.hasCreatedElement()) { 44416 composeDateTime("created", element.getCreatedElement()); 44417 } 44418 if (element.hasInsurer()) { 44419 composeReference("insurer", element.getInsurer()); 44420 } 44421 if (element.hasProvider()) { 44422 composeReference("provider", element.getProvider()); 44423 } 44424 if (element.hasCandidate()) { 44425 composeReference("candidate", element.getCandidate()); 44426 } 44427 if (element.hasCoverage()) { 44428 composeReference("coverage", element.getCoverage()); 44429 } 44430 } 44431 44432 protected void composeEnrollmentResponse(String name, EnrollmentResponse element) throws IOException { 44433 if (element != null) { 44434 composeResourceAttributes(element); 44435 xml.enter(FHIR_NS, name); 44436 composeEnrollmentResponseElements(element); 44437 composeElementClose(element); 44438 xml.exit(FHIR_NS, name); 44439 } 44440 } 44441 44442 protected void composeEnrollmentResponseElements(EnrollmentResponse element) throws IOException { 44443 composeDomainResourceElements(element); 44444 if (element.hasIdentifier()) { 44445 for (Identifier e : element.getIdentifier()) 44446 composeIdentifier("identifier", e); 44447 } 44448 if (element.hasStatusElement()) 44449 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 44450 if (element.hasRequest()) { 44451 composeReference("request", element.getRequest()); 44452 } 44453 if (element.hasOutcomeElement()) 44454 composeEnumeration("outcome", element.getOutcomeElement(), new EnrollmentResponse.EnrollmentOutcomeEnumFactory()); 44455 if (element.hasDispositionElement()) { 44456 composeString("disposition", element.getDispositionElement()); 44457 } 44458 if (element.hasCreatedElement()) { 44459 composeDateTime("created", element.getCreatedElement()); 44460 } 44461 if (element.hasOrganization()) { 44462 composeReference("organization", element.getOrganization()); 44463 } 44464 if (element.hasRequestProvider()) { 44465 composeReference("requestProvider", element.getRequestProvider()); 44466 } 44467 } 44468 44469 protected void composeEpisodeOfCare(String name, EpisodeOfCare element) throws IOException { 44470 if (element != null) { 44471 composeResourceAttributes(element); 44472 xml.enter(FHIR_NS, name); 44473 composeEpisodeOfCareElements(element); 44474 composeElementClose(element); 44475 xml.exit(FHIR_NS, name); 44476 } 44477 } 44478 44479 protected void composeEpisodeOfCareElements(EpisodeOfCare element) throws IOException { 44480 composeDomainResourceElements(element); 44481 if (element.hasIdentifier()) { 44482 for (Identifier e : element.getIdentifier()) 44483 composeIdentifier("identifier", e); 44484 } 44485 if (element.hasStatusElement()) 44486 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 44487 if (element.hasStatusHistory()) { 44488 for (EpisodeOfCare.EpisodeOfCareStatusHistoryComponent e : element.getStatusHistory()) 44489 composeEpisodeOfCareStatusHistoryComponent("statusHistory", e); 44490 } 44491 if (element.hasType()) { 44492 for (CodeableConcept e : element.getType()) 44493 composeCodeableConcept("type", e); 44494 } 44495 if (element.hasReason()) { 44496 for (EpisodeOfCare.ReasonComponent e : element.getReason()) 44497 composeEpisodeOfCareReasonComponent("reason", e); 44498 } 44499 if (element.hasDiagnosis()) { 44500 for (EpisodeOfCare.DiagnosisComponent e : element.getDiagnosis()) 44501 composeEpisodeOfCareDiagnosisComponent("diagnosis", e); 44502 } 44503 if (element.hasPatient()) { 44504 composeReference("patient", element.getPatient()); 44505 } 44506 if (element.hasManagingOrganization()) { 44507 composeReference("managingOrganization", element.getManagingOrganization()); 44508 } 44509 if (element.hasPeriod()) { 44510 composePeriod("period", element.getPeriod()); 44511 } 44512 if (element.hasReferralRequest()) { 44513 for (Reference e : element.getReferralRequest()) 44514 composeReference("referralRequest", e); 44515 } 44516 if (element.hasCareManager()) { 44517 composeReference("careManager", element.getCareManager()); 44518 } 44519 if (element.hasCareTeam()) { 44520 for (Reference e : element.getCareTeam()) 44521 composeReference("careTeam", e); 44522 } 44523 if (element.hasAccount()) { 44524 for (Reference e : element.getAccount()) 44525 composeReference("account", e); 44526 } 44527 } 44528 44529 protected void composeEpisodeOfCareStatusHistoryComponent(String name, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element) throws IOException { 44530 if (element != null) { 44531 composeElementAttributes(element); 44532 xml.enter(FHIR_NS, name); 44533 composeEpisodeOfCareStatusHistoryComponentElements(element); 44534 composeElementClose(element); 44535 xml.exit(FHIR_NS, name); 44536 } 44537 } 44538 44539 protected void composeEpisodeOfCareStatusHistoryComponentElements(EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element) throws IOException { 44540 composeBackboneElementElements(element); 44541 if (element.hasStatusElement()) 44542 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 44543 if (element.hasPeriod()) { 44544 composePeriod("period", element.getPeriod()); 44545 } 44546 } 44547 44548 protected void composeEpisodeOfCareReasonComponent(String name, EpisodeOfCare.ReasonComponent element) throws IOException { 44549 if (element != null) { 44550 composeElementAttributes(element); 44551 xml.enter(FHIR_NS, name); 44552 composeEpisodeOfCareReasonComponentElements(element); 44553 composeElementClose(element); 44554 xml.exit(FHIR_NS, name); 44555 } 44556 } 44557 44558 protected void composeEpisodeOfCareReasonComponentElements(EpisodeOfCare.ReasonComponent element) throws IOException { 44559 composeBackboneElementElements(element); 44560 if (element.hasUse()) { 44561 composeCodeableConcept("use", element.getUse()); 44562 } 44563 if (element.hasValue()) { 44564 for (CodeableReference e : element.getValue()) 44565 composeCodeableReference("value", e); 44566 } 44567 } 44568 44569 protected void composeEpisodeOfCareDiagnosisComponent(String name, EpisodeOfCare.DiagnosisComponent element) throws IOException { 44570 if (element != null) { 44571 composeElementAttributes(element); 44572 xml.enter(FHIR_NS, name); 44573 composeEpisodeOfCareDiagnosisComponentElements(element); 44574 composeElementClose(element); 44575 xml.exit(FHIR_NS, name); 44576 } 44577 } 44578 44579 protected void composeEpisodeOfCareDiagnosisComponentElements(EpisodeOfCare.DiagnosisComponent element) throws IOException { 44580 composeBackboneElementElements(element); 44581 if (element.hasCondition()) { 44582 for (CodeableReference e : element.getCondition()) 44583 composeCodeableReference("condition", e); 44584 } 44585 if (element.hasUse()) { 44586 composeCodeableConcept("use", element.getUse()); 44587 } 44588 } 44589 44590 protected void composeEventDefinition(String name, EventDefinition element) throws IOException { 44591 if (element != null) { 44592 composeResourceAttributes(element); 44593 xml.enter(FHIR_NS, name); 44594 composeEventDefinitionElements(element); 44595 composeElementClose(element); 44596 xml.exit(FHIR_NS, name); 44597 } 44598 } 44599 44600 protected void composeEventDefinitionElements(EventDefinition element) throws IOException { 44601 composeMetadataResourceElements(element); 44602 if (element.hasUrlElement()) { 44603 composeUri("url", element.getUrlElement()); 44604 } 44605 if (element.hasIdentifier()) { 44606 for (Identifier e : element.getIdentifier()) 44607 composeIdentifier("identifier", e); 44608 } 44609 if (element.hasVersionElement()) { 44610 composeString("version", element.getVersionElement()); 44611 } 44612 if (element.hasVersionAlgorithm()) { 44613 composeType("versionAlgorithm", element.getVersionAlgorithm()); 44614 } if (element.hasNameElement()) { 44615 composeString("name", element.getNameElement()); 44616 } 44617 if (element.hasTitleElement()) { 44618 composeString("title", element.getTitleElement()); 44619 } 44620 if (element.hasSubtitleElement()) { 44621 composeString("subtitle", element.getSubtitleElement()); 44622 } 44623 if (element.hasStatusElement()) 44624 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 44625 if (element.hasExperimentalElement()) { 44626 composeBoolean("experimental", element.getExperimentalElement()); 44627 } 44628 if (element.hasSubject()) { 44629 composeType("subject", element.getSubject()); 44630 } if (element.hasDateElement()) { 44631 composeDateTime("date", element.getDateElement()); 44632 } 44633 if (element.hasPublisherElement()) { 44634 composeString("publisher", element.getPublisherElement()); 44635 } 44636 if (element.hasContact()) { 44637 for (ContactDetail e : element.getContact()) 44638 composeContactDetail("contact", e); 44639 } 44640 if (element.hasDescriptionElement()) { 44641 composeMarkdown("description", element.getDescriptionElement()); 44642 } 44643 if (element.hasUseContext()) { 44644 for (UsageContext e : element.getUseContext()) 44645 composeUsageContext("useContext", e); 44646 } 44647 if (element.hasJurisdiction()) { 44648 for (CodeableConcept e : element.getJurisdiction()) 44649 composeCodeableConcept("jurisdiction", e); 44650 } 44651 if (element.hasPurposeElement()) { 44652 composeMarkdown("purpose", element.getPurposeElement()); 44653 } 44654 if (element.hasUsageElement()) { 44655 composeMarkdown("usage", element.getUsageElement()); 44656 } 44657 if (element.hasCopyrightElement()) { 44658 composeMarkdown("copyright", element.getCopyrightElement()); 44659 } 44660 if (element.hasCopyrightLabelElement()) { 44661 composeString("copyrightLabel", element.getCopyrightLabelElement()); 44662 } 44663 if (element.hasApprovalDateElement()) { 44664 composeDate("approvalDate", element.getApprovalDateElement()); 44665 } 44666 if (element.hasLastReviewDateElement()) { 44667 composeDate("lastReviewDate", element.getLastReviewDateElement()); 44668 } 44669 if (element.hasEffectivePeriod()) { 44670 composePeriod("effectivePeriod", element.getEffectivePeriod()); 44671 } 44672 if (element.hasTopic()) { 44673 for (CodeableConcept e : element.getTopic()) 44674 composeCodeableConcept("topic", e); 44675 } 44676 if (element.hasAuthor()) { 44677 for (ContactDetail e : element.getAuthor()) 44678 composeContactDetail("author", e); 44679 } 44680 if (element.hasEditor()) { 44681 for (ContactDetail e : element.getEditor()) 44682 composeContactDetail("editor", e); 44683 } 44684 if (element.hasReviewer()) { 44685 for (ContactDetail e : element.getReviewer()) 44686 composeContactDetail("reviewer", e); 44687 } 44688 if (element.hasEndorser()) { 44689 for (ContactDetail e : element.getEndorser()) 44690 composeContactDetail("endorser", e); 44691 } 44692 if (element.hasRelatedArtifact()) { 44693 for (RelatedArtifact e : element.getRelatedArtifact()) 44694 composeRelatedArtifact("relatedArtifact", e); 44695 } 44696 if (element.hasTrigger()) { 44697 for (TriggerDefinition e : element.getTrigger()) 44698 composeTriggerDefinition("trigger", e); 44699 } 44700 } 44701 44702 protected void composeEvidence(String name, Evidence element) throws IOException { 44703 if (element != null) { 44704 composeResourceAttributes(element); 44705 xml.enter(FHIR_NS, name); 44706 composeEvidenceElements(element); 44707 composeElementClose(element); 44708 xml.exit(FHIR_NS, name); 44709 } 44710 } 44711 44712 protected void composeEvidenceElements(Evidence element) throws IOException { 44713 composeMetadataResourceElements(element); 44714 if (element.hasUrlElement()) { 44715 composeUri("url", element.getUrlElement()); 44716 } 44717 if (element.hasIdentifier()) { 44718 for (Identifier e : element.getIdentifier()) 44719 composeIdentifier("identifier", e); 44720 } 44721 if (element.hasVersionElement()) { 44722 composeString("version", element.getVersionElement()); 44723 } 44724 if (element.hasVersionAlgorithm()) { 44725 composeType("versionAlgorithm", element.getVersionAlgorithm()); 44726 } if (element.hasNameElement()) { 44727 composeString("name", element.getNameElement()); 44728 } 44729 if (element.hasTitleElement()) { 44730 composeString("title", element.getTitleElement()); 44731 } 44732 if (element.hasCiteAs()) { 44733 composeType("citeAs", element.getCiteAs()); 44734 } if (element.hasStatusElement()) 44735 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 44736 if (element.hasExperimentalElement()) { 44737 composeBoolean("experimental", element.getExperimentalElement()); 44738 } 44739 if (element.hasDateElement()) { 44740 composeDateTime("date", element.getDateElement()); 44741 } 44742 if (element.hasApprovalDateElement()) { 44743 composeDate("approvalDate", element.getApprovalDateElement()); 44744 } 44745 if (element.hasLastReviewDateElement()) { 44746 composeDate("lastReviewDate", element.getLastReviewDateElement()); 44747 } 44748 if (element.hasPublisherElement()) { 44749 composeString("publisher", element.getPublisherElement()); 44750 } 44751 if (element.hasContact()) { 44752 for (ContactDetail e : element.getContact()) 44753 composeContactDetail("contact", e); 44754 } 44755 if (element.hasAuthor()) { 44756 for (ContactDetail e : element.getAuthor()) 44757 composeContactDetail("author", e); 44758 } 44759 if (element.hasEditor()) { 44760 for (ContactDetail e : element.getEditor()) 44761 composeContactDetail("editor", e); 44762 } 44763 if (element.hasReviewer()) { 44764 for (ContactDetail e : element.getReviewer()) 44765 composeContactDetail("reviewer", e); 44766 } 44767 if (element.hasEndorser()) { 44768 for (ContactDetail e : element.getEndorser()) 44769 composeContactDetail("endorser", e); 44770 } 44771 if (element.hasUseContext()) { 44772 for (UsageContext e : element.getUseContext()) 44773 composeUsageContext("useContext", e); 44774 } 44775 if (element.hasPurposeElement()) { 44776 composeMarkdown("purpose", element.getPurposeElement()); 44777 } 44778 if (element.hasCopyrightElement()) { 44779 composeMarkdown("copyright", element.getCopyrightElement()); 44780 } 44781 if (element.hasCopyrightLabelElement()) { 44782 composeString("copyrightLabel", element.getCopyrightLabelElement()); 44783 } 44784 if (element.hasRelatedArtifact()) { 44785 for (RelatedArtifact e : element.getRelatedArtifact()) 44786 composeRelatedArtifact("relatedArtifact", e); 44787 } 44788 if (element.hasDescriptionElement()) { 44789 composeMarkdown("description", element.getDescriptionElement()); 44790 } 44791 if (element.hasAssertionElement()) { 44792 composeMarkdown("assertion", element.getAssertionElement()); 44793 } 44794 if (element.hasNote()) { 44795 for (Annotation e : element.getNote()) 44796 composeAnnotation("note", e); 44797 } 44798 if (element.hasVariableDefinition()) { 44799 for (Evidence.EvidenceVariableDefinitionComponent e : element.getVariableDefinition()) 44800 composeEvidenceVariableDefinitionComponent("variableDefinition", e); 44801 } 44802 if (element.hasSynthesisType()) { 44803 composeCodeableConcept("synthesisType", element.getSynthesisType()); 44804 } 44805 if (element.hasStudyDesign()) { 44806 for (CodeableConcept e : element.getStudyDesign()) 44807 composeCodeableConcept("studyDesign", e); 44808 } 44809 if (element.hasStatistic()) { 44810 for (Evidence.EvidenceStatisticComponent e : element.getStatistic()) 44811 composeEvidenceStatisticComponent("statistic", e); 44812 } 44813 if (element.hasCertainty()) { 44814 for (Evidence.EvidenceCertaintyComponent e : element.getCertainty()) 44815 composeEvidenceCertaintyComponent("certainty", e); 44816 } 44817 } 44818 44819 protected void composeEvidenceVariableDefinitionComponent(String name, Evidence.EvidenceVariableDefinitionComponent element) throws IOException { 44820 if (element != null) { 44821 composeElementAttributes(element); 44822 xml.enter(FHIR_NS, name); 44823 composeEvidenceVariableDefinitionComponentElements(element); 44824 composeElementClose(element); 44825 xml.exit(FHIR_NS, name); 44826 } 44827 } 44828 44829 protected void composeEvidenceVariableDefinitionComponentElements(Evidence.EvidenceVariableDefinitionComponent element) throws IOException { 44830 composeBackboneElementElements(element); 44831 if (element.hasDescriptionElement()) { 44832 composeMarkdown("description", element.getDescriptionElement()); 44833 } 44834 if (element.hasNote()) { 44835 for (Annotation e : element.getNote()) 44836 composeAnnotation("note", e); 44837 } 44838 if (element.hasVariableRole()) { 44839 composeCodeableConcept("variableRole", element.getVariableRole()); 44840 } 44841 if (element.hasObserved()) { 44842 composeReference("observed", element.getObserved()); 44843 } 44844 if (element.hasIntended()) { 44845 composeReference("intended", element.getIntended()); 44846 } 44847 if (element.hasDirectnessMatch()) { 44848 composeCodeableConcept("directnessMatch", element.getDirectnessMatch()); 44849 } 44850 } 44851 44852 protected void composeEvidenceStatisticComponent(String name, Evidence.EvidenceStatisticComponent element) throws IOException { 44853 if (element != null) { 44854 composeElementAttributes(element); 44855 xml.enter(FHIR_NS, name); 44856 composeEvidenceStatisticComponentElements(element); 44857 composeElementClose(element); 44858 xml.exit(FHIR_NS, name); 44859 } 44860 } 44861 44862 protected void composeEvidenceStatisticComponentElements(Evidence.EvidenceStatisticComponent element) throws IOException { 44863 composeBackboneElementElements(element); 44864 if (element.hasDescriptionElement()) { 44865 composeMarkdown("description", element.getDescriptionElement()); 44866 } 44867 if (element.hasNote()) { 44868 for (Annotation e : element.getNote()) 44869 composeAnnotation("note", e); 44870 } 44871 if (element.hasStatisticType()) { 44872 composeCodeableConcept("statisticType", element.getStatisticType()); 44873 } 44874 if (element.hasCategory()) { 44875 composeCodeableConcept("category", element.getCategory()); 44876 } 44877 if (element.hasQuantity()) { 44878 composeQuantity("quantity", element.getQuantity()); 44879 } 44880 if (element.hasNumberOfEventsElement()) { 44881 composeUnsignedInt("numberOfEvents", element.getNumberOfEventsElement()); 44882 } 44883 if (element.hasNumberAffectedElement()) { 44884 composeUnsignedInt("numberAffected", element.getNumberAffectedElement()); 44885 } 44886 if (element.hasSampleSize()) { 44887 composeEvidenceStatisticSampleSizeComponent("sampleSize", element.getSampleSize()); 44888 } 44889 if (element.hasAttributeEstimate()) { 44890 for (Evidence.EvidenceStatisticAttributeEstimateComponent e : element.getAttributeEstimate()) 44891 composeEvidenceStatisticAttributeEstimateComponent("attributeEstimate", e); 44892 } 44893 if (element.hasModelCharacteristic()) { 44894 for (Evidence.EvidenceStatisticModelCharacteristicComponent e : element.getModelCharacteristic()) 44895 composeEvidenceStatisticModelCharacteristicComponent("modelCharacteristic", e); 44896 } 44897 } 44898 44899 protected void composeEvidenceStatisticSampleSizeComponent(String name, Evidence.EvidenceStatisticSampleSizeComponent element) throws IOException { 44900 if (element != null) { 44901 composeElementAttributes(element); 44902 xml.enter(FHIR_NS, name); 44903 composeEvidenceStatisticSampleSizeComponentElements(element); 44904 composeElementClose(element); 44905 xml.exit(FHIR_NS, name); 44906 } 44907 } 44908 44909 protected void composeEvidenceStatisticSampleSizeComponentElements(Evidence.EvidenceStatisticSampleSizeComponent element) throws IOException { 44910 composeBackboneElementElements(element); 44911 if (element.hasDescriptionElement()) { 44912 composeMarkdown("description", element.getDescriptionElement()); 44913 } 44914 if (element.hasNote()) { 44915 for (Annotation e : element.getNote()) 44916 composeAnnotation("note", e); 44917 } 44918 if (element.hasNumberOfStudiesElement()) { 44919 composeUnsignedInt("numberOfStudies", element.getNumberOfStudiesElement()); 44920 } 44921 if (element.hasNumberOfParticipantsElement()) { 44922 composeUnsignedInt("numberOfParticipants", element.getNumberOfParticipantsElement()); 44923 } 44924 if (element.hasKnownDataCountElement()) { 44925 composeUnsignedInt("knownDataCount", element.getKnownDataCountElement()); 44926 } 44927 } 44928 44929 protected void composeEvidenceStatisticAttributeEstimateComponent(String name, Evidence.EvidenceStatisticAttributeEstimateComponent element) throws IOException { 44930 if (element != null) { 44931 composeElementAttributes(element); 44932 xml.enter(FHIR_NS, name); 44933 composeEvidenceStatisticAttributeEstimateComponentElements(element); 44934 composeElementClose(element); 44935 xml.exit(FHIR_NS, name); 44936 } 44937 } 44938 44939 protected void composeEvidenceStatisticAttributeEstimateComponentElements(Evidence.EvidenceStatisticAttributeEstimateComponent element) throws IOException { 44940 composeBackboneElementElements(element); 44941 if (element.hasDescriptionElement()) { 44942 composeMarkdown("description", element.getDescriptionElement()); 44943 } 44944 if (element.hasNote()) { 44945 for (Annotation e : element.getNote()) 44946 composeAnnotation("note", e); 44947 } 44948 if (element.hasType()) { 44949 composeCodeableConcept("type", element.getType()); 44950 } 44951 if (element.hasQuantity()) { 44952 composeQuantity("quantity", element.getQuantity()); 44953 } 44954 if (element.hasLevelElement()) { 44955 composeDecimal("level", element.getLevelElement()); 44956 } 44957 if (element.hasRange()) { 44958 composeRange("range", element.getRange()); 44959 } 44960 if (element.hasAttributeEstimate()) { 44961 for (Evidence.EvidenceStatisticAttributeEstimateComponent e : element.getAttributeEstimate()) 44962 composeEvidenceStatisticAttributeEstimateComponent("attributeEstimate", e); 44963 } 44964 } 44965 44966 protected void composeEvidenceStatisticModelCharacteristicComponent(String name, Evidence.EvidenceStatisticModelCharacteristicComponent element) throws IOException { 44967 if (element != null) { 44968 composeElementAttributes(element); 44969 xml.enter(FHIR_NS, name); 44970 composeEvidenceStatisticModelCharacteristicComponentElements(element); 44971 composeElementClose(element); 44972 xml.exit(FHIR_NS, name); 44973 } 44974 } 44975 44976 protected void composeEvidenceStatisticModelCharacteristicComponentElements(Evidence.EvidenceStatisticModelCharacteristicComponent element) throws IOException { 44977 composeBackboneElementElements(element); 44978 if (element.hasCode()) { 44979 composeCodeableConcept("code", element.getCode()); 44980 } 44981 if (element.hasValue()) { 44982 composeQuantity("value", element.getValue()); 44983 } 44984 if (element.hasVariable()) { 44985 for (Evidence.EvidenceStatisticModelCharacteristicVariableComponent e : element.getVariable()) 44986 composeEvidenceStatisticModelCharacteristicVariableComponent("variable", e); 44987 } 44988 if (element.hasAttributeEstimate()) { 44989 for (Evidence.EvidenceStatisticAttributeEstimateComponent e : element.getAttributeEstimate()) 44990 composeEvidenceStatisticAttributeEstimateComponent("attributeEstimate", e); 44991 } 44992 } 44993 44994 protected void composeEvidenceStatisticModelCharacteristicVariableComponent(String name, Evidence.EvidenceStatisticModelCharacteristicVariableComponent element) throws IOException { 44995 if (element != null) { 44996 composeElementAttributes(element); 44997 xml.enter(FHIR_NS, name); 44998 composeEvidenceStatisticModelCharacteristicVariableComponentElements(element); 44999 composeElementClose(element); 45000 xml.exit(FHIR_NS, name); 45001 } 45002 } 45003 45004 protected void composeEvidenceStatisticModelCharacteristicVariableComponentElements(Evidence.EvidenceStatisticModelCharacteristicVariableComponent element) throws IOException { 45005 composeBackboneElementElements(element); 45006 if (element.hasVariableDefinition()) { 45007 composeReference("variableDefinition", element.getVariableDefinition()); 45008 } 45009 if (element.hasHandlingElement()) 45010 composeEnumeration("handling", element.getHandlingElement(), new Enumerations.EvidenceVariableHandlingEnumFactory()); 45011 if (element.hasValueCategory()) { 45012 for (CodeableConcept e : element.getValueCategory()) 45013 composeCodeableConcept("valueCategory", e); 45014 } 45015 if (element.hasValueQuantity()) { 45016 for (Quantity e : element.getValueQuantity()) 45017 composeQuantity("valueQuantity", e); 45018 } 45019 if (element.hasValueRange()) { 45020 for (Range e : element.getValueRange()) 45021 composeRange("valueRange", e); 45022 } 45023 } 45024 45025 protected void composeEvidenceCertaintyComponent(String name, Evidence.EvidenceCertaintyComponent element) throws IOException { 45026 if (element != null) { 45027 composeElementAttributes(element); 45028 xml.enter(FHIR_NS, name); 45029 composeEvidenceCertaintyComponentElements(element); 45030 composeElementClose(element); 45031 xml.exit(FHIR_NS, name); 45032 } 45033 } 45034 45035 protected void composeEvidenceCertaintyComponentElements(Evidence.EvidenceCertaintyComponent element) throws IOException { 45036 composeBackboneElementElements(element); 45037 if (element.hasDescriptionElement()) { 45038 composeMarkdown("description", element.getDescriptionElement()); 45039 } 45040 if (element.hasNote()) { 45041 for (Annotation e : element.getNote()) 45042 composeAnnotation("note", e); 45043 } 45044 if (element.hasType()) { 45045 composeCodeableConcept("type", element.getType()); 45046 } 45047 if (element.hasRating()) { 45048 composeCodeableConcept("rating", element.getRating()); 45049 } 45050 if (element.hasRaterElement()) { 45051 composeString("rater", element.getRaterElement()); 45052 } 45053 if (element.hasSubcomponent()) { 45054 for (Evidence.EvidenceCertaintyComponent e : element.getSubcomponent()) 45055 composeEvidenceCertaintyComponent("subcomponent", e); 45056 } 45057 } 45058 45059 protected void composeEvidenceReport(String name, EvidenceReport element) throws IOException { 45060 if (element != null) { 45061 composeResourceAttributes(element); 45062 xml.enter(FHIR_NS, name); 45063 composeEvidenceReportElements(element); 45064 composeElementClose(element); 45065 xml.exit(FHIR_NS, name); 45066 } 45067 } 45068 45069 protected void composeEvidenceReportElements(EvidenceReport element) throws IOException { 45070 composeMetadataResourceElements(element); 45071 if (element.hasUrlElement()) { 45072 composeUri("url", element.getUrlElement()); 45073 } 45074 if (element.hasStatusElement()) 45075 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 45076 if (element.hasUseContext()) { 45077 for (UsageContext e : element.getUseContext()) 45078 composeUsageContext("useContext", e); 45079 } 45080 if (element.hasIdentifier()) { 45081 for (Identifier e : element.getIdentifier()) 45082 composeIdentifier("identifier", e); 45083 } 45084 if (element.hasRelatedIdentifier()) { 45085 for (Identifier e : element.getRelatedIdentifier()) 45086 composeIdentifier("relatedIdentifier", e); 45087 } 45088 if (element.hasCiteAs()) { 45089 composeType("citeAs", element.getCiteAs()); 45090 } if (element.hasType()) { 45091 composeCodeableConcept("type", element.getType()); 45092 } 45093 if (element.hasNote()) { 45094 for (Annotation e : element.getNote()) 45095 composeAnnotation("note", e); 45096 } 45097 if (element.hasRelatedArtifact()) { 45098 for (RelatedArtifact e : element.getRelatedArtifact()) 45099 composeRelatedArtifact("relatedArtifact", e); 45100 } 45101 if (element.hasSubject()) { 45102 composeEvidenceReportSubjectComponent("subject", element.getSubject()); 45103 } 45104 if (element.hasPublisherElement()) { 45105 composeString("publisher", element.getPublisherElement()); 45106 } 45107 if (element.hasContact()) { 45108 for (ContactDetail e : element.getContact()) 45109 composeContactDetail("contact", e); 45110 } 45111 if (element.hasAuthor()) { 45112 for (ContactDetail e : element.getAuthor()) 45113 composeContactDetail("author", e); 45114 } 45115 if (element.hasEditor()) { 45116 for (ContactDetail e : element.getEditor()) 45117 composeContactDetail("editor", e); 45118 } 45119 if (element.hasReviewer()) { 45120 for (ContactDetail e : element.getReviewer()) 45121 composeContactDetail("reviewer", e); 45122 } 45123 if (element.hasEndorser()) { 45124 for (ContactDetail e : element.getEndorser()) 45125 composeContactDetail("endorser", e); 45126 } 45127 if (element.hasRelatesTo()) { 45128 for (EvidenceReport.EvidenceReportRelatesToComponent e : element.getRelatesTo()) 45129 composeEvidenceReportRelatesToComponent("relatesTo", e); 45130 } 45131 if (element.hasSection()) { 45132 for (EvidenceReport.SectionComponent e : element.getSection()) 45133 composeEvidenceReportSectionComponent("section", e); 45134 } 45135 } 45136 45137 protected void composeEvidenceReportSubjectComponent(String name, EvidenceReport.EvidenceReportSubjectComponent element) throws IOException { 45138 if (element != null) { 45139 composeElementAttributes(element); 45140 xml.enter(FHIR_NS, name); 45141 composeEvidenceReportSubjectComponentElements(element); 45142 composeElementClose(element); 45143 xml.exit(FHIR_NS, name); 45144 } 45145 } 45146 45147 protected void composeEvidenceReportSubjectComponentElements(EvidenceReport.EvidenceReportSubjectComponent element) throws IOException { 45148 composeBackboneElementElements(element); 45149 if (element.hasCharacteristic()) { 45150 for (EvidenceReport.EvidenceReportSubjectCharacteristicComponent e : element.getCharacteristic()) 45151 composeEvidenceReportSubjectCharacteristicComponent("characteristic", e); 45152 } 45153 if (element.hasNote()) { 45154 for (Annotation e : element.getNote()) 45155 composeAnnotation("note", e); 45156 } 45157 } 45158 45159 protected void composeEvidenceReportSubjectCharacteristicComponent(String name, EvidenceReport.EvidenceReportSubjectCharacteristicComponent element) throws IOException { 45160 if (element != null) { 45161 composeElementAttributes(element); 45162 xml.enter(FHIR_NS, name); 45163 composeEvidenceReportSubjectCharacteristicComponentElements(element); 45164 composeElementClose(element); 45165 xml.exit(FHIR_NS, name); 45166 } 45167 } 45168 45169 protected void composeEvidenceReportSubjectCharacteristicComponentElements(EvidenceReport.EvidenceReportSubjectCharacteristicComponent element) throws IOException { 45170 composeBackboneElementElements(element); 45171 if (element.hasCode()) { 45172 composeCodeableConcept("code", element.getCode()); 45173 } 45174 if (element.hasValue()) { 45175 composeType("value", element.getValue()); 45176 } if (element.hasExcludeElement()) { 45177 composeBoolean("exclude", element.getExcludeElement()); 45178 } 45179 if (element.hasPeriod()) { 45180 composePeriod("period", element.getPeriod()); 45181 } 45182 } 45183 45184 protected void composeEvidenceReportRelatesToComponent(String name, EvidenceReport.EvidenceReportRelatesToComponent element) throws IOException { 45185 if (element != null) { 45186 composeElementAttributes(element); 45187 xml.enter(FHIR_NS, name); 45188 composeEvidenceReportRelatesToComponentElements(element); 45189 composeElementClose(element); 45190 xml.exit(FHIR_NS, name); 45191 } 45192 } 45193 45194 protected void composeEvidenceReportRelatesToComponentElements(EvidenceReport.EvidenceReportRelatesToComponent element) throws IOException { 45195 composeBackboneElementElements(element); 45196 if (element.hasCodeElement()) 45197 composeEnumeration("code", element.getCodeElement(), new EvidenceReport.ReportRelationshipTypeEnumFactory()); 45198 if (element.hasTarget()) { 45199 composeEvidenceReportRelatesToTargetComponent("target", element.getTarget()); 45200 } 45201 } 45202 45203 protected void composeEvidenceReportRelatesToTargetComponent(String name, EvidenceReport.EvidenceReportRelatesToTargetComponent element) throws IOException { 45204 if (element != null) { 45205 composeElementAttributes(element); 45206 xml.enter(FHIR_NS, name); 45207 composeEvidenceReportRelatesToTargetComponentElements(element); 45208 composeElementClose(element); 45209 xml.exit(FHIR_NS, name); 45210 } 45211 } 45212 45213 protected void composeEvidenceReportRelatesToTargetComponentElements(EvidenceReport.EvidenceReportRelatesToTargetComponent element) throws IOException { 45214 composeBackboneElementElements(element); 45215 if (element.hasUrlElement()) { 45216 composeUri("url", element.getUrlElement()); 45217 } 45218 if (element.hasIdentifier()) { 45219 composeIdentifier("identifier", element.getIdentifier()); 45220 } 45221 if (element.hasDisplayElement()) { 45222 composeMarkdown("display", element.getDisplayElement()); 45223 } 45224 if (element.hasResource()) { 45225 composeReference("resource", element.getResource()); 45226 } 45227 } 45228 45229 protected void composeEvidenceReportSectionComponent(String name, EvidenceReport.SectionComponent element) throws IOException { 45230 if (element != null) { 45231 composeElementAttributes(element); 45232 xml.enter(FHIR_NS, name); 45233 composeEvidenceReportSectionComponentElements(element); 45234 composeElementClose(element); 45235 xml.exit(FHIR_NS, name); 45236 } 45237 } 45238 45239 protected void composeEvidenceReportSectionComponentElements(EvidenceReport.SectionComponent element) throws IOException { 45240 composeBackboneElementElements(element); 45241 if (element.hasTitleElement()) { 45242 composeString("title", element.getTitleElement()); 45243 } 45244 if (element.hasFocus()) { 45245 composeCodeableConcept("focus", element.getFocus()); 45246 } 45247 if (element.hasFocusReference()) { 45248 composeReference("focusReference", element.getFocusReference()); 45249 } 45250 if (element.hasAuthor()) { 45251 for (Reference e : element.getAuthor()) 45252 composeReference("author", e); 45253 } 45254 if (element.hasText()) { 45255 composeNarrative("text", element.getText()); 45256 } 45257 if (element.hasModeElement()) 45258 composeEnumeration("mode", element.getModeElement(), new Enumerations.ListModeEnumFactory()); 45259 if (element.hasOrderedBy()) { 45260 composeCodeableConcept("orderedBy", element.getOrderedBy()); 45261 } 45262 if (element.hasEntryClassifier()) { 45263 for (CodeableConcept e : element.getEntryClassifier()) 45264 composeCodeableConcept("entryClassifier", e); 45265 } 45266 if (element.hasEntryReference()) { 45267 for (Reference e : element.getEntryReference()) 45268 composeReference("entryReference", e); 45269 } 45270 if (element.hasEntryQuantity()) { 45271 for (Quantity e : element.getEntryQuantity()) 45272 composeQuantity("entryQuantity", e); 45273 } 45274 if (element.hasEmptyReason()) { 45275 composeCodeableConcept("emptyReason", element.getEmptyReason()); 45276 } 45277 if (element.hasSection()) { 45278 for (EvidenceReport.SectionComponent e : element.getSection()) 45279 composeEvidenceReportSectionComponent("section", e); 45280 } 45281 } 45282 45283 protected void composeEvidenceVariable(String name, EvidenceVariable element) throws IOException { 45284 if (element != null) { 45285 composeResourceAttributes(element); 45286 xml.enter(FHIR_NS, name); 45287 composeEvidenceVariableElements(element); 45288 composeElementClose(element); 45289 xml.exit(FHIR_NS, name); 45290 } 45291 } 45292 45293 protected void composeEvidenceVariableElements(EvidenceVariable element) throws IOException { 45294 composeMetadataResourceElements(element); 45295 if (element.hasUrlElement()) { 45296 composeUri("url", element.getUrlElement()); 45297 } 45298 if (element.hasIdentifier()) { 45299 for (Identifier e : element.getIdentifier()) 45300 composeIdentifier("identifier", e); 45301 } 45302 if (element.hasVersionElement()) { 45303 composeString("version", element.getVersionElement()); 45304 } 45305 if (element.hasVersionAlgorithm()) { 45306 composeType("versionAlgorithm", element.getVersionAlgorithm()); 45307 } if (element.hasNameElement()) { 45308 composeString("name", element.getNameElement()); 45309 } 45310 if (element.hasTitleElement()) { 45311 composeString("title", element.getTitleElement()); 45312 } 45313 if (element.hasShortTitleElement()) { 45314 composeString("shortTitle", element.getShortTitleElement()); 45315 } 45316 if (element.hasStatusElement()) 45317 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 45318 if (element.hasExperimentalElement()) { 45319 composeBoolean("experimental", element.getExperimentalElement()); 45320 } 45321 if (element.hasDateElement()) { 45322 composeDateTime("date", element.getDateElement()); 45323 } 45324 if (element.hasPublisherElement()) { 45325 composeString("publisher", element.getPublisherElement()); 45326 } 45327 if (element.hasContact()) { 45328 for (ContactDetail e : element.getContact()) 45329 composeContactDetail("contact", e); 45330 } 45331 if (element.hasDescriptionElement()) { 45332 composeMarkdown("description", element.getDescriptionElement()); 45333 } 45334 if (element.hasNote()) { 45335 for (Annotation e : element.getNote()) 45336 composeAnnotation("note", e); 45337 } 45338 if (element.hasUseContext()) { 45339 for (UsageContext e : element.getUseContext()) 45340 composeUsageContext("useContext", e); 45341 } 45342 if (element.hasPurposeElement()) { 45343 composeMarkdown("purpose", element.getPurposeElement()); 45344 } 45345 if (element.hasCopyrightElement()) { 45346 composeMarkdown("copyright", element.getCopyrightElement()); 45347 } 45348 if (element.hasCopyrightLabelElement()) { 45349 composeString("copyrightLabel", element.getCopyrightLabelElement()); 45350 } 45351 if (element.hasApprovalDateElement()) { 45352 composeDate("approvalDate", element.getApprovalDateElement()); 45353 } 45354 if (element.hasLastReviewDateElement()) { 45355 composeDate("lastReviewDate", element.getLastReviewDateElement()); 45356 } 45357 if (element.hasEffectivePeriod()) { 45358 composePeriod("effectivePeriod", element.getEffectivePeriod()); 45359 } 45360 if (element.hasAuthor()) { 45361 for (ContactDetail e : element.getAuthor()) 45362 composeContactDetail("author", e); 45363 } 45364 if (element.hasEditor()) { 45365 for (ContactDetail e : element.getEditor()) 45366 composeContactDetail("editor", e); 45367 } 45368 if (element.hasReviewer()) { 45369 for (ContactDetail e : element.getReviewer()) 45370 composeContactDetail("reviewer", e); 45371 } 45372 if (element.hasEndorser()) { 45373 for (ContactDetail e : element.getEndorser()) 45374 composeContactDetail("endorser", e); 45375 } 45376 if (element.hasRelatedArtifact()) { 45377 for (RelatedArtifact e : element.getRelatedArtifact()) 45378 composeRelatedArtifact("relatedArtifact", e); 45379 } 45380 if (element.hasActualElement()) { 45381 composeBoolean("actual", element.getActualElement()); 45382 } 45383 if (element.hasCharacteristic()) { 45384 for (EvidenceVariable.EvidenceVariableCharacteristicComponent e : element.getCharacteristic()) 45385 composeEvidenceVariableCharacteristicComponent("characteristic", e); 45386 } 45387 if (element.hasHandlingElement()) 45388 composeEnumeration("handling", element.getHandlingElement(), new Enumerations.EvidenceVariableHandlingEnumFactory()); 45389 if (element.hasCategory()) { 45390 for (EvidenceVariable.EvidenceVariableCategoryComponent e : element.getCategory()) 45391 composeEvidenceVariableCategoryComponent("category", e); 45392 } 45393 } 45394 45395 protected void composeEvidenceVariableCharacteristicComponent(String name, EvidenceVariable.EvidenceVariableCharacteristicComponent element) throws IOException { 45396 if (element != null) { 45397 composeElementAttributes(element); 45398 xml.enter(FHIR_NS, name); 45399 composeEvidenceVariableCharacteristicComponentElements(element); 45400 composeElementClose(element); 45401 xml.exit(FHIR_NS, name); 45402 } 45403 } 45404 45405 protected void composeEvidenceVariableCharacteristicComponentElements(EvidenceVariable.EvidenceVariableCharacteristicComponent element) throws IOException { 45406 composeBackboneElementElements(element); 45407 if (element.hasLinkIdElement()) { 45408 composeId("linkId", element.getLinkIdElement()); 45409 } 45410 if (element.hasDescriptionElement()) { 45411 composeMarkdown("description", element.getDescriptionElement()); 45412 } 45413 if (element.hasNote()) { 45414 for (Annotation e : element.getNote()) 45415 composeAnnotation("note", e); 45416 } 45417 if (element.hasExcludeElement()) { 45418 composeBoolean("exclude", element.getExcludeElement()); 45419 } 45420 if (element.hasDefinitionReference()) { 45421 composeReference("definitionReference", element.getDefinitionReference()); 45422 } 45423 if (element.hasDefinitionCanonicalElement()) { 45424 composeCanonical("definitionCanonical", element.getDefinitionCanonicalElement()); 45425 } 45426 if (element.hasDefinitionCodeableConcept()) { 45427 composeCodeableConcept("definitionCodeableConcept", element.getDefinitionCodeableConcept()); 45428 } 45429 if (element.hasDefinitionExpression()) { 45430 composeExpression("definitionExpression", element.getDefinitionExpression()); 45431 } 45432 if (element.hasDefinitionIdElement()) { 45433 composeId("definitionId", element.getDefinitionIdElement()); 45434 } 45435 if (element.hasDefinitionByTypeAndValue()) { 45436 composeEvidenceVariableCharacteristicDefinitionByTypeAndValueComponent("definitionByTypeAndValue", element.getDefinitionByTypeAndValue()); 45437 } 45438 if (element.hasDefinitionByCombination()) { 45439 composeEvidenceVariableCharacteristicDefinitionByCombinationComponent("definitionByCombination", element.getDefinitionByCombination()); 45440 } 45441 if (element.hasInstances()) { 45442 composeType("instances", element.getInstances()); 45443 } if (element.hasDuration()) { 45444 composeType("duration", element.getDuration()); 45445 } if (element.hasTimeFromEvent()) { 45446 for (EvidenceVariable.EvidenceVariableCharacteristicTimeFromEventComponent e : element.getTimeFromEvent()) 45447 composeEvidenceVariableCharacteristicTimeFromEventComponent("timeFromEvent", e); 45448 } 45449 } 45450 45451 protected void composeEvidenceVariableCharacteristicDefinitionByTypeAndValueComponent(String name, EvidenceVariable.EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent element) throws IOException { 45452 if (element != null) { 45453 composeElementAttributes(element); 45454 xml.enter(FHIR_NS, name); 45455 composeEvidenceVariableCharacteristicDefinitionByTypeAndValueComponentElements(element); 45456 composeElementClose(element); 45457 xml.exit(FHIR_NS, name); 45458 } 45459 } 45460 45461 protected void composeEvidenceVariableCharacteristicDefinitionByTypeAndValueComponentElements(EvidenceVariable.EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent element) throws IOException { 45462 composeBackboneElementElements(element); 45463 if (element.hasType()) { 45464 composeCodeableConcept("type", element.getType()); 45465 } 45466 if (element.hasMethod()) { 45467 for (CodeableConcept e : element.getMethod()) 45468 composeCodeableConcept("method", e); 45469 } 45470 if (element.hasDevice()) { 45471 composeReference("device", element.getDevice()); 45472 } 45473 if (element.hasValue()) { 45474 composeType("value", element.getValue()); 45475 } if (element.hasOffset()) { 45476 composeCodeableConcept("offset", element.getOffset()); 45477 } 45478 } 45479 45480 protected void composeEvidenceVariableCharacteristicDefinitionByCombinationComponent(String name, EvidenceVariable.EvidenceVariableCharacteristicDefinitionByCombinationComponent element) throws IOException { 45481 if (element != null) { 45482 composeElementAttributes(element); 45483 xml.enter(FHIR_NS, name); 45484 composeEvidenceVariableCharacteristicDefinitionByCombinationComponentElements(element); 45485 composeElementClose(element); 45486 xml.exit(FHIR_NS, name); 45487 } 45488 } 45489 45490 protected void composeEvidenceVariableCharacteristicDefinitionByCombinationComponentElements(EvidenceVariable.EvidenceVariableCharacteristicDefinitionByCombinationComponent element) throws IOException { 45491 composeBackboneElementElements(element); 45492 if (element.hasCodeElement()) 45493 composeEnumeration("code", element.getCodeElement(), new EvidenceVariable.CharacteristicCombinationEnumFactory()); 45494 if (element.hasThresholdElement()) { 45495 composePositiveInt("threshold", element.getThresholdElement()); 45496 } 45497 if (element.hasCharacteristic()) { 45498 for (EvidenceVariable.EvidenceVariableCharacteristicComponent e : element.getCharacteristic()) 45499 composeEvidenceVariableCharacteristicComponent("characteristic", e); 45500 } 45501 } 45502 45503 protected void composeEvidenceVariableCharacteristicTimeFromEventComponent(String name, EvidenceVariable.EvidenceVariableCharacteristicTimeFromEventComponent element) throws IOException { 45504 if (element != null) { 45505 composeElementAttributes(element); 45506 xml.enter(FHIR_NS, name); 45507 composeEvidenceVariableCharacteristicTimeFromEventComponentElements(element); 45508 composeElementClose(element); 45509 xml.exit(FHIR_NS, name); 45510 } 45511 } 45512 45513 protected void composeEvidenceVariableCharacteristicTimeFromEventComponentElements(EvidenceVariable.EvidenceVariableCharacteristicTimeFromEventComponent element) throws IOException { 45514 composeBackboneElementElements(element); 45515 if (element.hasDescriptionElement()) { 45516 composeMarkdown("description", element.getDescriptionElement()); 45517 } 45518 if (element.hasNote()) { 45519 for (Annotation e : element.getNote()) 45520 composeAnnotation("note", e); 45521 } 45522 if (element.hasEvent()) { 45523 composeType("event", element.getEvent()); 45524 } if (element.hasQuantity()) { 45525 composeQuantity("quantity", element.getQuantity()); 45526 } 45527 if (element.hasRange()) { 45528 composeRange("range", element.getRange()); 45529 } 45530 } 45531 45532 protected void composeEvidenceVariableCategoryComponent(String name, EvidenceVariable.EvidenceVariableCategoryComponent element) throws IOException { 45533 if (element != null) { 45534 composeElementAttributes(element); 45535 xml.enter(FHIR_NS, name); 45536 composeEvidenceVariableCategoryComponentElements(element); 45537 composeElementClose(element); 45538 xml.exit(FHIR_NS, name); 45539 } 45540 } 45541 45542 protected void composeEvidenceVariableCategoryComponentElements(EvidenceVariable.EvidenceVariableCategoryComponent element) throws IOException { 45543 composeBackboneElementElements(element); 45544 if (element.hasNameElement()) { 45545 composeString("name", element.getNameElement()); 45546 } 45547 if (element.hasValue()) { 45548 composeType("value", element.getValue()); 45549 } } 45550 45551 protected void composeExampleScenario(String name, ExampleScenario element) throws IOException { 45552 if (element != null) { 45553 composeResourceAttributes(element); 45554 xml.enter(FHIR_NS, name); 45555 composeExampleScenarioElements(element); 45556 composeElementClose(element); 45557 xml.exit(FHIR_NS, name); 45558 } 45559 } 45560 45561 protected void composeExampleScenarioElements(ExampleScenario element) throws IOException { 45562 composeCanonicalResourceElements(element); 45563 if (element.hasUrlElement()) { 45564 composeUri("url", element.getUrlElement()); 45565 } 45566 if (element.hasIdentifier()) { 45567 for (Identifier e : element.getIdentifier()) 45568 composeIdentifier("identifier", e); 45569 } 45570 if (element.hasVersionElement()) { 45571 composeString("version", element.getVersionElement()); 45572 } 45573 if (element.hasVersionAlgorithm()) { 45574 composeType("versionAlgorithm", element.getVersionAlgorithm()); 45575 } if (element.hasNameElement()) { 45576 composeString("name", element.getNameElement()); 45577 } 45578 if (element.hasTitleElement()) { 45579 composeString("title", element.getTitleElement()); 45580 } 45581 if (element.hasStatusElement()) 45582 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 45583 if (element.hasExperimentalElement()) { 45584 composeBoolean("experimental", element.getExperimentalElement()); 45585 } 45586 if (element.hasDateElement()) { 45587 composeDateTime("date", element.getDateElement()); 45588 } 45589 if (element.hasPublisherElement()) { 45590 composeString("publisher", element.getPublisherElement()); 45591 } 45592 if (element.hasContact()) { 45593 for (ContactDetail e : element.getContact()) 45594 composeContactDetail("contact", e); 45595 } 45596 if (element.hasDescriptionElement()) { 45597 composeMarkdown("description", element.getDescriptionElement()); 45598 } 45599 if (element.hasUseContext()) { 45600 for (UsageContext e : element.getUseContext()) 45601 composeUsageContext("useContext", e); 45602 } 45603 if (element.hasJurisdiction()) { 45604 for (CodeableConcept e : element.getJurisdiction()) 45605 composeCodeableConcept("jurisdiction", e); 45606 } 45607 if (element.hasPurposeElement()) { 45608 composeMarkdown("purpose", element.getPurposeElement()); 45609 } 45610 if (element.hasCopyrightElement()) { 45611 composeMarkdown("copyright", element.getCopyrightElement()); 45612 } 45613 if (element.hasCopyrightLabelElement()) { 45614 composeString("copyrightLabel", element.getCopyrightLabelElement()); 45615 } 45616 if (element.hasActor()) { 45617 for (ExampleScenario.ExampleScenarioActorComponent e : element.getActor()) 45618 composeExampleScenarioActorComponent("actor", e); 45619 } 45620 if (element.hasInstance()) { 45621 for (ExampleScenario.ExampleScenarioInstanceComponent e : element.getInstance()) 45622 composeExampleScenarioInstanceComponent("instance", e); 45623 } 45624 if (element.hasProcess()) { 45625 for (ExampleScenario.ExampleScenarioProcessComponent e : element.getProcess()) 45626 composeExampleScenarioProcessComponent("process", e); 45627 } 45628 } 45629 45630 protected void composeExampleScenarioActorComponent(String name, ExampleScenario.ExampleScenarioActorComponent element) throws IOException { 45631 if (element != null) { 45632 composeElementAttributes(element); 45633 xml.enter(FHIR_NS, name); 45634 composeExampleScenarioActorComponentElements(element); 45635 composeElementClose(element); 45636 xml.exit(FHIR_NS, name); 45637 } 45638 } 45639 45640 protected void composeExampleScenarioActorComponentElements(ExampleScenario.ExampleScenarioActorComponent element) throws IOException { 45641 composeBackboneElementElements(element); 45642 if (element.hasKeyElement()) { 45643 composeString("key", element.getKeyElement()); 45644 } 45645 if (element.hasTypeElement()) 45646 composeEnumeration("type", element.getTypeElement(), new Enumerations.ExampleScenarioActorTypeEnumFactory()); 45647 if (element.hasTitleElement()) { 45648 composeString("title", element.getTitleElement()); 45649 } 45650 if (element.hasDescriptionElement()) { 45651 composeMarkdown("description", element.getDescriptionElement()); 45652 } 45653 } 45654 45655 protected void composeExampleScenarioInstanceComponent(String name, ExampleScenario.ExampleScenarioInstanceComponent element) throws IOException { 45656 if (element != null) { 45657 composeElementAttributes(element); 45658 xml.enter(FHIR_NS, name); 45659 composeExampleScenarioInstanceComponentElements(element); 45660 composeElementClose(element); 45661 xml.exit(FHIR_NS, name); 45662 } 45663 } 45664 45665 protected void composeExampleScenarioInstanceComponentElements(ExampleScenario.ExampleScenarioInstanceComponent element) throws IOException { 45666 composeBackboneElementElements(element); 45667 if (element.hasKeyElement()) { 45668 composeString("key", element.getKeyElement()); 45669 } 45670 if (element.hasStructureType()) { 45671 composeCoding("structureType", element.getStructureType()); 45672 } 45673 if (element.hasStructureVersionElement()) { 45674 composeString("structureVersion", element.getStructureVersionElement()); 45675 } 45676 if (element.hasStructureProfile()) { 45677 composeType("structureProfile", element.getStructureProfile()); 45678 } if (element.hasTitleElement()) { 45679 composeString("title", element.getTitleElement()); 45680 } 45681 if (element.hasDescriptionElement()) { 45682 composeMarkdown("description", element.getDescriptionElement()); 45683 } 45684 if (element.hasContent()) { 45685 composeReference("content", element.getContent()); 45686 } 45687 if (element.hasVersion()) { 45688 for (ExampleScenario.ExampleScenarioInstanceVersionComponent e : element.getVersion()) 45689 composeExampleScenarioInstanceVersionComponent("version", e); 45690 } 45691 if (element.hasContainedInstance()) { 45692 for (ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent e : element.getContainedInstance()) 45693 composeExampleScenarioInstanceContainedInstanceComponent("containedInstance", e); 45694 } 45695 } 45696 45697 protected void composeExampleScenarioInstanceVersionComponent(String name, ExampleScenario.ExampleScenarioInstanceVersionComponent element) throws IOException { 45698 if (element != null) { 45699 composeElementAttributes(element); 45700 xml.enter(FHIR_NS, name); 45701 composeExampleScenarioInstanceVersionComponentElements(element); 45702 composeElementClose(element); 45703 xml.exit(FHIR_NS, name); 45704 } 45705 } 45706 45707 protected void composeExampleScenarioInstanceVersionComponentElements(ExampleScenario.ExampleScenarioInstanceVersionComponent element) throws IOException { 45708 composeBackboneElementElements(element); 45709 if (element.hasKeyElement()) { 45710 composeString("key", element.getKeyElement()); 45711 } 45712 if (element.hasTitleElement()) { 45713 composeString("title", element.getTitleElement()); 45714 } 45715 if (element.hasDescriptionElement()) { 45716 composeMarkdown("description", element.getDescriptionElement()); 45717 } 45718 if (element.hasContent()) { 45719 composeReference("content", element.getContent()); 45720 } 45721 } 45722 45723 protected void composeExampleScenarioInstanceContainedInstanceComponent(String name, ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent element) throws IOException { 45724 if (element != null) { 45725 composeElementAttributes(element); 45726 xml.enter(FHIR_NS, name); 45727 composeExampleScenarioInstanceContainedInstanceComponentElements(element); 45728 composeElementClose(element); 45729 xml.exit(FHIR_NS, name); 45730 } 45731 } 45732 45733 protected void composeExampleScenarioInstanceContainedInstanceComponentElements(ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent element) throws IOException { 45734 composeBackboneElementElements(element); 45735 if (element.hasInstanceReferenceElement()) { 45736 composeString("instanceReference", element.getInstanceReferenceElement()); 45737 } 45738 if (element.hasVersionReferenceElement()) { 45739 composeString("versionReference", element.getVersionReferenceElement()); 45740 } 45741 } 45742 45743 protected void composeExampleScenarioProcessComponent(String name, ExampleScenario.ExampleScenarioProcessComponent element) throws IOException { 45744 if (element != null) { 45745 composeElementAttributes(element); 45746 xml.enter(FHIR_NS, name); 45747 composeExampleScenarioProcessComponentElements(element); 45748 composeElementClose(element); 45749 xml.exit(FHIR_NS, name); 45750 } 45751 } 45752 45753 protected void composeExampleScenarioProcessComponentElements(ExampleScenario.ExampleScenarioProcessComponent element) throws IOException { 45754 composeBackboneElementElements(element); 45755 if (element.hasTitleElement()) { 45756 composeString("title", element.getTitleElement()); 45757 } 45758 if (element.hasDescriptionElement()) { 45759 composeMarkdown("description", element.getDescriptionElement()); 45760 } 45761 if (element.hasPreConditionsElement()) { 45762 composeMarkdown("preConditions", element.getPreConditionsElement()); 45763 } 45764 if (element.hasPostConditionsElement()) { 45765 composeMarkdown("postConditions", element.getPostConditionsElement()); 45766 } 45767 if (element.hasStep()) { 45768 for (ExampleScenario.ExampleScenarioProcessStepComponent e : element.getStep()) 45769 composeExampleScenarioProcessStepComponent("step", e); 45770 } 45771 } 45772 45773 protected void composeExampleScenarioProcessStepComponent(String name, ExampleScenario.ExampleScenarioProcessStepComponent element) throws IOException { 45774 if (element != null) { 45775 composeElementAttributes(element); 45776 xml.enter(FHIR_NS, name); 45777 composeExampleScenarioProcessStepComponentElements(element); 45778 composeElementClose(element); 45779 xml.exit(FHIR_NS, name); 45780 } 45781 } 45782 45783 protected void composeExampleScenarioProcessStepComponentElements(ExampleScenario.ExampleScenarioProcessStepComponent element) throws IOException { 45784 composeBackboneElementElements(element); 45785 if (element.hasNumberElement()) { 45786 composeString("number", element.getNumberElement()); 45787 } 45788 if (element.hasProcess()) { 45789 composeExampleScenarioProcessComponent("process", element.getProcess()); 45790 } 45791 if (element.hasWorkflowElement()) { 45792 composeCanonical("workflow", element.getWorkflowElement()); 45793 } 45794 if (element.hasOperation()) { 45795 composeExampleScenarioProcessStepOperationComponent("operation", element.getOperation()); 45796 } 45797 if (element.hasAlternative()) { 45798 for (ExampleScenario.ExampleScenarioProcessStepAlternativeComponent e : element.getAlternative()) 45799 composeExampleScenarioProcessStepAlternativeComponent("alternative", e); 45800 } 45801 if (element.hasPauseElement()) { 45802 composeBoolean("pause", element.getPauseElement()); 45803 } 45804 } 45805 45806 protected void composeExampleScenarioProcessStepOperationComponent(String name, ExampleScenario.ExampleScenarioProcessStepOperationComponent element) throws IOException { 45807 if (element != null) { 45808 composeElementAttributes(element); 45809 xml.enter(FHIR_NS, name); 45810 composeExampleScenarioProcessStepOperationComponentElements(element); 45811 composeElementClose(element); 45812 xml.exit(FHIR_NS, name); 45813 } 45814 } 45815 45816 protected void composeExampleScenarioProcessStepOperationComponentElements(ExampleScenario.ExampleScenarioProcessStepOperationComponent element) throws IOException { 45817 composeBackboneElementElements(element); 45818 if (element.hasType()) { 45819 composeCoding("type", element.getType()); 45820 } 45821 if (element.hasTitleElement()) { 45822 composeString("title", element.getTitleElement()); 45823 } 45824 if (element.hasInitiatorElement()) { 45825 composeString("initiator", element.getInitiatorElement()); 45826 } 45827 if (element.hasReceiverElement()) { 45828 composeString("receiver", element.getReceiverElement()); 45829 } 45830 if (element.hasDescriptionElement()) { 45831 composeMarkdown("description", element.getDescriptionElement()); 45832 } 45833 if (element.hasInitiatorActiveElement()) { 45834 composeBoolean("initiatorActive", element.getInitiatorActiveElement()); 45835 } 45836 if (element.hasReceiverActiveElement()) { 45837 composeBoolean("receiverActive", element.getReceiverActiveElement()); 45838 } 45839 if (element.hasRequest()) { 45840 composeExampleScenarioInstanceContainedInstanceComponent("request", element.getRequest()); 45841 } 45842 if (element.hasResponse()) { 45843 composeExampleScenarioInstanceContainedInstanceComponent("response", element.getResponse()); 45844 } 45845 } 45846 45847 protected void composeExampleScenarioProcessStepAlternativeComponent(String name, ExampleScenario.ExampleScenarioProcessStepAlternativeComponent element) throws IOException { 45848 if (element != null) { 45849 composeElementAttributes(element); 45850 xml.enter(FHIR_NS, name); 45851 composeExampleScenarioProcessStepAlternativeComponentElements(element); 45852 composeElementClose(element); 45853 xml.exit(FHIR_NS, name); 45854 } 45855 } 45856 45857 protected void composeExampleScenarioProcessStepAlternativeComponentElements(ExampleScenario.ExampleScenarioProcessStepAlternativeComponent element) throws IOException { 45858 composeBackboneElementElements(element); 45859 if (element.hasTitleElement()) { 45860 composeString("title", element.getTitleElement()); 45861 } 45862 if (element.hasDescriptionElement()) { 45863 composeMarkdown("description", element.getDescriptionElement()); 45864 } 45865 if (element.hasStep()) { 45866 for (ExampleScenario.ExampleScenarioProcessStepComponent e : element.getStep()) 45867 composeExampleScenarioProcessStepComponent("step", e); 45868 } 45869 } 45870 45871 protected void composeExplanationOfBenefit(String name, ExplanationOfBenefit element) throws IOException { 45872 if (element != null) { 45873 composeResourceAttributes(element); 45874 xml.enter(FHIR_NS, name); 45875 composeExplanationOfBenefitElements(element); 45876 composeElementClose(element); 45877 xml.exit(FHIR_NS, name); 45878 } 45879 } 45880 45881 protected void composeExplanationOfBenefitElements(ExplanationOfBenefit element) throws IOException { 45882 composeDomainResourceElements(element); 45883 if (element.hasIdentifier()) { 45884 for (Identifier e : element.getIdentifier()) 45885 composeIdentifier("identifier", e); 45886 } 45887 if (element.hasTraceNumber()) { 45888 for (Identifier e : element.getTraceNumber()) 45889 composeIdentifier("traceNumber", e); 45890 } 45891 if (element.hasStatusElement()) 45892 composeEnumeration("status", element.getStatusElement(), new ExplanationOfBenefit.ExplanationOfBenefitStatusEnumFactory()); 45893 if (element.hasType()) { 45894 composeCodeableConcept("type", element.getType()); 45895 } 45896 if (element.hasSubType()) { 45897 composeCodeableConcept("subType", element.getSubType()); 45898 } 45899 if (element.hasUseElement()) 45900 composeEnumeration("use", element.getUseElement(), new Enumerations.UseEnumFactory()); 45901 if (element.hasPatient()) { 45902 composeReference("patient", element.getPatient()); 45903 } 45904 if (element.hasBillablePeriod()) { 45905 composePeriod("billablePeriod", element.getBillablePeriod()); 45906 } 45907 if (element.hasCreatedElement()) { 45908 composeDateTime("created", element.getCreatedElement()); 45909 } 45910 if (element.hasEnterer()) { 45911 composeReference("enterer", element.getEnterer()); 45912 } 45913 if (element.hasInsurer()) { 45914 composeReference("insurer", element.getInsurer()); 45915 } 45916 if (element.hasProvider()) { 45917 composeReference("provider", element.getProvider()); 45918 } 45919 if (element.hasPriority()) { 45920 composeCodeableConcept("priority", element.getPriority()); 45921 } 45922 if (element.hasFundsReserveRequested()) { 45923 composeCodeableConcept("fundsReserveRequested", element.getFundsReserveRequested()); 45924 } 45925 if (element.hasFundsReserve()) { 45926 composeCodeableConcept("fundsReserve", element.getFundsReserve()); 45927 } 45928 if (element.hasRelated()) { 45929 for (ExplanationOfBenefit.RelatedClaimComponent e : element.getRelated()) 45930 composeExplanationOfBenefitRelatedClaimComponent("related", e); 45931 } 45932 if (element.hasPrescription()) { 45933 composeReference("prescription", element.getPrescription()); 45934 } 45935 if (element.hasOriginalPrescription()) { 45936 composeReference("originalPrescription", element.getOriginalPrescription()); 45937 } 45938 if (element.hasEvent()) { 45939 for (ExplanationOfBenefit.ExplanationOfBenefitEventComponent e : element.getEvent()) 45940 composeExplanationOfBenefitEventComponent("event", e); 45941 } 45942 if (element.hasPayee()) { 45943 composeExplanationOfBenefitPayeeComponent("payee", element.getPayee()); 45944 } 45945 if (element.hasReferral()) { 45946 composeReference("referral", element.getReferral()); 45947 } 45948 if (element.hasEncounter()) { 45949 for (Reference e : element.getEncounter()) 45950 composeReference("encounter", e); 45951 } 45952 if (element.hasFacility()) { 45953 composeReference("facility", element.getFacility()); 45954 } 45955 if (element.hasClaim()) { 45956 composeReference("claim", element.getClaim()); 45957 } 45958 if (element.hasClaimResponse()) { 45959 composeReference("claimResponse", element.getClaimResponse()); 45960 } 45961 if (element.hasOutcomeElement()) 45962 composeEnumeration("outcome", element.getOutcomeElement(), new Enumerations.ClaimProcessingCodesEnumFactory()); 45963 if (element.hasDecision()) { 45964 composeCodeableConcept("decision", element.getDecision()); 45965 } 45966 if (element.hasDispositionElement()) { 45967 composeString("disposition", element.getDispositionElement()); 45968 } 45969 if (element.hasPreAuthRef()) { 45970 for (StringType e : element.getPreAuthRef()) 45971 composeString("preAuthRef", e); 45972 } 45973 if (element.hasPreAuthRefPeriod()) { 45974 for (Period e : element.getPreAuthRefPeriod()) 45975 composePeriod("preAuthRefPeriod", e); 45976 } 45977 if (element.hasDiagnosisRelatedGroup()) { 45978 composeCodeableConcept("diagnosisRelatedGroup", element.getDiagnosisRelatedGroup()); 45979 } 45980 if (element.hasCareTeam()) { 45981 for (ExplanationOfBenefit.CareTeamComponent e : element.getCareTeam()) 45982 composeExplanationOfBenefitCareTeamComponent("careTeam", e); 45983 } 45984 if (element.hasSupportingInfo()) { 45985 for (ExplanationOfBenefit.SupportingInformationComponent e : element.getSupportingInfo()) 45986 composeExplanationOfBenefitSupportingInformationComponent("supportingInfo", e); 45987 } 45988 if (element.hasDiagnosis()) { 45989 for (ExplanationOfBenefit.DiagnosisComponent e : element.getDiagnosis()) 45990 composeExplanationOfBenefitDiagnosisComponent("diagnosis", e); 45991 } 45992 if (element.hasProcedure()) { 45993 for (ExplanationOfBenefit.ProcedureComponent e : element.getProcedure()) 45994 composeExplanationOfBenefitProcedureComponent("procedure", e); 45995 } 45996 if (element.hasPrecedenceElement()) { 45997 composePositiveInt("precedence", element.getPrecedenceElement()); 45998 } 45999 if (element.hasInsurance()) { 46000 for (ExplanationOfBenefit.InsuranceComponent e : element.getInsurance()) 46001 composeExplanationOfBenefitInsuranceComponent("insurance", e); 46002 } 46003 if (element.hasAccident()) { 46004 composeExplanationOfBenefitAccidentComponent("accident", element.getAccident()); 46005 } 46006 if (element.hasPatientPaid()) { 46007 composeMoney("patientPaid", element.getPatientPaid()); 46008 } 46009 if (element.hasItem()) { 46010 for (ExplanationOfBenefit.ItemComponent e : element.getItem()) 46011 composeExplanationOfBenefitItemComponent("item", e); 46012 } 46013 if (element.hasAddItem()) { 46014 for (ExplanationOfBenefit.AddedItemComponent e : element.getAddItem()) 46015 composeExplanationOfBenefitAddedItemComponent("addItem", e); 46016 } 46017 if (element.hasAdjudication()) { 46018 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 46019 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 46020 } 46021 if (element.hasTotal()) { 46022 for (ExplanationOfBenefit.TotalComponent e : element.getTotal()) 46023 composeExplanationOfBenefitTotalComponent("total", e); 46024 } 46025 if (element.hasPayment()) { 46026 composeExplanationOfBenefitPaymentComponent("payment", element.getPayment()); 46027 } 46028 if (element.hasFormCode()) { 46029 composeCodeableConcept("formCode", element.getFormCode()); 46030 } 46031 if (element.hasForm()) { 46032 composeAttachment("form", element.getForm()); 46033 } 46034 if (element.hasProcessNote()) { 46035 for (ExplanationOfBenefit.NoteComponent e : element.getProcessNote()) 46036 composeExplanationOfBenefitNoteComponent("processNote", e); 46037 } 46038 if (element.hasBenefitPeriod()) { 46039 composePeriod("benefitPeriod", element.getBenefitPeriod()); 46040 } 46041 if (element.hasBenefitBalance()) { 46042 for (ExplanationOfBenefit.BenefitBalanceComponent e : element.getBenefitBalance()) 46043 composeExplanationOfBenefitBenefitBalanceComponent("benefitBalance", e); 46044 } 46045 } 46046 46047 protected void composeExplanationOfBenefitRelatedClaimComponent(String name, ExplanationOfBenefit.RelatedClaimComponent element) throws IOException { 46048 if (element != null) { 46049 composeElementAttributes(element); 46050 xml.enter(FHIR_NS, name); 46051 composeExplanationOfBenefitRelatedClaimComponentElements(element); 46052 composeElementClose(element); 46053 xml.exit(FHIR_NS, name); 46054 } 46055 } 46056 46057 protected void composeExplanationOfBenefitRelatedClaimComponentElements(ExplanationOfBenefit.RelatedClaimComponent element) throws IOException { 46058 composeBackboneElementElements(element); 46059 if (element.hasClaim()) { 46060 composeReference("claim", element.getClaim()); 46061 } 46062 if (element.hasRelationship()) { 46063 composeCodeableConcept("relationship", element.getRelationship()); 46064 } 46065 if (element.hasReference()) { 46066 composeIdentifier("reference", element.getReference()); 46067 } 46068 } 46069 46070 protected void composeExplanationOfBenefitEventComponent(String name, ExplanationOfBenefit.ExplanationOfBenefitEventComponent element) throws IOException { 46071 if (element != null) { 46072 composeElementAttributes(element); 46073 xml.enter(FHIR_NS, name); 46074 composeExplanationOfBenefitEventComponentElements(element); 46075 composeElementClose(element); 46076 xml.exit(FHIR_NS, name); 46077 } 46078 } 46079 46080 protected void composeExplanationOfBenefitEventComponentElements(ExplanationOfBenefit.ExplanationOfBenefitEventComponent element) throws IOException { 46081 composeBackboneElementElements(element); 46082 if (element.hasType()) { 46083 composeCodeableConcept("type", element.getType()); 46084 } 46085 if (element.hasWhen()) { 46086 composeType("when", element.getWhen()); 46087 } } 46088 46089 protected void composeExplanationOfBenefitPayeeComponent(String name, ExplanationOfBenefit.PayeeComponent element) throws IOException { 46090 if (element != null) { 46091 composeElementAttributes(element); 46092 xml.enter(FHIR_NS, name); 46093 composeExplanationOfBenefitPayeeComponentElements(element); 46094 composeElementClose(element); 46095 xml.exit(FHIR_NS, name); 46096 } 46097 } 46098 46099 protected void composeExplanationOfBenefitPayeeComponentElements(ExplanationOfBenefit.PayeeComponent element) throws IOException { 46100 composeBackboneElementElements(element); 46101 if (element.hasType()) { 46102 composeCodeableConcept("type", element.getType()); 46103 } 46104 if (element.hasParty()) { 46105 composeReference("party", element.getParty()); 46106 } 46107 } 46108 46109 protected void composeExplanationOfBenefitCareTeamComponent(String name, ExplanationOfBenefit.CareTeamComponent element) throws IOException { 46110 if (element != null) { 46111 composeElementAttributes(element); 46112 xml.enter(FHIR_NS, name); 46113 composeExplanationOfBenefitCareTeamComponentElements(element); 46114 composeElementClose(element); 46115 xml.exit(FHIR_NS, name); 46116 } 46117 } 46118 46119 protected void composeExplanationOfBenefitCareTeamComponentElements(ExplanationOfBenefit.CareTeamComponent element) throws IOException { 46120 composeBackboneElementElements(element); 46121 if (element.hasSequenceElement()) { 46122 composePositiveInt("sequence", element.getSequenceElement()); 46123 } 46124 if (element.hasProvider()) { 46125 composeReference("provider", element.getProvider()); 46126 } 46127 if (element.hasResponsibleElement()) { 46128 composeBoolean("responsible", element.getResponsibleElement()); 46129 } 46130 if (element.hasRole()) { 46131 composeCodeableConcept("role", element.getRole()); 46132 } 46133 if (element.hasSpecialty()) { 46134 composeCodeableConcept("specialty", element.getSpecialty()); 46135 } 46136 } 46137 46138 protected void composeExplanationOfBenefitSupportingInformationComponent(String name, ExplanationOfBenefit.SupportingInformationComponent element) throws IOException { 46139 if (element != null) { 46140 composeElementAttributes(element); 46141 xml.enter(FHIR_NS, name); 46142 composeExplanationOfBenefitSupportingInformationComponentElements(element); 46143 composeElementClose(element); 46144 xml.exit(FHIR_NS, name); 46145 } 46146 } 46147 46148 protected void composeExplanationOfBenefitSupportingInformationComponentElements(ExplanationOfBenefit.SupportingInformationComponent element) throws IOException { 46149 composeBackboneElementElements(element); 46150 if (element.hasSequenceElement()) { 46151 composePositiveInt("sequence", element.getSequenceElement()); 46152 } 46153 if (element.hasCategory()) { 46154 composeCodeableConcept("category", element.getCategory()); 46155 } 46156 if (element.hasCode()) { 46157 composeCodeableConcept("code", element.getCode()); 46158 } 46159 if (element.hasTiming()) { 46160 composeType("timing", element.getTiming()); 46161 } if (element.hasValue()) { 46162 composeType("value", element.getValue()); 46163 } if (element.hasReason()) { 46164 composeCoding("reason", element.getReason()); 46165 } 46166 } 46167 46168 protected void composeExplanationOfBenefitDiagnosisComponent(String name, ExplanationOfBenefit.DiagnosisComponent element) throws IOException { 46169 if (element != null) { 46170 composeElementAttributes(element); 46171 xml.enter(FHIR_NS, name); 46172 composeExplanationOfBenefitDiagnosisComponentElements(element); 46173 composeElementClose(element); 46174 xml.exit(FHIR_NS, name); 46175 } 46176 } 46177 46178 protected void composeExplanationOfBenefitDiagnosisComponentElements(ExplanationOfBenefit.DiagnosisComponent element) throws IOException { 46179 composeBackboneElementElements(element); 46180 if (element.hasSequenceElement()) { 46181 composePositiveInt("sequence", element.getSequenceElement()); 46182 } 46183 if (element.hasDiagnosis()) { 46184 composeType("diagnosis", element.getDiagnosis()); 46185 } if (element.hasType()) { 46186 for (CodeableConcept e : element.getType()) 46187 composeCodeableConcept("type", e); 46188 } 46189 if (element.hasOnAdmission()) { 46190 composeCodeableConcept("onAdmission", element.getOnAdmission()); 46191 } 46192 } 46193 46194 protected void composeExplanationOfBenefitProcedureComponent(String name, ExplanationOfBenefit.ProcedureComponent element) throws IOException { 46195 if (element != null) { 46196 composeElementAttributes(element); 46197 xml.enter(FHIR_NS, name); 46198 composeExplanationOfBenefitProcedureComponentElements(element); 46199 composeElementClose(element); 46200 xml.exit(FHIR_NS, name); 46201 } 46202 } 46203 46204 protected void composeExplanationOfBenefitProcedureComponentElements(ExplanationOfBenefit.ProcedureComponent element) throws IOException { 46205 composeBackboneElementElements(element); 46206 if (element.hasSequenceElement()) { 46207 composePositiveInt("sequence", element.getSequenceElement()); 46208 } 46209 if (element.hasType()) { 46210 for (CodeableConcept e : element.getType()) 46211 composeCodeableConcept("type", e); 46212 } 46213 if (element.hasDateElement()) { 46214 composeDateTime("date", element.getDateElement()); 46215 } 46216 if (element.hasProcedure()) { 46217 composeType("procedure", element.getProcedure()); 46218 } if (element.hasUdi()) { 46219 for (Reference e : element.getUdi()) 46220 composeReference("udi", e); 46221 } 46222 } 46223 46224 protected void composeExplanationOfBenefitInsuranceComponent(String name, ExplanationOfBenefit.InsuranceComponent element) throws IOException { 46225 if (element != null) { 46226 composeElementAttributes(element); 46227 xml.enter(FHIR_NS, name); 46228 composeExplanationOfBenefitInsuranceComponentElements(element); 46229 composeElementClose(element); 46230 xml.exit(FHIR_NS, name); 46231 } 46232 } 46233 46234 protected void composeExplanationOfBenefitInsuranceComponentElements(ExplanationOfBenefit.InsuranceComponent element) throws IOException { 46235 composeBackboneElementElements(element); 46236 if (element.hasFocalElement()) { 46237 composeBoolean("focal", element.getFocalElement()); 46238 } 46239 if (element.hasCoverage()) { 46240 composeReference("coverage", element.getCoverage()); 46241 } 46242 if (element.hasPreAuthRef()) { 46243 for (StringType e : element.getPreAuthRef()) 46244 composeString("preAuthRef", e); 46245 } 46246 } 46247 46248 protected void composeExplanationOfBenefitAccidentComponent(String name, ExplanationOfBenefit.AccidentComponent element) throws IOException { 46249 if (element != null) { 46250 composeElementAttributes(element); 46251 xml.enter(FHIR_NS, name); 46252 composeExplanationOfBenefitAccidentComponentElements(element); 46253 composeElementClose(element); 46254 xml.exit(FHIR_NS, name); 46255 } 46256 } 46257 46258 protected void composeExplanationOfBenefitAccidentComponentElements(ExplanationOfBenefit.AccidentComponent element) throws IOException { 46259 composeBackboneElementElements(element); 46260 if (element.hasDateElement()) { 46261 composeDate("date", element.getDateElement()); 46262 } 46263 if (element.hasType()) { 46264 composeCodeableConcept("type", element.getType()); 46265 } 46266 if (element.hasLocation()) { 46267 composeType("location", element.getLocation()); 46268 } } 46269 46270 protected void composeExplanationOfBenefitItemComponent(String name, ExplanationOfBenefit.ItemComponent element) throws IOException { 46271 if (element != null) { 46272 composeElementAttributes(element); 46273 xml.enter(FHIR_NS, name); 46274 composeExplanationOfBenefitItemComponentElements(element); 46275 composeElementClose(element); 46276 xml.exit(FHIR_NS, name); 46277 } 46278 } 46279 46280 protected void composeExplanationOfBenefitItemComponentElements(ExplanationOfBenefit.ItemComponent element) throws IOException { 46281 composeBackboneElementElements(element); 46282 if (element.hasSequenceElement()) { 46283 composePositiveInt("sequence", element.getSequenceElement()); 46284 } 46285 if (element.hasCareTeamSequence()) { 46286 for (PositiveIntType e : element.getCareTeamSequence()) 46287 composePositiveInt("careTeamSequence", e); 46288 } 46289 if (element.hasDiagnosisSequence()) { 46290 for (PositiveIntType e : element.getDiagnosisSequence()) 46291 composePositiveInt("diagnosisSequence", e); 46292 } 46293 if (element.hasProcedureSequence()) { 46294 for (PositiveIntType e : element.getProcedureSequence()) 46295 composePositiveInt("procedureSequence", e); 46296 } 46297 if (element.hasInformationSequence()) { 46298 for (PositiveIntType e : element.getInformationSequence()) 46299 composePositiveInt("informationSequence", e); 46300 } 46301 if (element.hasTraceNumber()) { 46302 for (Identifier e : element.getTraceNumber()) 46303 composeIdentifier("traceNumber", e); 46304 } 46305 if (element.hasRevenue()) { 46306 composeCodeableConcept("revenue", element.getRevenue()); 46307 } 46308 if (element.hasCategory()) { 46309 composeCodeableConcept("category", element.getCategory()); 46310 } 46311 if (element.hasProductOrService()) { 46312 composeCodeableConcept("productOrService", element.getProductOrService()); 46313 } 46314 if (element.hasProductOrServiceEnd()) { 46315 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 46316 } 46317 if (element.hasRequest()) { 46318 for (Reference e : element.getRequest()) 46319 composeReference("request", e); 46320 } 46321 if (element.hasModifier()) { 46322 for (CodeableConcept e : element.getModifier()) 46323 composeCodeableConcept("modifier", e); 46324 } 46325 if (element.hasProgramCode()) { 46326 for (CodeableConcept e : element.getProgramCode()) 46327 composeCodeableConcept("programCode", e); 46328 } 46329 if (element.hasServiced()) { 46330 composeType("serviced", element.getServiced()); 46331 } if (element.hasLocation()) { 46332 composeType("location", element.getLocation()); 46333 } if (element.hasPatientPaid()) { 46334 composeMoney("patientPaid", element.getPatientPaid()); 46335 } 46336 if (element.hasQuantity()) { 46337 composeQuantity("quantity", element.getQuantity()); 46338 } 46339 if (element.hasUnitPrice()) { 46340 composeMoney("unitPrice", element.getUnitPrice()); 46341 } 46342 if (element.hasFactorElement()) { 46343 composeDecimal("factor", element.getFactorElement()); 46344 } 46345 if (element.hasTax()) { 46346 composeMoney("tax", element.getTax()); 46347 } 46348 if (element.hasNet()) { 46349 composeMoney("net", element.getNet()); 46350 } 46351 if (element.hasUdi()) { 46352 for (Reference e : element.getUdi()) 46353 composeReference("udi", e); 46354 } 46355 if (element.hasBodySite()) { 46356 for (ExplanationOfBenefit.ItemBodySiteComponent e : element.getBodySite()) 46357 composeExplanationOfBenefitItemBodySiteComponent("bodySite", e); 46358 } 46359 if (element.hasEncounter()) { 46360 for (Reference e : element.getEncounter()) 46361 composeReference("encounter", e); 46362 } 46363 if (element.hasNoteNumber()) { 46364 for (PositiveIntType e : element.getNoteNumber()) 46365 composePositiveInt("noteNumber", e); 46366 } 46367 if (element.hasReviewOutcome()) { 46368 composeExplanationOfBenefitItemReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 46369 } 46370 if (element.hasAdjudication()) { 46371 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 46372 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 46373 } 46374 if (element.hasDetail()) { 46375 for (ExplanationOfBenefit.DetailComponent e : element.getDetail()) 46376 composeExplanationOfBenefitDetailComponent("detail", e); 46377 } 46378 } 46379 46380 protected void composeExplanationOfBenefitItemBodySiteComponent(String name, ExplanationOfBenefit.ItemBodySiteComponent element) throws IOException { 46381 if (element != null) { 46382 composeElementAttributes(element); 46383 xml.enter(FHIR_NS, name); 46384 composeExplanationOfBenefitItemBodySiteComponentElements(element); 46385 composeElementClose(element); 46386 xml.exit(FHIR_NS, name); 46387 } 46388 } 46389 46390 protected void composeExplanationOfBenefitItemBodySiteComponentElements(ExplanationOfBenefit.ItemBodySiteComponent element) throws IOException { 46391 composeBackboneElementElements(element); 46392 if (element.hasSite()) { 46393 for (CodeableReference e : element.getSite()) 46394 composeCodeableReference("site", e); 46395 } 46396 if (element.hasSubSite()) { 46397 for (CodeableConcept e : element.getSubSite()) 46398 composeCodeableConcept("subSite", e); 46399 } 46400 } 46401 46402 protected void composeExplanationOfBenefitItemReviewOutcomeComponent(String name, ExplanationOfBenefit.ItemReviewOutcomeComponent element) throws IOException { 46403 if (element != null) { 46404 composeElementAttributes(element); 46405 xml.enter(FHIR_NS, name); 46406 composeExplanationOfBenefitItemReviewOutcomeComponentElements(element); 46407 composeElementClose(element); 46408 xml.exit(FHIR_NS, name); 46409 } 46410 } 46411 46412 protected void composeExplanationOfBenefitItemReviewOutcomeComponentElements(ExplanationOfBenefit.ItemReviewOutcomeComponent element) throws IOException { 46413 composeBackboneElementElements(element); 46414 if (element.hasDecision()) { 46415 composeCodeableConcept("decision", element.getDecision()); 46416 } 46417 if (element.hasReason()) { 46418 for (CodeableConcept e : element.getReason()) 46419 composeCodeableConcept("reason", e); 46420 } 46421 if (element.hasPreAuthRefElement()) { 46422 composeString("preAuthRef", element.getPreAuthRefElement()); 46423 } 46424 if (element.hasPreAuthPeriod()) { 46425 composePeriod("preAuthPeriod", element.getPreAuthPeriod()); 46426 } 46427 } 46428 46429 protected void composeExplanationOfBenefitAdjudicationComponent(String name, ExplanationOfBenefit.AdjudicationComponent element) throws IOException { 46430 if (element != null) { 46431 composeElementAttributes(element); 46432 xml.enter(FHIR_NS, name); 46433 composeExplanationOfBenefitAdjudicationComponentElements(element); 46434 composeElementClose(element); 46435 xml.exit(FHIR_NS, name); 46436 } 46437 } 46438 46439 protected void composeExplanationOfBenefitAdjudicationComponentElements(ExplanationOfBenefit.AdjudicationComponent element) throws IOException { 46440 composeBackboneElementElements(element); 46441 if (element.hasCategory()) { 46442 composeCodeableConcept("category", element.getCategory()); 46443 } 46444 if (element.hasReason()) { 46445 composeCodeableConcept("reason", element.getReason()); 46446 } 46447 if (element.hasAmount()) { 46448 composeMoney("amount", element.getAmount()); 46449 } 46450 if (element.hasQuantity()) { 46451 composeQuantity("quantity", element.getQuantity()); 46452 } 46453 } 46454 46455 protected void composeExplanationOfBenefitDetailComponent(String name, ExplanationOfBenefit.DetailComponent element) throws IOException { 46456 if (element != null) { 46457 composeElementAttributes(element); 46458 xml.enter(FHIR_NS, name); 46459 composeExplanationOfBenefitDetailComponentElements(element); 46460 composeElementClose(element); 46461 xml.exit(FHIR_NS, name); 46462 } 46463 } 46464 46465 protected void composeExplanationOfBenefitDetailComponentElements(ExplanationOfBenefit.DetailComponent element) throws IOException { 46466 composeBackboneElementElements(element); 46467 if (element.hasSequenceElement()) { 46468 composePositiveInt("sequence", element.getSequenceElement()); 46469 } 46470 if (element.hasTraceNumber()) { 46471 for (Identifier e : element.getTraceNumber()) 46472 composeIdentifier("traceNumber", e); 46473 } 46474 if (element.hasRevenue()) { 46475 composeCodeableConcept("revenue", element.getRevenue()); 46476 } 46477 if (element.hasCategory()) { 46478 composeCodeableConcept("category", element.getCategory()); 46479 } 46480 if (element.hasProductOrService()) { 46481 composeCodeableConcept("productOrService", element.getProductOrService()); 46482 } 46483 if (element.hasProductOrServiceEnd()) { 46484 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 46485 } 46486 if (element.hasModifier()) { 46487 for (CodeableConcept e : element.getModifier()) 46488 composeCodeableConcept("modifier", e); 46489 } 46490 if (element.hasProgramCode()) { 46491 for (CodeableConcept e : element.getProgramCode()) 46492 composeCodeableConcept("programCode", e); 46493 } 46494 if (element.hasPatientPaid()) { 46495 composeMoney("patientPaid", element.getPatientPaid()); 46496 } 46497 if (element.hasQuantity()) { 46498 composeQuantity("quantity", element.getQuantity()); 46499 } 46500 if (element.hasUnitPrice()) { 46501 composeMoney("unitPrice", element.getUnitPrice()); 46502 } 46503 if (element.hasFactorElement()) { 46504 composeDecimal("factor", element.getFactorElement()); 46505 } 46506 if (element.hasTax()) { 46507 composeMoney("tax", element.getTax()); 46508 } 46509 if (element.hasNet()) { 46510 composeMoney("net", element.getNet()); 46511 } 46512 if (element.hasUdi()) { 46513 for (Reference e : element.getUdi()) 46514 composeReference("udi", e); 46515 } 46516 if (element.hasNoteNumber()) { 46517 for (PositiveIntType e : element.getNoteNumber()) 46518 composePositiveInt("noteNumber", e); 46519 } 46520 if (element.hasReviewOutcome()) { 46521 composeExplanationOfBenefitItemReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 46522 } 46523 if (element.hasAdjudication()) { 46524 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 46525 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 46526 } 46527 if (element.hasSubDetail()) { 46528 for (ExplanationOfBenefit.SubDetailComponent e : element.getSubDetail()) 46529 composeExplanationOfBenefitSubDetailComponent("subDetail", e); 46530 } 46531 } 46532 46533 protected void composeExplanationOfBenefitSubDetailComponent(String name, ExplanationOfBenefit.SubDetailComponent element) throws IOException { 46534 if (element != null) { 46535 composeElementAttributes(element); 46536 xml.enter(FHIR_NS, name); 46537 composeExplanationOfBenefitSubDetailComponentElements(element); 46538 composeElementClose(element); 46539 xml.exit(FHIR_NS, name); 46540 } 46541 } 46542 46543 protected void composeExplanationOfBenefitSubDetailComponentElements(ExplanationOfBenefit.SubDetailComponent element) throws IOException { 46544 composeBackboneElementElements(element); 46545 if (element.hasSequenceElement()) { 46546 composePositiveInt("sequence", element.getSequenceElement()); 46547 } 46548 if (element.hasTraceNumber()) { 46549 for (Identifier e : element.getTraceNumber()) 46550 composeIdentifier("traceNumber", e); 46551 } 46552 if (element.hasRevenue()) { 46553 composeCodeableConcept("revenue", element.getRevenue()); 46554 } 46555 if (element.hasCategory()) { 46556 composeCodeableConcept("category", element.getCategory()); 46557 } 46558 if (element.hasProductOrService()) { 46559 composeCodeableConcept("productOrService", element.getProductOrService()); 46560 } 46561 if (element.hasProductOrServiceEnd()) { 46562 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 46563 } 46564 if (element.hasModifier()) { 46565 for (CodeableConcept e : element.getModifier()) 46566 composeCodeableConcept("modifier", e); 46567 } 46568 if (element.hasProgramCode()) { 46569 for (CodeableConcept e : element.getProgramCode()) 46570 composeCodeableConcept("programCode", e); 46571 } 46572 if (element.hasPatientPaid()) { 46573 composeMoney("patientPaid", element.getPatientPaid()); 46574 } 46575 if (element.hasQuantity()) { 46576 composeQuantity("quantity", element.getQuantity()); 46577 } 46578 if (element.hasUnitPrice()) { 46579 composeMoney("unitPrice", element.getUnitPrice()); 46580 } 46581 if (element.hasFactorElement()) { 46582 composeDecimal("factor", element.getFactorElement()); 46583 } 46584 if (element.hasTax()) { 46585 composeMoney("tax", element.getTax()); 46586 } 46587 if (element.hasNet()) { 46588 composeMoney("net", element.getNet()); 46589 } 46590 if (element.hasUdi()) { 46591 for (Reference e : element.getUdi()) 46592 composeReference("udi", e); 46593 } 46594 if (element.hasNoteNumber()) { 46595 for (PositiveIntType e : element.getNoteNumber()) 46596 composePositiveInt("noteNumber", e); 46597 } 46598 if (element.hasReviewOutcome()) { 46599 composeExplanationOfBenefitItemReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 46600 } 46601 if (element.hasAdjudication()) { 46602 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 46603 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 46604 } 46605 } 46606 46607 protected void composeExplanationOfBenefitAddedItemComponent(String name, ExplanationOfBenefit.AddedItemComponent element) throws IOException { 46608 if (element != null) { 46609 composeElementAttributes(element); 46610 xml.enter(FHIR_NS, name); 46611 composeExplanationOfBenefitAddedItemComponentElements(element); 46612 composeElementClose(element); 46613 xml.exit(FHIR_NS, name); 46614 } 46615 } 46616 46617 protected void composeExplanationOfBenefitAddedItemComponentElements(ExplanationOfBenefit.AddedItemComponent element) throws IOException { 46618 composeBackboneElementElements(element); 46619 if (element.hasItemSequence()) { 46620 for (PositiveIntType e : element.getItemSequence()) 46621 composePositiveInt("itemSequence", e); 46622 } 46623 if (element.hasDetailSequence()) { 46624 for (PositiveIntType e : element.getDetailSequence()) 46625 composePositiveInt("detailSequence", e); 46626 } 46627 if (element.hasSubDetailSequence()) { 46628 for (PositiveIntType e : element.getSubDetailSequence()) 46629 composePositiveInt("subDetailSequence", e); 46630 } 46631 if (element.hasTraceNumber()) { 46632 for (Identifier e : element.getTraceNumber()) 46633 composeIdentifier("traceNumber", e); 46634 } 46635 if (element.hasProvider()) { 46636 for (Reference e : element.getProvider()) 46637 composeReference("provider", e); 46638 } 46639 if (element.hasRevenue()) { 46640 composeCodeableConcept("revenue", element.getRevenue()); 46641 } 46642 if (element.hasProductOrService()) { 46643 composeCodeableConcept("productOrService", element.getProductOrService()); 46644 } 46645 if (element.hasProductOrServiceEnd()) { 46646 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 46647 } 46648 if (element.hasRequest()) { 46649 for (Reference e : element.getRequest()) 46650 composeReference("request", e); 46651 } 46652 if (element.hasModifier()) { 46653 for (CodeableConcept e : element.getModifier()) 46654 composeCodeableConcept("modifier", e); 46655 } 46656 if (element.hasProgramCode()) { 46657 for (CodeableConcept e : element.getProgramCode()) 46658 composeCodeableConcept("programCode", e); 46659 } 46660 if (element.hasServiced()) { 46661 composeType("serviced", element.getServiced()); 46662 } if (element.hasLocation()) { 46663 composeType("location", element.getLocation()); 46664 } if (element.hasPatientPaid()) { 46665 composeMoney("patientPaid", element.getPatientPaid()); 46666 } 46667 if (element.hasQuantity()) { 46668 composeQuantity("quantity", element.getQuantity()); 46669 } 46670 if (element.hasUnitPrice()) { 46671 composeMoney("unitPrice", element.getUnitPrice()); 46672 } 46673 if (element.hasFactorElement()) { 46674 composeDecimal("factor", element.getFactorElement()); 46675 } 46676 if (element.hasTax()) { 46677 composeMoney("tax", element.getTax()); 46678 } 46679 if (element.hasNet()) { 46680 composeMoney("net", element.getNet()); 46681 } 46682 if (element.hasBodySite()) { 46683 for (ExplanationOfBenefit.AddedItemBodySiteComponent e : element.getBodySite()) 46684 composeExplanationOfBenefitAddedItemBodySiteComponent("bodySite", e); 46685 } 46686 if (element.hasNoteNumber()) { 46687 for (PositiveIntType e : element.getNoteNumber()) 46688 composePositiveInt("noteNumber", e); 46689 } 46690 if (element.hasReviewOutcome()) { 46691 composeExplanationOfBenefitItemReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 46692 } 46693 if (element.hasAdjudication()) { 46694 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 46695 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 46696 } 46697 if (element.hasDetail()) { 46698 for (ExplanationOfBenefit.AddedItemDetailComponent e : element.getDetail()) 46699 composeExplanationOfBenefitAddedItemDetailComponent("detail", e); 46700 } 46701 } 46702 46703 protected void composeExplanationOfBenefitAddedItemBodySiteComponent(String name, ExplanationOfBenefit.AddedItemBodySiteComponent element) throws IOException { 46704 if (element != null) { 46705 composeElementAttributes(element); 46706 xml.enter(FHIR_NS, name); 46707 composeExplanationOfBenefitAddedItemBodySiteComponentElements(element); 46708 composeElementClose(element); 46709 xml.exit(FHIR_NS, name); 46710 } 46711 } 46712 46713 protected void composeExplanationOfBenefitAddedItemBodySiteComponentElements(ExplanationOfBenefit.AddedItemBodySiteComponent element) throws IOException { 46714 composeBackboneElementElements(element); 46715 if (element.hasSite()) { 46716 for (CodeableReference e : element.getSite()) 46717 composeCodeableReference("site", e); 46718 } 46719 if (element.hasSubSite()) { 46720 for (CodeableConcept e : element.getSubSite()) 46721 composeCodeableConcept("subSite", e); 46722 } 46723 } 46724 46725 protected void composeExplanationOfBenefitAddedItemDetailComponent(String name, ExplanationOfBenefit.AddedItemDetailComponent element) throws IOException { 46726 if (element != null) { 46727 composeElementAttributes(element); 46728 xml.enter(FHIR_NS, name); 46729 composeExplanationOfBenefitAddedItemDetailComponentElements(element); 46730 composeElementClose(element); 46731 xml.exit(FHIR_NS, name); 46732 } 46733 } 46734 46735 protected void composeExplanationOfBenefitAddedItemDetailComponentElements(ExplanationOfBenefit.AddedItemDetailComponent element) throws IOException { 46736 composeBackboneElementElements(element); 46737 if (element.hasTraceNumber()) { 46738 for (Identifier e : element.getTraceNumber()) 46739 composeIdentifier("traceNumber", e); 46740 } 46741 if (element.hasRevenue()) { 46742 composeCodeableConcept("revenue", element.getRevenue()); 46743 } 46744 if (element.hasProductOrService()) { 46745 composeCodeableConcept("productOrService", element.getProductOrService()); 46746 } 46747 if (element.hasProductOrServiceEnd()) { 46748 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 46749 } 46750 if (element.hasModifier()) { 46751 for (CodeableConcept e : element.getModifier()) 46752 composeCodeableConcept("modifier", e); 46753 } 46754 if (element.hasPatientPaid()) { 46755 composeMoney("patientPaid", element.getPatientPaid()); 46756 } 46757 if (element.hasQuantity()) { 46758 composeQuantity("quantity", element.getQuantity()); 46759 } 46760 if (element.hasUnitPrice()) { 46761 composeMoney("unitPrice", element.getUnitPrice()); 46762 } 46763 if (element.hasFactorElement()) { 46764 composeDecimal("factor", element.getFactorElement()); 46765 } 46766 if (element.hasTax()) { 46767 composeMoney("tax", element.getTax()); 46768 } 46769 if (element.hasNet()) { 46770 composeMoney("net", element.getNet()); 46771 } 46772 if (element.hasNoteNumber()) { 46773 for (PositiveIntType e : element.getNoteNumber()) 46774 composePositiveInt("noteNumber", e); 46775 } 46776 if (element.hasReviewOutcome()) { 46777 composeExplanationOfBenefitItemReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 46778 } 46779 if (element.hasAdjudication()) { 46780 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 46781 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 46782 } 46783 if (element.hasSubDetail()) { 46784 for (ExplanationOfBenefit.AddedItemDetailSubDetailComponent e : element.getSubDetail()) 46785 composeExplanationOfBenefitAddedItemDetailSubDetailComponent("subDetail", e); 46786 } 46787 } 46788 46789 protected void composeExplanationOfBenefitAddedItemDetailSubDetailComponent(String name, ExplanationOfBenefit.AddedItemDetailSubDetailComponent element) throws IOException { 46790 if (element != null) { 46791 composeElementAttributes(element); 46792 xml.enter(FHIR_NS, name); 46793 composeExplanationOfBenefitAddedItemDetailSubDetailComponentElements(element); 46794 composeElementClose(element); 46795 xml.exit(FHIR_NS, name); 46796 } 46797 } 46798 46799 protected void composeExplanationOfBenefitAddedItemDetailSubDetailComponentElements(ExplanationOfBenefit.AddedItemDetailSubDetailComponent element) throws IOException { 46800 composeBackboneElementElements(element); 46801 if (element.hasTraceNumber()) { 46802 for (Identifier e : element.getTraceNumber()) 46803 composeIdentifier("traceNumber", e); 46804 } 46805 if (element.hasRevenue()) { 46806 composeCodeableConcept("revenue", element.getRevenue()); 46807 } 46808 if (element.hasProductOrService()) { 46809 composeCodeableConcept("productOrService", element.getProductOrService()); 46810 } 46811 if (element.hasProductOrServiceEnd()) { 46812 composeCodeableConcept("productOrServiceEnd", element.getProductOrServiceEnd()); 46813 } 46814 if (element.hasModifier()) { 46815 for (CodeableConcept e : element.getModifier()) 46816 composeCodeableConcept("modifier", e); 46817 } 46818 if (element.hasPatientPaid()) { 46819 composeMoney("patientPaid", element.getPatientPaid()); 46820 } 46821 if (element.hasQuantity()) { 46822 composeQuantity("quantity", element.getQuantity()); 46823 } 46824 if (element.hasUnitPrice()) { 46825 composeMoney("unitPrice", element.getUnitPrice()); 46826 } 46827 if (element.hasFactorElement()) { 46828 composeDecimal("factor", element.getFactorElement()); 46829 } 46830 if (element.hasTax()) { 46831 composeMoney("tax", element.getTax()); 46832 } 46833 if (element.hasNet()) { 46834 composeMoney("net", element.getNet()); 46835 } 46836 if (element.hasNoteNumber()) { 46837 for (PositiveIntType e : element.getNoteNumber()) 46838 composePositiveInt("noteNumber", e); 46839 } 46840 if (element.hasReviewOutcome()) { 46841 composeExplanationOfBenefitItemReviewOutcomeComponent("reviewOutcome", element.getReviewOutcome()); 46842 } 46843 if (element.hasAdjudication()) { 46844 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 46845 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 46846 } 46847 } 46848 46849 protected void composeExplanationOfBenefitTotalComponent(String name, ExplanationOfBenefit.TotalComponent element) throws IOException { 46850 if (element != null) { 46851 composeElementAttributes(element); 46852 xml.enter(FHIR_NS, name); 46853 composeExplanationOfBenefitTotalComponentElements(element); 46854 composeElementClose(element); 46855 xml.exit(FHIR_NS, name); 46856 } 46857 } 46858 46859 protected void composeExplanationOfBenefitTotalComponentElements(ExplanationOfBenefit.TotalComponent element) throws IOException { 46860 composeBackboneElementElements(element); 46861 if (element.hasCategory()) { 46862 composeCodeableConcept("category", element.getCategory()); 46863 } 46864 if (element.hasAmount()) { 46865 composeMoney("amount", element.getAmount()); 46866 } 46867 } 46868 46869 protected void composeExplanationOfBenefitPaymentComponent(String name, ExplanationOfBenefit.PaymentComponent element) throws IOException { 46870 if (element != null) { 46871 composeElementAttributes(element); 46872 xml.enter(FHIR_NS, name); 46873 composeExplanationOfBenefitPaymentComponentElements(element); 46874 composeElementClose(element); 46875 xml.exit(FHIR_NS, name); 46876 } 46877 } 46878 46879 protected void composeExplanationOfBenefitPaymentComponentElements(ExplanationOfBenefit.PaymentComponent element) throws IOException { 46880 composeBackboneElementElements(element); 46881 if (element.hasType()) { 46882 composeCodeableConcept("type", element.getType()); 46883 } 46884 if (element.hasAdjustment()) { 46885 composeMoney("adjustment", element.getAdjustment()); 46886 } 46887 if (element.hasAdjustmentReason()) { 46888 composeCodeableConcept("adjustmentReason", element.getAdjustmentReason()); 46889 } 46890 if (element.hasDateElement()) { 46891 composeDate("date", element.getDateElement()); 46892 } 46893 if (element.hasAmount()) { 46894 composeMoney("amount", element.getAmount()); 46895 } 46896 if (element.hasIdentifier()) { 46897 composeIdentifier("identifier", element.getIdentifier()); 46898 } 46899 } 46900 46901 protected void composeExplanationOfBenefitNoteComponent(String name, ExplanationOfBenefit.NoteComponent element) throws IOException { 46902 if (element != null) { 46903 composeElementAttributes(element); 46904 xml.enter(FHIR_NS, name); 46905 composeExplanationOfBenefitNoteComponentElements(element); 46906 composeElementClose(element); 46907 xml.exit(FHIR_NS, name); 46908 } 46909 } 46910 46911 protected void composeExplanationOfBenefitNoteComponentElements(ExplanationOfBenefit.NoteComponent element) throws IOException { 46912 composeBackboneElementElements(element); 46913 if (element.hasNumberElement()) { 46914 composePositiveInt("number", element.getNumberElement()); 46915 } 46916 if (element.hasType()) { 46917 composeCodeableConcept("type", element.getType()); 46918 } 46919 if (element.hasTextElement()) { 46920 composeString("text", element.getTextElement()); 46921 } 46922 if (element.hasLanguage()) { 46923 composeCodeableConcept("language", element.getLanguage()); 46924 } 46925 } 46926 46927 protected void composeExplanationOfBenefitBenefitBalanceComponent(String name, ExplanationOfBenefit.BenefitBalanceComponent element) throws IOException { 46928 if (element != null) { 46929 composeElementAttributes(element); 46930 xml.enter(FHIR_NS, name); 46931 composeExplanationOfBenefitBenefitBalanceComponentElements(element); 46932 composeElementClose(element); 46933 xml.exit(FHIR_NS, name); 46934 } 46935 } 46936 46937 protected void composeExplanationOfBenefitBenefitBalanceComponentElements(ExplanationOfBenefit.BenefitBalanceComponent element) throws IOException { 46938 composeBackboneElementElements(element); 46939 if (element.hasCategory()) { 46940 composeCodeableConcept("category", element.getCategory()); 46941 } 46942 if (element.hasExcludedElement()) { 46943 composeBoolean("excluded", element.getExcludedElement()); 46944 } 46945 if (element.hasNameElement()) { 46946 composeString("name", element.getNameElement()); 46947 } 46948 if (element.hasDescriptionElement()) { 46949 composeString("description", element.getDescriptionElement()); 46950 } 46951 if (element.hasNetwork()) { 46952 composeCodeableConcept("network", element.getNetwork()); 46953 } 46954 if (element.hasUnit()) { 46955 composeCodeableConcept("unit", element.getUnit()); 46956 } 46957 if (element.hasTerm()) { 46958 composeCodeableConcept("term", element.getTerm()); 46959 } 46960 if (element.hasFinancial()) { 46961 for (ExplanationOfBenefit.BenefitComponent e : element.getFinancial()) 46962 composeExplanationOfBenefitBenefitComponent("financial", e); 46963 } 46964 } 46965 46966 protected void composeExplanationOfBenefitBenefitComponent(String name, ExplanationOfBenefit.BenefitComponent element) throws IOException { 46967 if (element != null) { 46968 composeElementAttributes(element); 46969 xml.enter(FHIR_NS, name); 46970 composeExplanationOfBenefitBenefitComponentElements(element); 46971 composeElementClose(element); 46972 xml.exit(FHIR_NS, name); 46973 } 46974 } 46975 46976 protected void composeExplanationOfBenefitBenefitComponentElements(ExplanationOfBenefit.BenefitComponent element) throws IOException { 46977 composeBackboneElementElements(element); 46978 if (element.hasType()) { 46979 composeCodeableConcept("type", element.getType()); 46980 } 46981 if (element.hasAllowed()) { 46982 composeType("allowed", element.getAllowed()); 46983 } if (element.hasUsed()) { 46984 composeType("used", element.getUsed()); 46985 } } 46986 46987 protected void composeFamilyMemberHistory(String name, FamilyMemberHistory element) throws IOException { 46988 if (element != null) { 46989 composeResourceAttributes(element); 46990 xml.enter(FHIR_NS, name); 46991 composeFamilyMemberHistoryElements(element); 46992 composeElementClose(element); 46993 xml.exit(FHIR_NS, name); 46994 } 46995 } 46996 46997 protected void composeFamilyMemberHistoryElements(FamilyMemberHistory element) throws IOException { 46998 composeDomainResourceElements(element); 46999 if (element.hasIdentifier()) { 47000 for (Identifier e : element.getIdentifier()) 47001 composeIdentifier("identifier", e); 47002 } 47003 if (element.hasInstantiatesCanonical()) { 47004 for (CanonicalType e : element.getInstantiatesCanonical()) 47005 composeCanonical("instantiatesCanonical", e); 47006 } 47007 if (element.hasInstantiatesUri()) { 47008 for (UriType e : element.getInstantiatesUri()) 47009 composeUri("instantiatesUri", e); 47010 } 47011 if (element.hasStatusElement()) 47012 composeEnumeration("status", element.getStatusElement(), new FamilyMemberHistory.FamilyHistoryStatusEnumFactory()); 47013 if (element.hasDataAbsentReason()) { 47014 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 47015 } 47016 if (element.hasPatient()) { 47017 composeReference("patient", element.getPatient()); 47018 } 47019 if (element.hasDateElement()) { 47020 composeDateTime("date", element.getDateElement()); 47021 } 47022 if (element.hasParticipant()) { 47023 for (FamilyMemberHistory.FamilyMemberHistoryParticipantComponent e : element.getParticipant()) 47024 composeFamilyMemberHistoryParticipantComponent("participant", e); 47025 } 47026 if (element.hasNameElement()) { 47027 composeString("name", element.getNameElement()); 47028 } 47029 if (element.hasRelationship()) { 47030 composeCodeableConcept("relationship", element.getRelationship()); 47031 } 47032 if (element.hasSex()) { 47033 composeCodeableConcept("sex", element.getSex()); 47034 } 47035 if (element.hasBorn()) { 47036 composeType("born", element.getBorn()); 47037 } if (element.hasAge()) { 47038 composeType("age", element.getAge()); 47039 } if (element.hasEstimatedAgeElement()) { 47040 composeBoolean("estimatedAge", element.getEstimatedAgeElement()); 47041 } 47042 if (element.hasDeceased()) { 47043 composeType("deceased", element.getDeceased()); 47044 } if (element.hasReason()) { 47045 for (CodeableReference e : element.getReason()) 47046 composeCodeableReference("reason", e); 47047 } 47048 if (element.hasNote()) { 47049 for (Annotation e : element.getNote()) 47050 composeAnnotation("note", e); 47051 } 47052 if (element.hasCondition()) { 47053 for (FamilyMemberHistory.FamilyMemberHistoryConditionComponent e : element.getCondition()) 47054 composeFamilyMemberHistoryConditionComponent("condition", e); 47055 } 47056 if (element.hasProcedure()) { 47057 for (FamilyMemberHistory.FamilyMemberHistoryProcedureComponent e : element.getProcedure()) 47058 composeFamilyMemberHistoryProcedureComponent("procedure", e); 47059 } 47060 } 47061 47062 protected void composeFamilyMemberHistoryParticipantComponent(String name, FamilyMemberHistory.FamilyMemberHistoryParticipantComponent element) throws IOException { 47063 if (element != null) { 47064 composeElementAttributes(element); 47065 xml.enter(FHIR_NS, name); 47066 composeFamilyMemberHistoryParticipantComponentElements(element); 47067 composeElementClose(element); 47068 xml.exit(FHIR_NS, name); 47069 } 47070 } 47071 47072 protected void composeFamilyMemberHistoryParticipantComponentElements(FamilyMemberHistory.FamilyMemberHistoryParticipantComponent element) throws IOException { 47073 composeBackboneElementElements(element); 47074 if (element.hasFunction()) { 47075 composeCodeableConcept("function", element.getFunction()); 47076 } 47077 if (element.hasActor()) { 47078 composeReference("actor", element.getActor()); 47079 } 47080 } 47081 47082 protected void composeFamilyMemberHistoryConditionComponent(String name, FamilyMemberHistory.FamilyMemberHistoryConditionComponent element) throws IOException { 47083 if (element != null) { 47084 composeElementAttributes(element); 47085 xml.enter(FHIR_NS, name); 47086 composeFamilyMemberHistoryConditionComponentElements(element); 47087 composeElementClose(element); 47088 xml.exit(FHIR_NS, name); 47089 } 47090 } 47091 47092 protected void composeFamilyMemberHistoryConditionComponentElements(FamilyMemberHistory.FamilyMemberHistoryConditionComponent element) throws IOException { 47093 composeBackboneElementElements(element); 47094 if (element.hasCode()) { 47095 composeCodeableConcept("code", element.getCode()); 47096 } 47097 if (element.hasOutcome()) { 47098 composeCodeableConcept("outcome", element.getOutcome()); 47099 } 47100 if (element.hasContributedToDeathElement()) { 47101 composeBoolean("contributedToDeath", element.getContributedToDeathElement()); 47102 } 47103 if (element.hasOnset()) { 47104 composeType("onset", element.getOnset()); 47105 } if (element.hasNote()) { 47106 for (Annotation e : element.getNote()) 47107 composeAnnotation("note", e); 47108 } 47109 } 47110 47111 protected void composeFamilyMemberHistoryProcedureComponent(String name, FamilyMemberHistory.FamilyMemberHistoryProcedureComponent element) throws IOException { 47112 if (element != null) { 47113 composeElementAttributes(element); 47114 xml.enter(FHIR_NS, name); 47115 composeFamilyMemberHistoryProcedureComponentElements(element); 47116 composeElementClose(element); 47117 xml.exit(FHIR_NS, name); 47118 } 47119 } 47120 47121 protected void composeFamilyMemberHistoryProcedureComponentElements(FamilyMemberHistory.FamilyMemberHistoryProcedureComponent element) throws IOException { 47122 composeBackboneElementElements(element); 47123 if (element.hasCode()) { 47124 composeCodeableConcept("code", element.getCode()); 47125 } 47126 if (element.hasOutcome()) { 47127 composeCodeableConcept("outcome", element.getOutcome()); 47128 } 47129 if (element.hasContributedToDeathElement()) { 47130 composeBoolean("contributedToDeath", element.getContributedToDeathElement()); 47131 } 47132 if (element.hasPerformed()) { 47133 composeType("performed", element.getPerformed()); 47134 } if (element.hasNote()) { 47135 for (Annotation e : element.getNote()) 47136 composeAnnotation("note", e); 47137 } 47138 } 47139 47140 protected void composeFlag(String name, Flag element) throws IOException { 47141 if (element != null) { 47142 composeResourceAttributes(element); 47143 xml.enter(FHIR_NS, name); 47144 composeFlagElements(element); 47145 composeElementClose(element); 47146 xml.exit(FHIR_NS, name); 47147 } 47148 } 47149 47150 protected void composeFlagElements(Flag element) throws IOException { 47151 composeDomainResourceElements(element); 47152 if (element.hasIdentifier()) { 47153 for (Identifier e : element.getIdentifier()) 47154 composeIdentifier("identifier", e); 47155 } 47156 if (element.hasStatusElement()) 47157 composeEnumeration("status", element.getStatusElement(), new Flag.FlagStatusEnumFactory()); 47158 if (element.hasCategory()) { 47159 for (CodeableConcept e : element.getCategory()) 47160 composeCodeableConcept("category", e); 47161 } 47162 if (element.hasCode()) { 47163 composeCodeableConcept("code", element.getCode()); 47164 } 47165 if (element.hasSubject()) { 47166 composeReference("subject", element.getSubject()); 47167 } 47168 if (element.hasPeriod()) { 47169 composePeriod("period", element.getPeriod()); 47170 } 47171 if (element.hasEncounter()) { 47172 composeReference("encounter", element.getEncounter()); 47173 } 47174 if (element.hasAuthor()) { 47175 composeReference("author", element.getAuthor()); 47176 } 47177 } 47178 47179 protected void composeFormularyItem(String name, FormularyItem element) throws IOException { 47180 if (element != null) { 47181 composeResourceAttributes(element); 47182 xml.enter(FHIR_NS, name); 47183 composeFormularyItemElements(element); 47184 composeElementClose(element); 47185 xml.exit(FHIR_NS, name); 47186 } 47187 } 47188 47189 protected void composeFormularyItemElements(FormularyItem element) throws IOException { 47190 composeDomainResourceElements(element); 47191 if (element.hasIdentifier()) { 47192 for (Identifier e : element.getIdentifier()) 47193 composeIdentifier("identifier", e); 47194 } 47195 if (element.hasCode()) { 47196 composeCodeableConcept("code", element.getCode()); 47197 } 47198 if (element.hasStatusElement()) 47199 composeEnumeration("status", element.getStatusElement(), new FormularyItem.FormularyItemStatusCodesEnumFactory()); 47200 } 47201 47202 protected void composeGenomicStudy(String name, GenomicStudy element) throws IOException { 47203 if (element != null) { 47204 composeResourceAttributes(element); 47205 xml.enter(FHIR_NS, name); 47206 composeGenomicStudyElements(element); 47207 composeElementClose(element); 47208 xml.exit(FHIR_NS, name); 47209 } 47210 } 47211 47212 protected void composeGenomicStudyElements(GenomicStudy element) throws IOException { 47213 composeDomainResourceElements(element); 47214 if (element.hasIdentifier()) { 47215 for (Identifier e : element.getIdentifier()) 47216 composeIdentifier("identifier", e); 47217 } 47218 if (element.hasStatusElement()) 47219 composeEnumeration("status", element.getStatusElement(), new GenomicStudy.GenomicStudyStatusEnumFactory()); 47220 if (element.hasType()) { 47221 for (CodeableConcept e : element.getType()) 47222 composeCodeableConcept("type", e); 47223 } 47224 if (element.hasSubject()) { 47225 composeReference("subject", element.getSubject()); 47226 } 47227 if (element.hasEncounter()) { 47228 composeReference("encounter", element.getEncounter()); 47229 } 47230 if (element.hasStartDateElement()) { 47231 composeDateTime("startDate", element.getStartDateElement()); 47232 } 47233 if (element.hasBasedOn()) { 47234 for (Reference e : element.getBasedOn()) 47235 composeReference("basedOn", e); 47236 } 47237 if (element.hasReferrer()) { 47238 composeReference("referrer", element.getReferrer()); 47239 } 47240 if (element.hasInterpreter()) { 47241 for (Reference e : element.getInterpreter()) 47242 composeReference("interpreter", e); 47243 } 47244 if (element.hasReason()) { 47245 for (CodeableReference e : element.getReason()) 47246 composeCodeableReference("reason", e); 47247 } 47248 if (element.hasInstantiatesCanonicalElement()) { 47249 composeCanonical("instantiatesCanonical", element.getInstantiatesCanonicalElement()); 47250 } 47251 if (element.hasInstantiatesUriElement()) { 47252 composeUri("instantiatesUri", element.getInstantiatesUriElement()); 47253 } 47254 if (element.hasNote()) { 47255 for (Annotation e : element.getNote()) 47256 composeAnnotation("note", e); 47257 } 47258 if (element.hasDescriptionElement()) { 47259 composeMarkdown("description", element.getDescriptionElement()); 47260 } 47261 if (element.hasAnalysis()) { 47262 for (GenomicStudy.GenomicStudyAnalysisComponent e : element.getAnalysis()) 47263 composeGenomicStudyAnalysisComponent("analysis", e); 47264 } 47265 } 47266 47267 protected void composeGenomicStudyAnalysisComponent(String name, GenomicStudy.GenomicStudyAnalysisComponent element) throws IOException { 47268 if (element != null) { 47269 composeElementAttributes(element); 47270 xml.enter(FHIR_NS, name); 47271 composeGenomicStudyAnalysisComponentElements(element); 47272 composeElementClose(element); 47273 xml.exit(FHIR_NS, name); 47274 } 47275 } 47276 47277 protected void composeGenomicStudyAnalysisComponentElements(GenomicStudy.GenomicStudyAnalysisComponent element) throws IOException { 47278 composeBackboneElementElements(element); 47279 if (element.hasIdentifier()) { 47280 for (Identifier e : element.getIdentifier()) 47281 composeIdentifier("identifier", e); 47282 } 47283 if (element.hasMethodType()) { 47284 for (CodeableConcept e : element.getMethodType()) 47285 composeCodeableConcept("methodType", e); 47286 } 47287 if (element.hasChangeType()) { 47288 for (CodeableConcept e : element.getChangeType()) 47289 composeCodeableConcept("changeType", e); 47290 } 47291 if (element.hasGenomeBuild()) { 47292 composeCodeableConcept("genomeBuild", element.getGenomeBuild()); 47293 } 47294 if (element.hasInstantiatesCanonicalElement()) { 47295 composeCanonical("instantiatesCanonical", element.getInstantiatesCanonicalElement()); 47296 } 47297 if (element.hasInstantiatesUriElement()) { 47298 composeUri("instantiatesUri", element.getInstantiatesUriElement()); 47299 } 47300 if (element.hasTitleElement()) { 47301 composeString("title", element.getTitleElement()); 47302 } 47303 if (element.hasFocus()) { 47304 for (Reference e : element.getFocus()) 47305 composeReference("focus", e); 47306 } 47307 if (element.hasSpecimen()) { 47308 for (Reference e : element.getSpecimen()) 47309 composeReference("specimen", e); 47310 } 47311 if (element.hasDateElement()) { 47312 composeDateTime("date", element.getDateElement()); 47313 } 47314 if (element.hasNote()) { 47315 for (Annotation e : element.getNote()) 47316 composeAnnotation("note", e); 47317 } 47318 if (element.hasProtocolPerformed()) { 47319 composeReference("protocolPerformed", element.getProtocolPerformed()); 47320 } 47321 if (element.hasRegionsStudied()) { 47322 for (Reference e : element.getRegionsStudied()) 47323 composeReference("regionsStudied", e); 47324 } 47325 if (element.hasRegionsCalled()) { 47326 for (Reference e : element.getRegionsCalled()) 47327 composeReference("regionsCalled", e); 47328 } 47329 if (element.hasInput()) { 47330 for (GenomicStudy.GenomicStudyAnalysisInputComponent e : element.getInput()) 47331 composeGenomicStudyAnalysisInputComponent("input", e); 47332 } 47333 if (element.hasOutput()) { 47334 for (GenomicStudy.GenomicStudyAnalysisOutputComponent e : element.getOutput()) 47335 composeGenomicStudyAnalysisOutputComponent("output", e); 47336 } 47337 if (element.hasPerformer()) { 47338 for (GenomicStudy.GenomicStudyAnalysisPerformerComponent e : element.getPerformer()) 47339 composeGenomicStudyAnalysisPerformerComponent("performer", e); 47340 } 47341 if (element.hasDevice()) { 47342 for (GenomicStudy.GenomicStudyAnalysisDeviceComponent e : element.getDevice()) 47343 composeGenomicStudyAnalysisDeviceComponent("device", e); 47344 } 47345 } 47346 47347 protected void composeGenomicStudyAnalysisInputComponent(String name, GenomicStudy.GenomicStudyAnalysisInputComponent element) throws IOException { 47348 if (element != null) { 47349 composeElementAttributes(element); 47350 xml.enter(FHIR_NS, name); 47351 composeGenomicStudyAnalysisInputComponentElements(element); 47352 composeElementClose(element); 47353 xml.exit(FHIR_NS, name); 47354 } 47355 } 47356 47357 protected void composeGenomicStudyAnalysisInputComponentElements(GenomicStudy.GenomicStudyAnalysisInputComponent element) throws IOException { 47358 composeBackboneElementElements(element); 47359 if (element.hasFile()) { 47360 composeReference("file", element.getFile()); 47361 } 47362 if (element.hasType()) { 47363 composeCodeableConcept("type", element.getType()); 47364 } 47365 if (element.hasGeneratedBy()) { 47366 composeType("generatedBy", element.getGeneratedBy()); 47367 } } 47368 47369 protected void composeGenomicStudyAnalysisOutputComponent(String name, GenomicStudy.GenomicStudyAnalysisOutputComponent element) throws IOException { 47370 if (element != null) { 47371 composeElementAttributes(element); 47372 xml.enter(FHIR_NS, name); 47373 composeGenomicStudyAnalysisOutputComponentElements(element); 47374 composeElementClose(element); 47375 xml.exit(FHIR_NS, name); 47376 } 47377 } 47378 47379 protected void composeGenomicStudyAnalysisOutputComponentElements(GenomicStudy.GenomicStudyAnalysisOutputComponent element) throws IOException { 47380 composeBackboneElementElements(element); 47381 if (element.hasFile()) { 47382 composeReference("file", element.getFile()); 47383 } 47384 if (element.hasType()) { 47385 composeCodeableConcept("type", element.getType()); 47386 } 47387 } 47388 47389 protected void composeGenomicStudyAnalysisPerformerComponent(String name, GenomicStudy.GenomicStudyAnalysisPerformerComponent element) throws IOException { 47390 if (element != null) { 47391 composeElementAttributes(element); 47392 xml.enter(FHIR_NS, name); 47393 composeGenomicStudyAnalysisPerformerComponentElements(element); 47394 composeElementClose(element); 47395 xml.exit(FHIR_NS, name); 47396 } 47397 } 47398 47399 protected void composeGenomicStudyAnalysisPerformerComponentElements(GenomicStudy.GenomicStudyAnalysisPerformerComponent element) throws IOException { 47400 composeBackboneElementElements(element); 47401 if (element.hasActor()) { 47402 composeReference("actor", element.getActor()); 47403 } 47404 if (element.hasRole()) { 47405 composeCodeableConcept("role", element.getRole()); 47406 } 47407 } 47408 47409 protected void composeGenomicStudyAnalysisDeviceComponent(String name, GenomicStudy.GenomicStudyAnalysisDeviceComponent element) throws IOException { 47410 if (element != null) { 47411 composeElementAttributes(element); 47412 xml.enter(FHIR_NS, name); 47413 composeGenomicStudyAnalysisDeviceComponentElements(element); 47414 composeElementClose(element); 47415 xml.exit(FHIR_NS, name); 47416 } 47417 } 47418 47419 protected void composeGenomicStudyAnalysisDeviceComponentElements(GenomicStudy.GenomicStudyAnalysisDeviceComponent element) throws IOException { 47420 composeBackboneElementElements(element); 47421 if (element.hasDevice()) { 47422 composeReference("device", element.getDevice()); 47423 } 47424 if (element.hasFunction()) { 47425 composeCodeableConcept("function", element.getFunction()); 47426 } 47427 } 47428 47429 protected void composeGoal(String name, Goal element) throws IOException { 47430 if (element != null) { 47431 composeResourceAttributes(element); 47432 xml.enter(FHIR_NS, name); 47433 composeGoalElements(element); 47434 composeElementClose(element); 47435 xml.exit(FHIR_NS, name); 47436 } 47437 } 47438 47439 protected void composeGoalElements(Goal element) throws IOException { 47440 composeDomainResourceElements(element); 47441 if (element.hasIdentifier()) { 47442 for (Identifier e : element.getIdentifier()) 47443 composeIdentifier("identifier", e); 47444 } 47445 if (element.hasLifecycleStatusElement()) 47446 composeEnumeration("lifecycleStatus", element.getLifecycleStatusElement(), new Goal.GoalLifecycleStatusEnumFactory()); 47447 if (element.hasAchievementStatus()) { 47448 composeCodeableConcept("achievementStatus", element.getAchievementStatus()); 47449 } 47450 if (element.hasCategory()) { 47451 for (CodeableConcept e : element.getCategory()) 47452 composeCodeableConcept("category", e); 47453 } 47454 if (element.hasContinuousElement()) { 47455 composeBoolean("continuous", element.getContinuousElement()); 47456 } 47457 if (element.hasPriority()) { 47458 composeCodeableConcept("priority", element.getPriority()); 47459 } 47460 if (element.hasDescription()) { 47461 composeCodeableConcept("description", element.getDescription()); 47462 } 47463 if (element.hasSubject()) { 47464 composeReference("subject", element.getSubject()); 47465 } 47466 if (element.hasStart()) { 47467 composeType("start", element.getStart()); 47468 } if (element.hasTarget()) { 47469 for (Goal.GoalTargetComponent e : element.getTarget()) 47470 composeGoalTargetComponent("target", e); 47471 } 47472 if (element.hasStatusDateElement()) { 47473 composeDate("statusDate", element.getStatusDateElement()); 47474 } 47475 if (element.hasStatusReasonElement()) { 47476 composeString("statusReason", element.getStatusReasonElement()); 47477 } 47478 if (element.hasSource()) { 47479 composeReference("source", element.getSource()); 47480 } 47481 if (element.hasAddresses()) { 47482 for (Reference e : element.getAddresses()) 47483 composeReference("addresses", e); 47484 } 47485 if (element.hasNote()) { 47486 for (Annotation e : element.getNote()) 47487 composeAnnotation("note", e); 47488 } 47489 if (element.hasOutcome()) { 47490 for (CodeableReference e : element.getOutcome()) 47491 composeCodeableReference("outcome", e); 47492 } 47493 } 47494 47495 protected void composeGoalTargetComponent(String name, Goal.GoalTargetComponent element) throws IOException { 47496 if (element != null) { 47497 composeElementAttributes(element); 47498 xml.enter(FHIR_NS, name); 47499 composeGoalTargetComponentElements(element); 47500 composeElementClose(element); 47501 xml.exit(FHIR_NS, name); 47502 } 47503 } 47504 47505 protected void composeGoalTargetComponentElements(Goal.GoalTargetComponent element) throws IOException { 47506 composeBackboneElementElements(element); 47507 if (element.hasMeasure()) { 47508 composeCodeableConcept("measure", element.getMeasure()); 47509 } 47510 if (element.hasDetail()) { 47511 composeType("detail", element.getDetail()); 47512 } if (element.hasDue()) { 47513 composeType("due", element.getDue()); 47514 } } 47515 47516 protected void composeGraphDefinition(String name, GraphDefinition element) throws IOException { 47517 if (element != null) { 47518 composeResourceAttributes(element); 47519 xml.enter(FHIR_NS, name); 47520 composeGraphDefinitionElements(element); 47521 composeElementClose(element); 47522 xml.exit(FHIR_NS, name); 47523 } 47524 } 47525 47526 protected void composeGraphDefinitionElements(GraphDefinition element) throws IOException { 47527 composeCanonicalResourceElements(element); 47528 if (element.hasUrlElement()) { 47529 composeUri("url", element.getUrlElement()); 47530 } 47531 if (element.hasIdentifier()) { 47532 for (Identifier e : element.getIdentifier()) 47533 composeIdentifier("identifier", e); 47534 } 47535 if (element.hasVersionElement()) { 47536 composeString("version", element.getVersionElement()); 47537 } 47538 if (element.hasVersionAlgorithm()) { 47539 composeType("versionAlgorithm", element.getVersionAlgorithm()); 47540 } if (element.hasNameElement()) { 47541 composeString("name", element.getNameElement()); 47542 } 47543 if (element.hasTitleElement()) { 47544 composeString("title", element.getTitleElement()); 47545 } 47546 if (element.hasStatusElement()) 47547 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 47548 if (element.hasExperimentalElement()) { 47549 composeBoolean("experimental", element.getExperimentalElement()); 47550 } 47551 if (element.hasDateElement()) { 47552 composeDateTime("date", element.getDateElement()); 47553 } 47554 if (element.hasPublisherElement()) { 47555 composeString("publisher", element.getPublisherElement()); 47556 } 47557 if (element.hasContact()) { 47558 for (ContactDetail e : element.getContact()) 47559 composeContactDetail("contact", e); 47560 } 47561 if (element.hasDescriptionElement()) { 47562 composeMarkdown("description", element.getDescriptionElement()); 47563 } 47564 if (element.hasUseContext()) { 47565 for (UsageContext e : element.getUseContext()) 47566 composeUsageContext("useContext", e); 47567 } 47568 if (element.hasJurisdiction()) { 47569 for (CodeableConcept e : element.getJurisdiction()) 47570 composeCodeableConcept("jurisdiction", e); 47571 } 47572 if (element.hasPurposeElement()) { 47573 composeMarkdown("purpose", element.getPurposeElement()); 47574 } 47575 if (element.hasCopyrightElement()) { 47576 composeMarkdown("copyright", element.getCopyrightElement()); 47577 } 47578 if (element.hasCopyrightLabelElement()) { 47579 composeString("copyrightLabel", element.getCopyrightLabelElement()); 47580 } 47581 if (element.hasStartElement()) { 47582 composeId("start", element.getStartElement()); 47583 } 47584 if (element.hasNode()) { 47585 for (GraphDefinition.GraphDefinitionNodeComponent e : element.getNode()) 47586 composeGraphDefinitionNodeComponent("node", e); 47587 } 47588 if (element.hasLink()) { 47589 for (GraphDefinition.GraphDefinitionLinkComponent e : element.getLink()) 47590 composeGraphDefinitionLinkComponent("link", e); 47591 } 47592 } 47593 47594 protected void composeGraphDefinitionNodeComponent(String name, GraphDefinition.GraphDefinitionNodeComponent element) throws IOException { 47595 if (element != null) { 47596 composeElementAttributes(element); 47597 xml.enter(FHIR_NS, name); 47598 composeGraphDefinitionNodeComponentElements(element); 47599 composeElementClose(element); 47600 xml.exit(FHIR_NS, name); 47601 } 47602 } 47603 47604 protected void composeGraphDefinitionNodeComponentElements(GraphDefinition.GraphDefinitionNodeComponent element) throws IOException { 47605 composeBackboneElementElements(element); 47606 if (element.hasNodeIdElement()) { 47607 composeId("nodeId", element.getNodeIdElement()); 47608 } 47609 if (element.hasDescriptionElement()) { 47610 composeString("description", element.getDescriptionElement()); 47611 } 47612 if (element.hasTypeElement()) 47613 composeEnumeration("type", element.getTypeElement(), new Enumerations.VersionIndependentResourceTypesAllEnumFactory()); 47614 if (element.hasProfileElement()) { 47615 composeCanonical("profile", element.getProfileElement()); 47616 } 47617 } 47618 47619 protected void composeGraphDefinitionLinkComponent(String name, GraphDefinition.GraphDefinitionLinkComponent element) throws IOException { 47620 if (element != null) { 47621 composeElementAttributes(element); 47622 xml.enter(FHIR_NS, name); 47623 composeGraphDefinitionLinkComponentElements(element); 47624 composeElementClose(element); 47625 xml.exit(FHIR_NS, name); 47626 } 47627 } 47628 47629 protected void composeGraphDefinitionLinkComponentElements(GraphDefinition.GraphDefinitionLinkComponent element) throws IOException { 47630 composeBackboneElementElements(element); 47631 if (element.hasDescriptionElement()) { 47632 composeString("description", element.getDescriptionElement()); 47633 } 47634 if (element.hasMinElement()) { 47635 composeInteger("min", element.getMinElement()); 47636 } 47637 if (element.hasMaxElement()) { 47638 composeString("max", element.getMaxElement()); 47639 } 47640 if (element.hasSourceIdElement()) { 47641 composeId("sourceId", element.getSourceIdElement()); 47642 } 47643 if (element.hasPathElement()) { 47644 composeString("path", element.getPathElement()); 47645 } 47646 if (element.hasSliceNameElement()) { 47647 composeString("sliceName", element.getSliceNameElement()); 47648 } 47649 if (element.hasTargetIdElement()) { 47650 composeId("targetId", element.getTargetIdElement()); 47651 } 47652 if (element.hasParamsElement()) { 47653 composeString("params", element.getParamsElement()); 47654 } 47655 if (element.hasCompartment()) { 47656 for (GraphDefinition.GraphDefinitionLinkCompartmentComponent e : element.getCompartment()) 47657 composeGraphDefinitionLinkCompartmentComponent("compartment", e); 47658 } 47659 } 47660 47661 protected void composeGraphDefinitionLinkCompartmentComponent(String name, GraphDefinition.GraphDefinitionLinkCompartmentComponent element) throws IOException { 47662 if (element != null) { 47663 composeElementAttributes(element); 47664 xml.enter(FHIR_NS, name); 47665 composeGraphDefinitionLinkCompartmentComponentElements(element); 47666 composeElementClose(element); 47667 xml.exit(FHIR_NS, name); 47668 } 47669 } 47670 47671 protected void composeGraphDefinitionLinkCompartmentComponentElements(GraphDefinition.GraphDefinitionLinkCompartmentComponent element) throws IOException { 47672 composeBackboneElementElements(element); 47673 if (element.hasUseElement()) 47674 composeEnumeration("use", element.getUseElement(), new GraphDefinition.GraphCompartmentUseEnumFactory()); 47675 if (element.hasRuleElement()) 47676 composeEnumeration("rule", element.getRuleElement(), new GraphDefinition.GraphCompartmentRuleEnumFactory()); 47677 if (element.hasCodeElement()) 47678 composeEnumeration("code", element.getCodeElement(), new Enumerations.CompartmentTypeEnumFactory()); 47679 if (element.hasExpressionElement()) { 47680 composeString("expression", element.getExpressionElement()); 47681 } 47682 if (element.hasDescriptionElement()) { 47683 composeString("description", element.getDescriptionElement()); 47684 } 47685 } 47686 47687 protected void composeGroup(String name, Group element) throws IOException { 47688 if (element != null) { 47689 composeResourceAttributes(element); 47690 xml.enter(FHIR_NS, name); 47691 composeGroupElements(element); 47692 composeElementClose(element); 47693 xml.exit(FHIR_NS, name); 47694 } 47695 } 47696 47697 protected void composeGroupElements(Group element) throws IOException { 47698 composeDomainResourceElements(element); 47699 if (element.hasIdentifier()) { 47700 for (Identifier e : element.getIdentifier()) 47701 composeIdentifier("identifier", e); 47702 } 47703 if (element.hasActiveElement()) { 47704 composeBoolean("active", element.getActiveElement()); 47705 } 47706 if (element.hasTypeElement()) 47707 composeEnumeration("type", element.getTypeElement(), new Group.GroupTypeEnumFactory()); 47708 if (element.hasMembershipElement()) 47709 composeEnumeration("membership", element.getMembershipElement(), new Group.GroupMembershipBasisEnumFactory()); 47710 if (element.hasCode()) { 47711 composeCodeableConcept("code", element.getCode()); 47712 } 47713 if (element.hasNameElement()) { 47714 composeString("name", element.getNameElement()); 47715 } 47716 if (element.hasDescriptionElement()) { 47717 composeMarkdown("description", element.getDescriptionElement()); 47718 } 47719 if (element.hasQuantityElement()) { 47720 composeUnsignedInt("quantity", element.getQuantityElement()); 47721 } 47722 if (element.hasManagingEntity()) { 47723 composeReference("managingEntity", element.getManagingEntity()); 47724 } 47725 if (element.hasCharacteristic()) { 47726 for (Group.GroupCharacteristicComponent e : element.getCharacteristic()) 47727 composeGroupCharacteristicComponent("characteristic", e); 47728 } 47729 if (element.hasMember()) { 47730 for (Group.GroupMemberComponent e : element.getMember()) 47731 composeGroupMemberComponent("member", e); 47732 } 47733 } 47734 47735 protected void composeGroupCharacteristicComponent(String name, Group.GroupCharacteristicComponent element) throws IOException { 47736 if (element != null) { 47737 composeElementAttributes(element); 47738 xml.enter(FHIR_NS, name); 47739 composeGroupCharacteristicComponentElements(element); 47740 composeElementClose(element); 47741 xml.exit(FHIR_NS, name); 47742 } 47743 } 47744 47745 protected void composeGroupCharacteristicComponentElements(Group.GroupCharacteristicComponent element) throws IOException { 47746 composeBackboneElementElements(element); 47747 if (element.hasCode()) { 47748 composeCodeableConcept("code", element.getCode()); 47749 } 47750 if (element.hasValue()) { 47751 composeType("value", element.getValue()); 47752 } if (element.hasExcludeElement()) { 47753 composeBoolean("exclude", element.getExcludeElement()); 47754 } 47755 if (element.hasPeriod()) { 47756 composePeriod("period", element.getPeriod()); 47757 } 47758 } 47759 47760 protected void composeGroupMemberComponent(String name, Group.GroupMemberComponent element) throws IOException { 47761 if (element != null) { 47762 composeElementAttributes(element); 47763 xml.enter(FHIR_NS, name); 47764 composeGroupMemberComponentElements(element); 47765 composeElementClose(element); 47766 xml.exit(FHIR_NS, name); 47767 } 47768 } 47769 47770 protected void composeGroupMemberComponentElements(Group.GroupMemberComponent element) throws IOException { 47771 composeBackboneElementElements(element); 47772 if (element.hasEntity()) { 47773 composeReference("entity", element.getEntity()); 47774 } 47775 if (element.hasPeriod()) { 47776 composePeriod("period", element.getPeriod()); 47777 } 47778 if (element.hasInactiveElement()) { 47779 composeBoolean("inactive", element.getInactiveElement()); 47780 } 47781 } 47782 47783 protected void composeGuidanceResponse(String name, GuidanceResponse element) throws IOException { 47784 if (element != null) { 47785 composeResourceAttributes(element); 47786 xml.enter(FHIR_NS, name); 47787 composeGuidanceResponseElements(element); 47788 composeElementClose(element); 47789 xml.exit(FHIR_NS, name); 47790 } 47791 } 47792 47793 protected void composeGuidanceResponseElements(GuidanceResponse element) throws IOException { 47794 composeDomainResourceElements(element); 47795 if (element.hasRequestIdentifier()) { 47796 composeIdentifier("requestIdentifier", element.getRequestIdentifier()); 47797 } 47798 if (element.hasIdentifier()) { 47799 for (Identifier e : element.getIdentifier()) 47800 composeIdentifier("identifier", e); 47801 } 47802 if (element.hasModule()) { 47803 composeType("module", element.getModule()); 47804 } if (element.hasStatusElement()) 47805 composeEnumeration("status", element.getStatusElement(), new GuidanceResponse.GuidanceResponseStatusEnumFactory()); 47806 if (element.hasSubject()) { 47807 composeReference("subject", element.getSubject()); 47808 } 47809 if (element.hasEncounter()) { 47810 composeReference("encounter", element.getEncounter()); 47811 } 47812 if (element.hasOccurrenceDateTimeElement()) { 47813 composeDateTime("occurrenceDateTime", element.getOccurrenceDateTimeElement()); 47814 } 47815 if (element.hasPerformer()) { 47816 composeReference("performer", element.getPerformer()); 47817 } 47818 if (element.hasReason()) { 47819 for (CodeableReference e : element.getReason()) 47820 composeCodeableReference("reason", e); 47821 } 47822 if (element.hasNote()) { 47823 for (Annotation e : element.getNote()) 47824 composeAnnotation("note", e); 47825 } 47826 if (element.hasEvaluationMessage()) { 47827 composeReference("evaluationMessage", element.getEvaluationMessage()); 47828 } 47829 if (element.hasOutputParameters()) { 47830 composeReference("outputParameters", element.getOutputParameters()); 47831 } 47832 if (element.hasResult()) { 47833 for (Reference e : element.getResult()) 47834 composeReference("result", e); 47835 } 47836 if (element.hasDataRequirement()) { 47837 for (DataRequirement e : element.getDataRequirement()) 47838 composeDataRequirement("dataRequirement", e); 47839 } 47840 } 47841 47842 protected void composeHealthcareService(String name, HealthcareService element) throws IOException { 47843 if (element != null) { 47844 composeResourceAttributes(element); 47845 xml.enter(FHIR_NS, name); 47846 composeHealthcareServiceElements(element); 47847 composeElementClose(element); 47848 xml.exit(FHIR_NS, name); 47849 } 47850 } 47851 47852 protected void composeHealthcareServiceElements(HealthcareService element) throws IOException { 47853 composeDomainResourceElements(element); 47854 if (element.hasIdentifier()) { 47855 for (Identifier e : element.getIdentifier()) 47856 composeIdentifier("identifier", e); 47857 } 47858 if (element.hasActiveElement()) { 47859 composeBoolean("active", element.getActiveElement()); 47860 } 47861 if (element.hasProvidedBy()) { 47862 composeReference("providedBy", element.getProvidedBy()); 47863 } 47864 if (element.hasOfferedIn()) { 47865 for (Reference e : element.getOfferedIn()) 47866 composeReference("offeredIn", e); 47867 } 47868 if (element.hasCategory()) { 47869 for (CodeableConcept e : element.getCategory()) 47870 composeCodeableConcept("category", e); 47871 } 47872 if (element.hasType()) { 47873 for (CodeableConcept e : element.getType()) 47874 composeCodeableConcept("type", e); 47875 } 47876 if (element.hasSpecialty()) { 47877 for (CodeableConcept e : element.getSpecialty()) 47878 composeCodeableConcept("specialty", e); 47879 } 47880 if (element.hasLocation()) { 47881 for (Reference e : element.getLocation()) 47882 composeReference("location", e); 47883 } 47884 if (element.hasNameElement()) { 47885 composeString("name", element.getNameElement()); 47886 } 47887 if (element.hasCommentElement()) { 47888 composeMarkdown("comment", element.getCommentElement()); 47889 } 47890 if (element.hasExtraDetailsElement()) { 47891 composeMarkdown("extraDetails", element.getExtraDetailsElement()); 47892 } 47893 if (element.hasPhoto()) { 47894 composeAttachment("photo", element.getPhoto()); 47895 } 47896 if (element.hasContact()) { 47897 for (ExtendedContactDetail e : element.getContact()) 47898 composeExtendedContactDetail("contact", e); 47899 } 47900 if (element.hasCoverageArea()) { 47901 for (Reference e : element.getCoverageArea()) 47902 composeReference("coverageArea", e); 47903 } 47904 if (element.hasServiceProvisionCode()) { 47905 for (CodeableConcept e : element.getServiceProvisionCode()) 47906 composeCodeableConcept("serviceProvisionCode", e); 47907 } 47908 if (element.hasEligibility()) { 47909 for (HealthcareService.HealthcareServiceEligibilityComponent e : element.getEligibility()) 47910 composeHealthcareServiceEligibilityComponent("eligibility", e); 47911 } 47912 if (element.hasProgram()) { 47913 for (CodeableConcept e : element.getProgram()) 47914 composeCodeableConcept("program", e); 47915 } 47916 if (element.hasCharacteristic()) { 47917 for (CodeableConcept e : element.getCharacteristic()) 47918 composeCodeableConcept("characteristic", e); 47919 } 47920 if (element.hasCommunication()) { 47921 for (CodeableConcept e : element.getCommunication()) 47922 composeCodeableConcept("communication", e); 47923 } 47924 if (element.hasReferralMethod()) { 47925 for (CodeableConcept e : element.getReferralMethod()) 47926 composeCodeableConcept("referralMethod", e); 47927 } 47928 if (element.hasAppointmentRequiredElement()) { 47929 composeBoolean("appointmentRequired", element.getAppointmentRequiredElement()); 47930 } 47931 if (element.hasAvailability()) { 47932 for (Availability e : element.getAvailability()) 47933 composeAvailability("availability", e); 47934 } 47935 if (element.hasEndpoint()) { 47936 for (Reference e : element.getEndpoint()) 47937 composeReference("endpoint", e); 47938 } 47939 } 47940 47941 protected void composeHealthcareServiceEligibilityComponent(String name, HealthcareService.HealthcareServiceEligibilityComponent element) throws IOException { 47942 if (element != null) { 47943 composeElementAttributes(element); 47944 xml.enter(FHIR_NS, name); 47945 composeHealthcareServiceEligibilityComponentElements(element); 47946 composeElementClose(element); 47947 xml.exit(FHIR_NS, name); 47948 } 47949 } 47950 47951 protected void composeHealthcareServiceEligibilityComponentElements(HealthcareService.HealthcareServiceEligibilityComponent element) throws IOException { 47952 composeBackboneElementElements(element); 47953 if (element.hasCode()) { 47954 composeCodeableConcept("code", element.getCode()); 47955 } 47956 if (element.hasCommentElement()) { 47957 composeMarkdown("comment", element.getCommentElement()); 47958 } 47959 } 47960 47961 protected void composeImagingSelection(String name, ImagingSelection element) throws IOException { 47962 if (element != null) { 47963 composeResourceAttributes(element); 47964 xml.enter(FHIR_NS, name); 47965 composeImagingSelectionElements(element); 47966 composeElementClose(element); 47967 xml.exit(FHIR_NS, name); 47968 } 47969 } 47970 47971 protected void composeImagingSelectionElements(ImagingSelection element) throws IOException { 47972 composeDomainResourceElements(element); 47973 if (element.hasIdentifier()) { 47974 for (Identifier e : element.getIdentifier()) 47975 composeIdentifier("identifier", e); 47976 } 47977 if (element.hasStatusElement()) 47978 composeEnumeration("status", element.getStatusElement(), new ImagingSelection.ImagingSelectionStatusEnumFactory()); 47979 if (element.hasSubject()) { 47980 composeReference("subject", element.getSubject()); 47981 } 47982 if (element.hasIssuedElement()) { 47983 composeInstant("issued", element.getIssuedElement()); 47984 } 47985 if (element.hasPerformer()) { 47986 for (ImagingSelection.ImagingSelectionPerformerComponent e : element.getPerformer()) 47987 composeImagingSelectionPerformerComponent("performer", e); 47988 } 47989 if (element.hasBasedOn()) { 47990 for (Reference e : element.getBasedOn()) 47991 composeReference("basedOn", e); 47992 } 47993 if (element.hasCategory()) { 47994 for (CodeableConcept e : element.getCategory()) 47995 composeCodeableConcept("category", e); 47996 } 47997 if (element.hasCode()) { 47998 composeCodeableConcept("code", element.getCode()); 47999 } 48000 if (element.hasStudyUidElement()) { 48001 composeId("studyUid", element.getStudyUidElement()); 48002 } 48003 if (element.hasDerivedFrom()) { 48004 for (Reference e : element.getDerivedFrom()) 48005 composeReference("derivedFrom", e); 48006 } 48007 if (element.hasEndpoint()) { 48008 for (Reference e : element.getEndpoint()) 48009 composeReference("endpoint", e); 48010 } 48011 if (element.hasSeriesUidElement()) { 48012 composeId("seriesUid", element.getSeriesUidElement()); 48013 } 48014 if (element.hasSeriesNumberElement()) { 48015 composeUnsignedInt("seriesNumber", element.getSeriesNumberElement()); 48016 } 48017 if (element.hasFrameOfReferenceUidElement()) { 48018 composeId("frameOfReferenceUid", element.getFrameOfReferenceUidElement()); 48019 } 48020 if (element.hasBodySite()) { 48021 composeCodeableReference("bodySite", element.getBodySite()); 48022 } 48023 if (element.hasFocus()) { 48024 for (Reference e : element.getFocus()) 48025 composeReference("focus", e); 48026 } 48027 if (element.hasInstance()) { 48028 for (ImagingSelection.ImagingSelectionInstanceComponent e : element.getInstance()) 48029 composeImagingSelectionInstanceComponent("instance", e); 48030 } 48031 } 48032 48033 protected void composeImagingSelectionPerformerComponent(String name, ImagingSelection.ImagingSelectionPerformerComponent element) throws IOException { 48034 if (element != null) { 48035 composeElementAttributes(element); 48036 xml.enter(FHIR_NS, name); 48037 composeImagingSelectionPerformerComponentElements(element); 48038 composeElementClose(element); 48039 xml.exit(FHIR_NS, name); 48040 } 48041 } 48042 48043 protected void composeImagingSelectionPerformerComponentElements(ImagingSelection.ImagingSelectionPerformerComponent element) throws IOException { 48044 composeBackboneElementElements(element); 48045 if (element.hasFunction()) { 48046 composeCodeableConcept("function", element.getFunction()); 48047 } 48048 if (element.hasActor()) { 48049 composeReference("actor", element.getActor()); 48050 } 48051 } 48052 48053 protected void composeImagingSelectionInstanceComponent(String name, ImagingSelection.ImagingSelectionInstanceComponent element) throws IOException { 48054 if (element != null) { 48055 composeElementAttributes(element); 48056 xml.enter(FHIR_NS, name); 48057 composeImagingSelectionInstanceComponentElements(element); 48058 composeElementClose(element); 48059 xml.exit(FHIR_NS, name); 48060 } 48061 } 48062 48063 protected void composeImagingSelectionInstanceComponentElements(ImagingSelection.ImagingSelectionInstanceComponent element) throws IOException { 48064 composeBackboneElementElements(element); 48065 if (element.hasUidElement()) { 48066 composeId("uid", element.getUidElement()); 48067 } 48068 if (element.hasNumberElement()) { 48069 composeUnsignedInt("number", element.getNumberElement()); 48070 } 48071 if (element.hasSopClass()) { 48072 composeCoding("sopClass", element.getSopClass()); 48073 } 48074 if (element.hasSubset()) { 48075 for (StringType e : element.getSubset()) 48076 composeString("subset", e); 48077 } 48078 if (element.hasImageRegion2D()) { 48079 for (ImagingSelection.ImageRegion2DComponent e : element.getImageRegion2D()) 48080 composeImagingSelectionImageRegion2DComponent("imageRegion2D", e); 48081 } 48082 if (element.hasImageRegion3D()) { 48083 for (ImagingSelection.ImageRegion3DComponent e : element.getImageRegion3D()) 48084 composeImagingSelectionImageRegion3DComponent("imageRegion3D", e); 48085 } 48086 } 48087 48088 protected void composeImagingSelectionImageRegion2DComponent(String name, ImagingSelection.ImageRegion2DComponent element) throws IOException { 48089 if (element != null) { 48090 composeElementAttributes(element); 48091 xml.enter(FHIR_NS, name); 48092 composeImagingSelectionImageRegion2DComponentElements(element); 48093 composeElementClose(element); 48094 xml.exit(FHIR_NS, name); 48095 } 48096 } 48097 48098 protected void composeImagingSelectionImageRegion2DComponentElements(ImagingSelection.ImageRegion2DComponent element) throws IOException { 48099 composeBackboneElementElements(element); 48100 if (element.hasRegionTypeElement()) 48101 composeEnumeration("regionType", element.getRegionTypeElement(), new ImagingSelection.ImagingSelection2DGraphicTypeEnumFactory()); 48102 if (element.hasCoordinate()) { 48103 for (DecimalType e : element.getCoordinate()) 48104 composeDecimal("coordinate", e); 48105 } 48106 } 48107 48108 protected void composeImagingSelectionImageRegion3DComponent(String name, ImagingSelection.ImageRegion3DComponent element) throws IOException { 48109 if (element != null) { 48110 composeElementAttributes(element); 48111 xml.enter(FHIR_NS, name); 48112 composeImagingSelectionImageRegion3DComponentElements(element); 48113 composeElementClose(element); 48114 xml.exit(FHIR_NS, name); 48115 } 48116 } 48117 48118 protected void composeImagingSelectionImageRegion3DComponentElements(ImagingSelection.ImageRegion3DComponent element) throws IOException { 48119 composeBackboneElementElements(element); 48120 if (element.hasRegionTypeElement()) 48121 composeEnumeration("regionType", element.getRegionTypeElement(), new ImagingSelection.ImagingSelection3DGraphicTypeEnumFactory()); 48122 if (element.hasCoordinate()) { 48123 for (DecimalType e : element.getCoordinate()) 48124 composeDecimal("coordinate", e); 48125 } 48126 } 48127 48128 protected void composeImagingStudy(String name, ImagingStudy element) throws IOException { 48129 if (element != null) { 48130 composeResourceAttributes(element); 48131 xml.enter(FHIR_NS, name); 48132 composeImagingStudyElements(element); 48133 composeElementClose(element); 48134 xml.exit(FHIR_NS, name); 48135 } 48136 } 48137 48138 protected void composeImagingStudyElements(ImagingStudy element) throws IOException { 48139 composeDomainResourceElements(element); 48140 if (element.hasIdentifier()) { 48141 for (Identifier e : element.getIdentifier()) 48142 composeIdentifier("identifier", e); 48143 } 48144 if (element.hasStatusElement()) 48145 composeEnumeration("status", element.getStatusElement(), new ImagingStudy.ImagingStudyStatusEnumFactory()); 48146 if (element.hasModality()) { 48147 for (CodeableConcept e : element.getModality()) 48148 composeCodeableConcept("modality", e); 48149 } 48150 if (element.hasSubject()) { 48151 composeReference("subject", element.getSubject()); 48152 } 48153 if (element.hasEncounter()) { 48154 composeReference("encounter", element.getEncounter()); 48155 } 48156 if (element.hasStartedElement()) { 48157 composeDateTime("started", element.getStartedElement()); 48158 } 48159 if (element.hasBasedOn()) { 48160 for (Reference e : element.getBasedOn()) 48161 composeReference("basedOn", e); 48162 } 48163 if (element.hasPartOf()) { 48164 for (Reference e : element.getPartOf()) 48165 composeReference("partOf", e); 48166 } 48167 if (element.hasReferrer()) { 48168 composeReference("referrer", element.getReferrer()); 48169 } 48170 if (element.hasEndpoint()) { 48171 for (Reference e : element.getEndpoint()) 48172 composeReference("endpoint", e); 48173 } 48174 if (element.hasNumberOfSeriesElement()) { 48175 composeUnsignedInt("numberOfSeries", element.getNumberOfSeriesElement()); 48176 } 48177 if (element.hasNumberOfInstancesElement()) { 48178 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 48179 } 48180 if (element.hasProcedure()) { 48181 for (CodeableReference e : element.getProcedure()) 48182 composeCodeableReference("procedure", e); 48183 } 48184 if (element.hasLocation()) { 48185 composeReference("location", element.getLocation()); 48186 } 48187 if (element.hasReason()) { 48188 for (CodeableReference e : element.getReason()) 48189 composeCodeableReference("reason", e); 48190 } 48191 if (element.hasNote()) { 48192 for (Annotation e : element.getNote()) 48193 composeAnnotation("note", e); 48194 } 48195 if (element.hasDescriptionElement()) { 48196 composeString("description", element.getDescriptionElement()); 48197 } 48198 if (element.hasSeries()) { 48199 for (ImagingStudy.ImagingStudySeriesComponent e : element.getSeries()) 48200 composeImagingStudySeriesComponent("series", e); 48201 } 48202 } 48203 48204 protected void composeImagingStudySeriesComponent(String name, ImagingStudy.ImagingStudySeriesComponent element) throws IOException { 48205 if (element != null) { 48206 composeElementAttributes(element); 48207 xml.enter(FHIR_NS, name); 48208 composeImagingStudySeriesComponentElements(element); 48209 composeElementClose(element); 48210 xml.exit(FHIR_NS, name); 48211 } 48212 } 48213 48214 protected void composeImagingStudySeriesComponentElements(ImagingStudy.ImagingStudySeriesComponent element) throws IOException { 48215 composeBackboneElementElements(element); 48216 if (element.hasUidElement()) { 48217 composeId("uid", element.getUidElement()); 48218 } 48219 if (element.hasNumberElement()) { 48220 composeUnsignedInt("number", element.getNumberElement()); 48221 } 48222 if (element.hasModality()) { 48223 composeCodeableConcept("modality", element.getModality()); 48224 } 48225 if (element.hasDescriptionElement()) { 48226 composeString("description", element.getDescriptionElement()); 48227 } 48228 if (element.hasNumberOfInstancesElement()) { 48229 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 48230 } 48231 if (element.hasEndpoint()) { 48232 for (Reference e : element.getEndpoint()) 48233 composeReference("endpoint", e); 48234 } 48235 if (element.hasBodySite()) { 48236 composeCodeableReference("bodySite", element.getBodySite()); 48237 } 48238 if (element.hasLaterality()) { 48239 composeCodeableConcept("laterality", element.getLaterality()); 48240 } 48241 if (element.hasSpecimen()) { 48242 for (Reference e : element.getSpecimen()) 48243 composeReference("specimen", e); 48244 } 48245 if (element.hasStartedElement()) { 48246 composeDateTime("started", element.getStartedElement()); 48247 } 48248 if (element.hasPerformer()) { 48249 for (ImagingStudy.ImagingStudySeriesPerformerComponent e : element.getPerformer()) 48250 composeImagingStudySeriesPerformerComponent("performer", e); 48251 } 48252 if (element.hasInstance()) { 48253 for (ImagingStudy.ImagingStudySeriesInstanceComponent e : element.getInstance()) 48254 composeImagingStudySeriesInstanceComponent("instance", e); 48255 } 48256 } 48257 48258 protected void composeImagingStudySeriesPerformerComponent(String name, ImagingStudy.ImagingStudySeriesPerformerComponent element) throws IOException { 48259 if (element != null) { 48260 composeElementAttributes(element); 48261 xml.enter(FHIR_NS, name); 48262 composeImagingStudySeriesPerformerComponentElements(element); 48263 composeElementClose(element); 48264 xml.exit(FHIR_NS, name); 48265 } 48266 } 48267 48268 protected void composeImagingStudySeriesPerformerComponentElements(ImagingStudy.ImagingStudySeriesPerformerComponent element) throws IOException { 48269 composeBackboneElementElements(element); 48270 if (element.hasFunction()) { 48271 composeCodeableConcept("function", element.getFunction()); 48272 } 48273 if (element.hasActor()) { 48274 composeReference("actor", element.getActor()); 48275 } 48276 } 48277 48278 protected void composeImagingStudySeriesInstanceComponent(String name, ImagingStudy.ImagingStudySeriesInstanceComponent element) throws IOException { 48279 if (element != null) { 48280 composeElementAttributes(element); 48281 xml.enter(FHIR_NS, name); 48282 composeImagingStudySeriesInstanceComponentElements(element); 48283 composeElementClose(element); 48284 xml.exit(FHIR_NS, name); 48285 } 48286 } 48287 48288 protected void composeImagingStudySeriesInstanceComponentElements(ImagingStudy.ImagingStudySeriesInstanceComponent element) throws IOException { 48289 composeBackboneElementElements(element); 48290 if (element.hasUidElement()) { 48291 composeId("uid", element.getUidElement()); 48292 } 48293 if (element.hasSopClass()) { 48294 composeCoding("sopClass", element.getSopClass()); 48295 } 48296 if (element.hasNumberElement()) { 48297 composeUnsignedInt("number", element.getNumberElement()); 48298 } 48299 if (element.hasTitleElement()) { 48300 composeString("title", element.getTitleElement()); 48301 } 48302 } 48303 48304 protected void composeImmunization(String name, Immunization element) throws IOException { 48305 if (element != null) { 48306 composeResourceAttributes(element); 48307 xml.enter(FHIR_NS, name); 48308 composeImmunizationElements(element); 48309 composeElementClose(element); 48310 xml.exit(FHIR_NS, name); 48311 } 48312 } 48313 48314 protected void composeImmunizationElements(Immunization element) throws IOException { 48315 composeDomainResourceElements(element); 48316 if (element.hasIdentifier()) { 48317 for (Identifier e : element.getIdentifier()) 48318 composeIdentifier("identifier", e); 48319 } 48320 if (element.hasBasedOn()) { 48321 for (Reference e : element.getBasedOn()) 48322 composeReference("basedOn", e); 48323 } 48324 if (element.hasStatusElement()) 48325 composeEnumeration("status", element.getStatusElement(), new Immunization.ImmunizationStatusCodesEnumFactory()); 48326 if (element.hasStatusReason()) { 48327 composeCodeableConcept("statusReason", element.getStatusReason()); 48328 } 48329 if (element.hasVaccineCode()) { 48330 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 48331 } 48332 if (element.hasAdministeredProduct()) { 48333 composeCodeableReference("administeredProduct", element.getAdministeredProduct()); 48334 } 48335 if (element.hasManufacturer()) { 48336 composeCodeableReference("manufacturer", element.getManufacturer()); 48337 } 48338 if (element.hasLotNumberElement()) { 48339 composeString("lotNumber", element.getLotNumberElement()); 48340 } 48341 if (element.hasExpirationDateElement()) { 48342 composeDate("expirationDate", element.getExpirationDateElement()); 48343 } 48344 if (element.hasPatient()) { 48345 composeReference("patient", element.getPatient()); 48346 } 48347 if (element.hasEncounter()) { 48348 composeReference("encounter", element.getEncounter()); 48349 } 48350 if (element.hasSupportingInformation()) { 48351 for (Reference e : element.getSupportingInformation()) 48352 composeReference("supportingInformation", e); 48353 } 48354 if (element.hasOccurrence()) { 48355 composeType("occurrence", element.getOccurrence()); 48356 } if (element.hasPrimarySourceElement()) { 48357 composeBoolean("primarySource", element.getPrimarySourceElement()); 48358 } 48359 if (element.hasInformationSource()) { 48360 composeCodeableReference("informationSource", element.getInformationSource()); 48361 } 48362 if (element.hasLocation()) { 48363 composeReference("location", element.getLocation()); 48364 } 48365 if (element.hasSite()) { 48366 composeCodeableConcept("site", element.getSite()); 48367 } 48368 if (element.hasRoute()) { 48369 composeCodeableConcept("route", element.getRoute()); 48370 } 48371 if (element.hasDoseQuantity()) { 48372 composeQuantity("doseQuantity", element.getDoseQuantity()); 48373 } 48374 if (element.hasPerformer()) { 48375 for (Immunization.ImmunizationPerformerComponent e : element.getPerformer()) 48376 composeImmunizationPerformerComponent("performer", e); 48377 } 48378 if (element.hasNote()) { 48379 for (Annotation e : element.getNote()) 48380 composeAnnotation("note", e); 48381 } 48382 if (element.hasReason()) { 48383 for (CodeableReference e : element.getReason()) 48384 composeCodeableReference("reason", e); 48385 } 48386 if (element.hasIsSubpotentElement()) { 48387 composeBoolean("isSubpotent", element.getIsSubpotentElement()); 48388 } 48389 if (element.hasSubpotentReason()) { 48390 for (CodeableConcept e : element.getSubpotentReason()) 48391 composeCodeableConcept("subpotentReason", e); 48392 } 48393 if (element.hasProgramEligibility()) { 48394 for (Immunization.ImmunizationProgramEligibilityComponent e : element.getProgramEligibility()) 48395 composeImmunizationProgramEligibilityComponent("programEligibility", e); 48396 } 48397 if (element.hasFundingSource()) { 48398 composeCodeableConcept("fundingSource", element.getFundingSource()); 48399 } 48400 if (element.hasReaction()) { 48401 for (Immunization.ImmunizationReactionComponent e : element.getReaction()) 48402 composeImmunizationReactionComponent("reaction", e); 48403 } 48404 if (element.hasProtocolApplied()) { 48405 for (Immunization.ImmunizationProtocolAppliedComponent e : element.getProtocolApplied()) 48406 composeImmunizationProtocolAppliedComponent("protocolApplied", e); 48407 } 48408 } 48409 48410 protected void composeImmunizationPerformerComponent(String name, Immunization.ImmunizationPerformerComponent element) throws IOException { 48411 if (element != null) { 48412 composeElementAttributes(element); 48413 xml.enter(FHIR_NS, name); 48414 composeImmunizationPerformerComponentElements(element); 48415 composeElementClose(element); 48416 xml.exit(FHIR_NS, name); 48417 } 48418 } 48419 48420 protected void composeImmunizationPerformerComponentElements(Immunization.ImmunizationPerformerComponent element) throws IOException { 48421 composeBackboneElementElements(element); 48422 if (element.hasFunction()) { 48423 composeCodeableConcept("function", element.getFunction()); 48424 } 48425 if (element.hasActor()) { 48426 composeReference("actor", element.getActor()); 48427 } 48428 } 48429 48430 protected void composeImmunizationProgramEligibilityComponent(String name, Immunization.ImmunizationProgramEligibilityComponent element) throws IOException { 48431 if (element != null) { 48432 composeElementAttributes(element); 48433 xml.enter(FHIR_NS, name); 48434 composeImmunizationProgramEligibilityComponentElements(element); 48435 composeElementClose(element); 48436 xml.exit(FHIR_NS, name); 48437 } 48438 } 48439 48440 protected void composeImmunizationProgramEligibilityComponentElements(Immunization.ImmunizationProgramEligibilityComponent element) throws IOException { 48441 composeBackboneElementElements(element); 48442 if (element.hasProgram()) { 48443 composeCodeableConcept("program", element.getProgram()); 48444 } 48445 if (element.hasProgramStatus()) { 48446 composeCodeableConcept("programStatus", element.getProgramStatus()); 48447 } 48448 } 48449 48450 protected void composeImmunizationReactionComponent(String name, Immunization.ImmunizationReactionComponent element) throws IOException { 48451 if (element != null) { 48452 composeElementAttributes(element); 48453 xml.enter(FHIR_NS, name); 48454 composeImmunizationReactionComponentElements(element); 48455 composeElementClose(element); 48456 xml.exit(FHIR_NS, name); 48457 } 48458 } 48459 48460 protected void composeImmunizationReactionComponentElements(Immunization.ImmunizationReactionComponent element) throws IOException { 48461 composeBackboneElementElements(element); 48462 if (element.hasDateElement()) { 48463 composeDateTime("date", element.getDateElement()); 48464 } 48465 if (element.hasManifestation()) { 48466 composeCodeableReference("manifestation", element.getManifestation()); 48467 } 48468 if (element.hasReportedElement()) { 48469 composeBoolean("reported", element.getReportedElement()); 48470 } 48471 } 48472 48473 protected void composeImmunizationProtocolAppliedComponent(String name, Immunization.ImmunizationProtocolAppliedComponent element) throws IOException { 48474 if (element != null) { 48475 composeElementAttributes(element); 48476 xml.enter(FHIR_NS, name); 48477 composeImmunizationProtocolAppliedComponentElements(element); 48478 composeElementClose(element); 48479 xml.exit(FHIR_NS, name); 48480 } 48481 } 48482 48483 protected void composeImmunizationProtocolAppliedComponentElements(Immunization.ImmunizationProtocolAppliedComponent element) throws IOException { 48484 composeBackboneElementElements(element); 48485 if (element.hasSeriesElement()) { 48486 composeString("series", element.getSeriesElement()); 48487 } 48488 if (element.hasAuthority()) { 48489 composeReference("authority", element.getAuthority()); 48490 } 48491 if (element.hasTargetDisease()) { 48492 for (CodeableConcept e : element.getTargetDisease()) 48493 composeCodeableConcept("targetDisease", e); 48494 } 48495 if (element.hasDoseNumberElement()) { 48496 composeString("doseNumber", element.getDoseNumberElement()); 48497 } 48498 if (element.hasSeriesDosesElement()) { 48499 composeString("seriesDoses", element.getSeriesDosesElement()); 48500 } 48501 } 48502 48503 protected void composeImmunizationEvaluation(String name, ImmunizationEvaluation element) throws IOException { 48504 if (element != null) { 48505 composeResourceAttributes(element); 48506 xml.enter(FHIR_NS, name); 48507 composeImmunizationEvaluationElements(element); 48508 composeElementClose(element); 48509 xml.exit(FHIR_NS, name); 48510 } 48511 } 48512 48513 protected void composeImmunizationEvaluationElements(ImmunizationEvaluation element) throws IOException { 48514 composeDomainResourceElements(element); 48515 if (element.hasIdentifier()) { 48516 for (Identifier e : element.getIdentifier()) 48517 composeIdentifier("identifier", e); 48518 } 48519 if (element.hasStatusElement()) 48520 composeEnumeration("status", element.getStatusElement(), new ImmunizationEvaluation.ImmunizationEvaluationStatusCodesEnumFactory()); 48521 if (element.hasPatient()) { 48522 composeReference("patient", element.getPatient()); 48523 } 48524 if (element.hasDateElement()) { 48525 composeDateTime("date", element.getDateElement()); 48526 } 48527 if (element.hasAuthority()) { 48528 composeReference("authority", element.getAuthority()); 48529 } 48530 if (element.hasTargetDisease()) { 48531 composeCodeableConcept("targetDisease", element.getTargetDisease()); 48532 } 48533 if (element.hasImmunizationEvent()) { 48534 composeReference("immunizationEvent", element.getImmunizationEvent()); 48535 } 48536 if (element.hasDoseStatus()) { 48537 composeCodeableConcept("doseStatus", element.getDoseStatus()); 48538 } 48539 if (element.hasDoseStatusReason()) { 48540 for (CodeableConcept e : element.getDoseStatusReason()) 48541 composeCodeableConcept("doseStatusReason", e); 48542 } 48543 if (element.hasDescriptionElement()) { 48544 composeMarkdown("description", element.getDescriptionElement()); 48545 } 48546 if (element.hasSeriesElement()) { 48547 composeString("series", element.getSeriesElement()); 48548 } 48549 if (element.hasDoseNumberElement()) { 48550 composeString("doseNumber", element.getDoseNumberElement()); 48551 } 48552 if (element.hasSeriesDosesElement()) { 48553 composeString("seriesDoses", element.getSeriesDosesElement()); 48554 } 48555 } 48556 48557 protected void composeImmunizationRecommendation(String name, ImmunizationRecommendation element) throws IOException { 48558 if (element != null) { 48559 composeResourceAttributes(element); 48560 xml.enter(FHIR_NS, name); 48561 composeImmunizationRecommendationElements(element); 48562 composeElementClose(element); 48563 xml.exit(FHIR_NS, name); 48564 } 48565 } 48566 48567 protected void composeImmunizationRecommendationElements(ImmunizationRecommendation element) throws IOException { 48568 composeDomainResourceElements(element); 48569 if (element.hasIdentifier()) { 48570 for (Identifier e : element.getIdentifier()) 48571 composeIdentifier("identifier", e); 48572 } 48573 if (element.hasPatient()) { 48574 composeReference("patient", element.getPatient()); 48575 } 48576 if (element.hasDateElement()) { 48577 composeDateTime("date", element.getDateElement()); 48578 } 48579 if (element.hasAuthority()) { 48580 composeReference("authority", element.getAuthority()); 48581 } 48582 if (element.hasRecommendation()) { 48583 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent e : element.getRecommendation()) 48584 composeImmunizationRecommendationRecommendationComponent("recommendation", e); 48585 } 48586 } 48587 48588 protected void composeImmunizationRecommendationRecommendationComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element) throws IOException { 48589 if (element != null) { 48590 composeElementAttributes(element); 48591 xml.enter(FHIR_NS, name); 48592 composeImmunizationRecommendationRecommendationComponentElements(element); 48593 composeElementClose(element); 48594 xml.exit(FHIR_NS, name); 48595 } 48596 } 48597 48598 protected void composeImmunizationRecommendationRecommendationComponentElements(ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element) throws IOException { 48599 composeBackboneElementElements(element); 48600 if (element.hasVaccineCode()) { 48601 for (CodeableConcept e : element.getVaccineCode()) 48602 composeCodeableConcept("vaccineCode", e); 48603 } 48604 if (element.hasTargetDisease()) { 48605 for (CodeableConcept e : element.getTargetDisease()) 48606 composeCodeableConcept("targetDisease", e); 48607 } 48608 if (element.hasContraindicatedVaccineCode()) { 48609 for (CodeableConcept e : element.getContraindicatedVaccineCode()) 48610 composeCodeableConcept("contraindicatedVaccineCode", e); 48611 } 48612 if (element.hasForecastStatus()) { 48613 composeCodeableConcept("forecastStatus", element.getForecastStatus()); 48614 } 48615 if (element.hasForecastReason()) { 48616 for (CodeableConcept e : element.getForecastReason()) 48617 composeCodeableConcept("forecastReason", e); 48618 } 48619 if (element.hasDateCriterion()) { 48620 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent e : element.getDateCriterion()) 48621 composeImmunizationRecommendationRecommendationDateCriterionComponent("dateCriterion", e); 48622 } 48623 if (element.hasDescriptionElement()) { 48624 composeMarkdown("description", element.getDescriptionElement()); 48625 } 48626 if (element.hasSeriesElement()) { 48627 composeString("series", element.getSeriesElement()); 48628 } 48629 if (element.hasDoseNumberElement()) { 48630 composeString("doseNumber", element.getDoseNumberElement()); 48631 } 48632 if (element.hasSeriesDosesElement()) { 48633 composeString("seriesDoses", element.getSeriesDosesElement()); 48634 } 48635 if (element.hasSupportingImmunization()) { 48636 for (Reference e : element.getSupportingImmunization()) 48637 composeReference("supportingImmunization", e); 48638 } 48639 if (element.hasSupportingPatientInformation()) { 48640 for (Reference e : element.getSupportingPatientInformation()) 48641 composeReference("supportingPatientInformation", e); 48642 } 48643 } 48644 48645 protected void composeImmunizationRecommendationRecommendationDateCriterionComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element) throws IOException { 48646 if (element != null) { 48647 composeElementAttributes(element); 48648 xml.enter(FHIR_NS, name); 48649 composeImmunizationRecommendationRecommendationDateCriterionComponentElements(element); 48650 composeElementClose(element); 48651 xml.exit(FHIR_NS, name); 48652 } 48653 } 48654 48655 protected void composeImmunizationRecommendationRecommendationDateCriterionComponentElements(ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element) throws IOException { 48656 composeBackboneElementElements(element); 48657 if (element.hasCode()) { 48658 composeCodeableConcept("code", element.getCode()); 48659 } 48660 if (element.hasValueElement()) { 48661 composeDateTime("value", element.getValueElement()); 48662 } 48663 } 48664 48665 protected void composeImplementationGuide(String name, ImplementationGuide element) throws IOException { 48666 if (element != null) { 48667 composeResourceAttributes(element); 48668 xml.enter(FHIR_NS, name); 48669 composeImplementationGuideElements(element); 48670 composeElementClose(element); 48671 xml.exit(FHIR_NS, name); 48672 } 48673 } 48674 48675 protected void composeImplementationGuideElements(ImplementationGuide element) throws IOException { 48676 composeCanonicalResourceElements(element); 48677 if (element.hasUrlElement()) { 48678 composeUri("url", element.getUrlElement()); 48679 } 48680 if (element.hasIdentifier()) { 48681 for (Identifier e : element.getIdentifier()) 48682 composeIdentifier("identifier", e); 48683 } 48684 if (element.hasVersionElement()) { 48685 composeString("version", element.getVersionElement()); 48686 } 48687 if (element.hasVersionAlgorithm()) { 48688 composeType("versionAlgorithm", element.getVersionAlgorithm()); 48689 } if (element.hasNameElement()) { 48690 composeString("name", element.getNameElement()); 48691 } 48692 if (element.hasTitleElement()) { 48693 composeString("title", element.getTitleElement()); 48694 } 48695 if (element.hasStatusElement()) 48696 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 48697 if (element.hasExperimentalElement()) { 48698 composeBoolean("experimental", element.getExperimentalElement()); 48699 } 48700 if (element.hasDateElement()) { 48701 composeDateTime("date", element.getDateElement()); 48702 } 48703 if (element.hasPublisherElement()) { 48704 composeString("publisher", element.getPublisherElement()); 48705 } 48706 if (element.hasContact()) { 48707 for (ContactDetail e : element.getContact()) 48708 composeContactDetail("contact", e); 48709 } 48710 if (element.hasDescriptionElement()) { 48711 composeMarkdown("description", element.getDescriptionElement()); 48712 } 48713 if (element.hasUseContext()) { 48714 for (UsageContext e : element.getUseContext()) 48715 composeUsageContext("useContext", e); 48716 } 48717 if (element.hasJurisdiction()) { 48718 for (CodeableConcept e : element.getJurisdiction()) 48719 composeCodeableConcept("jurisdiction", e); 48720 } 48721 if (element.hasPurposeElement()) { 48722 composeMarkdown("purpose", element.getPurposeElement()); 48723 } 48724 if (element.hasCopyrightElement()) { 48725 composeMarkdown("copyright", element.getCopyrightElement()); 48726 } 48727 if (element.hasCopyrightLabelElement()) { 48728 composeString("copyrightLabel", element.getCopyrightLabelElement()); 48729 } 48730 if (element.hasPackageIdElement()) { 48731 composeId("packageId", element.getPackageIdElement()); 48732 } 48733 if (element.hasLicenseElement()) 48734 composeEnumeration("license", element.getLicenseElement(), new ImplementationGuide.SPDXLicenseEnumFactory()); 48735 if (element.hasFhirVersion()) 48736 for (Enumeration<Enumerations.FHIRVersion> e : element.getFhirVersion()) 48737 composeEnumeration("fhirVersion", e, new Enumerations.FHIRVersionEnumFactory()); 48738 if (element.hasDependsOn()) { 48739 for (ImplementationGuide.ImplementationGuideDependsOnComponent e : element.getDependsOn()) 48740 composeImplementationGuideDependsOnComponent("dependsOn", e); 48741 } 48742 if (element.hasGlobal()) { 48743 for (ImplementationGuide.ImplementationGuideGlobalComponent e : element.getGlobal()) 48744 composeImplementationGuideGlobalComponent("global", e); 48745 } 48746 if (element.hasDefinition()) { 48747 composeImplementationGuideDefinitionComponent("definition", element.getDefinition()); 48748 } 48749 if (element.hasManifest()) { 48750 composeImplementationGuideManifestComponent("manifest", element.getManifest()); 48751 } 48752 } 48753 48754 protected void composeImplementationGuideDependsOnComponent(String name, ImplementationGuide.ImplementationGuideDependsOnComponent element) throws IOException { 48755 if (element != null) { 48756 composeElementAttributes(element); 48757 xml.enter(FHIR_NS, name); 48758 composeImplementationGuideDependsOnComponentElements(element); 48759 composeElementClose(element); 48760 xml.exit(FHIR_NS, name); 48761 } 48762 } 48763 48764 protected void composeImplementationGuideDependsOnComponentElements(ImplementationGuide.ImplementationGuideDependsOnComponent element) throws IOException { 48765 composeBackboneElementElements(element); 48766 if (element.hasUriElement()) { 48767 composeCanonical("uri", element.getUriElement()); 48768 } 48769 if (element.hasPackageIdElement()) { 48770 composeId("packageId", element.getPackageIdElement()); 48771 } 48772 if (element.hasVersionElement()) { 48773 composeString("version", element.getVersionElement()); 48774 } 48775 if (element.hasReasonElement()) { 48776 composeMarkdown("reason", element.getReasonElement()); 48777 } 48778 } 48779 48780 protected void composeImplementationGuideGlobalComponent(String name, ImplementationGuide.ImplementationGuideGlobalComponent element) throws IOException { 48781 if (element != null) { 48782 composeElementAttributes(element); 48783 xml.enter(FHIR_NS, name); 48784 composeImplementationGuideGlobalComponentElements(element); 48785 composeElementClose(element); 48786 xml.exit(FHIR_NS, name); 48787 } 48788 } 48789 48790 protected void composeImplementationGuideGlobalComponentElements(ImplementationGuide.ImplementationGuideGlobalComponent element) throws IOException { 48791 composeBackboneElementElements(element); 48792 if (element.hasTypeElement()) { 48793 composeCode("type", element.getTypeElement()); 48794 } 48795 if (element.hasProfileElement()) { 48796 composeCanonical("profile", element.getProfileElement()); 48797 } 48798 } 48799 48800 protected void composeImplementationGuideDefinitionComponent(String name, ImplementationGuide.ImplementationGuideDefinitionComponent element) throws IOException { 48801 if (element != null) { 48802 composeElementAttributes(element); 48803 xml.enter(FHIR_NS, name); 48804 composeImplementationGuideDefinitionComponentElements(element); 48805 composeElementClose(element); 48806 xml.exit(FHIR_NS, name); 48807 } 48808 } 48809 48810 protected void composeImplementationGuideDefinitionComponentElements(ImplementationGuide.ImplementationGuideDefinitionComponent element) throws IOException { 48811 composeBackboneElementElements(element); 48812 if (element.hasGrouping()) { 48813 for (ImplementationGuide.ImplementationGuideDefinitionGroupingComponent e : element.getGrouping()) 48814 composeImplementationGuideDefinitionGroupingComponent("grouping", e); 48815 } 48816 if (element.hasResource()) { 48817 for (ImplementationGuide.ImplementationGuideDefinitionResourceComponent e : element.getResource()) 48818 composeImplementationGuideDefinitionResourceComponent("resource", e); 48819 } 48820 if (element.hasPage()) { 48821 composeImplementationGuideDefinitionPageComponent("page", element.getPage()); 48822 } 48823 if (element.hasParameter()) { 48824 for (ImplementationGuide.ImplementationGuideDefinitionParameterComponent e : element.getParameter()) 48825 composeImplementationGuideDefinitionParameterComponent("parameter", e); 48826 } 48827 if (element.hasTemplate()) { 48828 for (ImplementationGuide.ImplementationGuideDefinitionTemplateComponent e : element.getTemplate()) 48829 composeImplementationGuideDefinitionTemplateComponent("template", e); 48830 } 48831 } 48832 48833 protected void composeImplementationGuideDefinitionGroupingComponent(String name, ImplementationGuide.ImplementationGuideDefinitionGroupingComponent element) throws IOException { 48834 if (element != null) { 48835 composeElementAttributes(element); 48836 xml.enter(FHIR_NS, name); 48837 composeImplementationGuideDefinitionGroupingComponentElements(element); 48838 composeElementClose(element); 48839 xml.exit(FHIR_NS, name); 48840 } 48841 } 48842 48843 protected void composeImplementationGuideDefinitionGroupingComponentElements(ImplementationGuide.ImplementationGuideDefinitionGroupingComponent element) throws IOException { 48844 composeBackboneElementElements(element); 48845 if (element.hasNameElement()) { 48846 composeString("name", element.getNameElement()); 48847 } 48848 if (element.hasDescriptionElement()) { 48849 composeMarkdown("description", element.getDescriptionElement()); 48850 } 48851 } 48852 48853 protected void composeImplementationGuideDefinitionResourceComponent(String name, ImplementationGuide.ImplementationGuideDefinitionResourceComponent element) throws IOException { 48854 if (element != null) { 48855 composeElementAttributes(element); 48856 xml.enter(FHIR_NS, name); 48857 composeImplementationGuideDefinitionResourceComponentElements(element); 48858 composeElementClose(element); 48859 xml.exit(FHIR_NS, name); 48860 } 48861 } 48862 48863 protected void composeImplementationGuideDefinitionResourceComponentElements(ImplementationGuide.ImplementationGuideDefinitionResourceComponent element) throws IOException { 48864 composeBackboneElementElements(element); 48865 if (element.hasReference()) { 48866 composeReference("reference", element.getReference()); 48867 } 48868 if (element.hasFhirVersion()) 48869 for (Enumeration<Enumerations.FHIRVersion> e : element.getFhirVersion()) 48870 composeEnumeration("fhirVersion", e, new Enumerations.FHIRVersionEnumFactory()); 48871 if (element.hasNameElement()) { 48872 composeString("name", element.getNameElement()); 48873 } 48874 if (element.hasDescriptionElement()) { 48875 composeMarkdown("description", element.getDescriptionElement()); 48876 } 48877 if (element.hasIsExampleElement()) { 48878 composeBoolean("isExample", element.getIsExampleElement()); 48879 } 48880 if (element.hasProfile()) { 48881 for (CanonicalType e : element.getProfile()) 48882 composeCanonical("profile", e); 48883 } 48884 if (element.hasGroupingIdElement()) { 48885 composeId("groupingId", element.getGroupingIdElement()); 48886 } 48887 } 48888 48889 protected void composeImplementationGuideDefinitionPageComponent(String name, ImplementationGuide.ImplementationGuideDefinitionPageComponent element) throws IOException { 48890 if (element != null) { 48891 composeElementAttributes(element); 48892 xml.enter(FHIR_NS, name); 48893 composeImplementationGuideDefinitionPageComponentElements(element); 48894 composeElementClose(element); 48895 xml.exit(FHIR_NS, name); 48896 } 48897 } 48898 48899 protected void composeImplementationGuideDefinitionPageComponentElements(ImplementationGuide.ImplementationGuideDefinitionPageComponent element) throws IOException { 48900 composeBackboneElementElements(element); 48901 if (element.hasSource()) { 48902 composeType("source", element.getSource()); 48903 } if (element.hasNameElement()) { 48904 composeUrl("name", element.getNameElement()); 48905 } 48906 if (element.hasTitleElement()) { 48907 composeString("title", element.getTitleElement()); 48908 } 48909 if (element.hasGenerationElement()) 48910 composeEnumeration("generation", element.getGenerationElement(), new ImplementationGuide.GuidePageGenerationEnumFactory()); 48911 if (element.hasPage()) { 48912 for (ImplementationGuide.ImplementationGuideDefinitionPageComponent e : element.getPage()) 48913 composeImplementationGuideDefinitionPageComponent("page", e); 48914 } 48915 } 48916 48917 protected void composeImplementationGuideDefinitionParameterComponent(String name, ImplementationGuide.ImplementationGuideDefinitionParameterComponent element) throws IOException { 48918 if (element != null) { 48919 composeElementAttributes(element); 48920 xml.enter(FHIR_NS, name); 48921 composeImplementationGuideDefinitionParameterComponentElements(element); 48922 composeElementClose(element); 48923 xml.exit(FHIR_NS, name); 48924 } 48925 } 48926 48927 protected void composeImplementationGuideDefinitionParameterComponentElements(ImplementationGuide.ImplementationGuideDefinitionParameterComponent element) throws IOException { 48928 composeBackboneElementElements(element); 48929 if (element.hasCode()) { 48930 composeCoding("code", element.getCode()); 48931 } 48932 if (element.hasValueElement()) { 48933 composeString("value", element.getValueElement()); 48934 } 48935 } 48936 48937 protected void composeImplementationGuideDefinitionTemplateComponent(String name, ImplementationGuide.ImplementationGuideDefinitionTemplateComponent element) throws IOException { 48938 if (element != null) { 48939 composeElementAttributes(element); 48940 xml.enter(FHIR_NS, name); 48941 composeImplementationGuideDefinitionTemplateComponentElements(element); 48942 composeElementClose(element); 48943 xml.exit(FHIR_NS, name); 48944 } 48945 } 48946 48947 protected void composeImplementationGuideDefinitionTemplateComponentElements(ImplementationGuide.ImplementationGuideDefinitionTemplateComponent element) throws IOException { 48948 composeBackboneElementElements(element); 48949 if (element.hasCodeElement()) { 48950 composeCode("code", element.getCodeElement()); 48951 } 48952 if (element.hasSourceElement()) { 48953 composeString("source", element.getSourceElement()); 48954 } 48955 if (element.hasScopeElement()) { 48956 composeString("scope", element.getScopeElement()); 48957 } 48958 } 48959 48960 protected void composeImplementationGuideManifestComponent(String name, ImplementationGuide.ImplementationGuideManifestComponent element) throws IOException { 48961 if (element != null) { 48962 composeElementAttributes(element); 48963 xml.enter(FHIR_NS, name); 48964 composeImplementationGuideManifestComponentElements(element); 48965 composeElementClose(element); 48966 xml.exit(FHIR_NS, name); 48967 } 48968 } 48969 48970 protected void composeImplementationGuideManifestComponentElements(ImplementationGuide.ImplementationGuideManifestComponent element) throws IOException { 48971 composeBackboneElementElements(element); 48972 if (element.hasRenderingElement()) { 48973 composeUrl("rendering", element.getRenderingElement()); 48974 } 48975 if (element.hasResource()) { 48976 for (ImplementationGuide.ManifestResourceComponent e : element.getResource()) 48977 composeImplementationGuideManifestResourceComponent("resource", e); 48978 } 48979 if (element.hasPage()) { 48980 for (ImplementationGuide.ManifestPageComponent e : element.getPage()) 48981 composeImplementationGuideManifestPageComponent("page", e); 48982 } 48983 if (element.hasImage()) { 48984 for (StringType e : element.getImage()) 48985 composeString("image", e); 48986 } 48987 if (element.hasOther()) { 48988 for (StringType e : element.getOther()) 48989 composeString("other", e); 48990 } 48991 } 48992 48993 protected void composeImplementationGuideManifestResourceComponent(String name, ImplementationGuide.ManifestResourceComponent element) throws IOException { 48994 if (element != null) { 48995 composeElementAttributes(element); 48996 xml.enter(FHIR_NS, name); 48997 composeImplementationGuideManifestResourceComponentElements(element); 48998 composeElementClose(element); 48999 xml.exit(FHIR_NS, name); 49000 } 49001 } 49002 49003 protected void composeImplementationGuideManifestResourceComponentElements(ImplementationGuide.ManifestResourceComponent element) throws IOException { 49004 composeBackboneElementElements(element); 49005 if (element.hasReference()) { 49006 composeReference("reference", element.getReference()); 49007 } 49008 if (element.hasIsExampleElement()) { 49009 composeBoolean("isExample", element.getIsExampleElement()); 49010 } 49011 if (element.hasProfile()) { 49012 for (CanonicalType e : element.getProfile()) 49013 composeCanonical("profile", e); 49014 } 49015 if (element.hasRelativePathElement()) { 49016 composeUrl("relativePath", element.getRelativePathElement()); 49017 } 49018 } 49019 49020 protected void composeImplementationGuideManifestPageComponent(String name, ImplementationGuide.ManifestPageComponent element) throws IOException { 49021 if (element != null) { 49022 composeElementAttributes(element); 49023 xml.enter(FHIR_NS, name); 49024 composeImplementationGuideManifestPageComponentElements(element); 49025 composeElementClose(element); 49026 xml.exit(FHIR_NS, name); 49027 } 49028 } 49029 49030 protected void composeImplementationGuideManifestPageComponentElements(ImplementationGuide.ManifestPageComponent element) throws IOException { 49031 composeBackboneElementElements(element); 49032 if (element.hasNameElement()) { 49033 composeString("name", element.getNameElement()); 49034 } 49035 if (element.hasTitleElement()) { 49036 composeString("title", element.getTitleElement()); 49037 } 49038 if (element.hasAnchor()) { 49039 for (StringType e : element.getAnchor()) 49040 composeString("anchor", e); 49041 } 49042 } 49043 49044 protected void composeIngredient(String name, Ingredient element) throws IOException { 49045 if (element != null) { 49046 composeResourceAttributes(element); 49047 xml.enter(FHIR_NS, name); 49048 composeIngredientElements(element); 49049 composeElementClose(element); 49050 xml.exit(FHIR_NS, name); 49051 } 49052 } 49053 49054 protected void composeIngredientElements(Ingredient element) throws IOException { 49055 composeDomainResourceElements(element); 49056 if (element.hasIdentifier()) { 49057 composeIdentifier("identifier", element.getIdentifier()); 49058 } 49059 if (element.hasStatusElement()) 49060 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 49061 if (element.hasFor()) { 49062 for (Reference e : element.getFor()) 49063 composeReference("for", e); 49064 } 49065 if (element.hasRole()) { 49066 composeCodeableConcept("role", element.getRole()); 49067 } 49068 if (element.hasFunction()) { 49069 for (CodeableConcept e : element.getFunction()) 49070 composeCodeableConcept("function", e); 49071 } 49072 if (element.hasGroup()) { 49073 composeCodeableConcept("group", element.getGroup()); 49074 } 49075 if (element.hasAllergenicIndicatorElement()) { 49076 composeBoolean("allergenicIndicator", element.getAllergenicIndicatorElement()); 49077 } 49078 if (element.hasCommentElement()) { 49079 composeMarkdown("comment", element.getCommentElement()); 49080 } 49081 if (element.hasManufacturer()) { 49082 for (Ingredient.IngredientManufacturerComponent e : element.getManufacturer()) 49083 composeIngredientManufacturerComponent("manufacturer", e); 49084 } 49085 if (element.hasSubstance()) { 49086 composeIngredientSubstanceComponent("substance", element.getSubstance()); 49087 } 49088 } 49089 49090 protected void composeIngredientManufacturerComponent(String name, Ingredient.IngredientManufacturerComponent element) throws IOException { 49091 if (element != null) { 49092 composeElementAttributes(element); 49093 xml.enter(FHIR_NS, name); 49094 composeIngredientManufacturerComponentElements(element); 49095 composeElementClose(element); 49096 xml.exit(FHIR_NS, name); 49097 } 49098 } 49099 49100 protected void composeIngredientManufacturerComponentElements(Ingredient.IngredientManufacturerComponent element) throws IOException { 49101 composeBackboneElementElements(element); 49102 if (element.hasRoleElement()) 49103 composeEnumeration("role", element.getRoleElement(), new Ingredient.IngredientManufacturerRoleEnumFactory()); 49104 if (element.hasManufacturer()) { 49105 composeReference("manufacturer", element.getManufacturer()); 49106 } 49107 } 49108 49109 protected void composeIngredientSubstanceComponent(String name, Ingredient.IngredientSubstanceComponent element) throws IOException { 49110 if (element != null) { 49111 composeElementAttributes(element); 49112 xml.enter(FHIR_NS, name); 49113 composeIngredientSubstanceComponentElements(element); 49114 composeElementClose(element); 49115 xml.exit(FHIR_NS, name); 49116 } 49117 } 49118 49119 protected void composeIngredientSubstanceComponentElements(Ingredient.IngredientSubstanceComponent element) throws IOException { 49120 composeBackboneElementElements(element); 49121 if (element.hasCode()) { 49122 composeCodeableReference("code", element.getCode()); 49123 } 49124 if (element.hasStrength()) { 49125 for (Ingredient.IngredientSubstanceStrengthComponent e : element.getStrength()) 49126 composeIngredientSubstanceStrengthComponent("strength", e); 49127 } 49128 } 49129 49130 protected void composeIngredientSubstanceStrengthComponent(String name, Ingredient.IngredientSubstanceStrengthComponent element) throws IOException { 49131 if (element != null) { 49132 composeElementAttributes(element); 49133 xml.enter(FHIR_NS, name); 49134 composeIngredientSubstanceStrengthComponentElements(element); 49135 composeElementClose(element); 49136 xml.exit(FHIR_NS, name); 49137 } 49138 } 49139 49140 protected void composeIngredientSubstanceStrengthComponentElements(Ingredient.IngredientSubstanceStrengthComponent element) throws IOException { 49141 composeBackboneElementElements(element); 49142 if (element.hasPresentation()) { 49143 composeType("presentation", element.getPresentation()); 49144 } if (element.hasTextPresentationElement()) { 49145 composeString("textPresentation", element.getTextPresentationElement()); 49146 } 49147 if (element.hasConcentration()) { 49148 composeType("concentration", element.getConcentration()); 49149 } if (element.hasTextConcentrationElement()) { 49150 composeString("textConcentration", element.getTextConcentrationElement()); 49151 } 49152 if (element.hasBasis()) { 49153 composeCodeableConcept("basis", element.getBasis()); 49154 } 49155 if (element.hasMeasurementPointElement()) { 49156 composeString("measurementPoint", element.getMeasurementPointElement()); 49157 } 49158 if (element.hasCountry()) { 49159 for (CodeableConcept e : element.getCountry()) 49160 composeCodeableConcept("country", e); 49161 } 49162 if (element.hasReferenceStrength()) { 49163 for (Ingredient.IngredientSubstanceStrengthReferenceStrengthComponent e : element.getReferenceStrength()) 49164 composeIngredientSubstanceStrengthReferenceStrengthComponent("referenceStrength", e); 49165 } 49166 } 49167 49168 protected void composeIngredientSubstanceStrengthReferenceStrengthComponent(String name, Ingredient.IngredientSubstanceStrengthReferenceStrengthComponent element) throws IOException { 49169 if (element != null) { 49170 composeElementAttributes(element); 49171 xml.enter(FHIR_NS, name); 49172 composeIngredientSubstanceStrengthReferenceStrengthComponentElements(element); 49173 composeElementClose(element); 49174 xml.exit(FHIR_NS, name); 49175 } 49176 } 49177 49178 protected void composeIngredientSubstanceStrengthReferenceStrengthComponentElements(Ingredient.IngredientSubstanceStrengthReferenceStrengthComponent element) throws IOException { 49179 composeBackboneElementElements(element); 49180 if (element.hasSubstance()) { 49181 composeCodeableReference("substance", element.getSubstance()); 49182 } 49183 if (element.hasStrength()) { 49184 composeType("strength", element.getStrength()); 49185 } if (element.hasMeasurementPointElement()) { 49186 composeString("measurementPoint", element.getMeasurementPointElement()); 49187 } 49188 if (element.hasCountry()) { 49189 for (CodeableConcept e : element.getCountry()) 49190 composeCodeableConcept("country", e); 49191 } 49192 } 49193 49194 protected void composeInsurancePlan(String name, InsurancePlan element) throws IOException { 49195 if (element != null) { 49196 composeResourceAttributes(element); 49197 xml.enter(FHIR_NS, name); 49198 composeInsurancePlanElements(element); 49199 composeElementClose(element); 49200 xml.exit(FHIR_NS, name); 49201 } 49202 } 49203 49204 protected void composeInsurancePlanElements(InsurancePlan element) throws IOException { 49205 composeDomainResourceElements(element); 49206 if (element.hasIdentifier()) { 49207 for (Identifier e : element.getIdentifier()) 49208 composeIdentifier("identifier", e); 49209 } 49210 if (element.hasStatusElement()) 49211 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 49212 if (element.hasType()) { 49213 for (CodeableConcept e : element.getType()) 49214 composeCodeableConcept("type", e); 49215 } 49216 if (element.hasNameElement()) { 49217 composeString("name", element.getNameElement()); 49218 } 49219 if (element.hasAlias()) { 49220 for (StringType e : element.getAlias()) 49221 composeString("alias", e); 49222 } 49223 if (element.hasPeriod()) { 49224 composePeriod("period", element.getPeriod()); 49225 } 49226 if (element.hasOwnedBy()) { 49227 composeReference("ownedBy", element.getOwnedBy()); 49228 } 49229 if (element.hasAdministeredBy()) { 49230 composeReference("administeredBy", element.getAdministeredBy()); 49231 } 49232 if (element.hasCoverageArea()) { 49233 for (Reference e : element.getCoverageArea()) 49234 composeReference("coverageArea", e); 49235 } 49236 if (element.hasContact()) { 49237 for (ExtendedContactDetail e : element.getContact()) 49238 composeExtendedContactDetail("contact", e); 49239 } 49240 if (element.hasEndpoint()) { 49241 for (Reference e : element.getEndpoint()) 49242 composeReference("endpoint", e); 49243 } 49244 if (element.hasNetwork()) { 49245 for (Reference e : element.getNetwork()) 49246 composeReference("network", e); 49247 } 49248 if (element.hasCoverage()) { 49249 for (InsurancePlan.InsurancePlanCoverageComponent e : element.getCoverage()) 49250 composeInsurancePlanCoverageComponent("coverage", e); 49251 } 49252 if (element.hasPlan()) { 49253 for (InsurancePlan.InsurancePlanPlanComponent e : element.getPlan()) 49254 composeInsurancePlanPlanComponent("plan", e); 49255 } 49256 } 49257 49258 protected void composeInsurancePlanCoverageComponent(String name, InsurancePlan.InsurancePlanCoverageComponent element) throws IOException { 49259 if (element != null) { 49260 composeElementAttributes(element); 49261 xml.enter(FHIR_NS, name); 49262 composeInsurancePlanCoverageComponentElements(element); 49263 composeElementClose(element); 49264 xml.exit(FHIR_NS, name); 49265 } 49266 } 49267 49268 protected void composeInsurancePlanCoverageComponentElements(InsurancePlan.InsurancePlanCoverageComponent element) throws IOException { 49269 composeBackboneElementElements(element); 49270 if (element.hasType()) { 49271 composeCodeableConcept("type", element.getType()); 49272 } 49273 if (element.hasNetwork()) { 49274 for (Reference e : element.getNetwork()) 49275 composeReference("network", e); 49276 } 49277 if (element.hasBenefit()) { 49278 for (InsurancePlan.CoverageBenefitComponent e : element.getBenefit()) 49279 composeInsurancePlanCoverageBenefitComponent("benefit", e); 49280 } 49281 } 49282 49283 protected void composeInsurancePlanCoverageBenefitComponent(String name, InsurancePlan.CoverageBenefitComponent element) throws IOException { 49284 if (element != null) { 49285 composeElementAttributes(element); 49286 xml.enter(FHIR_NS, name); 49287 composeInsurancePlanCoverageBenefitComponentElements(element); 49288 composeElementClose(element); 49289 xml.exit(FHIR_NS, name); 49290 } 49291 } 49292 49293 protected void composeInsurancePlanCoverageBenefitComponentElements(InsurancePlan.CoverageBenefitComponent element) throws IOException { 49294 composeBackboneElementElements(element); 49295 if (element.hasType()) { 49296 composeCodeableConcept("type", element.getType()); 49297 } 49298 if (element.hasRequirementElement()) { 49299 composeString("requirement", element.getRequirementElement()); 49300 } 49301 if (element.hasLimit()) { 49302 for (InsurancePlan.CoverageBenefitLimitComponent e : element.getLimit()) 49303 composeInsurancePlanCoverageBenefitLimitComponent("limit", e); 49304 } 49305 } 49306 49307 protected void composeInsurancePlanCoverageBenefitLimitComponent(String name, InsurancePlan.CoverageBenefitLimitComponent element) throws IOException { 49308 if (element != null) { 49309 composeElementAttributes(element); 49310 xml.enter(FHIR_NS, name); 49311 composeInsurancePlanCoverageBenefitLimitComponentElements(element); 49312 composeElementClose(element); 49313 xml.exit(FHIR_NS, name); 49314 } 49315 } 49316 49317 protected void composeInsurancePlanCoverageBenefitLimitComponentElements(InsurancePlan.CoverageBenefitLimitComponent element) throws IOException { 49318 composeBackboneElementElements(element); 49319 if (element.hasValue()) { 49320 composeQuantity("value", element.getValue()); 49321 } 49322 if (element.hasCode()) { 49323 composeCodeableConcept("code", element.getCode()); 49324 } 49325 } 49326 49327 protected void composeInsurancePlanPlanComponent(String name, InsurancePlan.InsurancePlanPlanComponent element) throws IOException { 49328 if (element != null) { 49329 composeElementAttributes(element); 49330 xml.enter(FHIR_NS, name); 49331 composeInsurancePlanPlanComponentElements(element); 49332 composeElementClose(element); 49333 xml.exit(FHIR_NS, name); 49334 } 49335 } 49336 49337 protected void composeInsurancePlanPlanComponentElements(InsurancePlan.InsurancePlanPlanComponent element) throws IOException { 49338 composeBackboneElementElements(element); 49339 if (element.hasIdentifier()) { 49340 for (Identifier e : element.getIdentifier()) 49341 composeIdentifier("identifier", e); 49342 } 49343 if (element.hasType()) { 49344 composeCodeableConcept("type", element.getType()); 49345 } 49346 if (element.hasCoverageArea()) { 49347 for (Reference e : element.getCoverageArea()) 49348 composeReference("coverageArea", e); 49349 } 49350 if (element.hasNetwork()) { 49351 for (Reference e : element.getNetwork()) 49352 composeReference("network", e); 49353 } 49354 if (element.hasGeneralCost()) { 49355 for (InsurancePlan.InsurancePlanPlanGeneralCostComponent e : element.getGeneralCost()) 49356 composeInsurancePlanPlanGeneralCostComponent("generalCost", e); 49357 } 49358 if (element.hasSpecificCost()) { 49359 for (InsurancePlan.InsurancePlanPlanSpecificCostComponent e : element.getSpecificCost()) 49360 composeInsurancePlanPlanSpecificCostComponent("specificCost", e); 49361 } 49362 } 49363 49364 protected void composeInsurancePlanPlanGeneralCostComponent(String name, InsurancePlan.InsurancePlanPlanGeneralCostComponent element) throws IOException { 49365 if (element != null) { 49366 composeElementAttributes(element); 49367 xml.enter(FHIR_NS, name); 49368 composeInsurancePlanPlanGeneralCostComponentElements(element); 49369 composeElementClose(element); 49370 xml.exit(FHIR_NS, name); 49371 } 49372 } 49373 49374 protected void composeInsurancePlanPlanGeneralCostComponentElements(InsurancePlan.InsurancePlanPlanGeneralCostComponent element) throws IOException { 49375 composeBackboneElementElements(element); 49376 if (element.hasType()) { 49377 composeCodeableConcept("type", element.getType()); 49378 } 49379 if (element.hasGroupSizeElement()) { 49380 composePositiveInt("groupSize", element.getGroupSizeElement()); 49381 } 49382 if (element.hasCost()) { 49383 composeMoney("cost", element.getCost()); 49384 } 49385 if (element.hasCommentElement()) { 49386 composeString("comment", element.getCommentElement()); 49387 } 49388 } 49389 49390 protected void composeInsurancePlanPlanSpecificCostComponent(String name, InsurancePlan.InsurancePlanPlanSpecificCostComponent element) throws IOException { 49391 if (element != null) { 49392 composeElementAttributes(element); 49393 xml.enter(FHIR_NS, name); 49394 composeInsurancePlanPlanSpecificCostComponentElements(element); 49395 composeElementClose(element); 49396 xml.exit(FHIR_NS, name); 49397 } 49398 } 49399 49400 protected void composeInsurancePlanPlanSpecificCostComponentElements(InsurancePlan.InsurancePlanPlanSpecificCostComponent element) throws IOException { 49401 composeBackboneElementElements(element); 49402 if (element.hasCategory()) { 49403 composeCodeableConcept("category", element.getCategory()); 49404 } 49405 if (element.hasBenefit()) { 49406 for (InsurancePlan.PlanBenefitComponent e : element.getBenefit()) 49407 composeInsurancePlanPlanBenefitComponent("benefit", e); 49408 } 49409 } 49410 49411 protected void composeInsurancePlanPlanBenefitComponent(String name, InsurancePlan.PlanBenefitComponent element) throws IOException { 49412 if (element != null) { 49413 composeElementAttributes(element); 49414 xml.enter(FHIR_NS, name); 49415 composeInsurancePlanPlanBenefitComponentElements(element); 49416 composeElementClose(element); 49417 xml.exit(FHIR_NS, name); 49418 } 49419 } 49420 49421 protected void composeInsurancePlanPlanBenefitComponentElements(InsurancePlan.PlanBenefitComponent element) throws IOException { 49422 composeBackboneElementElements(element); 49423 if (element.hasType()) { 49424 composeCodeableConcept("type", element.getType()); 49425 } 49426 if (element.hasCost()) { 49427 for (InsurancePlan.PlanBenefitCostComponent e : element.getCost()) 49428 composeInsurancePlanPlanBenefitCostComponent("cost", e); 49429 } 49430 } 49431 49432 protected void composeInsurancePlanPlanBenefitCostComponent(String name, InsurancePlan.PlanBenefitCostComponent element) throws IOException { 49433 if (element != null) { 49434 composeElementAttributes(element); 49435 xml.enter(FHIR_NS, name); 49436 composeInsurancePlanPlanBenefitCostComponentElements(element); 49437 composeElementClose(element); 49438 xml.exit(FHIR_NS, name); 49439 } 49440 } 49441 49442 protected void composeInsurancePlanPlanBenefitCostComponentElements(InsurancePlan.PlanBenefitCostComponent element) throws IOException { 49443 composeBackboneElementElements(element); 49444 if (element.hasType()) { 49445 composeCodeableConcept("type", element.getType()); 49446 } 49447 if (element.hasApplicability()) { 49448 composeCodeableConcept("applicability", element.getApplicability()); 49449 } 49450 if (element.hasQualifiers()) { 49451 for (CodeableConcept e : element.getQualifiers()) 49452 composeCodeableConcept("qualifiers", e); 49453 } 49454 if (element.hasValue()) { 49455 composeQuantity("value", element.getValue()); 49456 } 49457 } 49458 49459 protected void composeInventoryItem(String name, InventoryItem element) throws IOException { 49460 if (element != null) { 49461 composeResourceAttributes(element); 49462 xml.enter(FHIR_NS, name); 49463 composeInventoryItemElements(element); 49464 composeElementClose(element); 49465 xml.exit(FHIR_NS, name); 49466 } 49467 } 49468 49469 protected void composeInventoryItemElements(InventoryItem element) throws IOException { 49470 composeDomainResourceElements(element); 49471 if (element.hasIdentifier()) { 49472 for (Identifier e : element.getIdentifier()) 49473 composeIdentifier("identifier", e); 49474 } 49475 if (element.hasStatusElement()) 49476 composeEnumeration("status", element.getStatusElement(), new InventoryItem.InventoryItemStatusCodesEnumFactory()); 49477 if (element.hasCategory()) { 49478 for (CodeableConcept e : element.getCategory()) 49479 composeCodeableConcept("category", e); 49480 } 49481 if (element.hasCode()) { 49482 for (CodeableConcept e : element.getCode()) 49483 composeCodeableConcept("code", e); 49484 } 49485 if (element.hasName()) { 49486 for (InventoryItem.InventoryItemNameComponent e : element.getName()) 49487 composeInventoryItemNameComponent("name", e); 49488 } 49489 if (element.hasResponsibleOrganization()) { 49490 for (InventoryItem.InventoryItemResponsibleOrganizationComponent e : element.getResponsibleOrganization()) 49491 composeInventoryItemResponsibleOrganizationComponent("responsibleOrganization", e); 49492 } 49493 if (element.hasDescription()) { 49494 composeInventoryItemDescriptionComponent("description", element.getDescription()); 49495 } 49496 if (element.hasInventoryStatus()) { 49497 for (CodeableConcept e : element.getInventoryStatus()) 49498 composeCodeableConcept("inventoryStatus", e); 49499 } 49500 if (element.hasBaseUnit()) { 49501 composeCodeableConcept("baseUnit", element.getBaseUnit()); 49502 } 49503 if (element.hasNetContent()) { 49504 composeQuantity("netContent", element.getNetContent()); 49505 } 49506 if (element.hasAssociation()) { 49507 for (InventoryItem.InventoryItemAssociationComponent e : element.getAssociation()) 49508 composeInventoryItemAssociationComponent("association", e); 49509 } 49510 if (element.hasCharacteristic()) { 49511 for (InventoryItem.InventoryItemCharacteristicComponent e : element.getCharacteristic()) 49512 composeInventoryItemCharacteristicComponent("characteristic", e); 49513 } 49514 if (element.hasInstance()) { 49515 composeInventoryItemInstanceComponent("instance", element.getInstance()); 49516 } 49517 if (element.hasProductReference()) { 49518 composeReference("productReference", element.getProductReference()); 49519 } 49520 } 49521 49522 protected void composeInventoryItemNameComponent(String name, InventoryItem.InventoryItemNameComponent element) throws IOException { 49523 if (element != null) { 49524 composeElementAttributes(element); 49525 xml.enter(FHIR_NS, name); 49526 composeInventoryItemNameComponentElements(element); 49527 composeElementClose(element); 49528 xml.exit(FHIR_NS, name); 49529 } 49530 } 49531 49532 protected void composeInventoryItemNameComponentElements(InventoryItem.InventoryItemNameComponent element) throws IOException { 49533 composeBackboneElementElements(element); 49534 if (element.hasNameType()) { 49535 composeCoding("nameType", element.getNameType()); 49536 } 49537 if (element.hasLanguageElement()) 49538 composeEnumeration("language", element.getLanguageElement(), new Enumerations.CommonLanguagesEnumFactory()); 49539 if (element.hasNameElement()) { 49540 composeString("name", element.getNameElement()); 49541 } 49542 } 49543 49544 protected void composeInventoryItemResponsibleOrganizationComponent(String name, InventoryItem.InventoryItemResponsibleOrganizationComponent element) throws IOException { 49545 if (element != null) { 49546 composeElementAttributes(element); 49547 xml.enter(FHIR_NS, name); 49548 composeInventoryItemResponsibleOrganizationComponentElements(element); 49549 composeElementClose(element); 49550 xml.exit(FHIR_NS, name); 49551 } 49552 } 49553 49554 protected void composeInventoryItemResponsibleOrganizationComponentElements(InventoryItem.InventoryItemResponsibleOrganizationComponent element) throws IOException { 49555 composeBackboneElementElements(element); 49556 if (element.hasRole()) { 49557 composeCodeableConcept("role", element.getRole()); 49558 } 49559 if (element.hasOrganization()) { 49560 composeReference("organization", element.getOrganization()); 49561 } 49562 } 49563 49564 protected void composeInventoryItemDescriptionComponent(String name, InventoryItem.InventoryItemDescriptionComponent element) throws IOException { 49565 if (element != null) { 49566 composeElementAttributes(element); 49567 xml.enter(FHIR_NS, name); 49568 composeInventoryItemDescriptionComponentElements(element); 49569 composeElementClose(element); 49570 xml.exit(FHIR_NS, name); 49571 } 49572 } 49573 49574 protected void composeInventoryItemDescriptionComponentElements(InventoryItem.InventoryItemDescriptionComponent element) throws IOException { 49575 composeBackboneElementElements(element); 49576 if (element.hasLanguageElement()) 49577 composeEnumeration("language", element.getLanguageElement(), new Enumerations.CommonLanguagesEnumFactory()); 49578 if (element.hasDescriptionElement()) { 49579 composeString("description", element.getDescriptionElement()); 49580 } 49581 } 49582 49583 protected void composeInventoryItemAssociationComponent(String name, InventoryItem.InventoryItemAssociationComponent element) throws IOException { 49584 if (element != null) { 49585 composeElementAttributes(element); 49586 xml.enter(FHIR_NS, name); 49587 composeInventoryItemAssociationComponentElements(element); 49588 composeElementClose(element); 49589 xml.exit(FHIR_NS, name); 49590 } 49591 } 49592 49593 protected void composeInventoryItemAssociationComponentElements(InventoryItem.InventoryItemAssociationComponent element) throws IOException { 49594 composeBackboneElementElements(element); 49595 if (element.hasAssociationType()) { 49596 composeCodeableConcept("associationType", element.getAssociationType()); 49597 } 49598 if (element.hasRelatedItem()) { 49599 composeReference("relatedItem", element.getRelatedItem()); 49600 } 49601 if (element.hasQuantity()) { 49602 composeRatio("quantity", element.getQuantity()); 49603 } 49604 } 49605 49606 protected void composeInventoryItemCharacteristicComponent(String name, InventoryItem.InventoryItemCharacteristicComponent element) throws IOException { 49607 if (element != null) { 49608 composeElementAttributes(element); 49609 xml.enter(FHIR_NS, name); 49610 composeInventoryItemCharacteristicComponentElements(element); 49611 composeElementClose(element); 49612 xml.exit(FHIR_NS, name); 49613 } 49614 } 49615 49616 protected void composeInventoryItemCharacteristicComponentElements(InventoryItem.InventoryItemCharacteristicComponent element) throws IOException { 49617 composeBackboneElementElements(element); 49618 if (element.hasCharacteristicType()) { 49619 composeCodeableConcept("characteristicType", element.getCharacteristicType()); 49620 } 49621 if (element.hasValue()) { 49622 composeType("value", element.getValue()); 49623 } } 49624 49625 protected void composeInventoryItemInstanceComponent(String name, InventoryItem.InventoryItemInstanceComponent element) throws IOException { 49626 if (element != null) { 49627 composeElementAttributes(element); 49628 xml.enter(FHIR_NS, name); 49629 composeInventoryItemInstanceComponentElements(element); 49630 composeElementClose(element); 49631 xml.exit(FHIR_NS, name); 49632 } 49633 } 49634 49635 protected void composeInventoryItemInstanceComponentElements(InventoryItem.InventoryItemInstanceComponent element) throws IOException { 49636 composeBackboneElementElements(element); 49637 if (element.hasIdentifier()) { 49638 for (Identifier e : element.getIdentifier()) 49639 composeIdentifier("identifier", e); 49640 } 49641 if (element.hasLotNumberElement()) { 49642 composeString("lotNumber", element.getLotNumberElement()); 49643 } 49644 if (element.hasExpiryElement()) { 49645 composeDateTime("expiry", element.getExpiryElement()); 49646 } 49647 if (element.hasSubject()) { 49648 composeReference("subject", element.getSubject()); 49649 } 49650 if (element.hasLocation()) { 49651 composeReference("location", element.getLocation()); 49652 } 49653 } 49654 49655 protected void composeInventoryReport(String name, InventoryReport element) throws IOException { 49656 if (element != null) { 49657 composeResourceAttributes(element); 49658 xml.enter(FHIR_NS, name); 49659 composeInventoryReportElements(element); 49660 composeElementClose(element); 49661 xml.exit(FHIR_NS, name); 49662 } 49663 } 49664 49665 protected void composeInventoryReportElements(InventoryReport element) throws IOException { 49666 composeDomainResourceElements(element); 49667 if (element.hasIdentifier()) { 49668 for (Identifier e : element.getIdentifier()) 49669 composeIdentifier("identifier", e); 49670 } 49671 if (element.hasStatusElement()) 49672 composeEnumeration("status", element.getStatusElement(), new InventoryReport.InventoryReportStatusEnumFactory()); 49673 if (element.hasCountTypeElement()) 49674 composeEnumeration("countType", element.getCountTypeElement(), new InventoryReport.InventoryCountTypeEnumFactory()); 49675 if (element.hasOperationType()) { 49676 composeCodeableConcept("operationType", element.getOperationType()); 49677 } 49678 if (element.hasOperationTypeReason()) { 49679 composeCodeableConcept("operationTypeReason", element.getOperationTypeReason()); 49680 } 49681 if (element.hasReportedDateTimeElement()) { 49682 composeDateTime("reportedDateTime", element.getReportedDateTimeElement()); 49683 } 49684 if (element.hasReporter()) { 49685 composeReference("reporter", element.getReporter()); 49686 } 49687 if (element.hasReportingPeriod()) { 49688 composePeriod("reportingPeriod", element.getReportingPeriod()); 49689 } 49690 if (element.hasInventoryListing()) { 49691 for (InventoryReport.InventoryReportInventoryListingComponent e : element.getInventoryListing()) 49692 composeInventoryReportInventoryListingComponent("inventoryListing", e); 49693 } 49694 if (element.hasNote()) { 49695 for (Annotation e : element.getNote()) 49696 composeAnnotation("note", e); 49697 } 49698 } 49699 49700 protected void composeInventoryReportInventoryListingComponent(String name, InventoryReport.InventoryReportInventoryListingComponent element) throws IOException { 49701 if (element != null) { 49702 composeElementAttributes(element); 49703 xml.enter(FHIR_NS, name); 49704 composeInventoryReportInventoryListingComponentElements(element); 49705 composeElementClose(element); 49706 xml.exit(FHIR_NS, name); 49707 } 49708 } 49709 49710 protected void composeInventoryReportInventoryListingComponentElements(InventoryReport.InventoryReportInventoryListingComponent element) throws IOException { 49711 composeBackboneElementElements(element); 49712 if (element.hasLocation()) { 49713 composeReference("location", element.getLocation()); 49714 } 49715 if (element.hasItemStatus()) { 49716 composeCodeableConcept("itemStatus", element.getItemStatus()); 49717 } 49718 if (element.hasCountingDateTimeElement()) { 49719 composeDateTime("countingDateTime", element.getCountingDateTimeElement()); 49720 } 49721 if (element.hasItem()) { 49722 for (InventoryReport.InventoryReportInventoryListingItemComponent e : element.getItem()) 49723 composeInventoryReportInventoryListingItemComponent("item", e); 49724 } 49725 } 49726 49727 protected void composeInventoryReportInventoryListingItemComponent(String name, InventoryReport.InventoryReportInventoryListingItemComponent element) throws IOException { 49728 if (element != null) { 49729 composeElementAttributes(element); 49730 xml.enter(FHIR_NS, name); 49731 composeInventoryReportInventoryListingItemComponentElements(element); 49732 composeElementClose(element); 49733 xml.exit(FHIR_NS, name); 49734 } 49735 } 49736 49737 protected void composeInventoryReportInventoryListingItemComponentElements(InventoryReport.InventoryReportInventoryListingItemComponent element) throws IOException { 49738 composeBackboneElementElements(element); 49739 if (element.hasCategory()) { 49740 composeCodeableConcept("category", element.getCategory()); 49741 } 49742 if (element.hasQuantity()) { 49743 composeQuantity("quantity", element.getQuantity()); 49744 } 49745 if (element.hasItem()) { 49746 composeCodeableReference("item", element.getItem()); 49747 } 49748 } 49749 49750 protected void composeInvoice(String name, Invoice element) throws IOException { 49751 if (element != null) { 49752 composeResourceAttributes(element); 49753 xml.enter(FHIR_NS, name); 49754 composeInvoiceElements(element); 49755 composeElementClose(element); 49756 xml.exit(FHIR_NS, name); 49757 } 49758 } 49759 49760 protected void composeInvoiceElements(Invoice element) throws IOException { 49761 composeDomainResourceElements(element); 49762 if (element.hasIdentifier()) { 49763 for (Identifier e : element.getIdentifier()) 49764 composeIdentifier("identifier", e); 49765 } 49766 if (element.hasStatusElement()) 49767 composeEnumeration("status", element.getStatusElement(), new Invoice.InvoiceStatusEnumFactory()); 49768 if (element.hasCancelledReasonElement()) { 49769 composeString("cancelledReason", element.getCancelledReasonElement()); 49770 } 49771 if (element.hasType()) { 49772 composeCodeableConcept("type", element.getType()); 49773 } 49774 if (element.hasSubject()) { 49775 composeReference("subject", element.getSubject()); 49776 } 49777 if (element.hasRecipient()) { 49778 composeReference("recipient", element.getRecipient()); 49779 } 49780 if (element.hasDateElement()) { 49781 composeDateTime("date", element.getDateElement()); 49782 } 49783 if (element.hasCreationElement()) { 49784 composeDateTime("creation", element.getCreationElement()); 49785 } 49786 if (element.hasPeriod()) { 49787 composeType("period", element.getPeriod()); 49788 } if (element.hasParticipant()) { 49789 for (Invoice.InvoiceParticipantComponent e : element.getParticipant()) 49790 composeInvoiceParticipantComponent("participant", e); 49791 } 49792 if (element.hasIssuer()) { 49793 composeReference("issuer", element.getIssuer()); 49794 } 49795 if (element.hasAccount()) { 49796 composeReference("account", element.getAccount()); 49797 } 49798 if (element.hasLineItem()) { 49799 for (Invoice.InvoiceLineItemComponent e : element.getLineItem()) 49800 composeInvoiceLineItemComponent("lineItem", e); 49801 } 49802 if (element.hasTotalPriceComponent()) { 49803 for (MonetaryComponent e : element.getTotalPriceComponent()) 49804 composeMonetaryComponent("totalPriceComponent", e); 49805 } 49806 if (element.hasTotalNet()) { 49807 composeMoney("totalNet", element.getTotalNet()); 49808 } 49809 if (element.hasTotalGross()) { 49810 composeMoney("totalGross", element.getTotalGross()); 49811 } 49812 if (element.hasPaymentTermsElement()) { 49813 composeMarkdown("paymentTerms", element.getPaymentTermsElement()); 49814 } 49815 if (element.hasNote()) { 49816 for (Annotation e : element.getNote()) 49817 composeAnnotation("note", e); 49818 } 49819 } 49820 49821 protected void composeInvoiceParticipantComponent(String name, Invoice.InvoiceParticipantComponent element) throws IOException { 49822 if (element != null) { 49823 composeElementAttributes(element); 49824 xml.enter(FHIR_NS, name); 49825 composeInvoiceParticipantComponentElements(element); 49826 composeElementClose(element); 49827 xml.exit(FHIR_NS, name); 49828 } 49829 } 49830 49831 protected void composeInvoiceParticipantComponentElements(Invoice.InvoiceParticipantComponent element) throws IOException { 49832 composeBackboneElementElements(element); 49833 if (element.hasRole()) { 49834 composeCodeableConcept("role", element.getRole()); 49835 } 49836 if (element.hasActor()) { 49837 composeReference("actor", element.getActor()); 49838 } 49839 } 49840 49841 protected void composeInvoiceLineItemComponent(String name, Invoice.InvoiceLineItemComponent element) throws IOException { 49842 if (element != null) { 49843 composeElementAttributes(element); 49844 xml.enter(FHIR_NS, name); 49845 composeInvoiceLineItemComponentElements(element); 49846 composeElementClose(element); 49847 xml.exit(FHIR_NS, name); 49848 } 49849 } 49850 49851 protected void composeInvoiceLineItemComponentElements(Invoice.InvoiceLineItemComponent element) throws IOException { 49852 composeBackboneElementElements(element); 49853 if (element.hasSequenceElement()) { 49854 composePositiveInt("sequence", element.getSequenceElement()); 49855 } 49856 if (element.hasServiced()) { 49857 composeType("serviced", element.getServiced()); 49858 } if (element.hasChargeItem()) { 49859 composeType("chargeItem", element.getChargeItem()); 49860 } if (element.hasPriceComponent()) { 49861 for (MonetaryComponent e : element.getPriceComponent()) 49862 composeMonetaryComponent("priceComponent", e); 49863 } 49864 } 49865 49866 protected void composeLibrary(String name, Library element) throws IOException { 49867 if (element != null) { 49868 composeResourceAttributes(element); 49869 xml.enter(FHIR_NS, name); 49870 composeLibraryElements(element); 49871 composeElementClose(element); 49872 xml.exit(FHIR_NS, name); 49873 } 49874 } 49875 49876 protected void composeLibraryElements(Library element) throws IOException { 49877 composeMetadataResourceElements(element); 49878 if (element.hasUrlElement()) { 49879 composeUri("url", element.getUrlElement()); 49880 } 49881 if (element.hasIdentifier()) { 49882 for (Identifier e : element.getIdentifier()) 49883 composeIdentifier("identifier", e); 49884 } 49885 if (element.hasVersionElement()) { 49886 composeString("version", element.getVersionElement()); 49887 } 49888 if (element.hasVersionAlgorithm()) { 49889 composeType("versionAlgorithm", element.getVersionAlgorithm()); 49890 } if (element.hasNameElement()) { 49891 composeString("name", element.getNameElement()); 49892 } 49893 if (element.hasTitleElement()) { 49894 composeString("title", element.getTitleElement()); 49895 } 49896 if (element.hasSubtitleElement()) { 49897 composeString("subtitle", element.getSubtitleElement()); 49898 } 49899 if (element.hasStatusElement()) 49900 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 49901 if (element.hasExperimentalElement()) { 49902 composeBoolean("experimental", element.getExperimentalElement()); 49903 } 49904 if (element.hasType()) { 49905 composeCodeableConcept("type", element.getType()); 49906 } 49907 if (element.hasSubject()) { 49908 composeType("subject", element.getSubject()); 49909 } if (element.hasDateElement()) { 49910 composeDateTime("date", element.getDateElement()); 49911 } 49912 if (element.hasPublisherElement()) { 49913 composeString("publisher", element.getPublisherElement()); 49914 } 49915 if (element.hasContact()) { 49916 for (ContactDetail e : element.getContact()) 49917 composeContactDetail("contact", e); 49918 } 49919 if (element.hasDescriptionElement()) { 49920 composeMarkdown("description", element.getDescriptionElement()); 49921 } 49922 if (element.hasUseContext()) { 49923 for (UsageContext e : element.getUseContext()) 49924 composeUsageContext("useContext", e); 49925 } 49926 if (element.hasJurisdiction()) { 49927 for (CodeableConcept e : element.getJurisdiction()) 49928 composeCodeableConcept("jurisdiction", e); 49929 } 49930 if (element.hasPurposeElement()) { 49931 composeMarkdown("purpose", element.getPurposeElement()); 49932 } 49933 if (element.hasUsageElement()) { 49934 composeMarkdown("usage", element.getUsageElement()); 49935 } 49936 if (element.hasCopyrightElement()) { 49937 composeMarkdown("copyright", element.getCopyrightElement()); 49938 } 49939 if (element.hasCopyrightLabelElement()) { 49940 composeString("copyrightLabel", element.getCopyrightLabelElement()); 49941 } 49942 if (element.hasApprovalDateElement()) { 49943 composeDate("approvalDate", element.getApprovalDateElement()); 49944 } 49945 if (element.hasLastReviewDateElement()) { 49946 composeDate("lastReviewDate", element.getLastReviewDateElement()); 49947 } 49948 if (element.hasEffectivePeriod()) { 49949 composePeriod("effectivePeriod", element.getEffectivePeriod()); 49950 } 49951 if (element.hasTopic()) { 49952 for (CodeableConcept e : element.getTopic()) 49953 composeCodeableConcept("topic", e); 49954 } 49955 if (element.hasAuthor()) { 49956 for (ContactDetail e : element.getAuthor()) 49957 composeContactDetail("author", e); 49958 } 49959 if (element.hasEditor()) { 49960 for (ContactDetail e : element.getEditor()) 49961 composeContactDetail("editor", e); 49962 } 49963 if (element.hasReviewer()) { 49964 for (ContactDetail e : element.getReviewer()) 49965 composeContactDetail("reviewer", e); 49966 } 49967 if (element.hasEndorser()) { 49968 for (ContactDetail e : element.getEndorser()) 49969 composeContactDetail("endorser", e); 49970 } 49971 if (element.hasRelatedArtifact()) { 49972 for (RelatedArtifact e : element.getRelatedArtifact()) 49973 composeRelatedArtifact("relatedArtifact", e); 49974 } 49975 if (element.hasParameter()) { 49976 for (ParameterDefinition e : element.getParameter()) 49977 composeParameterDefinition("parameter", e); 49978 } 49979 if (element.hasDataRequirement()) { 49980 for (DataRequirement e : element.getDataRequirement()) 49981 composeDataRequirement("dataRequirement", e); 49982 } 49983 if (element.hasContent()) { 49984 for (Attachment e : element.getContent()) 49985 composeAttachment("content", e); 49986 } 49987 } 49988 49989 protected void composeLinkage(String name, Linkage element) throws IOException { 49990 if (element != null) { 49991 composeResourceAttributes(element); 49992 xml.enter(FHIR_NS, name); 49993 composeLinkageElements(element); 49994 composeElementClose(element); 49995 xml.exit(FHIR_NS, name); 49996 } 49997 } 49998 49999 protected void composeLinkageElements(Linkage element) throws IOException { 50000 composeDomainResourceElements(element); 50001 if (element.hasActiveElement()) { 50002 composeBoolean("active", element.getActiveElement()); 50003 } 50004 if (element.hasAuthor()) { 50005 composeReference("author", element.getAuthor()); 50006 } 50007 if (element.hasItem()) { 50008 for (Linkage.LinkageItemComponent e : element.getItem()) 50009 composeLinkageItemComponent("item", e); 50010 } 50011 } 50012 50013 protected void composeLinkageItemComponent(String name, Linkage.LinkageItemComponent element) throws IOException { 50014 if (element != null) { 50015 composeElementAttributes(element); 50016 xml.enter(FHIR_NS, name); 50017 composeLinkageItemComponentElements(element); 50018 composeElementClose(element); 50019 xml.exit(FHIR_NS, name); 50020 } 50021 } 50022 50023 protected void composeLinkageItemComponentElements(Linkage.LinkageItemComponent element) throws IOException { 50024 composeBackboneElementElements(element); 50025 if (element.hasTypeElement()) 50026 composeEnumeration("type", element.getTypeElement(), new Linkage.LinkageTypeEnumFactory()); 50027 if (element.hasResource()) { 50028 composeReference("resource", element.getResource()); 50029 } 50030 } 50031 50032 protected void composeListResource(String name, ListResource element) throws IOException { 50033 if (element != null) { 50034 composeResourceAttributes(element); 50035 xml.enter(FHIR_NS, name); 50036 composeListResourceElements(element); 50037 composeElementClose(element); 50038 xml.exit(FHIR_NS, name); 50039 } 50040 } 50041 50042 protected void composeListResourceElements(ListResource element) throws IOException { 50043 composeDomainResourceElements(element); 50044 if (element.hasIdentifier()) { 50045 for (Identifier e : element.getIdentifier()) 50046 composeIdentifier("identifier", e); 50047 } 50048 if (element.hasStatusElement()) 50049 composeEnumeration("status", element.getStatusElement(), new ListResource.ListStatusEnumFactory()); 50050 if (element.hasModeElement()) 50051 composeEnumeration("mode", element.getModeElement(), new Enumerations.ListModeEnumFactory()); 50052 if (element.hasTitleElement()) { 50053 composeString("title", element.getTitleElement()); 50054 } 50055 if (element.hasCode()) { 50056 composeCodeableConcept("code", element.getCode()); 50057 } 50058 if (element.hasSubject()) { 50059 for (Reference e : element.getSubject()) 50060 composeReference("subject", e); 50061 } 50062 if (element.hasEncounter()) { 50063 composeReference("encounter", element.getEncounter()); 50064 } 50065 if (element.hasDateElement()) { 50066 composeDateTime("date", element.getDateElement()); 50067 } 50068 if (element.hasSource()) { 50069 composeReference("source", element.getSource()); 50070 } 50071 if (element.hasOrderedBy()) { 50072 composeCodeableConcept("orderedBy", element.getOrderedBy()); 50073 } 50074 if (element.hasNote()) { 50075 for (Annotation e : element.getNote()) 50076 composeAnnotation("note", e); 50077 } 50078 if (element.hasEntry()) { 50079 for (ListResource.ListResourceEntryComponent e : element.getEntry()) 50080 composeListResourceEntryComponent("entry", e); 50081 } 50082 if (element.hasEmptyReason()) { 50083 composeCodeableConcept("emptyReason", element.getEmptyReason()); 50084 } 50085 } 50086 50087 protected void composeListResourceEntryComponent(String name, ListResource.ListResourceEntryComponent element) throws IOException { 50088 if (element != null) { 50089 composeElementAttributes(element); 50090 xml.enter(FHIR_NS, name); 50091 composeListResourceEntryComponentElements(element); 50092 composeElementClose(element); 50093 xml.exit(FHIR_NS, name); 50094 } 50095 } 50096 50097 protected void composeListResourceEntryComponentElements(ListResource.ListResourceEntryComponent element) throws IOException { 50098 composeBackboneElementElements(element); 50099 if (element.hasFlag()) { 50100 composeCodeableConcept("flag", element.getFlag()); 50101 } 50102 if (element.hasDeletedElement()) { 50103 composeBoolean("deleted", element.getDeletedElement()); 50104 } 50105 if (element.hasDateElement()) { 50106 composeDateTime("date", element.getDateElement()); 50107 } 50108 if (element.hasItem()) { 50109 composeReference("item", element.getItem()); 50110 } 50111 } 50112 50113 protected void composeLocation(String name, Location element) throws IOException { 50114 if (element != null) { 50115 composeResourceAttributes(element); 50116 xml.enter(FHIR_NS, name); 50117 composeLocationElements(element); 50118 composeElementClose(element); 50119 xml.exit(FHIR_NS, name); 50120 } 50121 } 50122 50123 protected void composeLocationElements(Location element) throws IOException { 50124 composeDomainResourceElements(element); 50125 if (element.hasIdentifier()) { 50126 for (Identifier e : element.getIdentifier()) 50127 composeIdentifier("identifier", e); 50128 } 50129 if (element.hasStatusElement()) 50130 composeEnumeration("status", element.getStatusElement(), new Location.LocationStatusEnumFactory()); 50131 if (element.hasOperationalStatus()) { 50132 composeCoding("operationalStatus", element.getOperationalStatus()); 50133 } 50134 if (element.hasNameElement()) { 50135 composeString("name", element.getNameElement()); 50136 } 50137 if (element.hasAlias()) { 50138 for (StringType e : element.getAlias()) 50139 composeString("alias", e); 50140 } 50141 if (element.hasDescriptionElement()) { 50142 composeMarkdown("description", element.getDescriptionElement()); 50143 } 50144 if (element.hasModeElement()) 50145 composeEnumeration("mode", element.getModeElement(), new Location.LocationModeEnumFactory()); 50146 if (element.hasType()) { 50147 for (CodeableConcept e : element.getType()) 50148 composeCodeableConcept("type", e); 50149 } 50150 if (element.hasContact()) { 50151 for (ExtendedContactDetail e : element.getContact()) 50152 composeExtendedContactDetail("contact", e); 50153 } 50154 if (element.hasAddress()) { 50155 composeAddress("address", element.getAddress()); 50156 } 50157 if (element.hasForm()) { 50158 composeCodeableConcept("form", element.getForm()); 50159 } 50160 if (element.hasPosition()) { 50161 composeLocationPositionComponent("position", element.getPosition()); 50162 } 50163 if (element.hasManagingOrganization()) { 50164 composeReference("managingOrganization", element.getManagingOrganization()); 50165 } 50166 if (element.hasPartOf()) { 50167 composeReference("partOf", element.getPartOf()); 50168 } 50169 if (element.hasCharacteristic()) { 50170 for (CodeableConcept e : element.getCharacteristic()) 50171 composeCodeableConcept("characteristic", e); 50172 } 50173 if (element.hasHoursOfOperation()) { 50174 for (Availability e : element.getHoursOfOperation()) 50175 composeAvailability("hoursOfOperation", e); 50176 } 50177 if (element.hasVirtualService()) { 50178 for (VirtualServiceDetail e : element.getVirtualService()) 50179 composeVirtualServiceDetail("virtualService", e); 50180 } 50181 if (element.hasEndpoint()) { 50182 for (Reference e : element.getEndpoint()) 50183 composeReference("endpoint", e); 50184 } 50185 } 50186 50187 protected void composeLocationPositionComponent(String name, Location.LocationPositionComponent element) throws IOException { 50188 if (element != null) { 50189 composeElementAttributes(element); 50190 xml.enter(FHIR_NS, name); 50191 composeLocationPositionComponentElements(element); 50192 composeElementClose(element); 50193 xml.exit(FHIR_NS, name); 50194 } 50195 } 50196 50197 protected void composeLocationPositionComponentElements(Location.LocationPositionComponent element) throws IOException { 50198 composeBackboneElementElements(element); 50199 if (element.hasLongitudeElement()) { 50200 composeDecimal("longitude", element.getLongitudeElement()); 50201 } 50202 if (element.hasLatitudeElement()) { 50203 composeDecimal("latitude", element.getLatitudeElement()); 50204 } 50205 if (element.hasAltitudeElement()) { 50206 composeDecimal("altitude", element.getAltitudeElement()); 50207 } 50208 } 50209 50210 protected void composeManufacturedItemDefinition(String name, ManufacturedItemDefinition element) throws IOException { 50211 if (element != null) { 50212 composeResourceAttributes(element); 50213 xml.enter(FHIR_NS, name); 50214 composeManufacturedItemDefinitionElements(element); 50215 composeElementClose(element); 50216 xml.exit(FHIR_NS, name); 50217 } 50218 } 50219 50220 protected void composeManufacturedItemDefinitionElements(ManufacturedItemDefinition element) throws IOException { 50221 composeDomainResourceElements(element); 50222 if (element.hasIdentifier()) { 50223 for (Identifier e : element.getIdentifier()) 50224 composeIdentifier("identifier", e); 50225 } 50226 if (element.hasStatusElement()) 50227 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 50228 if (element.hasNameElement()) { 50229 composeString("name", element.getNameElement()); 50230 } 50231 if (element.hasManufacturedDoseForm()) { 50232 composeCodeableConcept("manufacturedDoseForm", element.getManufacturedDoseForm()); 50233 } 50234 if (element.hasUnitOfPresentation()) { 50235 composeCodeableConcept("unitOfPresentation", element.getUnitOfPresentation()); 50236 } 50237 if (element.hasManufacturer()) { 50238 for (Reference e : element.getManufacturer()) 50239 composeReference("manufacturer", e); 50240 } 50241 if (element.hasMarketingStatus()) { 50242 for (MarketingStatus e : element.getMarketingStatus()) 50243 composeMarketingStatus("marketingStatus", e); 50244 } 50245 if (element.hasIngredient()) { 50246 for (CodeableConcept e : element.getIngredient()) 50247 composeCodeableConcept("ingredient", e); 50248 } 50249 if (element.hasProperty()) { 50250 for (ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent e : element.getProperty()) 50251 composeManufacturedItemDefinitionPropertyComponent("property", e); 50252 } 50253 if (element.hasComponent()) { 50254 for (ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent e : element.getComponent()) 50255 composeManufacturedItemDefinitionComponentComponent("component", e); 50256 } 50257 } 50258 50259 protected void composeManufacturedItemDefinitionPropertyComponent(String name, ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent element) throws IOException { 50260 if (element != null) { 50261 composeElementAttributes(element); 50262 xml.enter(FHIR_NS, name); 50263 composeManufacturedItemDefinitionPropertyComponentElements(element); 50264 composeElementClose(element); 50265 xml.exit(FHIR_NS, name); 50266 } 50267 } 50268 50269 protected void composeManufacturedItemDefinitionPropertyComponentElements(ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent element) throws IOException { 50270 composeBackboneElementElements(element); 50271 if (element.hasType()) { 50272 composeCodeableConcept("type", element.getType()); 50273 } 50274 if (element.hasValue()) { 50275 composeType("value", element.getValue()); 50276 } } 50277 50278 protected void composeManufacturedItemDefinitionComponentComponent(String name, ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent element) throws IOException { 50279 if (element != null) { 50280 composeElementAttributes(element); 50281 xml.enter(FHIR_NS, name); 50282 composeManufacturedItemDefinitionComponentComponentElements(element); 50283 composeElementClose(element); 50284 xml.exit(FHIR_NS, name); 50285 } 50286 } 50287 50288 protected void composeManufacturedItemDefinitionComponentComponentElements(ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent element) throws IOException { 50289 composeBackboneElementElements(element); 50290 if (element.hasType()) { 50291 composeCodeableConcept("type", element.getType()); 50292 } 50293 if (element.hasFunction()) { 50294 for (CodeableConcept e : element.getFunction()) 50295 composeCodeableConcept("function", e); 50296 } 50297 if (element.hasAmount()) { 50298 for (Quantity e : element.getAmount()) 50299 composeQuantity("amount", e); 50300 } 50301 if (element.hasConstituent()) { 50302 for (ManufacturedItemDefinition.ManufacturedItemDefinitionComponentConstituentComponent e : element.getConstituent()) 50303 composeManufacturedItemDefinitionComponentConstituentComponent("constituent", e); 50304 } 50305 if (element.hasProperty()) { 50306 for (ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent e : element.getProperty()) 50307 composeManufacturedItemDefinitionPropertyComponent("property", e); 50308 } 50309 if (element.hasComponent()) { 50310 for (ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent e : element.getComponent()) 50311 composeManufacturedItemDefinitionComponentComponent("component", e); 50312 } 50313 } 50314 50315 protected void composeManufacturedItemDefinitionComponentConstituentComponent(String name, ManufacturedItemDefinition.ManufacturedItemDefinitionComponentConstituentComponent element) throws IOException { 50316 if (element != null) { 50317 composeElementAttributes(element); 50318 xml.enter(FHIR_NS, name); 50319 composeManufacturedItemDefinitionComponentConstituentComponentElements(element); 50320 composeElementClose(element); 50321 xml.exit(FHIR_NS, name); 50322 } 50323 } 50324 50325 protected void composeManufacturedItemDefinitionComponentConstituentComponentElements(ManufacturedItemDefinition.ManufacturedItemDefinitionComponentConstituentComponent element) throws IOException { 50326 composeBackboneElementElements(element); 50327 if (element.hasAmount()) { 50328 for (Quantity e : element.getAmount()) 50329 composeQuantity("amount", e); 50330 } 50331 if (element.hasLocation()) { 50332 for (CodeableConcept e : element.getLocation()) 50333 composeCodeableConcept("location", e); 50334 } 50335 if (element.hasFunction()) { 50336 for (CodeableConcept e : element.getFunction()) 50337 composeCodeableConcept("function", e); 50338 } 50339 if (element.hasHasIngredient()) { 50340 for (CodeableReference e : element.getHasIngredient()) 50341 composeCodeableReference("hasIngredient", e); 50342 } 50343 } 50344 50345 protected void composeMeasure(String name, Measure element) throws IOException { 50346 if (element != null) { 50347 composeResourceAttributes(element); 50348 xml.enter(FHIR_NS, name); 50349 composeMeasureElements(element); 50350 composeElementClose(element); 50351 xml.exit(FHIR_NS, name); 50352 } 50353 } 50354 50355 protected void composeMeasureElements(Measure element) throws IOException { 50356 composeMetadataResourceElements(element); 50357 if (element.hasUrlElement()) { 50358 composeUri("url", element.getUrlElement()); 50359 } 50360 if (element.hasIdentifier()) { 50361 for (Identifier e : element.getIdentifier()) 50362 composeIdentifier("identifier", e); 50363 } 50364 if (element.hasVersionElement()) { 50365 composeString("version", element.getVersionElement()); 50366 } 50367 if (element.hasVersionAlgorithm()) { 50368 composeType("versionAlgorithm", element.getVersionAlgorithm()); 50369 } if (element.hasNameElement()) { 50370 composeString("name", element.getNameElement()); 50371 } 50372 if (element.hasTitleElement()) { 50373 composeString("title", element.getTitleElement()); 50374 } 50375 if (element.hasSubtitleElement()) { 50376 composeString("subtitle", element.getSubtitleElement()); 50377 } 50378 if (element.hasStatusElement()) 50379 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 50380 if (element.hasExperimentalElement()) { 50381 composeBoolean("experimental", element.getExperimentalElement()); 50382 } 50383 if (element.hasSubject()) { 50384 composeType("subject", element.getSubject()); 50385 } if (element.hasBasisElement()) 50386 composeEnumeration("basis", element.getBasisElement(), new Enumerations.FHIRTypesEnumFactory()); 50387 if (element.hasDateElement()) { 50388 composeDateTime("date", element.getDateElement()); 50389 } 50390 if (element.hasPublisherElement()) { 50391 composeString("publisher", element.getPublisherElement()); 50392 } 50393 if (element.hasContact()) { 50394 for (ContactDetail e : element.getContact()) 50395 composeContactDetail("contact", e); 50396 } 50397 if (element.hasDescriptionElement()) { 50398 composeMarkdown("description", element.getDescriptionElement()); 50399 } 50400 if (element.hasUseContext()) { 50401 for (UsageContext e : element.getUseContext()) 50402 composeUsageContext("useContext", e); 50403 } 50404 if (element.hasJurisdiction()) { 50405 for (CodeableConcept e : element.getJurisdiction()) 50406 composeCodeableConcept("jurisdiction", e); 50407 } 50408 if (element.hasPurposeElement()) { 50409 composeMarkdown("purpose", element.getPurposeElement()); 50410 } 50411 if (element.hasUsageElement()) { 50412 composeMarkdown("usage", element.getUsageElement()); 50413 } 50414 if (element.hasCopyrightElement()) { 50415 composeMarkdown("copyright", element.getCopyrightElement()); 50416 } 50417 if (element.hasCopyrightLabelElement()) { 50418 composeString("copyrightLabel", element.getCopyrightLabelElement()); 50419 } 50420 if (element.hasApprovalDateElement()) { 50421 composeDate("approvalDate", element.getApprovalDateElement()); 50422 } 50423 if (element.hasLastReviewDateElement()) { 50424 composeDate("lastReviewDate", element.getLastReviewDateElement()); 50425 } 50426 if (element.hasEffectivePeriod()) { 50427 composePeriod("effectivePeriod", element.getEffectivePeriod()); 50428 } 50429 if (element.hasTopic()) { 50430 for (CodeableConcept e : element.getTopic()) 50431 composeCodeableConcept("topic", e); 50432 } 50433 if (element.hasAuthor()) { 50434 for (ContactDetail e : element.getAuthor()) 50435 composeContactDetail("author", e); 50436 } 50437 if (element.hasEditor()) { 50438 for (ContactDetail e : element.getEditor()) 50439 composeContactDetail("editor", e); 50440 } 50441 if (element.hasReviewer()) { 50442 for (ContactDetail e : element.getReviewer()) 50443 composeContactDetail("reviewer", e); 50444 } 50445 if (element.hasEndorser()) { 50446 for (ContactDetail e : element.getEndorser()) 50447 composeContactDetail("endorser", e); 50448 } 50449 if (element.hasRelatedArtifact()) { 50450 for (RelatedArtifact e : element.getRelatedArtifact()) 50451 composeRelatedArtifact("relatedArtifact", e); 50452 } 50453 if (element.hasLibrary()) { 50454 for (CanonicalType e : element.getLibrary()) 50455 composeCanonical("library", e); 50456 } 50457 if (element.hasDisclaimerElement()) { 50458 composeMarkdown("disclaimer", element.getDisclaimerElement()); 50459 } 50460 if (element.hasScoring()) { 50461 composeCodeableConcept("scoring", element.getScoring()); 50462 } 50463 if (element.hasScoringUnit()) { 50464 composeCodeableConcept("scoringUnit", element.getScoringUnit()); 50465 } 50466 if (element.hasCompositeScoring()) { 50467 composeCodeableConcept("compositeScoring", element.getCompositeScoring()); 50468 } 50469 if (element.hasType()) { 50470 for (CodeableConcept e : element.getType()) 50471 composeCodeableConcept("type", e); 50472 } 50473 if (element.hasRiskAdjustmentElement()) { 50474 composeMarkdown("riskAdjustment", element.getRiskAdjustmentElement()); 50475 } 50476 if (element.hasRateAggregationElement()) { 50477 composeMarkdown("rateAggregation", element.getRateAggregationElement()); 50478 } 50479 if (element.hasRationaleElement()) { 50480 composeMarkdown("rationale", element.getRationaleElement()); 50481 } 50482 if (element.hasClinicalRecommendationStatementElement()) { 50483 composeMarkdown("clinicalRecommendationStatement", element.getClinicalRecommendationStatementElement()); 50484 } 50485 if (element.hasImprovementNotation()) { 50486 composeCodeableConcept("improvementNotation", element.getImprovementNotation()); 50487 } 50488 if (element.hasTerm()) { 50489 for (Measure.MeasureTermComponent e : element.getTerm()) 50490 composeMeasureTermComponent("term", e); 50491 } 50492 if (element.hasGuidanceElement()) { 50493 composeMarkdown("guidance", element.getGuidanceElement()); 50494 } 50495 if (element.hasGroup()) { 50496 for (Measure.MeasureGroupComponent e : element.getGroup()) 50497 composeMeasureGroupComponent("group", e); 50498 } 50499 if (element.hasSupplementalData()) { 50500 for (Measure.MeasureSupplementalDataComponent e : element.getSupplementalData()) 50501 composeMeasureSupplementalDataComponent("supplementalData", e); 50502 } 50503 } 50504 50505 protected void composeMeasureTermComponent(String name, Measure.MeasureTermComponent element) throws IOException { 50506 if (element != null) { 50507 composeElementAttributes(element); 50508 xml.enter(FHIR_NS, name); 50509 composeMeasureTermComponentElements(element); 50510 composeElementClose(element); 50511 xml.exit(FHIR_NS, name); 50512 } 50513 } 50514 50515 protected void composeMeasureTermComponentElements(Measure.MeasureTermComponent element) throws IOException { 50516 composeBackboneElementElements(element); 50517 if (element.hasCode()) { 50518 composeCodeableConcept("code", element.getCode()); 50519 } 50520 if (element.hasDefinitionElement()) { 50521 composeMarkdown("definition", element.getDefinitionElement()); 50522 } 50523 } 50524 50525 protected void composeMeasureGroupComponent(String name, Measure.MeasureGroupComponent element) throws IOException { 50526 if (element != null) { 50527 composeElementAttributes(element); 50528 xml.enter(FHIR_NS, name); 50529 composeMeasureGroupComponentElements(element); 50530 composeElementClose(element); 50531 xml.exit(FHIR_NS, name); 50532 } 50533 } 50534 50535 protected void composeMeasureGroupComponentElements(Measure.MeasureGroupComponent element) throws IOException { 50536 composeBackboneElementElements(element); 50537 if (element.hasLinkIdElement()) { 50538 composeString("linkId", element.getLinkIdElement()); 50539 } 50540 if (element.hasCode()) { 50541 composeCodeableConcept("code", element.getCode()); 50542 } 50543 if (element.hasDescriptionElement()) { 50544 composeMarkdown("description", element.getDescriptionElement()); 50545 } 50546 if (element.hasType()) { 50547 for (CodeableConcept e : element.getType()) 50548 composeCodeableConcept("type", e); 50549 } 50550 if (element.hasSubject()) { 50551 composeType("subject", element.getSubject()); 50552 } if (element.hasBasisElement()) 50553 composeEnumeration("basis", element.getBasisElement(), new Enumerations.FHIRTypesEnumFactory()); 50554 if (element.hasScoring()) { 50555 composeCodeableConcept("scoring", element.getScoring()); 50556 } 50557 if (element.hasScoringUnit()) { 50558 composeCodeableConcept("scoringUnit", element.getScoringUnit()); 50559 } 50560 if (element.hasRateAggregationElement()) { 50561 composeMarkdown("rateAggregation", element.getRateAggregationElement()); 50562 } 50563 if (element.hasImprovementNotation()) { 50564 composeCodeableConcept("improvementNotation", element.getImprovementNotation()); 50565 } 50566 if (element.hasLibrary()) { 50567 for (CanonicalType e : element.getLibrary()) 50568 composeCanonical("library", e); 50569 } 50570 if (element.hasPopulation()) { 50571 for (Measure.MeasureGroupPopulationComponent e : element.getPopulation()) 50572 composeMeasureGroupPopulationComponent("population", e); 50573 } 50574 if (element.hasStratifier()) { 50575 for (Measure.MeasureGroupStratifierComponent e : element.getStratifier()) 50576 composeMeasureGroupStratifierComponent("stratifier", e); 50577 } 50578 } 50579 50580 protected void composeMeasureGroupPopulationComponent(String name, Measure.MeasureGroupPopulationComponent element) throws IOException { 50581 if (element != null) { 50582 composeElementAttributes(element); 50583 xml.enter(FHIR_NS, name); 50584 composeMeasureGroupPopulationComponentElements(element); 50585 composeElementClose(element); 50586 xml.exit(FHIR_NS, name); 50587 } 50588 } 50589 50590 protected void composeMeasureGroupPopulationComponentElements(Measure.MeasureGroupPopulationComponent element) throws IOException { 50591 composeBackboneElementElements(element); 50592 if (element.hasLinkIdElement()) { 50593 composeString("linkId", element.getLinkIdElement()); 50594 } 50595 if (element.hasCode()) { 50596 composeCodeableConcept("code", element.getCode()); 50597 } 50598 if (element.hasDescriptionElement()) { 50599 composeMarkdown("description", element.getDescriptionElement()); 50600 } 50601 if (element.hasCriteria()) { 50602 composeExpression("criteria", element.getCriteria()); 50603 } 50604 if (element.hasGroupDefinition()) { 50605 composeReference("groupDefinition", element.getGroupDefinition()); 50606 } 50607 if (element.hasInputPopulationIdElement()) { 50608 composeString("inputPopulationId", element.getInputPopulationIdElement()); 50609 } 50610 if (element.hasAggregateMethod()) { 50611 composeCodeableConcept("aggregateMethod", element.getAggregateMethod()); 50612 } 50613 } 50614 50615 protected void composeMeasureGroupStratifierComponent(String name, Measure.MeasureGroupStratifierComponent element) throws IOException { 50616 if (element != null) { 50617 composeElementAttributes(element); 50618 xml.enter(FHIR_NS, name); 50619 composeMeasureGroupStratifierComponentElements(element); 50620 composeElementClose(element); 50621 xml.exit(FHIR_NS, name); 50622 } 50623 } 50624 50625 protected void composeMeasureGroupStratifierComponentElements(Measure.MeasureGroupStratifierComponent element) throws IOException { 50626 composeBackboneElementElements(element); 50627 if (element.hasLinkIdElement()) { 50628 composeString("linkId", element.getLinkIdElement()); 50629 } 50630 if (element.hasCode()) { 50631 composeCodeableConcept("code", element.getCode()); 50632 } 50633 if (element.hasDescriptionElement()) { 50634 composeMarkdown("description", element.getDescriptionElement()); 50635 } 50636 if (element.hasCriteria()) { 50637 composeExpression("criteria", element.getCriteria()); 50638 } 50639 if (element.hasGroupDefinition()) { 50640 composeReference("groupDefinition", element.getGroupDefinition()); 50641 } 50642 if (element.hasComponent()) { 50643 for (Measure.MeasureGroupStratifierComponentComponent e : element.getComponent()) 50644 composeMeasureGroupStratifierComponentComponent("component", e); 50645 } 50646 } 50647 50648 protected void composeMeasureGroupStratifierComponentComponent(String name, Measure.MeasureGroupStratifierComponentComponent element) throws IOException { 50649 if (element != null) { 50650 composeElementAttributes(element); 50651 xml.enter(FHIR_NS, name); 50652 composeMeasureGroupStratifierComponentComponentElements(element); 50653 composeElementClose(element); 50654 xml.exit(FHIR_NS, name); 50655 } 50656 } 50657 50658 protected void composeMeasureGroupStratifierComponentComponentElements(Measure.MeasureGroupStratifierComponentComponent element) throws IOException { 50659 composeBackboneElementElements(element); 50660 if (element.hasLinkIdElement()) { 50661 composeString("linkId", element.getLinkIdElement()); 50662 } 50663 if (element.hasCode()) { 50664 composeCodeableConcept("code", element.getCode()); 50665 } 50666 if (element.hasDescriptionElement()) { 50667 composeMarkdown("description", element.getDescriptionElement()); 50668 } 50669 if (element.hasCriteria()) { 50670 composeExpression("criteria", element.getCriteria()); 50671 } 50672 if (element.hasGroupDefinition()) { 50673 composeReference("groupDefinition", element.getGroupDefinition()); 50674 } 50675 } 50676 50677 protected void composeMeasureSupplementalDataComponent(String name, Measure.MeasureSupplementalDataComponent element) throws IOException { 50678 if (element != null) { 50679 composeElementAttributes(element); 50680 xml.enter(FHIR_NS, name); 50681 composeMeasureSupplementalDataComponentElements(element); 50682 composeElementClose(element); 50683 xml.exit(FHIR_NS, name); 50684 } 50685 } 50686 50687 protected void composeMeasureSupplementalDataComponentElements(Measure.MeasureSupplementalDataComponent element) throws IOException { 50688 composeBackboneElementElements(element); 50689 if (element.hasLinkIdElement()) { 50690 composeString("linkId", element.getLinkIdElement()); 50691 } 50692 if (element.hasCode()) { 50693 composeCodeableConcept("code", element.getCode()); 50694 } 50695 if (element.hasUsage()) { 50696 for (CodeableConcept e : element.getUsage()) 50697 composeCodeableConcept("usage", e); 50698 } 50699 if (element.hasDescriptionElement()) { 50700 composeMarkdown("description", element.getDescriptionElement()); 50701 } 50702 if (element.hasCriteria()) { 50703 composeExpression("criteria", element.getCriteria()); 50704 } 50705 } 50706 50707 protected void composeMeasureReport(String name, MeasureReport element) throws IOException { 50708 if (element != null) { 50709 composeResourceAttributes(element); 50710 xml.enter(FHIR_NS, name); 50711 composeMeasureReportElements(element); 50712 composeElementClose(element); 50713 xml.exit(FHIR_NS, name); 50714 } 50715 } 50716 50717 protected void composeMeasureReportElements(MeasureReport element) throws IOException { 50718 composeDomainResourceElements(element); 50719 if (element.hasIdentifier()) { 50720 for (Identifier e : element.getIdentifier()) 50721 composeIdentifier("identifier", e); 50722 } 50723 if (element.hasStatusElement()) 50724 composeEnumeration("status", element.getStatusElement(), new MeasureReport.MeasureReportStatusEnumFactory()); 50725 if (element.hasTypeElement()) 50726 composeEnumeration("type", element.getTypeElement(), new MeasureReport.MeasureReportTypeEnumFactory()); 50727 if (element.hasDataUpdateTypeElement()) 50728 composeEnumeration("dataUpdateType", element.getDataUpdateTypeElement(), new MeasureReport.SubmitDataUpdateTypeEnumFactory()); 50729 if (element.hasMeasureElement()) { 50730 composeCanonical("measure", element.getMeasureElement()); 50731 } 50732 if (element.hasSubject()) { 50733 composeReference("subject", element.getSubject()); 50734 } 50735 if (element.hasDateElement()) { 50736 composeDateTime("date", element.getDateElement()); 50737 } 50738 if (element.hasReporter()) { 50739 composeReference("reporter", element.getReporter()); 50740 } 50741 if (element.hasReportingVendor()) { 50742 composeReference("reportingVendor", element.getReportingVendor()); 50743 } 50744 if (element.hasLocation()) { 50745 composeReference("location", element.getLocation()); 50746 } 50747 if (element.hasPeriod()) { 50748 composePeriod("period", element.getPeriod()); 50749 } 50750 if (element.hasInputParameters()) { 50751 composeReference("inputParameters", element.getInputParameters()); 50752 } 50753 if (element.hasScoring()) { 50754 composeCodeableConcept("scoring", element.getScoring()); 50755 } 50756 if (element.hasImprovementNotation()) { 50757 composeCodeableConcept("improvementNotation", element.getImprovementNotation()); 50758 } 50759 if (element.hasGroup()) { 50760 for (MeasureReport.MeasureReportGroupComponent e : element.getGroup()) 50761 composeMeasureReportGroupComponent("group", e); 50762 } 50763 if (element.hasSupplementalData()) { 50764 for (Reference e : element.getSupplementalData()) 50765 composeReference("supplementalData", e); 50766 } 50767 if (element.hasEvaluatedResource()) { 50768 for (Reference e : element.getEvaluatedResource()) 50769 composeReference("evaluatedResource", e); 50770 } 50771 } 50772 50773 protected void composeMeasureReportGroupComponent(String name, MeasureReport.MeasureReportGroupComponent element) throws IOException { 50774 if (element != null) { 50775 composeElementAttributes(element); 50776 xml.enter(FHIR_NS, name); 50777 composeMeasureReportGroupComponentElements(element); 50778 composeElementClose(element); 50779 xml.exit(FHIR_NS, name); 50780 } 50781 } 50782 50783 protected void composeMeasureReportGroupComponentElements(MeasureReport.MeasureReportGroupComponent element) throws IOException { 50784 composeBackboneElementElements(element); 50785 if (element.hasLinkIdElement()) { 50786 composeString("linkId", element.getLinkIdElement()); 50787 } 50788 if (element.hasCode()) { 50789 composeCodeableConcept("code", element.getCode()); 50790 } 50791 if (element.hasSubject()) { 50792 composeReference("subject", element.getSubject()); 50793 } 50794 if (element.hasPopulation()) { 50795 for (MeasureReport.MeasureReportGroupPopulationComponent e : element.getPopulation()) 50796 composeMeasureReportGroupPopulationComponent("population", e); 50797 } 50798 if (element.hasMeasureScore()) { 50799 composeType("measureScore", element.getMeasureScore()); 50800 } if (element.hasStratifier()) { 50801 for (MeasureReport.MeasureReportGroupStratifierComponent e : element.getStratifier()) 50802 composeMeasureReportGroupStratifierComponent("stratifier", e); 50803 } 50804 } 50805 50806 protected void composeMeasureReportGroupPopulationComponent(String name, MeasureReport.MeasureReportGroupPopulationComponent element) throws IOException { 50807 if (element != null) { 50808 composeElementAttributes(element); 50809 xml.enter(FHIR_NS, name); 50810 composeMeasureReportGroupPopulationComponentElements(element); 50811 composeElementClose(element); 50812 xml.exit(FHIR_NS, name); 50813 } 50814 } 50815 50816 protected void composeMeasureReportGroupPopulationComponentElements(MeasureReport.MeasureReportGroupPopulationComponent element) throws IOException { 50817 composeBackboneElementElements(element); 50818 if (element.hasLinkIdElement()) { 50819 composeString("linkId", element.getLinkIdElement()); 50820 } 50821 if (element.hasCode()) { 50822 composeCodeableConcept("code", element.getCode()); 50823 } 50824 if (element.hasCountElement()) { 50825 composeInteger("count", element.getCountElement()); 50826 } 50827 if (element.hasSubjectResults()) { 50828 composeReference("subjectResults", element.getSubjectResults()); 50829 } 50830 if (element.hasSubjectReport()) { 50831 for (Reference e : element.getSubjectReport()) 50832 composeReference("subjectReport", e); 50833 } 50834 if (element.hasSubjects()) { 50835 composeReference("subjects", element.getSubjects()); 50836 } 50837 } 50838 50839 protected void composeMeasureReportGroupStratifierComponent(String name, MeasureReport.MeasureReportGroupStratifierComponent element) throws IOException { 50840 if (element != null) { 50841 composeElementAttributes(element); 50842 xml.enter(FHIR_NS, name); 50843 composeMeasureReportGroupStratifierComponentElements(element); 50844 composeElementClose(element); 50845 xml.exit(FHIR_NS, name); 50846 } 50847 } 50848 50849 protected void composeMeasureReportGroupStratifierComponentElements(MeasureReport.MeasureReportGroupStratifierComponent element) throws IOException { 50850 composeBackboneElementElements(element); 50851 if (element.hasLinkIdElement()) { 50852 composeString("linkId", element.getLinkIdElement()); 50853 } 50854 if (element.hasCode()) { 50855 composeCodeableConcept("code", element.getCode()); 50856 } 50857 if (element.hasStratum()) { 50858 for (MeasureReport.StratifierGroupComponent e : element.getStratum()) 50859 composeMeasureReportStratifierGroupComponent("stratum", e); 50860 } 50861 } 50862 50863 protected void composeMeasureReportStratifierGroupComponent(String name, MeasureReport.StratifierGroupComponent element) throws IOException { 50864 if (element != null) { 50865 composeElementAttributes(element); 50866 xml.enter(FHIR_NS, name); 50867 composeMeasureReportStratifierGroupComponentElements(element); 50868 composeElementClose(element); 50869 xml.exit(FHIR_NS, name); 50870 } 50871 } 50872 50873 protected void composeMeasureReportStratifierGroupComponentElements(MeasureReport.StratifierGroupComponent element) throws IOException { 50874 composeBackboneElementElements(element); 50875 if (element.hasValue()) { 50876 composeType("value", element.getValue()); 50877 } if (element.hasComponent()) { 50878 for (MeasureReport.StratifierGroupComponentComponent e : element.getComponent()) 50879 composeMeasureReportStratifierGroupComponentComponent("component", e); 50880 } 50881 if (element.hasPopulation()) { 50882 for (MeasureReport.StratifierGroupPopulationComponent e : element.getPopulation()) 50883 composeMeasureReportStratifierGroupPopulationComponent("population", e); 50884 } 50885 if (element.hasMeasureScore()) { 50886 composeType("measureScore", element.getMeasureScore()); 50887 } } 50888 50889 protected void composeMeasureReportStratifierGroupComponentComponent(String name, MeasureReport.StratifierGroupComponentComponent element) throws IOException { 50890 if (element != null) { 50891 composeElementAttributes(element); 50892 xml.enter(FHIR_NS, name); 50893 composeMeasureReportStratifierGroupComponentComponentElements(element); 50894 composeElementClose(element); 50895 xml.exit(FHIR_NS, name); 50896 } 50897 } 50898 50899 protected void composeMeasureReportStratifierGroupComponentComponentElements(MeasureReport.StratifierGroupComponentComponent element) throws IOException { 50900 composeBackboneElementElements(element); 50901 if (element.hasLinkIdElement()) { 50902 composeString("linkId", element.getLinkIdElement()); 50903 } 50904 if (element.hasCode()) { 50905 composeCodeableConcept("code", element.getCode()); 50906 } 50907 if (element.hasValue()) { 50908 composeType("value", element.getValue()); 50909 } } 50910 50911 protected void composeMeasureReportStratifierGroupPopulationComponent(String name, MeasureReport.StratifierGroupPopulationComponent element) throws IOException { 50912 if (element != null) { 50913 composeElementAttributes(element); 50914 xml.enter(FHIR_NS, name); 50915 composeMeasureReportStratifierGroupPopulationComponentElements(element); 50916 composeElementClose(element); 50917 xml.exit(FHIR_NS, name); 50918 } 50919 } 50920 50921 protected void composeMeasureReportStratifierGroupPopulationComponentElements(MeasureReport.StratifierGroupPopulationComponent element) throws IOException { 50922 composeBackboneElementElements(element); 50923 if (element.hasLinkIdElement()) { 50924 composeString("linkId", element.getLinkIdElement()); 50925 } 50926 if (element.hasCode()) { 50927 composeCodeableConcept("code", element.getCode()); 50928 } 50929 if (element.hasCountElement()) { 50930 composeInteger("count", element.getCountElement()); 50931 } 50932 if (element.hasSubjectResults()) { 50933 composeReference("subjectResults", element.getSubjectResults()); 50934 } 50935 if (element.hasSubjectReport()) { 50936 for (Reference e : element.getSubjectReport()) 50937 composeReference("subjectReport", e); 50938 } 50939 if (element.hasSubjects()) { 50940 composeReference("subjects", element.getSubjects()); 50941 } 50942 } 50943 50944 protected void composeMedication(String name, Medication element) throws IOException { 50945 if (element != null) { 50946 composeResourceAttributes(element); 50947 xml.enter(FHIR_NS, name); 50948 composeMedicationElements(element); 50949 composeElementClose(element); 50950 xml.exit(FHIR_NS, name); 50951 } 50952 } 50953 50954 protected void composeMedicationElements(Medication element) throws IOException { 50955 composeDomainResourceElements(element); 50956 if (element.hasIdentifier()) { 50957 for (Identifier e : element.getIdentifier()) 50958 composeIdentifier("identifier", e); 50959 } 50960 if (element.hasCode()) { 50961 composeCodeableConcept("code", element.getCode()); 50962 } 50963 if (element.hasStatusElement()) 50964 composeEnumeration("status", element.getStatusElement(), new Medication.MedicationStatusCodesEnumFactory()); 50965 if (element.hasMarketingAuthorizationHolder()) { 50966 composeReference("marketingAuthorizationHolder", element.getMarketingAuthorizationHolder()); 50967 } 50968 if (element.hasDoseForm()) { 50969 composeCodeableConcept("doseForm", element.getDoseForm()); 50970 } 50971 if (element.hasTotalVolume()) { 50972 composeQuantity("totalVolume", element.getTotalVolume()); 50973 } 50974 if (element.hasIngredient()) { 50975 for (Medication.MedicationIngredientComponent e : element.getIngredient()) 50976 composeMedicationIngredientComponent("ingredient", e); 50977 } 50978 if (element.hasBatch()) { 50979 composeMedicationBatchComponent("batch", element.getBatch()); 50980 } 50981 if (element.hasDefinition()) { 50982 composeReference("definition", element.getDefinition()); 50983 } 50984 } 50985 50986 protected void composeMedicationIngredientComponent(String name, Medication.MedicationIngredientComponent element) throws IOException { 50987 if (element != null) { 50988 composeElementAttributes(element); 50989 xml.enter(FHIR_NS, name); 50990 composeMedicationIngredientComponentElements(element); 50991 composeElementClose(element); 50992 xml.exit(FHIR_NS, name); 50993 } 50994 } 50995 50996 protected void composeMedicationIngredientComponentElements(Medication.MedicationIngredientComponent element) throws IOException { 50997 composeBackboneElementElements(element); 50998 if (element.hasItem()) { 50999 composeCodeableReference("item", element.getItem()); 51000 } 51001 if (element.hasIsActiveElement()) { 51002 composeBoolean("isActive", element.getIsActiveElement()); 51003 } 51004 if (element.hasStrength()) { 51005 composeType("strength", element.getStrength()); 51006 } } 51007 51008 protected void composeMedicationBatchComponent(String name, Medication.MedicationBatchComponent element) throws IOException { 51009 if (element != null) { 51010 composeElementAttributes(element); 51011 xml.enter(FHIR_NS, name); 51012 composeMedicationBatchComponentElements(element); 51013 composeElementClose(element); 51014 xml.exit(FHIR_NS, name); 51015 } 51016 } 51017 51018 protected void composeMedicationBatchComponentElements(Medication.MedicationBatchComponent element) throws IOException { 51019 composeBackboneElementElements(element); 51020 if (element.hasLotNumberElement()) { 51021 composeString("lotNumber", element.getLotNumberElement()); 51022 } 51023 if (element.hasExpirationDateElement()) { 51024 composeDateTime("expirationDate", element.getExpirationDateElement()); 51025 } 51026 } 51027 51028 protected void composeMedicationAdministration(String name, MedicationAdministration element) throws IOException { 51029 if (element != null) { 51030 composeResourceAttributes(element); 51031 xml.enter(FHIR_NS, name); 51032 composeMedicationAdministrationElements(element); 51033 composeElementClose(element); 51034 xml.exit(FHIR_NS, name); 51035 } 51036 } 51037 51038 protected void composeMedicationAdministrationElements(MedicationAdministration element) throws IOException { 51039 composeDomainResourceElements(element); 51040 if (element.hasIdentifier()) { 51041 for (Identifier e : element.getIdentifier()) 51042 composeIdentifier("identifier", e); 51043 } 51044 if (element.hasBasedOn()) { 51045 for (Reference e : element.getBasedOn()) 51046 composeReference("basedOn", e); 51047 } 51048 if (element.hasPartOf()) { 51049 for (Reference e : element.getPartOf()) 51050 composeReference("partOf", e); 51051 } 51052 if (element.hasStatusElement()) 51053 composeEnumeration("status", element.getStatusElement(), new MedicationAdministration.MedicationAdministrationStatusCodesEnumFactory()); 51054 if (element.hasStatusReason()) { 51055 for (CodeableConcept e : element.getStatusReason()) 51056 composeCodeableConcept("statusReason", e); 51057 } 51058 if (element.hasCategory()) { 51059 for (CodeableConcept e : element.getCategory()) 51060 composeCodeableConcept("category", e); 51061 } 51062 if (element.hasMedication()) { 51063 composeCodeableReference("medication", element.getMedication()); 51064 } 51065 if (element.hasSubject()) { 51066 composeReference("subject", element.getSubject()); 51067 } 51068 if (element.hasEncounter()) { 51069 composeReference("encounter", element.getEncounter()); 51070 } 51071 if (element.hasSupportingInformation()) { 51072 for (Reference e : element.getSupportingInformation()) 51073 composeReference("supportingInformation", e); 51074 } 51075 if (element.hasOccurence()) { 51076 composeType("occurence", element.getOccurence()); 51077 } if (element.hasRecordedElement()) { 51078 composeDateTime("recorded", element.getRecordedElement()); 51079 } 51080 if (element.hasIsSubPotentElement()) { 51081 composeBoolean("isSubPotent", element.getIsSubPotentElement()); 51082 } 51083 if (element.hasSubPotentReason()) { 51084 for (CodeableConcept e : element.getSubPotentReason()) 51085 composeCodeableConcept("subPotentReason", e); 51086 } 51087 if (element.hasPerformer()) { 51088 for (MedicationAdministration.MedicationAdministrationPerformerComponent e : element.getPerformer()) 51089 composeMedicationAdministrationPerformerComponent("performer", e); 51090 } 51091 if (element.hasReason()) { 51092 for (CodeableReference e : element.getReason()) 51093 composeCodeableReference("reason", e); 51094 } 51095 if (element.hasRequest()) { 51096 composeReference("request", element.getRequest()); 51097 } 51098 if (element.hasDevice()) { 51099 for (CodeableReference e : element.getDevice()) 51100 composeCodeableReference("device", e); 51101 } 51102 if (element.hasNote()) { 51103 for (Annotation e : element.getNote()) 51104 composeAnnotation("note", e); 51105 } 51106 if (element.hasDosage()) { 51107 composeMedicationAdministrationDosageComponent("dosage", element.getDosage()); 51108 } 51109 if (element.hasEventHistory()) { 51110 for (Reference e : element.getEventHistory()) 51111 composeReference("eventHistory", e); 51112 } 51113 } 51114 51115 protected void composeMedicationAdministrationPerformerComponent(String name, MedicationAdministration.MedicationAdministrationPerformerComponent element) throws IOException { 51116 if (element != null) { 51117 composeElementAttributes(element); 51118 xml.enter(FHIR_NS, name); 51119 composeMedicationAdministrationPerformerComponentElements(element); 51120 composeElementClose(element); 51121 xml.exit(FHIR_NS, name); 51122 } 51123 } 51124 51125 protected void composeMedicationAdministrationPerformerComponentElements(MedicationAdministration.MedicationAdministrationPerformerComponent element) throws IOException { 51126 composeBackboneElementElements(element); 51127 if (element.hasFunction()) { 51128 composeCodeableConcept("function", element.getFunction()); 51129 } 51130 if (element.hasActor()) { 51131 composeCodeableReference("actor", element.getActor()); 51132 } 51133 } 51134 51135 protected void composeMedicationAdministrationDosageComponent(String name, MedicationAdministration.MedicationAdministrationDosageComponent element) throws IOException { 51136 if (element != null) { 51137 composeElementAttributes(element); 51138 xml.enter(FHIR_NS, name); 51139 composeMedicationAdministrationDosageComponentElements(element); 51140 composeElementClose(element); 51141 xml.exit(FHIR_NS, name); 51142 } 51143 } 51144 51145 protected void composeMedicationAdministrationDosageComponentElements(MedicationAdministration.MedicationAdministrationDosageComponent element) throws IOException { 51146 composeBackboneElementElements(element); 51147 if (element.hasTextElement()) { 51148 composeString("text", element.getTextElement()); 51149 } 51150 if (element.hasSite()) { 51151 composeCodeableConcept("site", element.getSite()); 51152 } 51153 if (element.hasRoute()) { 51154 composeCodeableConcept("route", element.getRoute()); 51155 } 51156 if (element.hasMethod()) { 51157 composeCodeableConcept("method", element.getMethod()); 51158 } 51159 if (element.hasDose()) { 51160 composeQuantity("dose", element.getDose()); 51161 } 51162 if (element.hasRate()) { 51163 composeType("rate", element.getRate()); 51164 } } 51165 51166 protected void composeMedicationDispense(String name, MedicationDispense element) throws IOException { 51167 if (element != null) { 51168 composeResourceAttributes(element); 51169 xml.enter(FHIR_NS, name); 51170 composeMedicationDispenseElements(element); 51171 composeElementClose(element); 51172 xml.exit(FHIR_NS, name); 51173 } 51174 } 51175 51176 protected void composeMedicationDispenseElements(MedicationDispense element) throws IOException { 51177 composeDomainResourceElements(element); 51178 if (element.hasIdentifier()) { 51179 for (Identifier e : element.getIdentifier()) 51180 composeIdentifier("identifier", e); 51181 } 51182 if (element.hasBasedOn()) { 51183 for (Reference e : element.getBasedOn()) 51184 composeReference("basedOn", e); 51185 } 51186 if (element.hasPartOf()) { 51187 for (Reference e : element.getPartOf()) 51188 composeReference("partOf", e); 51189 } 51190 if (element.hasStatusElement()) 51191 composeEnumeration("status", element.getStatusElement(), new MedicationDispense.MedicationDispenseStatusCodesEnumFactory()); 51192 if (element.hasNotPerformedReason()) { 51193 composeCodeableReference("notPerformedReason", element.getNotPerformedReason()); 51194 } 51195 if (element.hasStatusChangedElement()) { 51196 composeDateTime("statusChanged", element.getStatusChangedElement()); 51197 } 51198 if (element.hasCategory()) { 51199 for (CodeableConcept e : element.getCategory()) 51200 composeCodeableConcept("category", e); 51201 } 51202 if (element.hasMedication()) { 51203 composeCodeableReference("medication", element.getMedication()); 51204 } 51205 if (element.hasSubject()) { 51206 composeReference("subject", element.getSubject()); 51207 } 51208 if (element.hasEncounter()) { 51209 composeReference("encounter", element.getEncounter()); 51210 } 51211 if (element.hasSupportingInformation()) { 51212 for (Reference e : element.getSupportingInformation()) 51213 composeReference("supportingInformation", e); 51214 } 51215 if (element.hasPerformer()) { 51216 for (MedicationDispense.MedicationDispensePerformerComponent e : element.getPerformer()) 51217 composeMedicationDispensePerformerComponent("performer", e); 51218 } 51219 if (element.hasLocation()) { 51220 composeReference("location", element.getLocation()); 51221 } 51222 if (element.hasAuthorizingPrescription()) { 51223 for (Reference e : element.getAuthorizingPrescription()) 51224 composeReference("authorizingPrescription", e); 51225 } 51226 if (element.hasType()) { 51227 composeCodeableConcept("type", element.getType()); 51228 } 51229 if (element.hasQuantity()) { 51230 composeQuantity("quantity", element.getQuantity()); 51231 } 51232 if (element.hasDaysSupply()) { 51233 composeQuantity("daysSupply", element.getDaysSupply()); 51234 } 51235 if (element.hasRecordedElement()) { 51236 composeDateTime("recorded", element.getRecordedElement()); 51237 } 51238 if (element.hasWhenPreparedElement()) { 51239 composeDateTime("whenPrepared", element.getWhenPreparedElement()); 51240 } 51241 if (element.hasWhenHandedOverElement()) { 51242 composeDateTime("whenHandedOver", element.getWhenHandedOverElement()); 51243 } 51244 if (element.hasDestination()) { 51245 composeReference("destination", element.getDestination()); 51246 } 51247 if (element.hasReceiver()) { 51248 for (Reference e : element.getReceiver()) 51249 composeReference("receiver", e); 51250 } 51251 if (element.hasNote()) { 51252 for (Annotation e : element.getNote()) 51253 composeAnnotation("note", e); 51254 } 51255 if (element.hasRenderedDosageInstructionElement()) { 51256 composeMarkdown("renderedDosageInstruction", element.getRenderedDosageInstructionElement()); 51257 } 51258 if (element.hasDosageInstruction()) { 51259 for (Dosage e : element.getDosageInstruction()) 51260 composeDosage("dosageInstruction", e); 51261 } 51262 if (element.hasSubstitution()) { 51263 composeMedicationDispenseSubstitutionComponent("substitution", element.getSubstitution()); 51264 } 51265 if (element.hasEventHistory()) { 51266 for (Reference e : element.getEventHistory()) 51267 composeReference("eventHistory", e); 51268 } 51269 } 51270 51271 protected void composeMedicationDispensePerformerComponent(String name, MedicationDispense.MedicationDispensePerformerComponent element) throws IOException { 51272 if (element != null) { 51273 composeElementAttributes(element); 51274 xml.enter(FHIR_NS, name); 51275 composeMedicationDispensePerformerComponentElements(element); 51276 composeElementClose(element); 51277 xml.exit(FHIR_NS, name); 51278 } 51279 } 51280 51281 protected void composeMedicationDispensePerformerComponentElements(MedicationDispense.MedicationDispensePerformerComponent element) throws IOException { 51282 composeBackboneElementElements(element); 51283 if (element.hasFunction()) { 51284 composeCodeableConcept("function", element.getFunction()); 51285 } 51286 if (element.hasActor()) { 51287 composeReference("actor", element.getActor()); 51288 } 51289 } 51290 51291 protected void composeMedicationDispenseSubstitutionComponent(String name, MedicationDispense.MedicationDispenseSubstitutionComponent element) throws IOException { 51292 if (element != null) { 51293 composeElementAttributes(element); 51294 xml.enter(FHIR_NS, name); 51295 composeMedicationDispenseSubstitutionComponentElements(element); 51296 composeElementClose(element); 51297 xml.exit(FHIR_NS, name); 51298 } 51299 } 51300 51301 protected void composeMedicationDispenseSubstitutionComponentElements(MedicationDispense.MedicationDispenseSubstitutionComponent element) throws IOException { 51302 composeBackboneElementElements(element); 51303 if (element.hasWasSubstitutedElement()) { 51304 composeBoolean("wasSubstituted", element.getWasSubstitutedElement()); 51305 } 51306 if (element.hasType()) { 51307 composeCodeableConcept("type", element.getType()); 51308 } 51309 if (element.hasReason()) { 51310 for (CodeableConcept e : element.getReason()) 51311 composeCodeableConcept("reason", e); 51312 } 51313 if (element.hasResponsibleParty()) { 51314 composeReference("responsibleParty", element.getResponsibleParty()); 51315 } 51316 } 51317 51318 protected void composeMedicationKnowledge(String name, MedicationKnowledge element) throws IOException { 51319 if (element != null) { 51320 composeResourceAttributes(element); 51321 xml.enter(FHIR_NS, name); 51322 composeMedicationKnowledgeElements(element); 51323 composeElementClose(element); 51324 xml.exit(FHIR_NS, name); 51325 } 51326 } 51327 51328 protected void composeMedicationKnowledgeElements(MedicationKnowledge element) throws IOException { 51329 composeDomainResourceElements(element); 51330 if (element.hasIdentifier()) { 51331 for (Identifier e : element.getIdentifier()) 51332 composeIdentifier("identifier", e); 51333 } 51334 if (element.hasCode()) { 51335 composeCodeableConcept("code", element.getCode()); 51336 } 51337 if (element.hasStatusElement()) 51338 composeEnumeration("status", element.getStatusElement(), new MedicationKnowledge.MedicationKnowledgeStatusCodesEnumFactory()); 51339 if (element.hasAuthor()) { 51340 composeReference("author", element.getAuthor()); 51341 } 51342 if (element.hasIntendedJurisdiction()) { 51343 for (CodeableConcept e : element.getIntendedJurisdiction()) 51344 composeCodeableConcept("intendedJurisdiction", e); 51345 } 51346 if (element.hasName()) { 51347 for (StringType e : element.getName()) 51348 composeString("name", e); 51349 } 51350 if (element.hasRelatedMedicationKnowledge()) { 51351 for (MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent e : element.getRelatedMedicationKnowledge()) 51352 composeMedicationKnowledgeRelatedMedicationKnowledgeComponent("relatedMedicationKnowledge", e); 51353 } 51354 if (element.hasAssociatedMedication()) { 51355 for (Reference e : element.getAssociatedMedication()) 51356 composeReference("associatedMedication", e); 51357 } 51358 if (element.hasProductType()) { 51359 for (CodeableConcept e : element.getProductType()) 51360 composeCodeableConcept("productType", e); 51361 } 51362 if (element.hasMonograph()) { 51363 for (MedicationKnowledge.MedicationKnowledgeMonographComponent e : element.getMonograph()) 51364 composeMedicationKnowledgeMonographComponent("monograph", e); 51365 } 51366 if (element.hasPreparationInstructionElement()) { 51367 composeMarkdown("preparationInstruction", element.getPreparationInstructionElement()); 51368 } 51369 if (element.hasCost()) { 51370 for (MedicationKnowledge.MedicationKnowledgeCostComponent e : element.getCost()) 51371 composeMedicationKnowledgeCostComponent("cost", e); 51372 } 51373 if (element.hasMonitoringProgram()) { 51374 for (MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent e : element.getMonitoringProgram()) 51375 composeMedicationKnowledgeMonitoringProgramComponent("monitoringProgram", e); 51376 } 51377 if (element.hasIndicationGuideline()) { 51378 for (MedicationKnowledge.MedicationKnowledgeIndicationGuidelineComponent e : element.getIndicationGuideline()) 51379 composeMedicationKnowledgeIndicationGuidelineComponent("indicationGuideline", e); 51380 } 51381 if (element.hasMedicineClassification()) { 51382 for (MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent e : element.getMedicineClassification()) 51383 composeMedicationKnowledgeMedicineClassificationComponent("medicineClassification", e); 51384 } 51385 if (element.hasPackaging()) { 51386 for (MedicationKnowledge.MedicationKnowledgePackagingComponent e : element.getPackaging()) 51387 composeMedicationKnowledgePackagingComponent("packaging", e); 51388 } 51389 if (element.hasClinicalUseIssue()) { 51390 for (Reference e : element.getClinicalUseIssue()) 51391 composeReference("clinicalUseIssue", e); 51392 } 51393 if (element.hasStorageGuideline()) { 51394 for (MedicationKnowledge.MedicationKnowledgeStorageGuidelineComponent e : element.getStorageGuideline()) 51395 composeMedicationKnowledgeStorageGuidelineComponent("storageGuideline", e); 51396 } 51397 if (element.hasRegulatory()) { 51398 for (MedicationKnowledge.MedicationKnowledgeRegulatoryComponent e : element.getRegulatory()) 51399 composeMedicationKnowledgeRegulatoryComponent("regulatory", e); 51400 } 51401 if (element.hasDefinitional()) { 51402 composeMedicationKnowledgeDefinitionalComponent("definitional", element.getDefinitional()); 51403 } 51404 } 51405 51406 protected void composeMedicationKnowledgeRelatedMedicationKnowledgeComponent(String name, MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent element) throws IOException { 51407 if (element != null) { 51408 composeElementAttributes(element); 51409 xml.enter(FHIR_NS, name); 51410 composeMedicationKnowledgeRelatedMedicationKnowledgeComponentElements(element); 51411 composeElementClose(element); 51412 xml.exit(FHIR_NS, name); 51413 } 51414 } 51415 51416 protected void composeMedicationKnowledgeRelatedMedicationKnowledgeComponentElements(MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent element) throws IOException { 51417 composeBackboneElementElements(element); 51418 if (element.hasType()) { 51419 composeCodeableConcept("type", element.getType()); 51420 } 51421 if (element.hasReference()) { 51422 for (Reference e : element.getReference()) 51423 composeReference("reference", e); 51424 } 51425 } 51426 51427 protected void composeMedicationKnowledgeMonographComponent(String name, MedicationKnowledge.MedicationKnowledgeMonographComponent element) throws IOException { 51428 if (element != null) { 51429 composeElementAttributes(element); 51430 xml.enter(FHIR_NS, name); 51431 composeMedicationKnowledgeMonographComponentElements(element); 51432 composeElementClose(element); 51433 xml.exit(FHIR_NS, name); 51434 } 51435 } 51436 51437 protected void composeMedicationKnowledgeMonographComponentElements(MedicationKnowledge.MedicationKnowledgeMonographComponent element) throws IOException { 51438 composeBackboneElementElements(element); 51439 if (element.hasType()) { 51440 composeCodeableConcept("type", element.getType()); 51441 } 51442 if (element.hasSource()) { 51443 composeReference("source", element.getSource()); 51444 } 51445 } 51446 51447 protected void composeMedicationKnowledgeCostComponent(String name, MedicationKnowledge.MedicationKnowledgeCostComponent element) throws IOException { 51448 if (element != null) { 51449 composeElementAttributes(element); 51450 xml.enter(FHIR_NS, name); 51451 composeMedicationKnowledgeCostComponentElements(element); 51452 composeElementClose(element); 51453 xml.exit(FHIR_NS, name); 51454 } 51455 } 51456 51457 protected void composeMedicationKnowledgeCostComponentElements(MedicationKnowledge.MedicationKnowledgeCostComponent element) throws IOException { 51458 composeBackboneElementElements(element); 51459 if (element.hasEffectiveDate()) { 51460 for (Period e : element.getEffectiveDate()) 51461 composePeriod("effectiveDate", e); 51462 } 51463 if (element.hasType()) { 51464 composeCodeableConcept("type", element.getType()); 51465 } 51466 if (element.hasSourceElement()) { 51467 composeString("source", element.getSourceElement()); 51468 } 51469 if (element.hasCost()) { 51470 composeType("cost", element.getCost()); 51471 } } 51472 51473 protected void composeMedicationKnowledgeMonitoringProgramComponent(String name, MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent element) throws IOException { 51474 if (element != null) { 51475 composeElementAttributes(element); 51476 xml.enter(FHIR_NS, name); 51477 composeMedicationKnowledgeMonitoringProgramComponentElements(element); 51478 composeElementClose(element); 51479 xml.exit(FHIR_NS, name); 51480 } 51481 } 51482 51483 protected void composeMedicationKnowledgeMonitoringProgramComponentElements(MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent element) throws IOException { 51484 composeBackboneElementElements(element); 51485 if (element.hasType()) { 51486 composeCodeableConcept("type", element.getType()); 51487 } 51488 if (element.hasNameElement()) { 51489 composeString("name", element.getNameElement()); 51490 } 51491 } 51492 51493 protected void composeMedicationKnowledgeIndicationGuidelineComponent(String name, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineComponent element) throws IOException { 51494 if (element != null) { 51495 composeElementAttributes(element); 51496 xml.enter(FHIR_NS, name); 51497 composeMedicationKnowledgeIndicationGuidelineComponentElements(element); 51498 composeElementClose(element); 51499 xml.exit(FHIR_NS, name); 51500 } 51501 } 51502 51503 protected void composeMedicationKnowledgeIndicationGuidelineComponentElements(MedicationKnowledge.MedicationKnowledgeIndicationGuidelineComponent element) throws IOException { 51504 composeBackboneElementElements(element); 51505 if (element.hasIndication()) { 51506 for (CodeableReference e : element.getIndication()) 51507 composeCodeableReference("indication", e); 51508 } 51509 if (element.hasDosingGuideline()) { 51510 for (MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent e : element.getDosingGuideline()) 51511 composeMedicationKnowledgeIndicationGuidelineDosingGuidelineComponent("dosingGuideline", e); 51512 } 51513 } 51514 51515 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelineComponent(String name, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent element) throws IOException { 51516 if (element != null) { 51517 composeElementAttributes(element); 51518 xml.enter(FHIR_NS, name); 51519 composeMedicationKnowledgeIndicationGuidelineDosingGuidelineComponentElements(element); 51520 composeElementClose(element); 51521 xml.exit(FHIR_NS, name); 51522 } 51523 } 51524 51525 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelineComponentElements(MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent element) throws IOException { 51526 composeBackboneElementElements(element); 51527 if (element.hasTreatmentIntent()) { 51528 composeCodeableConcept("treatmentIntent", element.getTreatmentIntent()); 51529 } 51530 if (element.hasDosage()) { 51531 for (MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent e : element.getDosage()) 51532 composeMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent("dosage", e); 51533 } 51534 if (element.hasAdministrationTreatment()) { 51535 composeCodeableConcept("administrationTreatment", element.getAdministrationTreatment()); 51536 } 51537 if (element.hasPatientCharacteristic()) { 51538 for (MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent e : element.getPatientCharacteristic()) 51539 composeMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent("patientCharacteristic", e); 51540 } 51541 } 51542 51543 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent(String name, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent element) throws IOException { 51544 if (element != null) { 51545 composeElementAttributes(element); 51546 xml.enter(FHIR_NS, name); 51547 composeMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponentElements(element); 51548 composeElementClose(element); 51549 xml.exit(FHIR_NS, name); 51550 } 51551 } 51552 51553 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponentElements(MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent element) throws IOException { 51554 composeBackboneElementElements(element); 51555 if (element.hasType()) { 51556 composeCodeableConcept("type", element.getType()); 51557 } 51558 if (element.hasDosage()) { 51559 for (Dosage e : element.getDosage()) 51560 composeDosage("dosage", e); 51561 } 51562 } 51563 51564 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent(String name, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent element) throws IOException { 51565 if (element != null) { 51566 composeElementAttributes(element); 51567 xml.enter(FHIR_NS, name); 51568 composeMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponentElements(element); 51569 composeElementClose(element); 51570 xml.exit(FHIR_NS, name); 51571 } 51572 } 51573 51574 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponentElements(MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent element) throws IOException { 51575 composeBackboneElementElements(element); 51576 if (element.hasType()) { 51577 composeCodeableConcept("type", element.getType()); 51578 } 51579 if (element.hasValue()) { 51580 composeType("value", element.getValue()); 51581 } } 51582 51583 protected void composeMedicationKnowledgeMedicineClassificationComponent(String name, MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent element) throws IOException { 51584 if (element != null) { 51585 composeElementAttributes(element); 51586 xml.enter(FHIR_NS, name); 51587 composeMedicationKnowledgeMedicineClassificationComponentElements(element); 51588 composeElementClose(element); 51589 xml.exit(FHIR_NS, name); 51590 } 51591 } 51592 51593 protected void composeMedicationKnowledgeMedicineClassificationComponentElements(MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent element) throws IOException { 51594 composeBackboneElementElements(element); 51595 if (element.hasType()) { 51596 composeCodeableConcept("type", element.getType()); 51597 } 51598 if (element.hasSource()) { 51599 composeType("source", element.getSource()); 51600 } if (element.hasClassification()) { 51601 for (CodeableConcept e : element.getClassification()) 51602 composeCodeableConcept("classification", e); 51603 } 51604 } 51605 51606 protected void composeMedicationKnowledgePackagingComponent(String name, MedicationKnowledge.MedicationKnowledgePackagingComponent element) throws IOException { 51607 if (element != null) { 51608 composeElementAttributes(element); 51609 xml.enter(FHIR_NS, name); 51610 composeMedicationKnowledgePackagingComponentElements(element); 51611 composeElementClose(element); 51612 xml.exit(FHIR_NS, name); 51613 } 51614 } 51615 51616 protected void composeMedicationKnowledgePackagingComponentElements(MedicationKnowledge.MedicationKnowledgePackagingComponent element) throws IOException { 51617 composeBackboneElementElements(element); 51618 if (element.hasCost()) { 51619 for (MedicationKnowledge.MedicationKnowledgeCostComponent e : element.getCost()) 51620 composeMedicationKnowledgeCostComponent("cost", e); 51621 } 51622 if (element.hasPackagedProduct()) { 51623 composeReference("packagedProduct", element.getPackagedProduct()); 51624 } 51625 } 51626 51627 protected void composeMedicationKnowledgeStorageGuidelineComponent(String name, MedicationKnowledge.MedicationKnowledgeStorageGuidelineComponent element) throws IOException { 51628 if (element != null) { 51629 composeElementAttributes(element); 51630 xml.enter(FHIR_NS, name); 51631 composeMedicationKnowledgeStorageGuidelineComponentElements(element); 51632 composeElementClose(element); 51633 xml.exit(FHIR_NS, name); 51634 } 51635 } 51636 51637 protected void composeMedicationKnowledgeStorageGuidelineComponentElements(MedicationKnowledge.MedicationKnowledgeStorageGuidelineComponent element) throws IOException { 51638 composeBackboneElementElements(element); 51639 if (element.hasReferenceElement()) { 51640 composeUri("reference", element.getReferenceElement()); 51641 } 51642 if (element.hasNote()) { 51643 for (Annotation e : element.getNote()) 51644 composeAnnotation("note", e); 51645 } 51646 if (element.hasStabilityDuration()) { 51647 composeDuration("stabilityDuration", element.getStabilityDuration()); 51648 } 51649 if (element.hasEnvironmentalSetting()) { 51650 for (MedicationKnowledge.MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent e : element.getEnvironmentalSetting()) 51651 composeMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent("environmentalSetting", e); 51652 } 51653 } 51654 51655 protected void composeMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent(String name, MedicationKnowledge.MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent element) throws IOException { 51656 if (element != null) { 51657 composeElementAttributes(element); 51658 xml.enter(FHIR_NS, name); 51659 composeMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponentElements(element); 51660 composeElementClose(element); 51661 xml.exit(FHIR_NS, name); 51662 } 51663 } 51664 51665 protected void composeMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponentElements(MedicationKnowledge.MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent element) throws IOException { 51666 composeBackboneElementElements(element); 51667 if (element.hasType()) { 51668 composeCodeableConcept("type", element.getType()); 51669 } 51670 if (element.hasValue()) { 51671 composeType("value", element.getValue()); 51672 } } 51673 51674 protected void composeMedicationKnowledgeRegulatoryComponent(String name, MedicationKnowledge.MedicationKnowledgeRegulatoryComponent element) throws IOException { 51675 if (element != null) { 51676 composeElementAttributes(element); 51677 xml.enter(FHIR_NS, name); 51678 composeMedicationKnowledgeRegulatoryComponentElements(element); 51679 composeElementClose(element); 51680 xml.exit(FHIR_NS, name); 51681 } 51682 } 51683 51684 protected void composeMedicationKnowledgeRegulatoryComponentElements(MedicationKnowledge.MedicationKnowledgeRegulatoryComponent element) throws IOException { 51685 composeBackboneElementElements(element); 51686 if (element.hasRegulatoryAuthority()) { 51687 composeReference("regulatoryAuthority", element.getRegulatoryAuthority()); 51688 } 51689 if (element.hasSubstitution()) { 51690 for (MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent e : element.getSubstitution()) 51691 composeMedicationKnowledgeRegulatorySubstitutionComponent("substitution", e); 51692 } 51693 if (element.hasSchedule()) { 51694 for (CodeableConcept e : element.getSchedule()) 51695 composeCodeableConcept("schedule", e); 51696 } 51697 if (element.hasMaxDispense()) { 51698 composeMedicationKnowledgeRegulatoryMaxDispenseComponent("maxDispense", element.getMaxDispense()); 51699 } 51700 } 51701 51702 protected void composeMedicationKnowledgeRegulatorySubstitutionComponent(String name, MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent element) throws IOException { 51703 if (element != null) { 51704 composeElementAttributes(element); 51705 xml.enter(FHIR_NS, name); 51706 composeMedicationKnowledgeRegulatorySubstitutionComponentElements(element); 51707 composeElementClose(element); 51708 xml.exit(FHIR_NS, name); 51709 } 51710 } 51711 51712 protected void composeMedicationKnowledgeRegulatorySubstitutionComponentElements(MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent element) throws IOException { 51713 composeBackboneElementElements(element); 51714 if (element.hasType()) { 51715 composeCodeableConcept("type", element.getType()); 51716 } 51717 if (element.hasAllowedElement()) { 51718 composeBoolean("allowed", element.getAllowedElement()); 51719 } 51720 } 51721 51722 protected void composeMedicationKnowledgeRegulatoryMaxDispenseComponent(String name, MedicationKnowledge.MedicationKnowledgeRegulatoryMaxDispenseComponent element) throws IOException { 51723 if (element != null) { 51724 composeElementAttributes(element); 51725 xml.enter(FHIR_NS, name); 51726 composeMedicationKnowledgeRegulatoryMaxDispenseComponentElements(element); 51727 composeElementClose(element); 51728 xml.exit(FHIR_NS, name); 51729 } 51730 } 51731 51732 protected void composeMedicationKnowledgeRegulatoryMaxDispenseComponentElements(MedicationKnowledge.MedicationKnowledgeRegulatoryMaxDispenseComponent element) throws IOException { 51733 composeBackboneElementElements(element); 51734 if (element.hasQuantity()) { 51735 composeQuantity("quantity", element.getQuantity()); 51736 } 51737 if (element.hasPeriod()) { 51738 composeDuration("period", element.getPeriod()); 51739 } 51740 } 51741 51742 protected void composeMedicationKnowledgeDefinitionalComponent(String name, MedicationKnowledge.MedicationKnowledgeDefinitionalComponent element) throws IOException { 51743 if (element != null) { 51744 composeElementAttributes(element); 51745 xml.enter(FHIR_NS, name); 51746 composeMedicationKnowledgeDefinitionalComponentElements(element); 51747 composeElementClose(element); 51748 xml.exit(FHIR_NS, name); 51749 } 51750 } 51751 51752 protected void composeMedicationKnowledgeDefinitionalComponentElements(MedicationKnowledge.MedicationKnowledgeDefinitionalComponent element) throws IOException { 51753 composeBackboneElementElements(element); 51754 if (element.hasDefinition()) { 51755 for (Reference e : element.getDefinition()) 51756 composeReference("definition", e); 51757 } 51758 if (element.hasDoseForm()) { 51759 composeCodeableConcept("doseForm", element.getDoseForm()); 51760 } 51761 if (element.hasIntendedRoute()) { 51762 for (CodeableConcept e : element.getIntendedRoute()) 51763 composeCodeableConcept("intendedRoute", e); 51764 } 51765 if (element.hasIngredient()) { 51766 for (MedicationKnowledge.MedicationKnowledgeDefinitionalIngredientComponent e : element.getIngredient()) 51767 composeMedicationKnowledgeDefinitionalIngredientComponent("ingredient", e); 51768 } 51769 if (element.hasDrugCharacteristic()) { 51770 for (MedicationKnowledge.MedicationKnowledgeDefinitionalDrugCharacteristicComponent e : element.getDrugCharacteristic()) 51771 composeMedicationKnowledgeDefinitionalDrugCharacteristicComponent("drugCharacteristic", e); 51772 } 51773 } 51774 51775 protected void composeMedicationKnowledgeDefinitionalIngredientComponent(String name, MedicationKnowledge.MedicationKnowledgeDefinitionalIngredientComponent element) throws IOException { 51776 if (element != null) { 51777 composeElementAttributes(element); 51778 xml.enter(FHIR_NS, name); 51779 composeMedicationKnowledgeDefinitionalIngredientComponentElements(element); 51780 composeElementClose(element); 51781 xml.exit(FHIR_NS, name); 51782 } 51783 } 51784 51785 protected void composeMedicationKnowledgeDefinitionalIngredientComponentElements(MedicationKnowledge.MedicationKnowledgeDefinitionalIngredientComponent element) throws IOException { 51786 composeBackboneElementElements(element); 51787 if (element.hasItem()) { 51788 composeCodeableReference("item", element.getItem()); 51789 } 51790 if (element.hasType()) { 51791 composeCodeableConcept("type", element.getType()); 51792 } 51793 if (element.hasStrength()) { 51794 composeType("strength", element.getStrength()); 51795 } } 51796 51797 protected void composeMedicationKnowledgeDefinitionalDrugCharacteristicComponent(String name, MedicationKnowledge.MedicationKnowledgeDefinitionalDrugCharacteristicComponent element) throws IOException { 51798 if (element != null) { 51799 composeElementAttributes(element); 51800 xml.enter(FHIR_NS, name); 51801 composeMedicationKnowledgeDefinitionalDrugCharacteristicComponentElements(element); 51802 composeElementClose(element); 51803 xml.exit(FHIR_NS, name); 51804 } 51805 } 51806 51807 protected void composeMedicationKnowledgeDefinitionalDrugCharacteristicComponentElements(MedicationKnowledge.MedicationKnowledgeDefinitionalDrugCharacteristicComponent element) throws IOException { 51808 composeBackboneElementElements(element); 51809 if (element.hasType()) { 51810 composeCodeableConcept("type", element.getType()); 51811 } 51812 if (element.hasValue()) { 51813 composeType("value", element.getValue()); 51814 } } 51815 51816 protected void composeMedicationRequest(String name, MedicationRequest element) throws IOException { 51817 if (element != null) { 51818 composeResourceAttributes(element); 51819 xml.enter(FHIR_NS, name); 51820 composeMedicationRequestElements(element); 51821 composeElementClose(element); 51822 xml.exit(FHIR_NS, name); 51823 } 51824 } 51825 51826 protected void composeMedicationRequestElements(MedicationRequest element) throws IOException { 51827 composeDomainResourceElements(element); 51828 if (element.hasIdentifier()) { 51829 for (Identifier e : element.getIdentifier()) 51830 composeIdentifier("identifier", e); 51831 } 51832 if (element.hasBasedOn()) { 51833 for (Reference e : element.getBasedOn()) 51834 composeReference("basedOn", e); 51835 } 51836 if (element.hasPriorPrescription()) { 51837 composeReference("priorPrescription", element.getPriorPrescription()); 51838 } 51839 if (element.hasGroupIdentifier()) { 51840 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 51841 } 51842 if (element.hasStatusElement()) 51843 composeEnumeration("status", element.getStatusElement(), new MedicationRequest.MedicationrequestStatusEnumFactory()); 51844 if (element.hasStatusReason()) { 51845 composeCodeableConcept("statusReason", element.getStatusReason()); 51846 } 51847 if (element.hasStatusChangedElement()) { 51848 composeDateTime("statusChanged", element.getStatusChangedElement()); 51849 } 51850 if (element.hasIntentElement()) 51851 composeEnumeration("intent", element.getIntentElement(), new MedicationRequest.MedicationRequestIntentEnumFactory()); 51852 if (element.hasCategory()) { 51853 for (CodeableConcept e : element.getCategory()) 51854 composeCodeableConcept("category", e); 51855 } 51856 if (element.hasPriorityElement()) 51857 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 51858 if (element.hasDoNotPerformElement()) { 51859 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 51860 } 51861 if (element.hasMedication()) { 51862 composeCodeableReference("medication", element.getMedication()); 51863 } 51864 if (element.hasSubject()) { 51865 composeReference("subject", element.getSubject()); 51866 } 51867 if (element.hasInformationSource()) { 51868 for (Reference e : element.getInformationSource()) 51869 composeReference("informationSource", e); 51870 } 51871 if (element.hasEncounter()) { 51872 composeReference("encounter", element.getEncounter()); 51873 } 51874 if (element.hasSupportingInformation()) { 51875 for (Reference e : element.getSupportingInformation()) 51876 composeReference("supportingInformation", e); 51877 } 51878 if (element.hasAuthoredOnElement()) { 51879 composeDateTime("authoredOn", element.getAuthoredOnElement()); 51880 } 51881 if (element.hasRequester()) { 51882 composeReference("requester", element.getRequester()); 51883 } 51884 if (element.hasReportedElement()) { 51885 composeBoolean("reported", element.getReportedElement()); 51886 } 51887 if (element.hasPerformerType()) { 51888 composeCodeableConcept("performerType", element.getPerformerType()); 51889 } 51890 if (element.hasPerformer()) { 51891 for (Reference e : element.getPerformer()) 51892 composeReference("performer", e); 51893 } 51894 if (element.hasDevice()) { 51895 for (CodeableReference e : element.getDevice()) 51896 composeCodeableReference("device", e); 51897 } 51898 if (element.hasRecorder()) { 51899 composeReference("recorder", element.getRecorder()); 51900 } 51901 if (element.hasReason()) { 51902 for (CodeableReference e : element.getReason()) 51903 composeCodeableReference("reason", e); 51904 } 51905 if (element.hasCourseOfTherapyType()) { 51906 composeCodeableConcept("courseOfTherapyType", element.getCourseOfTherapyType()); 51907 } 51908 if (element.hasInsurance()) { 51909 for (Reference e : element.getInsurance()) 51910 composeReference("insurance", e); 51911 } 51912 if (element.hasNote()) { 51913 for (Annotation e : element.getNote()) 51914 composeAnnotation("note", e); 51915 } 51916 if (element.hasRenderedDosageInstructionElement()) { 51917 composeMarkdown("renderedDosageInstruction", element.getRenderedDosageInstructionElement()); 51918 } 51919 if (element.hasEffectiveDosePeriod()) { 51920 composePeriod("effectiveDosePeriod", element.getEffectiveDosePeriod()); 51921 } 51922 if (element.hasDosageInstruction()) { 51923 for (Dosage e : element.getDosageInstruction()) 51924 composeDosage("dosageInstruction", e); 51925 } 51926 if (element.hasDispenseRequest()) { 51927 composeMedicationRequestDispenseRequestComponent("dispenseRequest", element.getDispenseRequest()); 51928 } 51929 if (element.hasSubstitution()) { 51930 composeMedicationRequestSubstitutionComponent("substitution", element.getSubstitution()); 51931 } 51932 if (element.hasEventHistory()) { 51933 for (Reference e : element.getEventHistory()) 51934 composeReference("eventHistory", e); 51935 } 51936 } 51937 51938 protected void composeMedicationRequestDispenseRequestComponent(String name, MedicationRequest.MedicationRequestDispenseRequestComponent element) throws IOException { 51939 if (element != null) { 51940 composeElementAttributes(element); 51941 xml.enter(FHIR_NS, name); 51942 composeMedicationRequestDispenseRequestComponentElements(element); 51943 composeElementClose(element); 51944 xml.exit(FHIR_NS, name); 51945 } 51946 } 51947 51948 protected void composeMedicationRequestDispenseRequestComponentElements(MedicationRequest.MedicationRequestDispenseRequestComponent element) throws IOException { 51949 composeBackboneElementElements(element); 51950 if (element.hasInitialFill()) { 51951 composeMedicationRequestDispenseRequestInitialFillComponent("initialFill", element.getInitialFill()); 51952 } 51953 if (element.hasDispenseInterval()) { 51954 composeDuration("dispenseInterval", element.getDispenseInterval()); 51955 } 51956 if (element.hasValidityPeriod()) { 51957 composePeriod("validityPeriod", element.getValidityPeriod()); 51958 } 51959 if (element.hasNumberOfRepeatsAllowedElement()) { 51960 composeUnsignedInt("numberOfRepeatsAllowed", element.getNumberOfRepeatsAllowedElement()); 51961 } 51962 if (element.hasQuantity()) { 51963 composeQuantity("quantity", element.getQuantity()); 51964 } 51965 if (element.hasExpectedSupplyDuration()) { 51966 composeDuration("expectedSupplyDuration", element.getExpectedSupplyDuration()); 51967 } 51968 if (element.hasDispenser()) { 51969 composeReference("dispenser", element.getDispenser()); 51970 } 51971 if (element.hasDispenserInstruction()) { 51972 for (Annotation e : element.getDispenserInstruction()) 51973 composeAnnotation("dispenserInstruction", e); 51974 } 51975 if (element.hasDoseAdministrationAid()) { 51976 composeCodeableConcept("doseAdministrationAid", element.getDoseAdministrationAid()); 51977 } 51978 } 51979 51980 protected void composeMedicationRequestDispenseRequestInitialFillComponent(String name, MedicationRequest.MedicationRequestDispenseRequestInitialFillComponent element) throws IOException { 51981 if (element != null) { 51982 composeElementAttributes(element); 51983 xml.enter(FHIR_NS, name); 51984 composeMedicationRequestDispenseRequestInitialFillComponentElements(element); 51985 composeElementClose(element); 51986 xml.exit(FHIR_NS, name); 51987 } 51988 } 51989 51990 protected void composeMedicationRequestDispenseRequestInitialFillComponentElements(MedicationRequest.MedicationRequestDispenseRequestInitialFillComponent element) throws IOException { 51991 composeBackboneElementElements(element); 51992 if (element.hasQuantity()) { 51993 composeQuantity("quantity", element.getQuantity()); 51994 } 51995 if (element.hasDuration()) { 51996 composeDuration("duration", element.getDuration()); 51997 } 51998 } 51999 52000 protected void composeMedicationRequestSubstitutionComponent(String name, MedicationRequest.MedicationRequestSubstitutionComponent element) throws IOException { 52001 if (element != null) { 52002 composeElementAttributes(element); 52003 xml.enter(FHIR_NS, name); 52004 composeMedicationRequestSubstitutionComponentElements(element); 52005 composeElementClose(element); 52006 xml.exit(FHIR_NS, name); 52007 } 52008 } 52009 52010 protected void composeMedicationRequestSubstitutionComponentElements(MedicationRequest.MedicationRequestSubstitutionComponent element) throws IOException { 52011 composeBackboneElementElements(element); 52012 if (element.hasAllowed()) { 52013 composeType("allowed", element.getAllowed()); 52014 } if (element.hasReason()) { 52015 composeCodeableConcept("reason", element.getReason()); 52016 } 52017 } 52018 52019 protected void composeMedicationStatement(String name, MedicationStatement element) throws IOException { 52020 if (element != null) { 52021 composeResourceAttributes(element); 52022 xml.enter(FHIR_NS, name); 52023 composeMedicationStatementElements(element); 52024 composeElementClose(element); 52025 xml.exit(FHIR_NS, name); 52026 } 52027 } 52028 52029 protected void composeMedicationStatementElements(MedicationStatement element) throws IOException { 52030 composeDomainResourceElements(element); 52031 if (element.hasIdentifier()) { 52032 for (Identifier e : element.getIdentifier()) 52033 composeIdentifier("identifier", e); 52034 } 52035 if (element.hasPartOf()) { 52036 for (Reference e : element.getPartOf()) 52037 composeReference("partOf", e); 52038 } 52039 if (element.hasStatusElement()) 52040 composeEnumeration("status", element.getStatusElement(), new MedicationStatement.MedicationStatementStatusCodesEnumFactory()); 52041 if (element.hasCategory()) { 52042 for (CodeableConcept e : element.getCategory()) 52043 composeCodeableConcept("category", e); 52044 } 52045 if (element.hasMedication()) { 52046 composeCodeableReference("medication", element.getMedication()); 52047 } 52048 if (element.hasSubject()) { 52049 composeReference("subject", element.getSubject()); 52050 } 52051 if (element.hasEncounter()) { 52052 composeReference("encounter", element.getEncounter()); 52053 } 52054 if (element.hasEffective()) { 52055 composeType("effective", element.getEffective()); 52056 } if (element.hasDateAssertedElement()) { 52057 composeDateTime("dateAsserted", element.getDateAssertedElement()); 52058 } 52059 if (element.hasInformationSource()) { 52060 for (Reference e : element.getInformationSource()) 52061 composeReference("informationSource", e); 52062 } 52063 if (element.hasDerivedFrom()) { 52064 for (Reference e : element.getDerivedFrom()) 52065 composeReference("derivedFrom", e); 52066 } 52067 if (element.hasReason()) { 52068 for (CodeableReference e : element.getReason()) 52069 composeCodeableReference("reason", e); 52070 } 52071 if (element.hasNote()) { 52072 for (Annotation e : element.getNote()) 52073 composeAnnotation("note", e); 52074 } 52075 if (element.hasRelatedClinicalInformation()) { 52076 for (Reference e : element.getRelatedClinicalInformation()) 52077 composeReference("relatedClinicalInformation", e); 52078 } 52079 if (element.hasRenderedDosageInstructionElement()) { 52080 composeMarkdown("renderedDosageInstruction", element.getRenderedDosageInstructionElement()); 52081 } 52082 if (element.hasDosage()) { 52083 for (Dosage e : element.getDosage()) 52084 composeDosage("dosage", e); 52085 } 52086 if (element.hasAdherence()) { 52087 composeMedicationStatementAdherenceComponent("adherence", element.getAdherence()); 52088 } 52089 } 52090 52091 protected void composeMedicationStatementAdherenceComponent(String name, MedicationStatement.MedicationStatementAdherenceComponent element) throws IOException { 52092 if (element != null) { 52093 composeElementAttributes(element); 52094 xml.enter(FHIR_NS, name); 52095 composeMedicationStatementAdherenceComponentElements(element); 52096 composeElementClose(element); 52097 xml.exit(FHIR_NS, name); 52098 } 52099 } 52100 52101 protected void composeMedicationStatementAdherenceComponentElements(MedicationStatement.MedicationStatementAdherenceComponent element) throws IOException { 52102 composeBackboneElementElements(element); 52103 if (element.hasCode()) { 52104 composeCodeableConcept("code", element.getCode()); 52105 } 52106 if (element.hasReason()) { 52107 composeCodeableConcept("reason", element.getReason()); 52108 } 52109 } 52110 52111 protected void composeMedicinalProductDefinition(String name, MedicinalProductDefinition element) throws IOException { 52112 if (element != null) { 52113 composeResourceAttributes(element); 52114 xml.enter(FHIR_NS, name); 52115 composeMedicinalProductDefinitionElements(element); 52116 composeElementClose(element); 52117 xml.exit(FHIR_NS, name); 52118 } 52119 } 52120 52121 protected void composeMedicinalProductDefinitionElements(MedicinalProductDefinition element) throws IOException { 52122 composeDomainResourceElements(element); 52123 if (element.hasIdentifier()) { 52124 for (Identifier e : element.getIdentifier()) 52125 composeIdentifier("identifier", e); 52126 } 52127 if (element.hasType()) { 52128 composeCodeableConcept("type", element.getType()); 52129 } 52130 if (element.hasDomain()) { 52131 composeCodeableConcept("domain", element.getDomain()); 52132 } 52133 if (element.hasVersionElement()) { 52134 composeString("version", element.getVersionElement()); 52135 } 52136 if (element.hasStatus()) { 52137 composeCodeableConcept("status", element.getStatus()); 52138 } 52139 if (element.hasStatusDateElement()) { 52140 composeDateTime("statusDate", element.getStatusDateElement()); 52141 } 52142 if (element.hasDescriptionElement()) { 52143 composeMarkdown("description", element.getDescriptionElement()); 52144 } 52145 if (element.hasCombinedPharmaceuticalDoseForm()) { 52146 composeCodeableConcept("combinedPharmaceuticalDoseForm", element.getCombinedPharmaceuticalDoseForm()); 52147 } 52148 if (element.hasRoute()) { 52149 for (CodeableConcept e : element.getRoute()) 52150 composeCodeableConcept("route", e); 52151 } 52152 if (element.hasIndicationElement()) { 52153 composeMarkdown("indication", element.getIndicationElement()); 52154 } 52155 if (element.hasLegalStatusOfSupply()) { 52156 composeCodeableConcept("legalStatusOfSupply", element.getLegalStatusOfSupply()); 52157 } 52158 if (element.hasAdditionalMonitoringIndicator()) { 52159 composeCodeableConcept("additionalMonitoringIndicator", element.getAdditionalMonitoringIndicator()); 52160 } 52161 if (element.hasSpecialMeasures()) { 52162 for (CodeableConcept e : element.getSpecialMeasures()) 52163 composeCodeableConcept("specialMeasures", e); 52164 } 52165 if (element.hasPediatricUseIndicator()) { 52166 composeCodeableConcept("pediatricUseIndicator", element.getPediatricUseIndicator()); 52167 } 52168 if (element.hasClassification()) { 52169 for (CodeableConcept e : element.getClassification()) 52170 composeCodeableConcept("classification", e); 52171 } 52172 if (element.hasMarketingStatus()) { 52173 for (MarketingStatus e : element.getMarketingStatus()) 52174 composeMarketingStatus("marketingStatus", e); 52175 } 52176 if (element.hasPackagedMedicinalProduct()) { 52177 for (CodeableConcept e : element.getPackagedMedicinalProduct()) 52178 composeCodeableConcept("packagedMedicinalProduct", e); 52179 } 52180 if (element.hasComprisedOf()) { 52181 for (Reference e : element.getComprisedOf()) 52182 composeReference("comprisedOf", e); 52183 } 52184 if (element.hasIngredient()) { 52185 for (CodeableConcept e : element.getIngredient()) 52186 composeCodeableConcept("ingredient", e); 52187 } 52188 if (element.hasImpurity()) { 52189 for (CodeableReference e : element.getImpurity()) 52190 composeCodeableReference("impurity", e); 52191 } 52192 if (element.hasAttachedDocument()) { 52193 for (Reference e : element.getAttachedDocument()) 52194 composeReference("attachedDocument", e); 52195 } 52196 if (element.hasMasterFile()) { 52197 for (Reference e : element.getMasterFile()) 52198 composeReference("masterFile", e); 52199 } 52200 if (element.hasContact()) { 52201 for (MedicinalProductDefinition.MedicinalProductDefinitionContactComponent e : element.getContact()) 52202 composeMedicinalProductDefinitionContactComponent("contact", e); 52203 } 52204 if (element.hasClinicalTrial()) { 52205 for (Reference e : element.getClinicalTrial()) 52206 composeReference("clinicalTrial", e); 52207 } 52208 if (element.hasCode()) { 52209 for (Coding e : element.getCode()) 52210 composeCoding("code", e); 52211 } 52212 if (element.hasName()) { 52213 for (MedicinalProductDefinition.MedicinalProductDefinitionNameComponent e : element.getName()) 52214 composeMedicinalProductDefinitionNameComponent("name", e); 52215 } 52216 if (element.hasCrossReference()) { 52217 for (MedicinalProductDefinition.MedicinalProductDefinitionCrossReferenceComponent e : element.getCrossReference()) 52218 composeMedicinalProductDefinitionCrossReferenceComponent("crossReference", e); 52219 } 52220 if (element.hasOperation()) { 52221 for (MedicinalProductDefinition.MedicinalProductDefinitionOperationComponent e : element.getOperation()) 52222 composeMedicinalProductDefinitionOperationComponent("operation", e); 52223 } 52224 if (element.hasCharacteristic()) { 52225 for (MedicinalProductDefinition.MedicinalProductDefinitionCharacteristicComponent e : element.getCharacteristic()) 52226 composeMedicinalProductDefinitionCharacteristicComponent("characteristic", e); 52227 } 52228 } 52229 52230 protected void composeMedicinalProductDefinitionContactComponent(String name, MedicinalProductDefinition.MedicinalProductDefinitionContactComponent element) throws IOException { 52231 if (element != null) { 52232 composeElementAttributes(element); 52233 xml.enter(FHIR_NS, name); 52234 composeMedicinalProductDefinitionContactComponentElements(element); 52235 composeElementClose(element); 52236 xml.exit(FHIR_NS, name); 52237 } 52238 } 52239 52240 protected void composeMedicinalProductDefinitionContactComponentElements(MedicinalProductDefinition.MedicinalProductDefinitionContactComponent element) throws IOException { 52241 composeBackboneElementElements(element); 52242 if (element.hasType()) { 52243 composeCodeableConcept("type", element.getType()); 52244 } 52245 if (element.hasContact()) { 52246 composeReference("contact", element.getContact()); 52247 } 52248 } 52249 52250 protected void composeMedicinalProductDefinitionNameComponent(String name, MedicinalProductDefinition.MedicinalProductDefinitionNameComponent element) throws IOException { 52251 if (element != null) { 52252 composeElementAttributes(element); 52253 xml.enter(FHIR_NS, name); 52254 composeMedicinalProductDefinitionNameComponentElements(element); 52255 composeElementClose(element); 52256 xml.exit(FHIR_NS, name); 52257 } 52258 } 52259 52260 protected void composeMedicinalProductDefinitionNameComponentElements(MedicinalProductDefinition.MedicinalProductDefinitionNameComponent element) throws IOException { 52261 composeBackboneElementElements(element); 52262 if (element.hasProductNameElement()) { 52263 composeString("productName", element.getProductNameElement()); 52264 } 52265 if (element.hasType()) { 52266 composeCodeableConcept("type", element.getType()); 52267 } 52268 if (element.hasPart()) { 52269 for (MedicinalProductDefinition.MedicinalProductDefinitionNamePartComponent e : element.getPart()) 52270 composeMedicinalProductDefinitionNamePartComponent("part", e); 52271 } 52272 if (element.hasUsage()) { 52273 for (MedicinalProductDefinition.MedicinalProductDefinitionNameUsageComponent e : element.getUsage()) 52274 composeMedicinalProductDefinitionNameUsageComponent("usage", e); 52275 } 52276 } 52277 52278 protected void composeMedicinalProductDefinitionNamePartComponent(String name, MedicinalProductDefinition.MedicinalProductDefinitionNamePartComponent element) throws IOException { 52279 if (element != null) { 52280 composeElementAttributes(element); 52281 xml.enter(FHIR_NS, name); 52282 composeMedicinalProductDefinitionNamePartComponentElements(element); 52283 composeElementClose(element); 52284 xml.exit(FHIR_NS, name); 52285 } 52286 } 52287 52288 protected void composeMedicinalProductDefinitionNamePartComponentElements(MedicinalProductDefinition.MedicinalProductDefinitionNamePartComponent element) throws IOException { 52289 composeBackboneElementElements(element); 52290 if (element.hasPartElement()) { 52291 composeString("part", element.getPartElement()); 52292 } 52293 if (element.hasType()) { 52294 composeCodeableConcept("type", element.getType()); 52295 } 52296 } 52297 52298 protected void composeMedicinalProductDefinitionNameUsageComponent(String name, MedicinalProductDefinition.MedicinalProductDefinitionNameUsageComponent element) throws IOException { 52299 if (element != null) { 52300 composeElementAttributes(element); 52301 xml.enter(FHIR_NS, name); 52302 composeMedicinalProductDefinitionNameUsageComponentElements(element); 52303 composeElementClose(element); 52304 xml.exit(FHIR_NS, name); 52305 } 52306 } 52307 52308 protected void composeMedicinalProductDefinitionNameUsageComponentElements(MedicinalProductDefinition.MedicinalProductDefinitionNameUsageComponent element) throws IOException { 52309 composeBackboneElementElements(element); 52310 if (element.hasCountry()) { 52311 composeCodeableConcept("country", element.getCountry()); 52312 } 52313 if (element.hasJurisdiction()) { 52314 composeCodeableConcept("jurisdiction", element.getJurisdiction()); 52315 } 52316 if (element.hasLanguage()) { 52317 composeCodeableConcept("language", element.getLanguage()); 52318 } 52319 } 52320 52321 protected void composeMedicinalProductDefinitionCrossReferenceComponent(String name, MedicinalProductDefinition.MedicinalProductDefinitionCrossReferenceComponent element) throws IOException { 52322 if (element != null) { 52323 composeElementAttributes(element); 52324 xml.enter(FHIR_NS, name); 52325 composeMedicinalProductDefinitionCrossReferenceComponentElements(element); 52326 composeElementClose(element); 52327 xml.exit(FHIR_NS, name); 52328 } 52329 } 52330 52331 protected void composeMedicinalProductDefinitionCrossReferenceComponentElements(MedicinalProductDefinition.MedicinalProductDefinitionCrossReferenceComponent element) throws IOException { 52332 composeBackboneElementElements(element); 52333 if (element.hasProduct()) { 52334 composeCodeableReference("product", element.getProduct()); 52335 } 52336 if (element.hasType()) { 52337 composeCodeableConcept("type", element.getType()); 52338 } 52339 } 52340 52341 protected void composeMedicinalProductDefinitionOperationComponent(String name, MedicinalProductDefinition.MedicinalProductDefinitionOperationComponent element) throws IOException { 52342 if (element != null) { 52343 composeElementAttributes(element); 52344 xml.enter(FHIR_NS, name); 52345 composeMedicinalProductDefinitionOperationComponentElements(element); 52346 composeElementClose(element); 52347 xml.exit(FHIR_NS, name); 52348 } 52349 } 52350 52351 protected void composeMedicinalProductDefinitionOperationComponentElements(MedicinalProductDefinition.MedicinalProductDefinitionOperationComponent element) throws IOException { 52352 composeBackboneElementElements(element); 52353 if (element.hasType()) { 52354 composeCodeableReference("type", element.getType()); 52355 } 52356 if (element.hasEffectiveDate()) { 52357 composePeriod("effectiveDate", element.getEffectiveDate()); 52358 } 52359 if (element.hasOrganization()) { 52360 for (Reference e : element.getOrganization()) 52361 composeReference("organization", e); 52362 } 52363 if (element.hasConfidentialityIndicator()) { 52364 composeCodeableConcept("confidentialityIndicator", element.getConfidentialityIndicator()); 52365 } 52366 } 52367 52368 protected void composeMedicinalProductDefinitionCharacteristicComponent(String name, MedicinalProductDefinition.MedicinalProductDefinitionCharacteristicComponent element) throws IOException { 52369 if (element != null) { 52370 composeElementAttributes(element); 52371 xml.enter(FHIR_NS, name); 52372 composeMedicinalProductDefinitionCharacteristicComponentElements(element); 52373 composeElementClose(element); 52374 xml.exit(FHIR_NS, name); 52375 } 52376 } 52377 52378 protected void composeMedicinalProductDefinitionCharacteristicComponentElements(MedicinalProductDefinition.MedicinalProductDefinitionCharacteristicComponent element) throws IOException { 52379 composeBackboneElementElements(element); 52380 if (element.hasType()) { 52381 composeCodeableConcept("type", element.getType()); 52382 } 52383 if (element.hasValue()) { 52384 composeType("value", element.getValue()); 52385 } } 52386 52387 protected void composeMessageDefinition(String name, MessageDefinition element) throws IOException { 52388 if (element != null) { 52389 composeResourceAttributes(element); 52390 xml.enter(FHIR_NS, name); 52391 composeMessageDefinitionElements(element); 52392 composeElementClose(element); 52393 xml.exit(FHIR_NS, name); 52394 } 52395 } 52396 52397 protected void composeMessageDefinitionElements(MessageDefinition element) throws IOException { 52398 composeCanonicalResourceElements(element); 52399 if (element.hasUrlElement()) { 52400 composeUri("url", element.getUrlElement()); 52401 } 52402 if (element.hasIdentifier()) { 52403 for (Identifier e : element.getIdentifier()) 52404 composeIdentifier("identifier", e); 52405 } 52406 if (element.hasVersionElement()) { 52407 composeString("version", element.getVersionElement()); 52408 } 52409 if (element.hasVersionAlgorithm()) { 52410 composeType("versionAlgorithm", element.getVersionAlgorithm()); 52411 } if (element.hasNameElement()) { 52412 composeString("name", element.getNameElement()); 52413 } 52414 if (element.hasTitleElement()) { 52415 composeString("title", element.getTitleElement()); 52416 } 52417 if (element.hasReplaces()) { 52418 for (CanonicalType e : element.getReplaces()) 52419 composeCanonical("replaces", e); 52420 } 52421 if (element.hasStatusElement()) 52422 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 52423 if (element.hasExperimentalElement()) { 52424 composeBoolean("experimental", element.getExperimentalElement()); 52425 } 52426 if (element.hasDateElement()) { 52427 composeDateTime("date", element.getDateElement()); 52428 } 52429 if (element.hasPublisherElement()) { 52430 composeString("publisher", element.getPublisherElement()); 52431 } 52432 if (element.hasContact()) { 52433 for (ContactDetail e : element.getContact()) 52434 composeContactDetail("contact", e); 52435 } 52436 if (element.hasDescriptionElement()) { 52437 composeMarkdown("description", element.getDescriptionElement()); 52438 } 52439 if (element.hasUseContext()) { 52440 for (UsageContext e : element.getUseContext()) 52441 composeUsageContext("useContext", e); 52442 } 52443 if (element.hasJurisdiction()) { 52444 for (CodeableConcept e : element.getJurisdiction()) 52445 composeCodeableConcept("jurisdiction", e); 52446 } 52447 if (element.hasPurposeElement()) { 52448 composeMarkdown("purpose", element.getPurposeElement()); 52449 } 52450 if (element.hasCopyrightElement()) { 52451 composeMarkdown("copyright", element.getCopyrightElement()); 52452 } 52453 if (element.hasCopyrightLabelElement()) { 52454 composeString("copyrightLabel", element.getCopyrightLabelElement()); 52455 } 52456 if (element.hasBaseElement()) { 52457 composeCanonical("base", element.getBaseElement()); 52458 } 52459 if (element.hasParent()) { 52460 for (CanonicalType e : element.getParent()) 52461 composeCanonical("parent", e); 52462 } 52463 if (element.hasEvent()) { 52464 composeType("event", element.getEvent()); 52465 } if (element.hasCategoryElement()) 52466 composeEnumeration("category", element.getCategoryElement(), new MessageDefinition.MessageSignificanceCategoryEnumFactory()); 52467 if (element.hasFocus()) { 52468 for (MessageDefinition.MessageDefinitionFocusComponent e : element.getFocus()) 52469 composeMessageDefinitionFocusComponent("focus", e); 52470 } 52471 if (element.hasResponseRequiredElement()) 52472 composeEnumeration("responseRequired", element.getResponseRequiredElement(), new MessageDefinition.MessageheaderResponseRequestEnumFactory()); 52473 if (element.hasAllowedResponse()) { 52474 for (MessageDefinition.MessageDefinitionAllowedResponseComponent e : element.getAllowedResponse()) 52475 composeMessageDefinitionAllowedResponseComponent("allowedResponse", e); 52476 } 52477 if (element.hasGraphElement()) { 52478 composeCanonical("graph", element.getGraphElement()); 52479 } 52480 } 52481 52482 protected void composeMessageDefinitionFocusComponent(String name, MessageDefinition.MessageDefinitionFocusComponent element) throws IOException { 52483 if (element != null) { 52484 composeElementAttributes(element); 52485 xml.enter(FHIR_NS, name); 52486 composeMessageDefinitionFocusComponentElements(element); 52487 composeElementClose(element); 52488 xml.exit(FHIR_NS, name); 52489 } 52490 } 52491 52492 protected void composeMessageDefinitionFocusComponentElements(MessageDefinition.MessageDefinitionFocusComponent element) throws IOException { 52493 composeBackboneElementElements(element); 52494 if (element.hasCodeElement()) { 52495 composeCode("code", element.getCodeElement()); 52496 } 52497 if (element.hasProfileElement()) { 52498 composeCanonical("profile", element.getProfileElement()); 52499 } 52500 if (element.hasMinElement()) { 52501 composeUnsignedInt("min", element.getMinElement()); 52502 } 52503 if (element.hasMaxElement()) { 52504 composeString("max", element.getMaxElement()); 52505 } 52506 } 52507 52508 protected void composeMessageDefinitionAllowedResponseComponent(String name, MessageDefinition.MessageDefinitionAllowedResponseComponent element) throws IOException { 52509 if (element != null) { 52510 composeElementAttributes(element); 52511 xml.enter(FHIR_NS, name); 52512 composeMessageDefinitionAllowedResponseComponentElements(element); 52513 composeElementClose(element); 52514 xml.exit(FHIR_NS, name); 52515 } 52516 } 52517 52518 protected void composeMessageDefinitionAllowedResponseComponentElements(MessageDefinition.MessageDefinitionAllowedResponseComponent element) throws IOException { 52519 composeBackboneElementElements(element); 52520 if (element.hasMessageElement()) { 52521 composeCanonical("message", element.getMessageElement()); 52522 } 52523 if (element.hasSituationElement()) { 52524 composeMarkdown("situation", element.getSituationElement()); 52525 } 52526 } 52527 52528 protected void composeMessageHeader(String name, MessageHeader element) throws IOException { 52529 if (element != null) { 52530 composeResourceAttributes(element); 52531 xml.enter(FHIR_NS, name); 52532 composeMessageHeaderElements(element); 52533 composeElementClose(element); 52534 xml.exit(FHIR_NS, name); 52535 } 52536 } 52537 52538 protected void composeMessageHeaderElements(MessageHeader element) throws IOException { 52539 composeDomainResourceElements(element); 52540 if (element.hasEvent()) { 52541 composeType("event", element.getEvent()); 52542 } if (element.hasDestination()) { 52543 for (MessageHeader.MessageDestinationComponent e : element.getDestination()) 52544 composeMessageHeaderMessageDestinationComponent("destination", e); 52545 } 52546 if (element.hasSender()) { 52547 composeReference("sender", element.getSender()); 52548 } 52549 if (element.hasAuthor()) { 52550 composeReference("author", element.getAuthor()); 52551 } 52552 if (element.hasSource()) { 52553 composeMessageHeaderMessageSourceComponent("source", element.getSource()); 52554 } 52555 if (element.hasResponsible()) { 52556 composeReference("responsible", element.getResponsible()); 52557 } 52558 if (element.hasReason()) { 52559 composeCodeableConcept("reason", element.getReason()); 52560 } 52561 if (element.hasResponse()) { 52562 composeMessageHeaderResponseComponent("response", element.getResponse()); 52563 } 52564 if (element.hasFocus()) { 52565 for (Reference e : element.getFocus()) 52566 composeReference("focus", e); 52567 } 52568 if (element.hasDefinitionElement()) { 52569 composeCanonical("definition", element.getDefinitionElement()); 52570 } 52571 } 52572 52573 protected void composeMessageHeaderMessageDestinationComponent(String name, MessageHeader.MessageDestinationComponent element) throws IOException { 52574 if (element != null) { 52575 composeElementAttributes(element); 52576 xml.enter(FHIR_NS, name); 52577 composeMessageHeaderMessageDestinationComponentElements(element); 52578 composeElementClose(element); 52579 xml.exit(FHIR_NS, name); 52580 } 52581 } 52582 52583 protected void composeMessageHeaderMessageDestinationComponentElements(MessageHeader.MessageDestinationComponent element) throws IOException { 52584 composeBackboneElementElements(element); 52585 if (element.hasEndpoint()) { 52586 composeType("endpoint", element.getEndpoint()); 52587 } if (element.hasNameElement()) { 52588 composeString("name", element.getNameElement()); 52589 } 52590 if (element.hasTarget()) { 52591 composeReference("target", element.getTarget()); 52592 } 52593 if (element.hasReceiver()) { 52594 composeReference("receiver", element.getReceiver()); 52595 } 52596 } 52597 52598 protected void composeMessageHeaderMessageSourceComponent(String name, MessageHeader.MessageSourceComponent element) throws IOException { 52599 if (element != null) { 52600 composeElementAttributes(element); 52601 xml.enter(FHIR_NS, name); 52602 composeMessageHeaderMessageSourceComponentElements(element); 52603 composeElementClose(element); 52604 xml.exit(FHIR_NS, name); 52605 } 52606 } 52607 52608 protected void composeMessageHeaderMessageSourceComponentElements(MessageHeader.MessageSourceComponent element) throws IOException { 52609 composeBackboneElementElements(element); 52610 if (element.hasEndpoint()) { 52611 composeType("endpoint", element.getEndpoint()); 52612 } if (element.hasNameElement()) { 52613 composeString("name", element.getNameElement()); 52614 } 52615 if (element.hasSoftwareElement()) { 52616 composeString("software", element.getSoftwareElement()); 52617 } 52618 if (element.hasVersionElement()) { 52619 composeString("version", element.getVersionElement()); 52620 } 52621 if (element.hasContact()) { 52622 composeContactPoint("contact", element.getContact()); 52623 } 52624 } 52625 52626 protected void composeMessageHeaderResponseComponent(String name, MessageHeader.MessageHeaderResponseComponent element) throws IOException { 52627 if (element != null) { 52628 composeElementAttributes(element); 52629 xml.enter(FHIR_NS, name); 52630 composeMessageHeaderResponseComponentElements(element); 52631 composeElementClose(element); 52632 xml.exit(FHIR_NS, name); 52633 } 52634 } 52635 52636 protected void composeMessageHeaderResponseComponentElements(MessageHeader.MessageHeaderResponseComponent element) throws IOException { 52637 composeBackboneElementElements(element); 52638 if (element.hasIdentifier()) { 52639 composeIdentifier("identifier", element.getIdentifier()); 52640 } 52641 if (element.hasCodeElement()) 52642 composeEnumeration("code", element.getCodeElement(), new MessageHeader.ResponseTypeEnumFactory()); 52643 if (element.hasDetails()) { 52644 composeReference("details", element.getDetails()); 52645 } 52646 } 52647 52648 protected void composeMolecularSequence(String name, MolecularSequence element) throws IOException { 52649 if (element != null) { 52650 composeResourceAttributes(element); 52651 xml.enter(FHIR_NS, name); 52652 composeMolecularSequenceElements(element); 52653 composeElementClose(element); 52654 xml.exit(FHIR_NS, name); 52655 } 52656 } 52657 52658 protected void composeMolecularSequenceElements(MolecularSequence element) throws IOException { 52659 composeDomainResourceElements(element); 52660 if (element.hasIdentifier()) { 52661 for (Identifier e : element.getIdentifier()) 52662 composeIdentifier("identifier", e); 52663 } 52664 if (element.hasTypeElement()) 52665 composeEnumeration("type", element.getTypeElement(), new MolecularSequence.SequenceTypeEnumFactory()); 52666 if (element.hasSubject()) { 52667 composeReference("subject", element.getSubject()); 52668 } 52669 if (element.hasFocus()) { 52670 for (Reference e : element.getFocus()) 52671 composeReference("focus", e); 52672 } 52673 if (element.hasSpecimen()) { 52674 composeReference("specimen", element.getSpecimen()); 52675 } 52676 if (element.hasDevice()) { 52677 composeReference("device", element.getDevice()); 52678 } 52679 if (element.hasPerformer()) { 52680 composeReference("performer", element.getPerformer()); 52681 } 52682 if (element.hasLiteralElement()) { 52683 composeString("literal", element.getLiteralElement()); 52684 } 52685 if (element.hasFormatted()) { 52686 for (Attachment e : element.getFormatted()) 52687 composeAttachment("formatted", e); 52688 } 52689 if (element.hasRelative()) { 52690 for (MolecularSequence.MolecularSequenceRelativeComponent e : element.getRelative()) 52691 composeMolecularSequenceRelativeComponent("relative", e); 52692 } 52693 } 52694 52695 protected void composeMolecularSequenceRelativeComponent(String name, MolecularSequence.MolecularSequenceRelativeComponent element) throws IOException { 52696 if (element != null) { 52697 composeElementAttributes(element); 52698 xml.enter(FHIR_NS, name); 52699 composeMolecularSequenceRelativeComponentElements(element); 52700 composeElementClose(element); 52701 xml.exit(FHIR_NS, name); 52702 } 52703 } 52704 52705 protected void composeMolecularSequenceRelativeComponentElements(MolecularSequence.MolecularSequenceRelativeComponent element) throws IOException { 52706 composeBackboneElementElements(element); 52707 if (element.hasCoordinateSystem()) { 52708 composeCodeableConcept("coordinateSystem", element.getCoordinateSystem()); 52709 } 52710 if (element.hasOrdinalPositionElement()) { 52711 composeInteger("ordinalPosition", element.getOrdinalPositionElement()); 52712 } 52713 if (element.hasSequenceRange()) { 52714 composeRange("sequenceRange", element.getSequenceRange()); 52715 } 52716 if (element.hasStartingSequence()) { 52717 composeMolecularSequenceRelativeStartingSequenceComponent("startingSequence", element.getStartingSequence()); 52718 } 52719 if (element.hasEdit()) { 52720 for (MolecularSequence.MolecularSequenceRelativeEditComponent e : element.getEdit()) 52721 composeMolecularSequenceRelativeEditComponent("edit", e); 52722 } 52723 } 52724 52725 protected void composeMolecularSequenceRelativeStartingSequenceComponent(String name, MolecularSequence.MolecularSequenceRelativeStartingSequenceComponent element) throws IOException { 52726 if (element != null) { 52727 composeElementAttributes(element); 52728 xml.enter(FHIR_NS, name); 52729 composeMolecularSequenceRelativeStartingSequenceComponentElements(element); 52730 composeElementClose(element); 52731 xml.exit(FHIR_NS, name); 52732 } 52733 } 52734 52735 protected void composeMolecularSequenceRelativeStartingSequenceComponentElements(MolecularSequence.MolecularSequenceRelativeStartingSequenceComponent element) throws IOException { 52736 composeBackboneElementElements(element); 52737 if (element.hasGenomeAssembly()) { 52738 composeCodeableConcept("genomeAssembly", element.getGenomeAssembly()); 52739 } 52740 if (element.hasChromosome()) { 52741 composeCodeableConcept("chromosome", element.getChromosome()); 52742 } 52743 if (element.hasSequence()) { 52744 composeType("sequence", element.getSequence()); 52745 } if (element.hasWindowStartElement()) { 52746 composeInteger("windowStart", element.getWindowStartElement()); 52747 } 52748 if (element.hasWindowEndElement()) { 52749 composeInteger("windowEnd", element.getWindowEndElement()); 52750 } 52751 if (element.hasOrientationElement()) 52752 composeEnumeration("orientation", element.getOrientationElement(), new MolecularSequence.OrientationTypeEnumFactory()); 52753 if (element.hasStrandElement()) 52754 composeEnumeration("strand", element.getStrandElement(), new MolecularSequence.StrandTypeEnumFactory()); 52755 } 52756 52757 protected void composeMolecularSequenceRelativeEditComponent(String name, MolecularSequence.MolecularSequenceRelativeEditComponent element) throws IOException { 52758 if (element != null) { 52759 composeElementAttributes(element); 52760 xml.enter(FHIR_NS, name); 52761 composeMolecularSequenceRelativeEditComponentElements(element); 52762 composeElementClose(element); 52763 xml.exit(FHIR_NS, name); 52764 } 52765 } 52766 52767 protected void composeMolecularSequenceRelativeEditComponentElements(MolecularSequence.MolecularSequenceRelativeEditComponent element) throws IOException { 52768 composeBackboneElementElements(element); 52769 if (element.hasStartElement()) { 52770 composeInteger("start", element.getStartElement()); 52771 } 52772 if (element.hasEndElement()) { 52773 composeInteger("end", element.getEndElement()); 52774 } 52775 if (element.hasReplacementSequenceElement()) { 52776 composeString("replacementSequence", element.getReplacementSequenceElement()); 52777 } 52778 if (element.hasReplacedSequenceElement()) { 52779 composeString("replacedSequence", element.getReplacedSequenceElement()); 52780 } 52781 } 52782 52783 protected void composeNamingSystem(String name, NamingSystem element) throws IOException { 52784 if (element != null) { 52785 composeResourceAttributes(element); 52786 xml.enter(FHIR_NS, name); 52787 composeNamingSystemElements(element); 52788 composeElementClose(element); 52789 xml.exit(FHIR_NS, name); 52790 } 52791 } 52792 52793 protected void composeNamingSystemElements(NamingSystem element) throws IOException { 52794 composeMetadataResourceElements(element); 52795 if (element.hasUrlElement()) { 52796 composeUri("url", element.getUrlElement()); 52797 } 52798 if (element.hasIdentifier()) { 52799 for (Identifier e : element.getIdentifier()) 52800 composeIdentifier("identifier", e); 52801 } 52802 if (element.hasVersionElement()) { 52803 composeString("version", element.getVersionElement()); 52804 } 52805 if (element.hasVersionAlgorithm()) { 52806 composeType("versionAlgorithm", element.getVersionAlgorithm()); 52807 } if (element.hasNameElement()) { 52808 composeString("name", element.getNameElement()); 52809 } 52810 if (element.hasTitleElement()) { 52811 composeString("title", element.getTitleElement()); 52812 } 52813 if (element.hasStatusElement()) 52814 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 52815 if (element.hasKindElement()) 52816 composeEnumeration("kind", element.getKindElement(), new NamingSystem.NamingSystemTypeEnumFactory()); 52817 if (element.hasExperimentalElement()) { 52818 composeBoolean("experimental", element.getExperimentalElement()); 52819 } 52820 if (element.hasDateElement()) { 52821 composeDateTime("date", element.getDateElement()); 52822 } 52823 if (element.hasPublisherElement()) { 52824 composeString("publisher", element.getPublisherElement()); 52825 } 52826 if (element.hasContact()) { 52827 for (ContactDetail e : element.getContact()) 52828 composeContactDetail("contact", e); 52829 } 52830 if (element.hasResponsibleElement()) { 52831 composeString("responsible", element.getResponsibleElement()); 52832 } 52833 if (element.hasType()) { 52834 composeCodeableConcept("type", element.getType()); 52835 } 52836 if (element.hasDescriptionElement()) { 52837 composeMarkdown("description", element.getDescriptionElement()); 52838 } 52839 if (element.hasUseContext()) { 52840 for (UsageContext e : element.getUseContext()) 52841 composeUsageContext("useContext", e); 52842 } 52843 if (element.hasJurisdiction()) { 52844 for (CodeableConcept e : element.getJurisdiction()) 52845 composeCodeableConcept("jurisdiction", e); 52846 } 52847 if (element.hasPurposeElement()) { 52848 composeMarkdown("purpose", element.getPurposeElement()); 52849 } 52850 if (element.hasCopyrightElement()) { 52851 composeMarkdown("copyright", element.getCopyrightElement()); 52852 } 52853 if (element.hasCopyrightLabelElement()) { 52854 composeString("copyrightLabel", element.getCopyrightLabelElement()); 52855 } 52856 if (element.hasApprovalDateElement()) { 52857 composeDate("approvalDate", element.getApprovalDateElement()); 52858 } 52859 if (element.hasLastReviewDateElement()) { 52860 composeDate("lastReviewDate", element.getLastReviewDateElement()); 52861 } 52862 if (element.hasEffectivePeriod()) { 52863 composePeriod("effectivePeriod", element.getEffectivePeriod()); 52864 } 52865 if (element.hasTopic()) { 52866 for (CodeableConcept e : element.getTopic()) 52867 composeCodeableConcept("topic", e); 52868 } 52869 if (element.hasAuthor()) { 52870 for (ContactDetail e : element.getAuthor()) 52871 composeContactDetail("author", e); 52872 } 52873 if (element.hasEditor()) { 52874 for (ContactDetail e : element.getEditor()) 52875 composeContactDetail("editor", e); 52876 } 52877 if (element.hasReviewer()) { 52878 for (ContactDetail e : element.getReviewer()) 52879 composeContactDetail("reviewer", e); 52880 } 52881 if (element.hasEndorser()) { 52882 for (ContactDetail e : element.getEndorser()) 52883 composeContactDetail("endorser", e); 52884 } 52885 if (element.hasRelatedArtifact()) { 52886 for (RelatedArtifact e : element.getRelatedArtifact()) 52887 composeRelatedArtifact("relatedArtifact", e); 52888 } 52889 if (element.hasUsageElement()) { 52890 composeString("usage", element.getUsageElement()); 52891 } 52892 if (element.hasUniqueId()) { 52893 for (NamingSystem.NamingSystemUniqueIdComponent e : element.getUniqueId()) 52894 composeNamingSystemUniqueIdComponent("uniqueId", e); 52895 } 52896 } 52897 52898 protected void composeNamingSystemUniqueIdComponent(String name, NamingSystem.NamingSystemUniqueIdComponent element) throws IOException { 52899 if (element != null) { 52900 composeElementAttributes(element); 52901 xml.enter(FHIR_NS, name); 52902 composeNamingSystemUniqueIdComponentElements(element); 52903 composeElementClose(element); 52904 xml.exit(FHIR_NS, name); 52905 } 52906 } 52907 52908 protected void composeNamingSystemUniqueIdComponentElements(NamingSystem.NamingSystemUniqueIdComponent element) throws IOException { 52909 composeBackboneElementElements(element); 52910 if (element.hasTypeElement()) 52911 composeEnumeration("type", element.getTypeElement(), new NamingSystem.NamingSystemIdentifierTypeEnumFactory()); 52912 if (element.hasValueElement()) { 52913 composeString("value", element.getValueElement()); 52914 } 52915 if (element.hasPreferredElement()) { 52916 composeBoolean("preferred", element.getPreferredElement()); 52917 } 52918 if (element.hasCommentElement()) { 52919 composeString("comment", element.getCommentElement()); 52920 } 52921 if (element.hasPeriod()) { 52922 composePeriod("period", element.getPeriod()); 52923 } 52924 if (element.hasAuthoritativeElement()) { 52925 composeBoolean("authoritative", element.getAuthoritativeElement()); 52926 } 52927 } 52928 52929 protected void composeNutritionIntake(String name, NutritionIntake element) throws IOException { 52930 if (element != null) { 52931 composeResourceAttributes(element); 52932 xml.enter(FHIR_NS, name); 52933 composeNutritionIntakeElements(element); 52934 composeElementClose(element); 52935 xml.exit(FHIR_NS, name); 52936 } 52937 } 52938 52939 protected void composeNutritionIntakeElements(NutritionIntake element) throws IOException { 52940 composeDomainResourceElements(element); 52941 if (element.hasIdentifier()) { 52942 for (Identifier e : element.getIdentifier()) 52943 composeIdentifier("identifier", e); 52944 } 52945 if (element.hasInstantiatesCanonical()) { 52946 for (CanonicalType e : element.getInstantiatesCanonical()) 52947 composeCanonical("instantiatesCanonical", e); 52948 } 52949 if (element.hasInstantiatesUri()) { 52950 for (UriType e : element.getInstantiatesUri()) 52951 composeUri("instantiatesUri", e); 52952 } 52953 if (element.hasBasedOn()) { 52954 for (Reference e : element.getBasedOn()) 52955 composeReference("basedOn", e); 52956 } 52957 if (element.hasPartOf()) { 52958 for (Reference e : element.getPartOf()) 52959 composeReference("partOf", e); 52960 } 52961 if (element.hasStatusElement()) 52962 composeEnumeration("status", element.getStatusElement(), new Enumerations.EventStatusEnumFactory()); 52963 if (element.hasStatusReason()) { 52964 for (CodeableConcept e : element.getStatusReason()) 52965 composeCodeableConcept("statusReason", e); 52966 } 52967 if (element.hasCode()) { 52968 composeCodeableConcept("code", element.getCode()); 52969 } 52970 if (element.hasSubject()) { 52971 composeReference("subject", element.getSubject()); 52972 } 52973 if (element.hasEncounter()) { 52974 composeReference("encounter", element.getEncounter()); 52975 } 52976 if (element.hasOccurrence()) { 52977 composeType("occurrence", element.getOccurrence()); 52978 } if (element.hasRecordedElement()) { 52979 composeDateTime("recorded", element.getRecordedElement()); 52980 } 52981 if (element.hasReported()) { 52982 composeType("reported", element.getReported()); 52983 } if (element.hasConsumedItem()) { 52984 for (NutritionIntake.NutritionIntakeConsumedItemComponent e : element.getConsumedItem()) 52985 composeNutritionIntakeConsumedItemComponent("consumedItem", e); 52986 } 52987 if (element.hasIngredientLabel()) { 52988 for (NutritionIntake.NutritionIntakeIngredientLabelComponent e : element.getIngredientLabel()) 52989 composeNutritionIntakeIngredientLabelComponent("ingredientLabel", e); 52990 } 52991 if (element.hasPerformer()) { 52992 for (NutritionIntake.NutritionIntakePerformerComponent e : element.getPerformer()) 52993 composeNutritionIntakePerformerComponent("performer", e); 52994 } 52995 if (element.hasLocation()) { 52996 composeReference("location", element.getLocation()); 52997 } 52998 if (element.hasDerivedFrom()) { 52999 for (Reference e : element.getDerivedFrom()) 53000 composeReference("derivedFrom", e); 53001 } 53002 if (element.hasReason()) { 53003 for (CodeableReference e : element.getReason()) 53004 composeCodeableReference("reason", e); 53005 } 53006 if (element.hasNote()) { 53007 for (Annotation e : element.getNote()) 53008 composeAnnotation("note", e); 53009 } 53010 } 53011 53012 protected void composeNutritionIntakeConsumedItemComponent(String name, NutritionIntake.NutritionIntakeConsumedItemComponent element) throws IOException { 53013 if (element != null) { 53014 composeElementAttributes(element); 53015 xml.enter(FHIR_NS, name); 53016 composeNutritionIntakeConsumedItemComponentElements(element); 53017 composeElementClose(element); 53018 xml.exit(FHIR_NS, name); 53019 } 53020 } 53021 53022 protected void composeNutritionIntakeConsumedItemComponentElements(NutritionIntake.NutritionIntakeConsumedItemComponent element) throws IOException { 53023 composeBackboneElementElements(element); 53024 if (element.hasType()) { 53025 composeCodeableConcept("type", element.getType()); 53026 } 53027 if (element.hasNutritionProduct()) { 53028 composeCodeableReference("nutritionProduct", element.getNutritionProduct()); 53029 } 53030 if (element.hasSchedule()) { 53031 composeTiming("schedule", element.getSchedule()); 53032 } 53033 if (element.hasAmount()) { 53034 composeQuantity("amount", element.getAmount()); 53035 } 53036 if (element.hasRate()) { 53037 composeQuantity("rate", element.getRate()); 53038 } 53039 if (element.hasNotConsumedElement()) { 53040 composeBoolean("notConsumed", element.getNotConsumedElement()); 53041 } 53042 if (element.hasNotConsumedReason()) { 53043 composeCodeableConcept("notConsumedReason", element.getNotConsumedReason()); 53044 } 53045 } 53046 53047 protected void composeNutritionIntakeIngredientLabelComponent(String name, NutritionIntake.NutritionIntakeIngredientLabelComponent element) throws IOException { 53048 if (element != null) { 53049 composeElementAttributes(element); 53050 xml.enter(FHIR_NS, name); 53051 composeNutritionIntakeIngredientLabelComponentElements(element); 53052 composeElementClose(element); 53053 xml.exit(FHIR_NS, name); 53054 } 53055 } 53056 53057 protected void composeNutritionIntakeIngredientLabelComponentElements(NutritionIntake.NutritionIntakeIngredientLabelComponent element) throws IOException { 53058 composeBackboneElementElements(element); 53059 if (element.hasNutrient()) { 53060 composeCodeableReference("nutrient", element.getNutrient()); 53061 } 53062 if (element.hasAmount()) { 53063 composeQuantity("amount", element.getAmount()); 53064 } 53065 } 53066 53067 protected void composeNutritionIntakePerformerComponent(String name, NutritionIntake.NutritionIntakePerformerComponent element) throws IOException { 53068 if (element != null) { 53069 composeElementAttributes(element); 53070 xml.enter(FHIR_NS, name); 53071 composeNutritionIntakePerformerComponentElements(element); 53072 composeElementClose(element); 53073 xml.exit(FHIR_NS, name); 53074 } 53075 } 53076 53077 protected void composeNutritionIntakePerformerComponentElements(NutritionIntake.NutritionIntakePerformerComponent element) throws IOException { 53078 composeBackboneElementElements(element); 53079 if (element.hasFunction()) { 53080 composeCodeableConcept("function", element.getFunction()); 53081 } 53082 if (element.hasActor()) { 53083 composeReference("actor", element.getActor()); 53084 } 53085 } 53086 53087 protected void composeNutritionOrder(String name, NutritionOrder element) throws IOException { 53088 if (element != null) { 53089 composeResourceAttributes(element); 53090 xml.enter(FHIR_NS, name); 53091 composeNutritionOrderElements(element); 53092 composeElementClose(element); 53093 xml.exit(FHIR_NS, name); 53094 } 53095 } 53096 53097 protected void composeNutritionOrderElements(NutritionOrder element) throws IOException { 53098 composeDomainResourceElements(element); 53099 if (element.hasIdentifier()) { 53100 for (Identifier e : element.getIdentifier()) 53101 composeIdentifier("identifier", e); 53102 } 53103 if (element.hasInstantiatesCanonical()) { 53104 for (CanonicalType e : element.getInstantiatesCanonical()) 53105 composeCanonical("instantiatesCanonical", e); 53106 } 53107 if (element.hasInstantiatesUri()) { 53108 for (UriType e : element.getInstantiatesUri()) 53109 composeUri("instantiatesUri", e); 53110 } 53111 if (element.hasInstantiates()) { 53112 for (UriType e : element.getInstantiates()) 53113 composeUri("instantiates", e); 53114 } 53115 if (element.hasBasedOn()) { 53116 for (Reference e : element.getBasedOn()) 53117 composeReference("basedOn", e); 53118 } 53119 if (element.hasGroupIdentifier()) { 53120 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 53121 } 53122 if (element.hasStatusElement()) 53123 composeEnumeration("status", element.getStatusElement(), new Enumerations.RequestStatusEnumFactory()); 53124 if (element.hasIntentElement()) 53125 composeEnumeration("intent", element.getIntentElement(), new Enumerations.RequestIntentEnumFactory()); 53126 if (element.hasPriorityElement()) 53127 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 53128 if (element.hasSubject()) { 53129 composeReference("subject", element.getSubject()); 53130 } 53131 if (element.hasEncounter()) { 53132 composeReference("encounter", element.getEncounter()); 53133 } 53134 if (element.hasSupportingInformation()) { 53135 for (Reference e : element.getSupportingInformation()) 53136 composeReference("supportingInformation", e); 53137 } 53138 if (element.hasDateTimeElement()) { 53139 composeDateTime("dateTime", element.getDateTimeElement()); 53140 } 53141 if (element.hasOrderer()) { 53142 composeReference("orderer", element.getOrderer()); 53143 } 53144 if (element.hasPerformer()) { 53145 for (CodeableReference e : element.getPerformer()) 53146 composeCodeableReference("performer", e); 53147 } 53148 if (element.hasAllergyIntolerance()) { 53149 for (Reference e : element.getAllergyIntolerance()) 53150 composeReference("allergyIntolerance", e); 53151 } 53152 if (element.hasFoodPreferenceModifier()) { 53153 for (CodeableConcept e : element.getFoodPreferenceModifier()) 53154 composeCodeableConcept("foodPreferenceModifier", e); 53155 } 53156 if (element.hasExcludeFoodModifier()) { 53157 for (CodeableConcept e : element.getExcludeFoodModifier()) 53158 composeCodeableConcept("excludeFoodModifier", e); 53159 } 53160 if (element.hasOutsideFoodAllowedElement()) { 53161 composeBoolean("outsideFoodAllowed", element.getOutsideFoodAllowedElement()); 53162 } 53163 if (element.hasOralDiet()) { 53164 composeNutritionOrderOralDietComponent("oralDiet", element.getOralDiet()); 53165 } 53166 if (element.hasSupplement()) { 53167 for (NutritionOrder.NutritionOrderSupplementComponent e : element.getSupplement()) 53168 composeNutritionOrderSupplementComponent("supplement", e); 53169 } 53170 if (element.hasEnteralFormula()) { 53171 composeNutritionOrderEnteralFormulaComponent("enteralFormula", element.getEnteralFormula()); 53172 } 53173 if (element.hasNote()) { 53174 for (Annotation e : element.getNote()) 53175 composeAnnotation("note", e); 53176 } 53177 } 53178 53179 protected void composeNutritionOrderOralDietComponent(String name, NutritionOrder.NutritionOrderOralDietComponent element) throws IOException { 53180 if (element != null) { 53181 composeElementAttributes(element); 53182 xml.enter(FHIR_NS, name); 53183 composeNutritionOrderOralDietComponentElements(element); 53184 composeElementClose(element); 53185 xml.exit(FHIR_NS, name); 53186 } 53187 } 53188 53189 protected void composeNutritionOrderOralDietComponentElements(NutritionOrder.NutritionOrderOralDietComponent element) throws IOException { 53190 composeBackboneElementElements(element); 53191 if (element.hasType()) { 53192 for (CodeableConcept e : element.getType()) 53193 composeCodeableConcept("type", e); 53194 } 53195 if (element.hasSchedule()) { 53196 composeNutritionOrderOralDietScheduleComponent("schedule", element.getSchedule()); 53197 } 53198 if (element.hasNutrient()) { 53199 for (NutritionOrder.NutritionOrderOralDietNutrientComponent e : element.getNutrient()) 53200 composeNutritionOrderOralDietNutrientComponent("nutrient", e); 53201 } 53202 if (element.hasTexture()) { 53203 for (NutritionOrder.NutritionOrderOralDietTextureComponent e : element.getTexture()) 53204 composeNutritionOrderOralDietTextureComponent("texture", e); 53205 } 53206 if (element.hasFluidConsistencyType()) { 53207 for (CodeableConcept e : element.getFluidConsistencyType()) 53208 composeCodeableConcept("fluidConsistencyType", e); 53209 } 53210 if (element.hasInstructionElement()) { 53211 composeString("instruction", element.getInstructionElement()); 53212 } 53213 } 53214 53215 protected void composeNutritionOrderOralDietScheduleComponent(String name, NutritionOrder.OralDietScheduleComponent element) throws IOException { 53216 if (element != null) { 53217 composeElementAttributes(element); 53218 xml.enter(FHIR_NS, name); 53219 composeNutritionOrderOralDietScheduleComponentElements(element); 53220 composeElementClose(element); 53221 xml.exit(FHIR_NS, name); 53222 } 53223 } 53224 53225 protected void composeNutritionOrderOralDietScheduleComponentElements(NutritionOrder.OralDietScheduleComponent element) throws IOException { 53226 composeBackboneElementElements(element); 53227 if (element.hasTiming()) { 53228 for (Timing e : element.getTiming()) 53229 composeTiming("timing", e); 53230 } 53231 if (element.hasAsNeededElement()) { 53232 composeBoolean("asNeeded", element.getAsNeededElement()); 53233 } 53234 if (element.hasAsNeededFor()) { 53235 composeCodeableConcept("asNeededFor", element.getAsNeededFor()); 53236 } 53237 } 53238 53239 protected void composeNutritionOrderOralDietNutrientComponent(String name, NutritionOrder.NutritionOrderOralDietNutrientComponent element) throws IOException { 53240 if (element != null) { 53241 composeElementAttributes(element); 53242 xml.enter(FHIR_NS, name); 53243 composeNutritionOrderOralDietNutrientComponentElements(element); 53244 composeElementClose(element); 53245 xml.exit(FHIR_NS, name); 53246 } 53247 } 53248 53249 protected void composeNutritionOrderOralDietNutrientComponentElements(NutritionOrder.NutritionOrderOralDietNutrientComponent element) throws IOException { 53250 composeBackboneElementElements(element); 53251 if (element.hasModifier()) { 53252 composeCodeableConcept("modifier", element.getModifier()); 53253 } 53254 if (element.hasAmount()) { 53255 composeQuantity("amount", element.getAmount()); 53256 } 53257 } 53258 53259 protected void composeNutritionOrderOralDietTextureComponent(String name, NutritionOrder.NutritionOrderOralDietTextureComponent element) throws IOException { 53260 if (element != null) { 53261 composeElementAttributes(element); 53262 xml.enter(FHIR_NS, name); 53263 composeNutritionOrderOralDietTextureComponentElements(element); 53264 composeElementClose(element); 53265 xml.exit(FHIR_NS, name); 53266 } 53267 } 53268 53269 protected void composeNutritionOrderOralDietTextureComponentElements(NutritionOrder.NutritionOrderOralDietTextureComponent element) throws IOException { 53270 composeBackboneElementElements(element); 53271 if (element.hasModifier()) { 53272 composeCodeableConcept("modifier", element.getModifier()); 53273 } 53274 if (element.hasFoodType()) { 53275 composeCodeableConcept("foodType", element.getFoodType()); 53276 } 53277 } 53278 53279 protected void composeNutritionOrderSupplementComponent(String name, NutritionOrder.NutritionOrderSupplementComponent element) throws IOException { 53280 if (element != null) { 53281 composeElementAttributes(element); 53282 xml.enter(FHIR_NS, name); 53283 composeNutritionOrderSupplementComponentElements(element); 53284 composeElementClose(element); 53285 xml.exit(FHIR_NS, name); 53286 } 53287 } 53288 53289 protected void composeNutritionOrderSupplementComponentElements(NutritionOrder.NutritionOrderSupplementComponent element) throws IOException { 53290 composeBackboneElementElements(element); 53291 if (element.hasType()) { 53292 composeCodeableReference("type", element.getType()); 53293 } 53294 if (element.hasProductNameElement()) { 53295 composeString("productName", element.getProductNameElement()); 53296 } 53297 if (element.hasSchedule()) { 53298 composeNutritionOrderSupplementScheduleComponent("schedule", element.getSchedule()); 53299 } 53300 if (element.hasQuantity()) { 53301 composeQuantity("quantity", element.getQuantity()); 53302 } 53303 if (element.hasInstructionElement()) { 53304 composeString("instruction", element.getInstructionElement()); 53305 } 53306 } 53307 53308 protected void composeNutritionOrderSupplementScheduleComponent(String name, NutritionOrder.SupplementScheduleComponent element) throws IOException { 53309 if (element != null) { 53310 composeElementAttributes(element); 53311 xml.enter(FHIR_NS, name); 53312 composeNutritionOrderSupplementScheduleComponentElements(element); 53313 composeElementClose(element); 53314 xml.exit(FHIR_NS, name); 53315 } 53316 } 53317 53318 protected void composeNutritionOrderSupplementScheduleComponentElements(NutritionOrder.SupplementScheduleComponent element) throws IOException { 53319 composeBackboneElementElements(element); 53320 if (element.hasTiming()) { 53321 for (Timing e : element.getTiming()) 53322 composeTiming("timing", e); 53323 } 53324 if (element.hasAsNeededElement()) { 53325 composeBoolean("asNeeded", element.getAsNeededElement()); 53326 } 53327 if (element.hasAsNeededFor()) { 53328 composeCodeableConcept("asNeededFor", element.getAsNeededFor()); 53329 } 53330 } 53331 53332 protected void composeNutritionOrderEnteralFormulaComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaComponent element) throws IOException { 53333 if (element != null) { 53334 composeElementAttributes(element); 53335 xml.enter(FHIR_NS, name); 53336 composeNutritionOrderEnteralFormulaComponentElements(element); 53337 composeElementClose(element); 53338 xml.exit(FHIR_NS, name); 53339 } 53340 } 53341 53342 protected void composeNutritionOrderEnteralFormulaComponentElements(NutritionOrder.NutritionOrderEnteralFormulaComponent element) throws IOException { 53343 composeBackboneElementElements(element); 53344 if (element.hasBaseFormulaType()) { 53345 composeCodeableReference("baseFormulaType", element.getBaseFormulaType()); 53346 } 53347 if (element.hasBaseFormulaProductNameElement()) { 53348 composeString("baseFormulaProductName", element.getBaseFormulaProductNameElement()); 53349 } 53350 if (element.hasDeliveryDevice()) { 53351 for (CodeableReference e : element.getDeliveryDevice()) 53352 composeCodeableReference("deliveryDevice", e); 53353 } 53354 if (element.hasAdditive()) { 53355 for (NutritionOrder.NutritionOrderEnteralFormulaAdditiveComponent e : element.getAdditive()) 53356 composeNutritionOrderEnteralFormulaAdditiveComponent("additive", e); 53357 } 53358 if (element.hasCaloricDensity()) { 53359 composeQuantity("caloricDensity", element.getCaloricDensity()); 53360 } 53361 if (element.hasRouteOfAdministration()) { 53362 composeCodeableConcept("routeOfAdministration", element.getRouteOfAdministration()); 53363 } 53364 if (element.hasAdministration()) { 53365 for (NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent e : element.getAdministration()) 53366 composeNutritionOrderEnteralFormulaAdministrationComponent("administration", e); 53367 } 53368 if (element.hasMaxVolumeToDeliver()) { 53369 composeQuantity("maxVolumeToDeliver", element.getMaxVolumeToDeliver()); 53370 } 53371 if (element.hasAdministrationInstructionElement()) { 53372 composeMarkdown("administrationInstruction", element.getAdministrationInstructionElement()); 53373 } 53374 } 53375 53376 protected void composeNutritionOrderEnteralFormulaAdditiveComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaAdditiveComponent element) throws IOException { 53377 if (element != null) { 53378 composeElementAttributes(element); 53379 xml.enter(FHIR_NS, name); 53380 composeNutritionOrderEnteralFormulaAdditiveComponentElements(element); 53381 composeElementClose(element); 53382 xml.exit(FHIR_NS, name); 53383 } 53384 } 53385 53386 protected void composeNutritionOrderEnteralFormulaAdditiveComponentElements(NutritionOrder.NutritionOrderEnteralFormulaAdditiveComponent element) throws IOException { 53387 composeBackboneElementElements(element); 53388 if (element.hasType()) { 53389 composeCodeableReference("type", element.getType()); 53390 } 53391 if (element.hasProductNameElement()) { 53392 composeString("productName", element.getProductNameElement()); 53393 } 53394 if (element.hasQuantity()) { 53395 composeQuantity("quantity", element.getQuantity()); 53396 } 53397 } 53398 53399 protected void composeNutritionOrderEnteralFormulaAdministrationComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element) throws IOException { 53400 if (element != null) { 53401 composeElementAttributes(element); 53402 xml.enter(FHIR_NS, name); 53403 composeNutritionOrderEnteralFormulaAdministrationComponentElements(element); 53404 composeElementClose(element); 53405 xml.exit(FHIR_NS, name); 53406 } 53407 } 53408 53409 protected void composeNutritionOrderEnteralFormulaAdministrationComponentElements(NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element) throws IOException { 53410 composeBackboneElementElements(element); 53411 if (element.hasSchedule()) { 53412 composeNutritionOrderEnteralFormulaScheduleComponent("schedule", element.getSchedule()); 53413 } 53414 if (element.hasQuantity()) { 53415 composeQuantity("quantity", element.getQuantity()); 53416 } 53417 if (element.hasRate()) { 53418 composeType("rate", element.getRate()); 53419 } } 53420 53421 protected void composeNutritionOrderEnteralFormulaScheduleComponent(String name, NutritionOrder.EnteralFormulaScheduleComponent element) throws IOException { 53422 if (element != null) { 53423 composeElementAttributes(element); 53424 xml.enter(FHIR_NS, name); 53425 composeNutritionOrderEnteralFormulaScheduleComponentElements(element); 53426 composeElementClose(element); 53427 xml.exit(FHIR_NS, name); 53428 } 53429 } 53430 53431 protected void composeNutritionOrderEnteralFormulaScheduleComponentElements(NutritionOrder.EnteralFormulaScheduleComponent element) throws IOException { 53432 composeBackboneElementElements(element); 53433 if (element.hasTiming()) { 53434 for (Timing e : element.getTiming()) 53435 composeTiming("timing", e); 53436 } 53437 if (element.hasAsNeededElement()) { 53438 composeBoolean("asNeeded", element.getAsNeededElement()); 53439 } 53440 if (element.hasAsNeededFor()) { 53441 composeCodeableConcept("asNeededFor", element.getAsNeededFor()); 53442 } 53443 } 53444 53445 protected void composeNutritionProduct(String name, NutritionProduct element) throws IOException { 53446 if (element != null) { 53447 composeResourceAttributes(element); 53448 xml.enter(FHIR_NS, name); 53449 composeNutritionProductElements(element); 53450 composeElementClose(element); 53451 xml.exit(FHIR_NS, name); 53452 } 53453 } 53454 53455 protected void composeNutritionProductElements(NutritionProduct element) throws IOException { 53456 composeDomainResourceElements(element); 53457 if (element.hasCode()) { 53458 composeCodeableConcept("code", element.getCode()); 53459 } 53460 if (element.hasStatusElement()) 53461 composeEnumeration("status", element.getStatusElement(), new NutritionProduct.NutritionProductStatusEnumFactory()); 53462 if (element.hasCategory()) { 53463 for (CodeableConcept e : element.getCategory()) 53464 composeCodeableConcept("category", e); 53465 } 53466 if (element.hasManufacturer()) { 53467 for (Reference e : element.getManufacturer()) 53468 composeReference("manufacturer", e); 53469 } 53470 if (element.hasNutrient()) { 53471 for (NutritionProduct.NutritionProductNutrientComponent e : element.getNutrient()) 53472 composeNutritionProductNutrientComponent("nutrient", e); 53473 } 53474 if (element.hasIngredient()) { 53475 for (NutritionProduct.NutritionProductIngredientComponent e : element.getIngredient()) 53476 composeNutritionProductIngredientComponent("ingredient", e); 53477 } 53478 if (element.hasKnownAllergen()) { 53479 for (CodeableReference e : element.getKnownAllergen()) 53480 composeCodeableReference("knownAllergen", e); 53481 } 53482 if (element.hasCharacteristic()) { 53483 for (NutritionProduct.NutritionProductCharacteristicComponent e : element.getCharacteristic()) 53484 composeNutritionProductCharacteristicComponent("characteristic", e); 53485 } 53486 if (element.hasInstance()) { 53487 for (NutritionProduct.NutritionProductInstanceComponent e : element.getInstance()) 53488 composeNutritionProductInstanceComponent("instance", e); 53489 } 53490 if (element.hasNote()) { 53491 for (Annotation e : element.getNote()) 53492 composeAnnotation("note", e); 53493 } 53494 } 53495 53496 protected void composeNutritionProductNutrientComponent(String name, NutritionProduct.NutritionProductNutrientComponent element) throws IOException { 53497 if (element != null) { 53498 composeElementAttributes(element); 53499 xml.enter(FHIR_NS, name); 53500 composeNutritionProductNutrientComponentElements(element); 53501 composeElementClose(element); 53502 xml.exit(FHIR_NS, name); 53503 } 53504 } 53505 53506 protected void composeNutritionProductNutrientComponentElements(NutritionProduct.NutritionProductNutrientComponent element) throws IOException { 53507 composeBackboneElementElements(element); 53508 if (element.hasItem()) { 53509 composeCodeableReference("item", element.getItem()); 53510 } 53511 if (element.hasAmount()) { 53512 for (Ratio e : element.getAmount()) 53513 composeRatio("amount", e); 53514 } 53515 } 53516 53517 protected void composeNutritionProductIngredientComponent(String name, NutritionProduct.NutritionProductIngredientComponent element) throws IOException { 53518 if (element != null) { 53519 composeElementAttributes(element); 53520 xml.enter(FHIR_NS, name); 53521 composeNutritionProductIngredientComponentElements(element); 53522 composeElementClose(element); 53523 xml.exit(FHIR_NS, name); 53524 } 53525 } 53526 53527 protected void composeNutritionProductIngredientComponentElements(NutritionProduct.NutritionProductIngredientComponent element) throws IOException { 53528 composeBackboneElementElements(element); 53529 if (element.hasItem()) { 53530 composeCodeableReference("item", element.getItem()); 53531 } 53532 if (element.hasAmount()) { 53533 for (Ratio e : element.getAmount()) 53534 composeRatio("amount", e); 53535 } 53536 } 53537 53538 protected void composeNutritionProductCharacteristicComponent(String name, NutritionProduct.NutritionProductCharacteristicComponent element) throws IOException { 53539 if (element != null) { 53540 composeElementAttributes(element); 53541 xml.enter(FHIR_NS, name); 53542 composeNutritionProductCharacteristicComponentElements(element); 53543 composeElementClose(element); 53544 xml.exit(FHIR_NS, name); 53545 } 53546 } 53547 53548 protected void composeNutritionProductCharacteristicComponentElements(NutritionProduct.NutritionProductCharacteristicComponent element) throws IOException { 53549 composeBackboneElementElements(element); 53550 if (element.hasType()) { 53551 composeCodeableConcept("type", element.getType()); 53552 } 53553 if (element.hasValue()) { 53554 composeType("value", element.getValue()); 53555 } } 53556 53557 protected void composeNutritionProductInstanceComponent(String name, NutritionProduct.NutritionProductInstanceComponent element) throws IOException { 53558 if (element != null) { 53559 composeElementAttributes(element); 53560 xml.enter(FHIR_NS, name); 53561 composeNutritionProductInstanceComponentElements(element); 53562 composeElementClose(element); 53563 xml.exit(FHIR_NS, name); 53564 } 53565 } 53566 53567 protected void composeNutritionProductInstanceComponentElements(NutritionProduct.NutritionProductInstanceComponent element) throws IOException { 53568 composeBackboneElementElements(element); 53569 if (element.hasQuantity()) { 53570 composeQuantity("quantity", element.getQuantity()); 53571 } 53572 if (element.hasIdentifier()) { 53573 for (Identifier e : element.getIdentifier()) 53574 composeIdentifier("identifier", e); 53575 } 53576 if (element.hasNameElement()) { 53577 composeString("name", element.getNameElement()); 53578 } 53579 if (element.hasLotNumberElement()) { 53580 composeString("lotNumber", element.getLotNumberElement()); 53581 } 53582 if (element.hasExpiryElement()) { 53583 composeDateTime("expiry", element.getExpiryElement()); 53584 } 53585 if (element.hasUseByElement()) { 53586 composeDateTime("useBy", element.getUseByElement()); 53587 } 53588 if (element.hasBiologicalSourceEvent()) { 53589 composeIdentifier("biologicalSourceEvent", element.getBiologicalSourceEvent()); 53590 } 53591 } 53592 53593 protected void composeObservation(String name, Observation element) throws IOException { 53594 if (element != null) { 53595 composeResourceAttributes(element); 53596 xml.enter(FHIR_NS, name); 53597 composeObservationElements(element); 53598 composeElementClose(element); 53599 xml.exit(FHIR_NS, name); 53600 } 53601 } 53602 53603 protected void composeObservationElements(Observation element) throws IOException { 53604 composeDomainResourceElements(element); 53605 if (element.hasIdentifier()) { 53606 for (Identifier e : element.getIdentifier()) 53607 composeIdentifier("identifier", e); 53608 } 53609 if (element.hasInstantiates()) { 53610 composeType("instantiates", element.getInstantiates()); 53611 } if (element.hasBasedOn()) { 53612 for (Reference e : element.getBasedOn()) 53613 composeReference("basedOn", e); 53614 } 53615 if (element.hasTriggeredBy()) { 53616 for (Observation.ObservationTriggeredByComponent e : element.getTriggeredBy()) 53617 composeObservationTriggeredByComponent("triggeredBy", e); 53618 } 53619 if (element.hasPartOf()) { 53620 for (Reference e : element.getPartOf()) 53621 composeReference("partOf", e); 53622 } 53623 if (element.hasStatusElement()) 53624 composeEnumeration("status", element.getStatusElement(), new Enumerations.ObservationStatusEnumFactory()); 53625 if (element.hasCategory()) { 53626 for (CodeableConcept e : element.getCategory()) 53627 composeCodeableConcept("category", e); 53628 } 53629 if (element.hasCode()) { 53630 composeCodeableConcept("code", element.getCode()); 53631 } 53632 if (element.hasSubject()) { 53633 composeReference("subject", element.getSubject()); 53634 } 53635 if (element.hasFocus()) { 53636 for (Reference e : element.getFocus()) 53637 composeReference("focus", e); 53638 } 53639 if (element.hasEncounter()) { 53640 composeReference("encounter", element.getEncounter()); 53641 } 53642 if (element.hasEffective()) { 53643 composeType("effective", element.getEffective()); 53644 } if (element.hasIssuedElement()) { 53645 composeInstant("issued", element.getIssuedElement()); 53646 } 53647 if (element.hasPerformer()) { 53648 for (Reference e : element.getPerformer()) 53649 composeReference("performer", e); 53650 } 53651 if (element.hasValue()) { 53652 composeType("value", element.getValue()); 53653 } if (element.hasDataAbsentReason()) { 53654 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 53655 } 53656 if (element.hasInterpretation()) { 53657 for (CodeableConcept e : element.getInterpretation()) 53658 composeCodeableConcept("interpretation", e); 53659 } 53660 if (element.hasNote()) { 53661 for (Annotation e : element.getNote()) 53662 composeAnnotation("note", e); 53663 } 53664 if (element.hasBodySite()) { 53665 composeCodeableConcept("bodySite", element.getBodySite()); 53666 } 53667 if (element.hasBodyStructure()) { 53668 composeReference("bodyStructure", element.getBodyStructure()); 53669 } 53670 if (element.hasMethod()) { 53671 composeCodeableConcept("method", element.getMethod()); 53672 } 53673 if (element.hasSpecimen()) { 53674 composeReference("specimen", element.getSpecimen()); 53675 } 53676 if (element.hasDevice()) { 53677 composeReference("device", element.getDevice()); 53678 } 53679 if (element.hasReferenceRange()) { 53680 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 53681 composeObservationReferenceRangeComponent("referenceRange", e); 53682 } 53683 if (element.hasHasMember()) { 53684 for (Reference e : element.getHasMember()) 53685 composeReference("hasMember", e); 53686 } 53687 if (element.hasDerivedFrom()) { 53688 for (Reference e : element.getDerivedFrom()) 53689 composeReference("derivedFrom", e); 53690 } 53691 if (element.hasComponent()) { 53692 for (Observation.ObservationComponentComponent e : element.getComponent()) 53693 composeObservationComponentComponent("component", e); 53694 } 53695 } 53696 53697 protected void composeObservationTriggeredByComponent(String name, Observation.ObservationTriggeredByComponent element) throws IOException { 53698 if (element != null) { 53699 composeElementAttributes(element); 53700 xml.enter(FHIR_NS, name); 53701 composeObservationTriggeredByComponentElements(element); 53702 composeElementClose(element); 53703 xml.exit(FHIR_NS, name); 53704 } 53705 } 53706 53707 protected void composeObservationTriggeredByComponentElements(Observation.ObservationTriggeredByComponent element) throws IOException { 53708 composeBackboneElementElements(element); 53709 if (element.hasObservation()) { 53710 composeReference("observation", element.getObservation()); 53711 } 53712 if (element.hasTypeElement()) 53713 composeEnumeration("type", element.getTypeElement(), new Observation.TriggeredBytypeEnumFactory()); 53714 if (element.hasReasonElement()) { 53715 composeString("reason", element.getReasonElement()); 53716 } 53717 } 53718 53719 protected void composeObservationReferenceRangeComponent(String name, Observation.ObservationReferenceRangeComponent element) throws IOException { 53720 if (element != null) { 53721 composeElementAttributes(element); 53722 xml.enter(FHIR_NS, name); 53723 composeObservationReferenceRangeComponentElements(element); 53724 composeElementClose(element); 53725 xml.exit(FHIR_NS, name); 53726 } 53727 } 53728 53729 protected void composeObservationReferenceRangeComponentElements(Observation.ObservationReferenceRangeComponent element) throws IOException { 53730 composeBackboneElementElements(element); 53731 if (element.hasLow()) { 53732 composeQuantity("low", element.getLow()); 53733 } 53734 if (element.hasHigh()) { 53735 composeQuantity("high", element.getHigh()); 53736 } 53737 if (element.hasNormalValue()) { 53738 composeCodeableConcept("normalValue", element.getNormalValue()); 53739 } 53740 if (element.hasType()) { 53741 composeCodeableConcept("type", element.getType()); 53742 } 53743 if (element.hasAppliesTo()) { 53744 for (CodeableConcept e : element.getAppliesTo()) 53745 composeCodeableConcept("appliesTo", e); 53746 } 53747 if (element.hasAge()) { 53748 composeRange("age", element.getAge()); 53749 } 53750 if (element.hasTextElement()) { 53751 composeMarkdown("text", element.getTextElement()); 53752 } 53753 } 53754 53755 protected void composeObservationComponentComponent(String name, Observation.ObservationComponentComponent element) throws IOException { 53756 if (element != null) { 53757 composeElementAttributes(element); 53758 xml.enter(FHIR_NS, name); 53759 composeObservationComponentComponentElements(element); 53760 composeElementClose(element); 53761 xml.exit(FHIR_NS, name); 53762 } 53763 } 53764 53765 protected void composeObservationComponentComponentElements(Observation.ObservationComponentComponent element) throws IOException { 53766 composeBackboneElementElements(element); 53767 if (element.hasCode()) { 53768 composeCodeableConcept("code", element.getCode()); 53769 } 53770 if (element.hasValue()) { 53771 composeType("value", element.getValue()); 53772 } if (element.hasDataAbsentReason()) { 53773 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 53774 } 53775 if (element.hasInterpretation()) { 53776 for (CodeableConcept e : element.getInterpretation()) 53777 composeCodeableConcept("interpretation", e); 53778 } 53779 if (element.hasReferenceRange()) { 53780 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 53781 composeObservationReferenceRangeComponent("referenceRange", e); 53782 } 53783 } 53784 53785 protected void composeObservationDefinition(String name, ObservationDefinition element) throws IOException { 53786 if (element != null) { 53787 composeResourceAttributes(element); 53788 xml.enter(FHIR_NS, name); 53789 composeObservationDefinitionElements(element); 53790 composeElementClose(element); 53791 xml.exit(FHIR_NS, name); 53792 } 53793 } 53794 53795 protected void composeObservationDefinitionElements(ObservationDefinition element) throws IOException { 53796 composeDomainResourceElements(element); 53797 if (element.hasUrlElement()) { 53798 composeUri("url", element.getUrlElement()); 53799 } 53800 if (element.hasIdentifier()) { 53801 composeIdentifier("identifier", element.getIdentifier()); 53802 } 53803 if (element.hasVersionElement()) { 53804 composeString("version", element.getVersionElement()); 53805 } 53806 if (element.hasVersionAlgorithm()) { 53807 composeType("versionAlgorithm", element.getVersionAlgorithm()); 53808 } if (element.hasNameElement()) { 53809 composeString("name", element.getNameElement()); 53810 } 53811 if (element.hasTitleElement()) { 53812 composeString("title", element.getTitleElement()); 53813 } 53814 if (element.hasStatusElement()) 53815 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 53816 if (element.hasExperimentalElement()) { 53817 composeBoolean("experimental", element.getExperimentalElement()); 53818 } 53819 if (element.hasDateElement()) { 53820 composeDateTime("date", element.getDateElement()); 53821 } 53822 if (element.hasPublisherElement()) { 53823 composeString("publisher", element.getPublisherElement()); 53824 } 53825 if (element.hasContact()) { 53826 for (ContactDetail e : element.getContact()) 53827 composeContactDetail("contact", e); 53828 } 53829 if (element.hasDescriptionElement()) { 53830 composeMarkdown("description", element.getDescriptionElement()); 53831 } 53832 if (element.hasUseContext()) { 53833 for (UsageContext e : element.getUseContext()) 53834 composeUsageContext("useContext", e); 53835 } 53836 if (element.hasJurisdiction()) { 53837 for (CodeableConcept e : element.getJurisdiction()) 53838 composeCodeableConcept("jurisdiction", e); 53839 } 53840 if (element.hasPurposeElement()) { 53841 composeMarkdown("purpose", element.getPurposeElement()); 53842 } 53843 if (element.hasCopyrightElement()) { 53844 composeMarkdown("copyright", element.getCopyrightElement()); 53845 } 53846 if (element.hasCopyrightLabelElement()) { 53847 composeString("copyrightLabel", element.getCopyrightLabelElement()); 53848 } 53849 if (element.hasApprovalDateElement()) { 53850 composeDate("approvalDate", element.getApprovalDateElement()); 53851 } 53852 if (element.hasLastReviewDateElement()) { 53853 composeDate("lastReviewDate", element.getLastReviewDateElement()); 53854 } 53855 if (element.hasEffectivePeriod()) { 53856 composePeriod("effectivePeriod", element.getEffectivePeriod()); 53857 } 53858 if (element.hasDerivedFromCanonical()) { 53859 for (CanonicalType e : element.getDerivedFromCanonical()) 53860 composeCanonical("derivedFromCanonical", e); 53861 } 53862 if (element.hasDerivedFromUri()) { 53863 for (UriType e : element.getDerivedFromUri()) 53864 composeUri("derivedFromUri", e); 53865 } 53866 if (element.hasSubject()) { 53867 for (CodeableConcept e : element.getSubject()) 53868 composeCodeableConcept("subject", e); 53869 } 53870 if (element.hasPerformerType()) { 53871 composeCodeableConcept("performerType", element.getPerformerType()); 53872 } 53873 if (element.hasCategory()) { 53874 for (CodeableConcept e : element.getCategory()) 53875 composeCodeableConcept("category", e); 53876 } 53877 if (element.hasCode()) { 53878 composeCodeableConcept("code", element.getCode()); 53879 } 53880 if (element.hasPermittedDataType()) 53881 for (Enumeration<ObservationDefinition.ObservationDataType> e : element.getPermittedDataType()) 53882 composeEnumeration("permittedDataType", e, new ObservationDefinition.ObservationDataTypeEnumFactory()); 53883 if (element.hasMultipleResultsAllowedElement()) { 53884 composeBoolean("multipleResultsAllowed", element.getMultipleResultsAllowedElement()); 53885 } 53886 if (element.hasBodySite()) { 53887 composeCodeableConcept("bodySite", element.getBodySite()); 53888 } 53889 if (element.hasMethod()) { 53890 composeCodeableConcept("method", element.getMethod()); 53891 } 53892 if (element.hasSpecimen()) { 53893 for (Reference e : element.getSpecimen()) 53894 composeReference("specimen", e); 53895 } 53896 if (element.hasDevice()) { 53897 for (Reference e : element.getDevice()) 53898 composeReference("device", e); 53899 } 53900 if (element.hasPreferredReportNameElement()) { 53901 composeString("preferredReportName", element.getPreferredReportNameElement()); 53902 } 53903 if (element.hasPermittedUnit()) { 53904 for (Coding e : element.getPermittedUnit()) 53905 composeCoding("permittedUnit", e); 53906 } 53907 if (element.hasQualifiedValue()) { 53908 for (ObservationDefinition.ObservationDefinitionQualifiedValueComponent e : element.getQualifiedValue()) 53909 composeObservationDefinitionQualifiedValueComponent("qualifiedValue", e); 53910 } 53911 if (element.hasHasMember()) { 53912 for (Reference e : element.getHasMember()) 53913 composeReference("hasMember", e); 53914 } 53915 if (element.hasComponent()) { 53916 for (ObservationDefinition.ObservationDefinitionComponentComponent e : element.getComponent()) 53917 composeObservationDefinitionComponentComponent("component", e); 53918 } 53919 } 53920 53921 protected void composeObservationDefinitionQualifiedValueComponent(String name, ObservationDefinition.ObservationDefinitionQualifiedValueComponent element) throws IOException { 53922 if (element != null) { 53923 composeElementAttributes(element); 53924 xml.enter(FHIR_NS, name); 53925 composeObservationDefinitionQualifiedValueComponentElements(element); 53926 composeElementClose(element); 53927 xml.exit(FHIR_NS, name); 53928 } 53929 } 53930 53931 protected void composeObservationDefinitionQualifiedValueComponentElements(ObservationDefinition.ObservationDefinitionQualifiedValueComponent element) throws IOException { 53932 composeBackboneElementElements(element); 53933 if (element.hasContext()) { 53934 composeCodeableConcept("context", element.getContext()); 53935 } 53936 if (element.hasAppliesTo()) { 53937 for (CodeableConcept e : element.getAppliesTo()) 53938 composeCodeableConcept("appliesTo", e); 53939 } 53940 if (element.hasGenderElement()) 53941 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 53942 if (element.hasAge()) { 53943 composeRange("age", element.getAge()); 53944 } 53945 if (element.hasGestationalAge()) { 53946 composeRange("gestationalAge", element.getGestationalAge()); 53947 } 53948 if (element.hasConditionElement()) { 53949 composeString("condition", element.getConditionElement()); 53950 } 53951 if (element.hasRangeCategoryElement()) 53952 composeEnumeration("rangeCategory", element.getRangeCategoryElement(), new ObservationDefinition.ObservationRangeCategoryEnumFactory()); 53953 if (element.hasRange()) { 53954 composeRange("range", element.getRange()); 53955 } 53956 if (element.hasValidCodedValueSetElement()) { 53957 composeCanonical("validCodedValueSet", element.getValidCodedValueSetElement()); 53958 } 53959 if (element.hasNormalCodedValueSetElement()) { 53960 composeCanonical("normalCodedValueSet", element.getNormalCodedValueSetElement()); 53961 } 53962 if (element.hasAbnormalCodedValueSetElement()) { 53963 composeCanonical("abnormalCodedValueSet", element.getAbnormalCodedValueSetElement()); 53964 } 53965 if (element.hasCriticalCodedValueSetElement()) { 53966 composeCanonical("criticalCodedValueSet", element.getCriticalCodedValueSetElement()); 53967 } 53968 } 53969 53970 protected void composeObservationDefinitionComponentComponent(String name, ObservationDefinition.ObservationDefinitionComponentComponent element) throws IOException { 53971 if (element != null) { 53972 composeElementAttributes(element); 53973 xml.enter(FHIR_NS, name); 53974 composeObservationDefinitionComponentComponentElements(element); 53975 composeElementClose(element); 53976 xml.exit(FHIR_NS, name); 53977 } 53978 } 53979 53980 protected void composeObservationDefinitionComponentComponentElements(ObservationDefinition.ObservationDefinitionComponentComponent element) throws IOException { 53981 composeBackboneElementElements(element); 53982 if (element.hasCode()) { 53983 composeCodeableConcept("code", element.getCode()); 53984 } 53985 if (element.hasPermittedDataType()) 53986 for (Enumeration<ObservationDefinition.ObservationDataType> e : element.getPermittedDataType()) 53987 composeEnumeration("permittedDataType", e, new ObservationDefinition.ObservationDataTypeEnumFactory()); 53988 if (element.hasPermittedUnit()) { 53989 for (Coding e : element.getPermittedUnit()) 53990 composeCoding("permittedUnit", e); 53991 } 53992 if (element.hasQualifiedValue()) { 53993 for (ObservationDefinition.ObservationDefinitionQualifiedValueComponent e : element.getQualifiedValue()) 53994 composeObservationDefinitionQualifiedValueComponent("qualifiedValue", e); 53995 } 53996 } 53997 53998 protected void composeOperationDefinition(String name, OperationDefinition element) throws IOException { 53999 if (element != null) { 54000 composeResourceAttributes(element); 54001 xml.enter(FHIR_NS, name); 54002 composeOperationDefinitionElements(element); 54003 composeElementClose(element); 54004 xml.exit(FHIR_NS, name); 54005 } 54006 } 54007 54008 protected void composeOperationDefinitionElements(OperationDefinition element) throws IOException { 54009 composeCanonicalResourceElements(element); 54010 if (element.hasUrlElement()) { 54011 composeUri("url", element.getUrlElement()); 54012 } 54013 if (element.hasIdentifier()) { 54014 for (Identifier e : element.getIdentifier()) 54015 composeIdentifier("identifier", e); 54016 } 54017 if (element.hasVersionElement()) { 54018 composeString("version", element.getVersionElement()); 54019 } 54020 if (element.hasVersionAlgorithm()) { 54021 composeType("versionAlgorithm", element.getVersionAlgorithm()); 54022 } if (element.hasNameElement()) { 54023 composeString("name", element.getNameElement()); 54024 } 54025 if (element.hasTitleElement()) { 54026 composeString("title", element.getTitleElement()); 54027 } 54028 if (element.hasStatusElement()) 54029 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 54030 if (element.hasKindElement()) 54031 composeEnumeration("kind", element.getKindElement(), new OperationDefinition.OperationKindEnumFactory()); 54032 if (element.hasExperimentalElement()) { 54033 composeBoolean("experimental", element.getExperimentalElement()); 54034 } 54035 if (element.hasDateElement()) { 54036 composeDateTime("date", element.getDateElement()); 54037 } 54038 if (element.hasPublisherElement()) { 54039 composeString("publisher", element.getPublisherElement()); 54040 } 54041 if (element.hasContact()) { 54042 for (ContactDetail e : element.getContact()) 54043 composeContactDetail("contact", e); 54044 } 54045 if (element.hasDescriptionElement()) { 54046 composeMarkdown("description", element.getDescriptionElement()); 54047 } 54048 if (element.hasUseContext()) { 54049 for (UsageContext e : element.getUseContext()) 54050 composeUsageContext("useContext", e); 54051 } 54052 if (element.hasJurisdiction()) { 54053 for (CodeableConcept e : element.getJurisdiction()) 54054 composeCodeableConcept("jurisdiction", e); 54055 } 54056 if (element.hasPurposeElement()) { 54057 composeMarkdown("purpose", element.getPurposeElement()); 54058 } 54059 if (element.hasCopyrightElement()) { 54060 composeMarkdown("copyright", element.getCopyrightElement()); 54061 } 54062 if (element.hasCopyrightLabelElement()) { 54063 composeString("copyrightLabel", element.getCopyrightLabelElement()); 54064 } 54065 if (element.hasAffectsStateElement()) { 54066 composeBoolean("affectsState", element.getAffectsStateElement()); 54067 } 54068 if (element.hasCodeElement()) { 54069 composeCode("code", element.getCodeElement()); 54070 } 54071 if (element.hasCommentElement()) { 54072 composeMarkdown("comment", element.getCommentElement()); 54073 } 54074 if (element.hasBaseElement()) { 54075 composeCanonical("base", element.getBaseElement()); 54076 } 54077 if (element.hasResource()) 54078 for (Enumeration<Enumerations.VersionIndependentResourceTypesAll> e : element.getResource()) 54079 composeEnumeration("resource", e, new Enumerations.VersionIndependentResourceTypesAllEnumFactory()); 54080 if (element.hasSystemElement()) { 54081 composeBoolean("system", element.getSystemElement()); 54082 } 54083 if (element.hasTypeElement()) { 54084 composeBoolean("type", element.getTypeElement()); 54085 } 54086 if (element.hasInstanceElement()) { 54087 composeBoolean("instance", element.getInstanceElement()); 54088 } 54089 if (element.hasInputProfileElement()) { 54090 composeCanonical("inputProfile", element.getInputProfileElement()); 54091 } 54092 if (element.hasOutputProfileElement()) { 54093 composeCanonical("outputProfile", element.getOutputProfileElement()); 54094 } 54095 if (element.hasParameter()) { 54096 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getParameter()) 54097 composeOperationDefinitionParameterComponent("parameter", e); 54098 } 54099 if (element.hasOverload()) { 54100 for (OperationDefinition.OperationDefinitionOverloadComponent e : element.getOverload()) 54101 composeOperationDefinitionOverloadComponent("overload", e); 54102 } 54103 } 54104 54105 protected void composeOperationDefinitionParameterComponent(String name, OperationDefinition.OperationDefinitionParameterComponent element) throws IOException { 54106 if (element != null) { 54107 composeElementAttributes(element); 54108 xml.enter(FHIR_NS, name); 54109 composeOperationDefinitionParameterComponentElements(element); 54110 composeElementClose(element); 54111 xml.exit(FHIR_NS, name); 54112 } 54113 } 54114 54115 protected void composeOperationDefinitionParameterComponentElements(OperationDefinition.OperationDefinitionParameterComponent element) throws IOException { 54116 composeBackboneElementElements(element); 54117 if (element.hasNameElement()) { 54118 composeCode("name", element.getNameElement()); 54119 } 54120 if (element.hasUseElement()) 54121 composeEnumeration("use", element.getUseElement(), new Enumerations.OperationParameterUseEnumFactory()); 54122 if (element.hasScope()) 54123 for (Enumeration<OperationDefinition.OperationParameterScope> e : element.getScope()) 54124 composeEnumeration("scope", e, new OperationDefinition.OperationParameterScopeEnumFactory()); 54125 if (element.hasMinElement()) { 54126 composeInteger("min", element.getMinElement()); 54127 } 54128 if (element.hasMaxElement()) { 54129 composeString("max", element.getMaxElement()); 54130 } 54131 if (element.hasDocumentationElement()) { 54132 composeMarkdown("documentation", element.getDocumentationElement()); 54133 } 54134 if (element.hasTypeElement()) 54135 composeEnumeration("type", element.getTypeElement(), new Enumerations.FHIRTypesEnumFactory()); 54136 if (element.hasAllowedType()) 54137 for (Enumeration<Enumerations.FHIRTypes> e : element.getAllowedType()) 54138 composeEnumeration("allowedType", e, new Enumerations.FHIRTypesEnumFactory()); 54139 if (element.hasTargetProfile()) { 54140 for (CanonicalType e : element.getTargetProfile()) 54141 composeCanonical("targetProfile", e); 54142 } 54143 if (element.hasSearchTypeElement()) 54144 composeEnumeration("searchType", element.getSearchTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 54145 if (element.hasBinding()) { 54146 composeOperationDefinitionParameterBindingComponent("binding", element.getBinding()); 54147 } 54148 if (element.hasReferencedFrom()) { 54149 for (OperationDefinition.OperationDefinitionParameterReferencedFromComponent e : element.getReferencedFrom()) 54150 composeOperationDefinitionParameterReferencedFromComponent("referencedFrom", e); 54151 } 54152 if (element.hasPart()) { 54153 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getPart()) 54154 composeOperationDefinitionParameterComponent("part", e); 54155 } 54156 } 54157 54158 protected void composeOperationDefinitionParameterBindingComponent(String name, OperationDefinition.OperationDefinitionParameterBindingComponent element) throws IOException { 54159 if (element != null) { 54160 composeElementAttributes(element); 54161 xml.enter(FHIR_NS, name); 54162 composeOperationDefinitionParameterBindingComponentElements(element); 54163 composeElementClose(element); 54164 xml.exit(FHIR_NS, name); 54165 } 54166 } 54167 54168 protected void composeOperationDefinitionParameterBindingComponentElements(OperationDefinition.OperationDefinitionParameterBindingComponent element) throws IOException { 54169 composeBackboneElementElements(element); 54170 if (element.hasStrengthElement()) 54171 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 54172 if (element.hasValueSetElement()) { 54173 composeCanonical("valueSet", element.getValueSetElement()); 54174 } 54175 } 54176 54177 protected void composeOperationDefinitionParameterReferencedFromComponent(String name, OperationDefinition.OperationDefinitionParameterReferencedFromComponent element) throws IOException { 54178 if (element != null) { 54179 composeElementAttributes(element); 54180 xml.enter(FHIR_NS, name); 54181 composeOperationDefinitionParameterReferencedFromComponentElements(element); 54182 composeElementClose(element); 54183 xml.exit(FHIR_NS, name); 54184 } 54185 } 54186 54187 protected void composeOperationDefinitionParameterReferencedFromComponentElements(OperationDefinition.OperationDefinitionParameterReferencedFromComponent element) throws IOException { 54188 composeBackboneElementElements(element); 54189 if (element.hasSourceElement()) { 54190 composeString("source", element.getSourceElement()); 54191 } 54192 if (element.hasSourceIdElement()) { 54193 composeString("sourceId", element.getSourceIdElement()); 54194 } 54195 } 54196 54197 protected void composeOperationDefinitionOverloadComponent(String name, OperationDefinition.OperationDefinitionOverloadComponent element) throws IOException { 54198 if (element != null) { 54199 composeElementAttributes(element); 54200 xml.enter(FHIR_NS, name); 54201 composeOperationDefinitionOverloadComponentElements(element); 54202 composeElementClose(element); 54203 xml.exit(FHIR_NS, name); 54204 } 54205 } 54206 54207 protected void composeOperationDefinitionOverloadComponentElements(OperationDefinition.OperationDefinitionOverloadComponent element) throws IOException { 54208 composeBackboneElementElements(element); 54209 if (element.hasParameterName()) { 54210 for (StringType e : element.getParameterName()) 54211 composeString("parameterName", e); 54212 } 54213 if (element.hasCommentElement()) { 54214 composeString("comment", element.getCommentElement()); 54215 } 54216 } 54217 54218 protected void composeOperationOutcome(String name, OperationOutcome element) throws IOException { 54219 if (element != null) { 54220 composeResourceAttributes(element); 54221 xml.enter(FHIR_NS, name); 54222 composeOperationOutcomeElements(element); 54223 composeElementClose(element); 54224 xml.exit(FHIR_NS, name); 54225 } 54226 } 54227 54228 protected void composeOperationOutcomeElements(OperationOutcome element) throws IOException { 54229 composeDomainResourceElements(element); 54230 if (element.hasIssue()) { 54231 for (OperationOutcome.OperationOutcomeIssueComponent e : element.getIssue()) 54232 composeOperationOutcomeIssueComponent("issue", e); 54233 } 54234 } 54235 54236 protected void composeOperationOutcomeIssueComponent(String name, OperationOutcome.OperationOutcomeIssueComponent element) throws IOException { 54237 if (element != null) { 54238 composeElementAttributes(element); 54239 xml.enter(FHIR_NS, name); 54240 composeOperationOutcomeIssueComponentElements(element); 54241 composeElementClose(element); 54242 xml.exit(FHIR_NS, name); 54243 } 54244 } 54245 54246 protected void composeOperationOutcomeIssueComponentElements(OperationOutcome.OperationOutcomeIssueComponent element) throws IOException { 54247 composeBackboneElementElements(element); 54248 if (element.hasSeverityElement()) 54249 composeEnumeration("severity", element.getSeverityElement(), new OperationOutcome.IssueSeverityEnumFactory()); 54250 if (element.hasCodeElement()) 54251 composeEnumeration("code", element.getCodeElement(), new OperationOutcome.IssueTypeEnumFactory()); 54252 if (element.hasDetails()) { 54253 composeCodeableConcept("details", element.getDetails()); 54254 } 54255 if (element.hasDiagnosticsElement()) { 54256 composeString("diagnostics", element.getDiagnosticsElement()); 54257 } 54258 if (element.hasLocation()) { 54259 for (StringType e : element.getLocation()) 54260 composeString("location", e); 54261 } 54262 if (element.hasExpression()) { 54263 for (StringType e : element.getExpression()) 54264 composeString("expression", e); 54265 } 54266 } 54267 54268 protected void composeOrganization(String name, Organization element) throws IOException { 54269 if (element != null) { 54270 composeResourceAttributes(element); 54271 xml.enter(FHIR_NS, name); 54272 composeOrganizationElements(element); 54273 composeElementClose(element); 54274 xml.exit(FHIR_NS, name); 54275 } 54276 } 54277 54278 protected void composeOrganizationElements(Organization element) throws IOException { 54279 composeDomainResourceElements(element); 54280 if (element.hasIdentifier()) { 54281 for (Identifier e : element.getIdentifier()) 54282 composeIdentifier("identifier", e); 54283 } 54284 if (element.hasActiveElement()) { 54285 composeBoolean("active", element.getActiveElement()); 54286 } 54287 if (element.hasType()) { 54288 for (CodeableConcept e : element.getType()) 54289 composeCodeableConcept("type", e); 54290 } 54291 if (element.hasNameElement()) { 54292 composeString("name", element.getNameElement()); 54293 } 54294 if (element.hasAlias()) { 54295 for (StringType e : element.getAlias()) 54296 composeString("alias", e); 54297 } 54298 if (element.hasDescriptionElement()) { 54299 composeMarkdown("description", element.getDescriptionElement()); 54300 } 54301 if (element.hasContact()) { 54302 for (ExtendedContactDetail e : element.getContact()) 54303 composeExtendedContactDetail("contact", e); 54304 } 54305 if (element.hasPartOf()) { 54306 composeReference("partOf", element.getPartOf()); 54307 } 54308 if (element.hasEndpoint()) { 54309 for (Reference e : element.getEndpoint()) 54310 composeReference("endpoint", e); 54311 } 54312 if (element.hasQualification()) { 54313 for (Organization.OrganizationQualificationComponent e : element.getQualification()) 54314 composeOrganizationQualificationComponent("qualification", e); 54315 } 54316 } 54317 54318 protected void composeOrganizationQualificationComponent(String name, Organization.OrganizationQualificationComponent element) throws IOException { 54319 if (element != null) { 54320 composeElementAttributes(element); 54321 xml.enter(FHIR_NS, name); 54322 composeOrganizationQualificationComponentElements(element); 54323 composeElementClose(element); 54324 xml.exit(FHIR_NS, name); 54325 } 54326 } 54327 54328 protected void composeOrganizationQualificationComponentElements(Organization.OrganizationQualificationComponent element) throws IOException { 54329 composeBackboneElementElements(element); 54330 if (element.hasIdentifier()) { 54331 for (Identifier e : element.getIdentifier()) 54332 composeIdentifier("identifier", e); 54333 } 54334 if (element.hasCode()) { 54335 composeCodeableConcept("code", element.getCode()); 54336 } 54337 if (element.hasPeriod()) { 54338 composePeriod("period", element.getPeriod()); 54339 } 54340 if (element.hasIssuer()) { 54341 composeReference("issuer", element.getIssuer()); 54342 } 54343 } 54344 54345 protected void composeOrganizationAffiliation(String name, OrganizationAffiliation element) throws IOException { 54346 if (element != null) { 54347 composeResourceAttributes(element); 54348 xml.enter(FHIR_NS, name); 54349 composeOrganizationAffiliationElements(element); 54350 composeElementClose(element); 54351 xml.exit(FHIR_NS, name); 54352 } 54353 } 54354 54355 protected void composeOrganizationAffiliationElements(OrganizationAffiliation element) throws IOException { 54356 composeDomainResourceElements(element); 54357 if (element.hasIdentifier()) { 54358 for (Identifier e : element.getIdentifier()) 54359 composeIdentifier("identifier", e); 54360 } 54361 if (element.hasActiveElement()) { 54362 composeBoolean("active", element.getActiveElement()); 54363 } 54364 if (element.hasPeriod()) { 54365 composePeriod("period", element.getPeriod()); 54366 } 54367 if (element.hasOrganization()) { 54368 composeReference("organization", element.getOrganization()); 54369 } 54370 if (element.hasParticipatingOrganization()) { 54371 composeReference("participatingOrganization", element.getParticipatingOrganization()); 54372 } 54373 if (element.hasNetwork()) { 54374 for (Reference e : element.getNetwork()) 54375 composeReference("network", e); 54376 } 54377 if (element.hasCode()) { 54378 for (CodeableConcept e : element.getCode()) 54379 composeCodeableConcept("code", e); 54380 } 54381 if (element.hasSpecialty()) { 54382 for (CodeableConcept e : element.getSpecialty()) 54383 composeCodeableConcept("specialty", e); 54384 } 54385 if (element.hasLocation()) { 54386 for (Reference e : element.getLocation()) 54387 composeReference("location", e); 54388 } 54389 if (element.hasHealthcareService()) { 54390 for (Reference e : element.getHealthcareService()) 54391 composeReference("healthcareService", e); 54392 } 54393 if (element.hasContact()) { 54394 for (ExtendedContactDetail e : element.getContact()) 54395 composeExtendedContactDetail("contact", e); 54396 } 54397 if (element.hasEndpoint()) { 54398 for (Reference e : element.getEndpoint()) 54399 composeReference("endpoint", e); 54400 } 54401 } 54402 54403 protected void composePackagedProductDefinition(String name, PackagedProductDefinition element) throws IOException { 54404 if (element != null) { 54405 composeResourceAttributes(element); 54406 xml.enter(FHIR_NS, name); 54407 composePackagedProductDefinitionElements(element); 54408 composeElementClose(element); 54409 xml.exit(FHIR_NS, name); 54410 } 54411 } 54412 54413 protected void composePackagedProductDefinitionElements(PackagedProductDefinition element) throws IOException { 54414 composeDomainResourceElements(element); 54415 if (element.hasIdentifier()) { 54416 for (Identifier e : element.getIdentifier()) 54417 composeIdentifier("identifier", e); 54418 } 54419 if (element.hasNameElement()) { 54420 composeString("name", element.getNameElement()); 54421 } 54422 if (element.hasType()) { 54423 composeCodeableConcept("type", element.getType()); 54424 } 54425 if (element.hasPackageFor()) { 54426 for (Reference e : element.getPackageFor()) 54427 composeReference("packageFor", e); 54428 } 54429 if (element.hasStatus()) { 54430 composeCodeableConcept("status", element.getStatus()); 54431 } 54432 if (element.hasStatusDateElement()) { 54433 composeDateTime("statusDate", element.getStatusDateElement()); 54434 } 54435 if (element.hasContainedItemQuantity()) { 54436 for (Quantity e : element.getContainedItemQuantity()) 54437 composeQuantity("containedItemQuantity", e); 54438 } 54439 if (element.hasDescriptionElement()) { 54440 composeMarkdown("description", element.getDescriptionElement()); 54441 } 54442 if (element.hasLegalStatusOfSupply()) { 54443 for (PackagedProductDefinition.PackagedProductDefinitionLegalStatusOfSupplyComponent e : element.getLegalStatusOfSupply()) 54444 composePackagedProductDefinitionLegalStatusOfSupplyComponent("legalStatusOfSupply", e); 54445 } 54446 if (element.hasMarketingStatus()) { 54447 for (MarketingStatus e : element.getMarketingStatus()) 54448 composeMarketingStatus("marketingStatus", e); 54449 } 54450 if (element.hasCopackagedIndicatorElement()) { 54451 composeBoolean("copackagedIndicator", element.getCopackagedIndicatorElement()); 54452 } 54453 if (element.hasManufacturer()) { 54454 for (Reference e : element.getManufacturer()) 54455 composeReference("manufacturer", e); 54456 } 54457 if (element.hasAttachedDocument()) { 54458 for (Reference e : element.getAttachedDocument()) 54459 composeReference("attachedDocument", e); 54460 } 54461 if (element.hasPackaging()) { 54462 composePackagedProductDefinitionPackagingComponent("packaging", element.getPackaging()); 54463 } 54464 if (element.hasCharacteristic()) { 54465 for (PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent e : element.getCharacteristic()) 54466 composePackagedProductDefinitionPackagingPropertyComponent("characteristic", e); 54467 } 54468 } 54469 54470 protected void composePackagedProductDefinitionLegalStatusOfSupplyComponent(String name, PackagedProductDefinition.PackagedProductDefinitionLegalStatusOfSupplyComponent element) throws IOException { 54471 if (element != null) { 54472 composeElementAttributes(element); 54473 xml.enter(FHIR_NS, name); 54474 composePackagedProductDefinitionLegalStatusOfSupplyComponentElements(element); 54475 composeElementClose(element); 54476 xml.exit(FHIR_NS, name); 54477 } 54478 } 54479 54480 protected void composePackagedProductDefinitionLegalStatusOfSupplyComponentElements(PackagedProductDefinition.PackagedProductDefinitionLegalStatusOfSupplyComponent element) throws IOException { 54481 composeBackboneElementElements(element); 54482 if (element.hasCode()) { 54483 composeCodeableConcept("code", element.getCode()); 54484 } 54485 if (element.hasJurisdiction()) { 54486 composeCodeableConcept("jurisdiction", element.getJurisdiction()); 54487 } 54488 } 54489 54490 protected void composePackagedProductDefinitionPackagingComponent(String name, PackagedProductDefinition.PackagedProductDefinitionPackagingComponent element) throws IOException { 54491 if (element != null) { 54492 composeElementAttributes(element); 54493 xml.enter(FHIR_NS, name); 54494 composePackagedProductDefinitionPackagingComponentElements(element); 54495 composeElementClose(element); 54496 xml.exit(FHIR_NS, name); 54497 } 54498 } 54499 54500 protected void composePackagedProductDefinitionPackagingComponentElements(PackagedProductDefinition.PackagedProductDefinitionPackagingComponent element) throws IOException { 54501 composeBackboneElementElements(element); 54502 if (element.hasIdentifier()) { 54503 for (Identifier e : element.getIdentifier()) 54504 composeIdentifier("identifier", e); 54505 } 54506 if (element.hasType()) { 54507 composeCodeableConcept("type", element.getType()); 54508 } 54509 if (element.hasComponentPartElement()) { 54510 composeBoolean("componentPart", element.getComponentPartElement()); 54511 } 54512 if (element.hasQuantityElement()) { 54513 composeInteger("quantity", element.getQuantityElement()); 54514 } 54515 if (element.hasMaterial()) { 54516 for (CodeableConcept e : element.getMaterial()) 54517 composeCodeableConcept("material", e); 54518 } 54519 if (element.hasAlternateMaterial()) { 54520 for (CodeableConcept e : element.getAlternateMaterial()) 54521 composeCodeableConcept("alternateMaterial", e); 54522 } 54523 if (element.hasShelfLifeStorage()) { 54524 for (ProductShelfLife e : element.getShelfLifeStorage()) 54525 composeProductShelfLife("shelfLifeStorage", e); 54526 } 54527 if (element.hasManufacturer()) { 54528 for (Reference e : element.getManufacturer()) 54529 composeReference("manufacturer", e); 54530 } 54531 if (element.hasProperty()) { 54532 for (PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent e : element.getProperty()) 54533 composePackagedProductDefinitionPackagingPropertyComponent("property", e); 54534 } 54535 if (element.hasContainedItem()) { 54536 for (PackagedProductDefinition.PackagedProductDefinitionPackagingContainedItemComponent e : element.getContainedItem()) 54537 composePackagedProductDefinitionPackagingContainedItemComponent("containedItem", e); 54538 } 54539 if (element.hasPackaging()) { 54540 for (PackagedProductDefinition.PackagedProductDefinitionPackagingComponent e : element.getPackaging()) 54541 composePackagedProductDefinitionPackagingComponent("packaging", e); 54542 } 54543 } 54544 54545 protected void composePackagedProductDefinitionPackagingPropertyComponent(String name, PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent element) throws IOException { 54546 if (element != null) { 54547 composeElementAttributes(element); 54548 xml.enter(FHIR_NS, name); 54549 composePackagedProductDefinitionPackagingPropertyComponentElements(element); 54550 composeElementClose(element); 54551 xml.exit(FHIR_NS, name); 54552 } 54553 } 54554 54555 protected void composePackagedProductDefinitionPackagingPropertyComponentElements(PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent element) throws IOException { 54556 composeBackboneElementElements(element); 54557 if (element.hasType()) { 54558 composeCodeableConcept("type", element.getType()); 54559 } 54560 if (element.hasValue()) { 54561 composeType("value", element.getValue()); 54562 } } 54563 54564 protected void composePackagedProductDefinitionPackagingContainedItemComponent(String name, PackagedProductDefinition.PackagedProductDefinitionPackagingContainedItemComponent element) throws IOException { 54565 if (element != null) { 54566 composeElementAttributes(element); 54567 xml.enter(FHIR_NS, name); 54568 composePackagedProductDefinitionPackagingContainedItemComponentElements(element); 54569 composeElementClose(element); 54570 xml.exit(FHIR_NS, name); 54571 } 54572 } 54573 54574 protected void composePackagedProductDefinitionPackagingContainedItemComponentElements(PackagedProductDefinition.PackagedProductDefinitionPackagingContainedItemComponent element) throws IOException { 54575 composeBackboneElementElements(element); 54576 if (element.hasItem()) { 54577 composeCodeableReference("item", element.getItem()); 54578 } 54579 if (element.hasAmount()) { 54580 composeQuantity("amount", element.getAmount()); 54581 } 54582 } 54583 54584 protected void composeParameters(String name, Parameters element) throws IOException { 54585 if (element != null) { 54586 composeResourceAttributes(element); 54587 xml.enter(FHIR_NS, name); 54588 composeParametersElements(element); 54589 composeElementClose(element); 54590 xml.exit(FHIR_NS, name); 54591 } 54592 } 54593 54594 protected void composeParametersElements(Parameters element) throws IOException { 54595 composeResourceElements(element); 54596 if (element.hasParameter()) { 54597 for (Parameters.ParametersParameterComponent e : element.getParameter()) 54598 composeParametersParameterComponent("parameter", e); 54599 } 54600 } 54601 54602 protected void composeParametersParameterComponent(String name, Parameters.ParametersParameterComponent element) throws IOException { 54603 if (element != null) { 54604 composeElementAttributes(element); 54605 xml.enter(FHIR_NS, name); 54606 composeParametersParameterComponentElements(element); 54607 composeElementClose(element); 54608 xml.exit(FHIR_NS, name); 54609 } 54610 } 54611 54612 protected void composeParametersParameterComponentElements(Parameters.ParametersParameterComponent element) throws IOException { 54613 composeBackboneElementElements(element); 54614 if (element.hasNameElement()) { 54615 composeString("name", element.getNameElement()); 54616 } 54617 if (element.hasValue()) { 54618 composeType("value", element.getValue()); 54619 } if (element.hasResource()) { 54620 xml.enter(FHIR_NS, "resource"); 54621 composeResource(element.getResource()); 54622 xml.exit(FHIR_NS, "resource"); 54623 } 54624 if (element.hasPart()) { 54625 for (Parameters.ParametersParameterComponent e : element.getPart()) 54626 composeParametersParameterComponent("part", e); 54627 } 54628 } 54629 54630 protected void composePatient(String name, Patient element) throws IOException { 54631 if (element != null) { 54632 composeResourceAttributes(element); 54633 xml.enter(FHIR_NS, name); 54634 composePatientElements(element); 54635 composeElementClose(element); 54636 xml.exit(FHIR_NS, name); 54637 } 54638 } 54639 54640 protected void composePatientElements(Patient element) throws IOException { 54641 composeDomainResourceElements(element); 54642 if (element.hasIdentifier()) { 54643 for (Identifier e : element.getIdentifier()) 54644 composeIdentifier("identifier", e); 54645 } 54646 if (element.hasActiveElement()) { 54647 composeBoolean("active", element.getActiveElement()); 54648 } 54649 if (element.hasName()) { 54650 for (HumanName e : element.getName()) 54651 composeHumanName("name", e); 54652 } 54653 if (element.hasTelecom()) { 54654 for (ContactPoint e : element.getTelecom()) 54655 composeContactPoint("telecom", e); 54656 } 54657 if (element.hasGenderElement()) 54658 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 54659 if (element.hasBirthDateElement()) { 54660 composeDate("birthDate", element.getBirthDateElement()); 54661 } 54662 if (element.hasDeceased()) { 54663 composeType("deceased", element.getDeceased()); 54664 } if (element.hasAddress()) { 54665 for (Address e : element.getAddress()) 54666 composeAddress("address", e); 54667 } 54668 if (element.hasMaritalStatus()) { 54669 composeCodeableConcept("maritalStatus", element.getMaritalStatus()); 54670 } 54671 if (element.hasMultipleBirth()) { 54672 composeType("multipleBirth", element.getMultipleBirth()); 54673 } if (element.hasPhoto()) { 54674 for (Attachment e : element.getPhoto()) 54675 composeAttachment("photo", e); 54676 } 54677 if (element.hasContact()) { 54678 for (Patient.ContactComponent e : element.getContact()) 54679 composePatientContactComponent("contact", e); 54680 } 54681 if (element.hasCommunication()) { 54682 for (Patient.PatientCommunicationComponent e : element.getCommunication()) 54683 composePatientCommunicationComponent("communication", e); 54684 } 54685 if (element.hasGeneralPractitioner()) { 54686 for (Reference e : element.getGeneralPractitioner()) 54687 composeReference("generalPractitioner", e); 54688 } 54689 if (element.hasManagingOrganization()) { 54690 composeReference("managingOrganization", element.getManagingOrganization()); 54691 } 54692 if (element.hasLink()) { 54693 for (Patient.PatientLinkComponent e : element.getLink()) 54694 composePatientLinkComponent("link", e); 54695 } 54696 } 54697 54698 protected void composePatientContactComponent(String name, Patient.ContactComponent element) throws IOException { 54699 if (element != null) { 54700 composeElementAttributes(element); 54701 xml.enter(FHIR_NS, name); 54702 composePatientContactComponentElements(element); 54703 composeElementClose(element); 54704 xml.exit(FHIR_NS, name); 54705 } 54706 } 54707 54708 protected void composePatientContactComponentElements(Patient.ContactComponent element) throws IOException { 54709 composeBackboneElementElements(element); 54710 if (element.hasRelationship()) { 54711 for (CodeableConcept e : element.getRelationship()) 54712 composeCodeableConcept("relationship", e); 54713 } 54714 if (element.hasName()) { 54715 composeHumanName("name", element.getName()); 54716 } 54717 if (element.hasTelecom()) { 54718 for (ContactPoint e : element.getTelecom()) 54719 composeContactPoint("telecom", e); 54720 } 54721 if (element.hasAddress()) { 54722 composeAddress("address", element.getAddress()); 54723 } 54724 if (element.hasGenderElement()) 54725 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 54726 if (element.hasOrganization()) { 54727 composeReference("organization", element.getOrganization()); 54728 } 54729 if (element.hasPeriod()) { 54730 composePeriod("period", element.getPeriod()); 54731 } 54732 } 54733 54734 protected void composePatientCommunicationComponent(String name, Patient.PatientCommunicationComponent element) throws IOException { 54735 if (element != null) { 54736 composeElementAttributes(element); 54737 xml.enter(FHIR_NS, name); 54738 composePatientCommunicationComponentElements(element); 54739 composeElementClose(element); 54740 xml.exit(FHIR_NS, name); 54741 } 54742 } 54743 54744 protected void composePatientCommunicationComponentElements(Patient.PatientCommunicationComponent element) throws IOException { 54745 composeBackboneElementElements(element); 54746 if (element.hasLanguage()) { 54747 composeCodeableConcept("language", element.getLanguage()); 54748 } 54749 if (element.hasPreferredElement()) { 54750 composeBoolean("preferred", element.getPreferredElement()); 54751 } 54752 } 54753 54754 protected void composePatientLinkComponent(String name, Patient.PatientLinkComponent element) throws IOException { 54755 if (element != null) { 54756 composeElementAttributes(element); 54757 xml.enter(FHIR_NS, name); 54758 composePatientLinkComponentElements(element); 54759 composeElementClose(element); 54760 xml.exit(FHIR_NS, name); 54761 } 54762 } 54763 54764 protected void composePatientLinkComponentElements(Patient.PatientLinkComponent element) throws IOException { 54765 composeBackboneElementElements(element); 54766 if (element.hasOther()) { 54767 composeReference("other", element.getOther()); 54768 } 54769 if (element.hasTypeElement()) 54770 composeEnumeration("type", element.getTypeElement(), new Patient.LinkTypeEnumFactory()); 54771 } 54772 54773 protected void composePaymentNotice(String name, PaymentNotice element) throws IOException { 54774 if (element != null) { 54775 composeResourceAttributes(element); 54776 xml.enter(FHIR_NS, name); 54777 composePaymentNoticeElements(element); 54778 composeElementClose(element); 54779 xml.exit(FHIR_NS, name); 54780 } 54781 } 54782 54783 protected void composePaymentNoticeElements(PaymentNotice element) throws IOException { 54784 composeDomainResourceElements(element); 54785 if (element.hasIdentifier()) { 54786 for (Identifier e : element.getIdentifier()) 54787 composeIdentifier("identifier", e); 54788 } 54789 if (element.hasStatusElement()) 54790 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 54791 if (element.hasRequest()) { 54792 composeReference("request", element.getRequest()); 54793 } 54794 if (element.hasResponse()) { 54795 composeReference("response", element.getResponse()); 54796 } 54797 if (element.hasCreatedElement()) { 54798 composeDateTime("created", element.getCreatedElement()); 54799 } 54800 if (element.hasReporter()) { 54801 composeReference("reporter", element.getReporter()); 54802 } 54803 if (element.hasPayment()) { 54804 composeReference("payment", element.getPayment()); 54805 } 54806 if (element.hasPaymentDateElement()) { 54807 composeDate("paymentDate", element.getPaymentDateElement()); 54808 } 54809 if (element.hasPayee()) { 54810 composeReference("payee", element.getPayee()); 54811 } 54812 if (element.hasRecipient()) { 54813 composeReference("recipient", element.getRecipient()); 54814 } 54815 if (element.hasAmount()) { 54816 composeMoney("amount", element.getAmount()); 54817 } 54818 if (element.hasPaymentStatus()) { 54819 composeCodeableConcept("paymentStatus", element.getPaymentStatus()); 54820 } 54821 } 54822 54823 protected void composePaymentReconciliation(String name, PaymentReconciliation element) throws IOException { 54824 if (element != null) { 54825 composeResourceAttributes(element); 54826 xml.enter(FHIR_NS, name); 54827 composePaymentReconciliationElements(element); 54828 composeElementClose(element); 54829 xml.exit(FHIR_NS, name); 54830 } 54831 } 54832 54833 protected void composePaymentReconciliationElements(PaymentReconciliation element) throws IOException { 54834 composeDomainResourceElements(element); 54835 if (element.hasIdentifier()) { 54836 for (Identifier e : element.getIdentifier()) 54837 composeIdentifier("identifier", e); 54838 } 54839 if (element.hasType()) { 54840 composeCodeableConcept("type", element.getType()); 54841 } 54842 if (element.hasStatusElement()) 54843 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 54844 if (element.hasKind()) { 54845 composeCodeableConcept("kind", element.getKind()); 54846 } 54847 if (element.hasPeriod()) { 54848 composePeriod("period", element.getPeriod()); 54849 } 54850 if (element.hasCreatedElement()) { 54851 composeDateTime("created", element.getCreatedElement()); 54852 } 54853 if (element.hasEnterer()) { 54854 composeReference("enterer", element.getEnterer()); 54855 } 54856 if (element.hasIssuerType()) { 54857 composeCodeableConcept("issuerType", element.getIssuerType()); 54858 } 54859 if (element.hasPaymentIssuer()) { 54860 composeReference("paymentIssuer", element.getPaymentIssuer()); 54861 } 54862 if (element.hasRequest()) { 54863 composeReference("request", element.getRequest()); 54864 } 54865 if (element.hasRequestor()) { 54866 composeReference("requestor", element.getRequestor()); 54867 } 54868 if (element.hasOutcomeElement()) 54869 composeEnumeration("outcome", element.getOutcomeElement(), new PaymentReconciliation.PaymentOutcomeEnumFactory()); 54870 if (element.hasDispositionElement()) { 54871 composeString("disposition", element.getDispositionElement()); 54872 } 54873 if (element.hasDateElement()) { 54874 composeDate("date", element.getDateElement()); 54875 } 54876 if (element.hasLocation()) { 54877 composeReference("location", element.getLocation()); 54878 } 54879 if (element.hasMethod()) { 54880 composeCodeableConcept("method", element.getMethod()); 54881 } 54882 if (element.hasCardBrandElement()) { 54883 composeString("cardBrand", element.getCardBrandElement()); 54884 } 54885 if (element.hasAccountNumberElement()) { 54886 composeString("accountNumber", element.getAccountNumberElement()); 54887 } 54888 if (element.hasExpirationDateElement()) { 54889 composeDate("expirationDate", element.getExpirationDateElement()); 54890 } 54891 if (element.hasProcessorElement()) { 54892 composeString("processor", element.getProcessorElement()); 54893 } 54894 if (element.hasReferenceNumberElement()) { 54895 composeString("referenceNumber", element.getReferenceNumberElement()); 54896 } 54897 if (element.hasAuthorizationElement()) { 54898 composeString("authorization", element.getAuthorizationElement()); 54899 } 54900 if (element.hasTenderedAmount()) { 54901 composeMoney("tenderedAmount", element.getTenderedAmount()); 54902 } 54903 if (element.hasReturnedAmount()) { 54904 composeMoney("returnedAmount", element.getReturnedAmount()); 54905 } 54906 if (element.hasAmount()) { 54907 composeMoney("amount", element.getAmount()); 54908 } 54909 if (element.hasPaymentIdentifier()) { 54910 composeIdentifier("paymentIdentifier", element.getPaymentIdentifier()); 54911 } 54912 if (element.hasAllocation()) { 54913 for (PaymentReconciliation.PaymentReconciliationAllocationComponent e : element.getAllocation()) 54914 composePaymentReconciliationAllocationComponent("allocation", e); 54915 } 54916 if (element.hasFormCode()) { 54917 composeCodeableConcept("formCode", element.getFormCode()); 54918 } 54919 if (element.hasProcessNote()) { 54920 for (PaymentReconciliation.NotesComponent e : element.getProcessNote()) 54921 composePaymentReconciliationNotesComponent("processNote", e); 54922 } 54923 } 54924 54925 protected void composePaymentReconciliationAllocationComponent(String name, PaymentReconciliation.PaymentReconciliationAllocationComponent element) throws IOException { 54926 if (element != null) { 54927 composeElementAttributes(element); 54928 xml.enter(FHIR_NS, name); 54929 composePaymentReconciliationAllocationComponentElements(element); 54930 composeElementClose(element); 54931 xml.exit(FHIR_NS, name); 54932 } 54933 } 54934 54935 protected void composePaymentReconciliationAllocationComponentElements(PaymentReconciliation.PaymentReconciliationAllocationComponent element) throws IOException { 54936 composeBackboneElementElements(element); 54937 if (element.hasIdentifier()) { 54938 composeIdentifier("identifier", element.getIdentifier()); 54939 } 54940 if (element.hasPredecessor()) { 54941 composeIdentifier("predecessor", element.getPredecessor()); 54942 } 54943 if (element.hasTarget()) { 54944 composeReference("target", element.getTarget()); 54945 } 54946 if (element.hasTargetItem()) { 54947 composeType("targetItem", element.getTargetItem()); 54948 } if (element.hasEncounter()) { 54949 composeReference("encounter", element.getEncounter()); 54950 } 54951 if (element.hasAccount()) { 54952 composeReference("account", element.getAccount()); 54953 } 54954 if (element.hasType()) { 54955 composeCodeableConcept("type", element.getType()); 54956 } 54957 if (element.hasSubmitter()) { 54958 composeReference("submitter", element.getSubmitter()); 54959 } 54960 if (element.hasResponse()) { 54961 composeReference("response", element.getResponse()); 54962 } 54963 if (element.hasDateElement()) { 54964 composeDate("date", element.getDateElement()); 54965 } 54966 if (element.hasResponsible()) { 54967 composeReference("responsible", element.getResponsible()); 54968 } 54969 if (element.hasPayee()) { 54970 composeReference("payee", element.getPayee()); 54971 } 54972 if (element.hasAmount()) { 54973 composeMoney("amount", element.getAmount()); 54974 } 54975 } 54976 54977 protected void composePaymentReconciliationNotesComponent(String name, PaymentReconciliation.NotesComponent element) throws IOException { 54978 if (element != null) { 54979 composeElementAttributes(element); 54980 xml.enter(FHIR_NS, name); 54981 composePaymentReconciliationNotesComponentElements(element); 54982 composeElementClose(element); 54983 xml.exit(FHIR_NS, name); 54984 } 54985 } 54986 54987 protected void composePaymentReconciliationNotesComponentElements(PaymentReconciliation.NotesComponent element) throws IOException { 54988 composeBackboneElementElements(element); 54989 if (element.hasTypeElement()) 54990 composeEnumeration("type", element.getTypeElement(), new PaymentReconciliation.NoteTypeEnumFactory()); 54991 if (element.hasTextElement()) { 54992 composeString("text", element.getTextElement()); 54993 } 54994 } 54995 54996 protected void composePermission(String name, Permission element) throws IOException { 54997 if (element != null) { 54998 composeResourceAttributes(element); 54999 xml.enter(FHIR_NS, name); 55000 composePermissionElements(element); 55001 composeElementClose(element); 55002 xml.exit(FHIR_NS, name); 55003 } 55004 } 55005 55006 protected void composePermissionElements(Permission element) throws IOException { 55007 composeDomainResourceElements(element); 55008 if (element.hasStatusElement()) 55009 composeEnumeration("status", element.getStatusElement(), new Permission.PermissionStatusEnumFactory()); 55010 if (element.hasAsserter()) { 55011 composeReference("asserter", element.getAsserter()); 55012 } 55013 if (element.hasDate()) { 55014 for (DateTimeType e : element.getDate()) 55015 composeDateTime("date", e); 55016 } 55017 if (element.hasValidity()) { 55018 composePeriod("validity", element.getValidity()); 55019 } 55020 if (element.hasJustification()) { 55021 composePermissionJustificationComponent("justification", element.getJustification()); 55022 } 55023 if (element.hasCombiningElement()) 55024 composeEnumeration("combining", element.getCombiningElement(), new Permission.PermissionRuleCombiningEnumFactory()); 55025 if (element.hasRule()) { 55026 for (Permission.RuleComponent e : element.getRule()) 55027 composePermissionRuleComponent("rule", e); 55028 } 55029 } 55030 55031 protected void composePermissionJustificationComponent(String name, Permission.PermissionJustificationComponent element) throws IOException { 55032 if (element != null) { 55033 composeElementAttributes(element); 55034 xml.enter(FHIR_NS, name); 55035 composePermissionJustificationComponentElements(element); 55036 composeElementClose(element); 55037 xml.exit(FHIR_NS, name); 55038 } 55039 } 55040 55041 protected void composePermissionJustificationComponentElements(Permission.PermissionJustificationComponent element) throws IOException { 55042 composeBackboneElementElements(element); 55043 if (element.hasBasis()) { 55044 for (CodeableConcept e : element.getBasis()) 55045 composeCodeableConcept("basis", e); 55046 } 55047 if (element.hasEvidence()) { 55048 for (Reference e : element.getEvidence()) 55049 composeReference("evidence", e); 55050 } 55051 } 55052 55053 protected void composePermissionRuleComponent(String name, Permission.RuleComponent element) throws IOException { 55054 if (element != null) { 55055 composeElementAttributes(element); 55056 xml.enter(FHIR_NS, name); 55057 composePermissionRuleComponentElements(element); 55058 composeElementClose(element); 55059 xml.exit(FHIR_NS, name); 55060 } 55061 } 55062 55063 protected void composePermissionRuleComponentElements(Permission.RuleComponent element) throws IOException { 55064 composeBackboneElementElements(element); 55065 if (element.hasTypeElement()) 55066 composeEnumeration("type", element.getTypeElement(), new Enumerations.ConsentProvisionTypeEnumFactory()); 55067 if (element.hasData()) { 55068 for (Permission.RuleDataComponent e : element.getData()) 55069 composePermissionRuleDataComponent("data", e); 55070 } 55071 if (element.hasActivity()) { 55072 for (Permission.RuleActivityComponent e : element.getActivity()) 55073 composePermissionRuleActivityComponent("activity", e); 55074 } 55075 if (element.hasLimit()) { 55076 for (CodeableConcept e : element.getLimit()) 55077 composeCodeableConcept("limit", e); 55078 } 55079 } 55080 55081 protected void composePermissionRuleDataComponent(String name, Permission.RuleDataComponent element) throws IOException { 55082 if (element != null) { 55083 composeElementAttributes(element); 55084 xml.enter(FHIR_NS, name); 55085 composePermissionRuleDataComponentElements(element); 55086 composeElementClose(element); 55087 xml.exit(FHIR_NS, name); 55088 } 55089 } 55090 55091 protected void composePermissionRuleDataComponentElements(Permission.RuleDataComponent element) throws IOException { 55092 composeBackboneElementElements(element); 55093 if (element.hasResource()) { 55094 for (Permission.RuleDataResourceComponent e : element.getResource()) 55095 composePermissionRuleDataResourceComponent("resource", e); 55096 } 55097 if (element.hasSecurity()) { 55098 for (Coding e : element.getSecurity()) 55099 composeCoding("security", e); 55100 } 55101 if (element.hasPeriod()) { 55102 for (Period e : element.getPeriod()) 55103 composePeriod("period", e); 55104 } 55105 if (element.hasExpression()) { 55106 composeExpression("expression", element.getExpression()); 55107 } 55108 } 55109 55110 protected void composePermissionRuleDataResourceComponent(String name, Permission.RuleDataResourceComponent element) throws IOException { 55111 if (element != null) { 55112 composeElementAttributes(element); 55113 xml.enter(FHIR_NS, name); 55114 composePermissionRuleDataResourceComponentElements(element); 55115 composeElementClose(element); 55116 xml.exit(FHIR_NS, name); 55117 } 55118 } 55119 55120 protected void composePermissionRuleDataResourceComponentElements(Permission.RuleDataResourceComponent element) throws IOException { 55121 composeBackboneElementElements(element); 55122 if (element.hasMeaningElement()) 55123 composeEnumeration("meaning", element.getMeaningElement(), new Enumerations.ConsentDataMeaningEnumFactory()); 55124 if (element.hasReference()) { 55125 composeReference("reference", element.getReference()); 55126 } 55127 } 55128 55129 protected void composePermissionRuleActivityComponent(String name, Permission.RuleActivityComponent element) throws IOException { 55130 if (element != null) { 55131 composeElementAttributes(element); 55132 xml.enter(FHIR_NS, name); 55133 composePermissionRuleActivityComponentElements(element); 55134 composeElementClose(element); 55135 xml.exit(FHIR_NS, name); 55136 } 55137 } 55138 55139 protected void composePermissionRuleActivityComponentElements(Permission.RuleActivityComponent element) throws IOException { 55140 composeBackboneElementElements(element); 55141 if (element.hasActor()) { 55142 for (Reference e : element.getActor()) 55143 composeReference("actor", e); 55144 } 55145 if (element.hasAction()) { 55146 for (CodeableConcept e : element.getAction()) 55147 composeCodeableConcept("action", e); 55148 } 55149 if (element.hasPurpose()) { 55150 for (CodeableConcept e : element.getPurpose()) 55151 composeCodeableConcept("purpose", e); 55152 } 55153 } 55154 55155 protected void composePerson(String name, Person element) throws IOException { 55156 if (element != null) { 55157 composeResourceAttributes(element); 55158 xml.enter(FHIR_NS, name); 55159 composePersonElements(element); 55160 composeElementClose(element); 55161 xml.exit(FHIR_NS, name); 55162 } 55163 } 55164 55165 protected void composePersonElements(Person element) throws IOException { 55166 composeDomainResourceElements(element); 55167 if (element.hasIdentifier()) { 55168 for (Identifier e : element.getIdentifier()) 55169 composeIdentifier("identifier", e); 55170 } 55171 if (element.hasActiveElement()) { 55172 composeBoolean("active", element.getActiveElement()); 55173 } 55174 if (element.hasName()) { 55175 for (HumanName e : element.getName()) 55176 composeHumanName("name", e); 55177 } 55178 if (element.hasTelecom()) { 55179 for (ContactPoint e : element.getTelecom()) 55180 composeContactPoint("telecom", e); 55181 } 55182 if (element.hasGenderElement()) 55183 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 55184 if (element.hasBirthDateElement()) { 55185 composeDate("birthDate", element.getBirthDateElement()); 55186 } 55187 if (element.hasDeceased()) { 55188 composeType("deceased", element.getDeceased()); 55189 } if (element.hasAddress()) { 55190 for (Address e : element.getAddress()) 55191 composeAddress("address", e); 55192 } 55193 if (element.hasMaritalStatus()) { 55194 composeCodeableConcept("maritalStatus", element.getMaritalStatus()); 55195 } 55196 if (element.hasPhoto()) { 55197 for (Attachment e : element.getPhoto()) 55198 composeAttachment("photo", e); 55199 } 55200 if (element.hasCommunication()) { 55201 for (Person.PersonCommunicationComponent e : element.getCommunication()) 55202 composePersonCommunicationComponent("communication", e); 55203 } 55204 if (element.hasManagingOrganization()) { 55205 composeReference("managingOrganization", element.getManagingOrganization()); 55206 } 55207 if (element.hasLink()) { 55208 for (Person.PersonLinkComponent e : element.getLink()) 55209 composePersonLinkComponent("link", e); 55210 } 55211 } 55212 55213 protected void composePersonCommunicationComponent(String name, Person.PersonCommunicationComponent element) throws IOException { 55214 if (element != null) { 55215 composeElementAttributes(element); 55216 xml.enter(FHIR_NS, name); 55217 composePersonCommunicationComponentElements(element); 55218 composeElementClose(element); 55219 xml.exit(FHIR_NS, name); 55220 } 55221 } 55222 55223 protected void composePersonCommunicationComponentElements(Person.PersonCommunicationComponent element) throws IOException { 55224 composeBackboneElementElements(element); 55225 if (element.hasLanguage()) { 55226 composeCodeableConcept("language", element.getLanguage()); 55227 } 55228 if (element.hasPreferredElement()) { 55229 composeBoolean("preferred", element.getPreferredElement()); 55230 } 55231 } 55232 55233 protected void composePersonLinkComponent(String name, Person.PersonLinkComponent element) throws IOException { 55234 if (element != null) { 55235 composeElementAttributes(element); 55236 xml.enter(FHIR_NS, name); 55237 composePersonLinkComponentElements(element); 55238 composeElementClose(element); 55239 xml.exit(FHIR_NS, name); 55240 } 55241 } 55242 55243 protected void composePersonLinkComponentElements(Person.PersonLinkComponent element) throws IOException { 55244 composeBackboneElementElements(element); 55245 if (element.hasTarget()) { 55246 composeReference("target", element.getTarget()); 55247 } 55248 if (element.hasAssuranceElement()) 55249 composeEnumeration("assurance", element.getAssuranceElement(), new Person.IdentityAssuranceLevelEnumFactory()); 55250 } 55251 55252 protected void composePlanDefinition(String name, PlanDefinition element) throws IOException { 55253 if (element != null) { 55254 composeResourceAttributes(element); 55255 xml.enter(FHIR_NS, name); 55256 composePlanDefinitionElements(element); 55257 composeElementClose(element); 55258 xml.exit(FHIR_NS, name); 55259 } 55260 } 55261 55262 protected void composePlanDefinitionElements(PlanDefinition element) throws IOException { 55263 composeMetadataResourceElements(element); 55264 if (element.hasUrlElement()) { 55265 composeUri("url", element.getUrlElement()); 55266 } 55267 if (element.hasIdentifier()) { 55268 for (Identifier e : element.getIdentifier()) 55269 composeIdentifier("identifier", e); 55270 } 55271 if (element.hasVersionElement()) { 55272 composeString("version", element.getVersionElement()); 55273 } 55274 if (element.hasVersionAlgorithm()) { 55275 composeType("versionAlgorithm", element.getVersionAlgorithm()); 55276 } if (element.hasNameElement()) { 55277 composeString("name", element.getNameElement()); 55278 } 55279 if (element.hasTitleElement()) { 55280 composeString("title", element.getTitleElement()); 55281 } 55282 if (element.hasSubtitleElement()) { 55283 composeString("subtitle", element.getSubtitleElement()); 55284 } 55285 if (element.hasType()) { 55286 composeCodeableConcept("type", element.getType()); 55287 } 55288 if (element.hasStatusElement()) 55289 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 55290 if (element.hasExperimentalElement()) { 55291 composeBoolean("experimental", element.getExperimentalElement()); 55292 } 55293 if (element.hasSubject()) { 55294 composeType("subject", element.getSubject()); 55295 } if (element.hasDateElement()) { 55296 composeDateTime("date", element.getDateElement()); 55297 } 55298 if (element.hasPublisherElement()) { 55299 composeString("publisher", element.getPublisherElement()); 55300 } 55301 if (element.hasContact()) { 55302 for (ContactDetail e : element.getContact()) 55303 composeContactDetail("contact", e); 55304 } 55305 if (element.hasDescriptionElement()) { 55306 composeMarkdown("description", element.getDescriptionElement()); 55307 } 55308 if (element.hasUseContext()) { 55309 for (UsageContext e : element.getUseContext()) 55310 composeUsageContext("useContext", e); 55311 } 55312 if (element.hasJurisdiction()) { 55313 for (CodeableConcept e : element.getJurisdiction()) 55314 composeCodeableConcept("jurisdiction", e); 55315 } 55316 if (element.hasPurposeElement()) { 55317 composeMarkdown("purpose", element.getPurposeElement()); 55318 } 55319 if (element.hasUsageElement()) { 55320 composeMarkdown("usage", element.getUsageElement()); 55321 } 55322 if (element.hasCopyrightElement()) { 55323 composeMarkdown("copyright", element.getCopyrightElement()); 55324 } 55325 if (element.hasCopyrightLabelElement()) { 55326 composeString("copyrightLabel", element.getCopyrightLabelElement()); 55327 } 55328 if (element.hasApprovalDateElement()) { 55329 composeDate("approvalDate", element.getApprovalDateElement()); 55330 } 55331 if (element.hasLastReviewDateElement()) { 55332 composeDate("lastReviewDate", element.getLastReviewDateElement()); 55333 } 55334 if (element.hasEffectivePeriod()) { 55335 composePeriod("effectivePeriod", element.getEffectivePeriod()); 55336 } 55337 if (element.hasTopic()) { 55338 for (CodeableConcept e : element.getTopic()) 55339 composeCodeableConcept("topic", e); 55340 } 55341 if (element.hasAuthor()) { 55342 for (ContactDetail e : element.getAuthor()) 55343 composeContactDetail("author", e); 55344 } 55345 if (element.hasEditor()) { 55346 for (ContactDetail e : element.getEditor()) 55347 composeContactDetail("editor", e); 55348 } 55349 if (element.hasReviewer()) { 55350 for (ContactDetail e : element.getReviewer()) 55351 composeContactDetail("reviewer", e); 55352 } 55353 if (element.hasEndorser()) { 55354 for (ContactDetail e : element.getEndorser()) 55355 composeContactDetail("endorser", e); 55356 } 55357 if (element.hasRelatedArtifact()) { 55358 for (RelatedArtifact e : element.getRelatedArtifact()) 55359 composeRelatedArtifact("relatedArtifact", e); 55360 } 55361 if (element.hasLibrary()) { 55362 for (CanonicalType e : element.getLibrary()) 55363 composeCanonical("library", e); 55364 } 55365 if (element.hasGoal()) { 55366 for (PlanDefinition.PlanDefinitionGoalComponent e : element.getGoal()) 55367 composePlanDefinitionGoalComponent("goal", e); 55368 } 55369 if (element.hasActor()) { 55370 for (PlanDefinition.PlanDefinitionActorComponent e : element.getActor()) 55371 composePlanDefinitionActorComponent("actor", e); 55372 } 55373 if (element.hasAction()) { 55374 for (PlanDefinition.PlanDefinitionActionComponent e : element.getAction()) 55375 composePlanDefinitionActionComponent("action", e); 55376 } 55377 if (element.hasAsNeeded()) { 55378 composeType("asNeeded", element.getAsNeeded()); 55379 } } 55380 55381 protected void composePlanDefinitionGoalComponent(String name, PlanDefinition.PlanDefinitionGoalComponent element) throws IOException { 55382 if (element != null) { 55383 composeElementAttributes(element); 55384 xml.enter(FHIR_NS, name); 55385 composePlanDefinitionGoalComponentElements(element); 55386 composeElementClose(element); 55387 xml.exit(FHIR_NS, name); 55388 } 55389 } 55390 55391 protected void composePlanDefinitionGoalComponentElements(PlanDefinition.PlanDefinitionGoalComponent element) throws IOException { 55392 composeBackboneElementElements(element); 55393 if (element.hasCategory()) { 55394 composeCodeableConcept("category", element.getCategory()); 55395 } 55396 if (element.hasDescription()) { 55397 composeCodeableConcept("description", element.getDescription()); 55398 } 55399 if (element.hasPriority()) { 55400 composeCodeableConcept("priority", element.getPriority()); 55401 } 55402 if (element.hasStart()) { 55403 composeCodeableConcept("start", element.getStart()); 55404 } 55405 if (element.hasAddresses()) { 55406 for (CodeableConcept e : element.getAddresses()) 55407 composeCodeableConcept("addresses", e); 55408 } 55409 if (element.hasDocumentation()) { 55410 for (RelatedArtifact e : element.getDocumentation()) 55411 composeRelatedArtifact("documentation", e); 55412 } 55413 if (element.hasTarget()) { 55414 for (PlanDefinition.PlanDefinitionGoalTargetComponent e : element.getTarget()) 55415 composePlanDefinitionGoalTargetComponent("target", e); 55416 } 55417 } 55418 55419 protected void composePlanDefinitionGoalTargetComponent(String name, PlanDefinition.PlanDefinitionGoalTargetComponent element) throws IOException { 55420 if (element != null) { 55421 composeElementAttributes(element); 55422 xml.enter(FHIR_NS, name); 55423 composePlanDefinitionGoalTargetComponentElements(element); 55424 composeElementClose(element); 55425 xml.exit(FHIR_NS, name); 55426 } 55427 } 55428 55429 protected void composePlanDefinitionGoalTargetComponentElements(PlanDefinition.PlanDefinitionGoalTargetComponent element) throws IOException { 55430 composeBackboneElementElements(element); 55431 if (element.hasMeasure()) { 55432 composeCodeableConcept("measure", element.getMeasure()); 55433 } 55434 if (element.hasDetail()) { 55435 composeType("detail", element.getDetail()); 55436 } if (element.hasDue()) { 55437 composeDuration("due", element.getDue()); 55438 } 55439 } 55440 55441 protected void composePlanDefinitionActorComponent(String name, PlanDefinition.PlanDefinitionActorComponent element) throws IOException { 55442 if (element != null) { 55443 composeElementAttributes(element); 55444 xml.enter(FHIR_NS, name); 55445 composePlanDefinitionActorComponentElements(element); 55446 composeElementClose(element); 55447 xml.exit(FHIR_NS, name); 55448 } 55449 } 55450 55451 protected void composePlanDefinitionActorComponentElements(PlanDefinition.PlanDefinitionActorComponent element) throws IOException { 55452 composeBackboneElementElements(element); 55453 if (element.hasTitleElement()) { 55454 composeString("title", element.getTitleElement()); 55455 } 55456 if (element.hasDescriptionElement()) { 55457 composeMarkdown("description", element.getDescriptionElement()); 55458 } 55459 if (element.hasOption()) { 55460 for (PlanDefinition.PlanDefinitionActorOptionComponent e : element.getOption()) 55461 composePlanDefinitionActorOptionComponent("option", e); 55462 } 55463 } 55464 55465 protected void composePlanDefinitionActorOptionComponent(String name, PlanDefinition.PlanDefinitionActorOptionComponent element) throws IOException { 55466 if (element != null) { 55467 composeElementAttributes(element); 55468 xml.enter(FHIR_NS, name); 55469 composePlanDefinitionActorOptionComponentElements(element); 55470 composeElementClose(element); 55471 xml.exit(FHIR_NS, name); 55472 } 55473 } 55474 55475 protected void composePlanDefinitionActorOptionComponentElements(PlanDefinition.PlanDefinitionActorOptionComponent element) throws IOException { 55476 composeBackboneElementElements(element); 55477 if (element.hasTypeElement()) 55478 composeEnumeration("type", element.getTypeElement(), new Enumerations.ActionParticipantTypeEnumFactory()); 55479 if (element.hasTypeCanonicalElement()) { 55480 composeCanonical("typeCanonical", element.getTypeCanonicalElement()); 55481 } 55482 if (element.hasTypeReference()) { 55483 composeReference("typeReference", element.getTypeReference()); 55484 } 55485 if (element.hasRole()) { 55486 composeCodeableConcept("role", element.getRole()); 55487 } 55488 } 55489 55490 protected void composePlanDefinitionActionComponent(String name, PlanDefinition.PlanDefinitionActionComponent element) throws IOException { 55491 if (element != null) { 55492 composeElementAttributes(element); 55493 xml.enter(FHIR_NS, name); 55494 composePlanDefinitionActionComponentElements(element); 55495 composeElementClose(element); 55496 xml.exit(FHIR_NS, name); 55497 } 55498 } 55499 55500 protected void composePlanDefinitionActionComponentElements(PlanDefinition.PlanDefinitionActionComponent element) throws IOException { 55501 composeBackboneElementElements(element); 55502 if (element.hasLinkIdElement()) { 55503 composeString("linkId", element.getLinkIdElement()); 55504 } 55505 if (element.hasPrefixElement()) { 55506 composeString("prefix", element.getPrefixElement()); 55507 } 55508 if (element.hasTitleElement()) { 55509 composeString("title", element.getTitleElement()); 55510 } 55511 if (element.hasDescriptionElement()) { 55512 composeMarkdown("description", element.getDescriptionElement()); 55513 } 55514 if (element.hasTextEquivalentElement()) { 55515 composeMarkdown("textEquivalent", element.getTextEquivalentElement()); 55516 } 55517 if (element.hasPriorityElement()) 55518 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 55519 if (element.hasCode()) { 55520 composeCodeableConcept("code", element.getCode()); 55521 } 55522 if (element.hasReason()) { 55523 for (CodeableConcept e : element.getReason()) 55524 composeCodeableConcept("reason", e); 55525 } 55526 if (element.hasDocumentation()) { 55527 for (RelatedArtifact e : element.getDocumentation()) 55528 composeRelatedArtifact("documentation", e); 55529 } 55530 if (element.hasGoalId()) { 55531 for (IdType e : element.getGoalId()) 55532 composeId("goalId", e); 55533 } 55534 if (element.hasSubject()) { 55535 composeType("subject", element.getSubject()); 55536 } if (element.hasTrigger()) { 55537 for (TriggerDefinition e : element.getTrigger()) 55538 composeTriggerDefinition("trigger", e); 55539 } 55540 if (element.hasCondition()) { 55541 for (PlanDefinition.PlanDefinitionActionConditionComponent e : element.getCondition()) 55542 composePlanDefinitionActionConditionComponent("condition", e); 55543 } 55544 if (element.hasInput()) { 55545 for (PlanDefinition.PlanDefinitionActionInputComponent e : element.getInput()) 55546 composePlanDefinitionActionInputComponent("input", e); 55547 } 55548 if (element.hasOutput()) { 55549 for (PlanDefinition.PlanDefinitionActionOutputComponent e : element.getOutput()) 55550 composePlanDefinitionActionOutputComponent("output", e); 55551 } 55552 if (element.hasRelatedAction()) { 55553 for (PlanDefinition.PlanDefinitionActionRelatedActionComponent e : element.getRelatedAction()) 55554 composePlanDefinitionActionRelatedActionComponent("relatedAction", e); 55555 } 55556 if (element.hasTiming()) { 55557 composeType("timing", element.getTiming()); 55558 } if (element.hasLocation()) { 55559 composeCodeableReference("location", element.getLocation()); 55560 } 55561 if (element.hasParticipant()) { 55562 for (PlanDefinition.PlanDefinitionActionParticipantComponent e : element.getParticipant()) 55563 composePlanDefinitionActionParticipantComponent("participant", e); 55564 } 55565 if (element.hasType()) { 55566 composeCodeableConcept("type", element.getType()); 55567 } 55568 if (element.hasGroupingBehaviorElement()) 55569 composeEnumeration("groupingBehavior", element.getGroupingBehaviorElement(), new Enumerations.ActionGroupingBehaviorEnumFactory()); 55570 if (element.hasSelectionBehaviorElement()) 55571 composeEnumeration("selectionBehavior", element.getSelectionBehaviorElement(), new Enumerations.ActionSelectionBehaviorEnumFactory()); 55572 if (element.hasRequiredBehaviorElement()) 55573 composeEnumeration("requiredBehavior", element.getRequiredBehaviorElement(), new Enumerations.ActionRequiredBehaviorEnumFactory()); 55574 if (element.hasPrecheckBehaviorElement()) 55575 composeEnumeration("precheckBehavior", element.getPrecheckBehaviorElement(), new Enumerations.ActionPrecheckBehaviorEnumFactory()); 55576 if (element.hasCardinalityBehaviorElement()) 55577 composeEnumeration("cardinalityBehavior", element.getCardinalityBehaviorElement(), new Enumerations.ActionCardinalityBehaviorEnumFactory()); 55578 if (element.hasDefinition()) { 55579 composeType("definition", element.getDefinition()); 55580 } if (element.hasTransformElement()) { 55581 composeCanonical("transform", element.getTransformElement()); 55582 } 55583 if (element.hasDynamicValue()) { 55584 for (PlanDefinition.PlanDefinitionActionDynamicValueComponent e : element.getDynamicValue()) 55585 composePlanDefinitionActionDynamicValueComponent("dynamicValue", e); 55586 } 55587 if (element.hasAction()) { 55588 for (PlanDefinition.PlanDefinitionActionComponent e : element.getAction()) 55589 composePlanDefinitionActionComponent("action", e); 55590 } 55591 } 55592 55593 protected void composePlanDefinitionActionConditionComponent(String name, PlanDefinition.PlanDefinitionActionConditionComponent element) throws IOException { 55594 if (element != null) { 55595 composeElementAttributes(element); 55596 xml.enter(FHIR_NS, name); 55597 composePlanDefinitionActionConditionComponentElements(element); 55598 composeElementClose(element); 55599 xml.exit(FHIR_NS, name); 55600 } 55601 } 55602 55603 protected void composePlanDefinitionActionConditionComponentElements(PlanDefinition.PlanDefinitionActionConditionComponent element) throws IOException { 55604 composeBackboneElementElements(element); 55605 if (element.hasKindElement()) 55606 composeEnumeration("kind", element.getKindElement(), new Enumerations.ActionConditionKindEnumFactory()); 55607 if (element.hasExpression()) { 55608 composeExpression("expression", element.getExpression()); 55609 } 55610 } 55611 55612 protected void composePlanDefinitionActionInputComponent(String name, PlanDefinition.PlanDefinitionActionInputComponent element) throws IOException { 55613 if (element != null) { 55614 composeElementAttributes(element); 55615 xml.enter(FHIR_NS, name); 55616 composePlanDefinitionActionInputComponentElements(element); 55617 composeElementClose(element); 55618 xml.exit(FHIR_NS, name); 55619 } 55620 } 55621 55622 protected void composePlanDefinitionActionInputComponentElements(PlanDefinition.PlanDefinitionActionInputComponent element) throws IOException { 55623 composeBackboneElementElements(element); 55624 if (element.hasTitleElement()) { 55625 composeString("title", element.getTitleElement()); 55626 } 55627 if (element.hasRequirement()) { 55628 composeDataRequirement("requirement", element.getRequirement()); 55629 } 55630 if (element.hasRelatedDataElement()) { 55631 composeId("relatedData", element.getRelatedDataElement()); 55632 } 55633 } 55634 55635 protected void composePlanDefinitionActionOutputComponent(String name, PlanDefinition.PlanDefinitionActionOutputComponent element) throws IOException { 55636 if (element != null) { 55637 composeElementAttributes(element); 55638 xml.enter(FHIR_NS, name); 55639 composePlanDefinitionActionOutputComponentElements(element); 55640 composeElementClose(element); 55641 xml.exit(FHIR_NS, name); 55642 } 55643 } 55644 55645 protected void composePlanDefinitionActionOutputComponentElements(PlanDefinition.PlanDefinitionActionOutputComponent element) throws IOException { 55646 composeBackboneElementElements(element); 55647 if (element.hasTitleElement()) { 55648 composeString("title", element.getTitleElement()); 55649 } 55650 if (element.hasRequirement()) { 55651 composeDataRequirement("requirement", element.getRequirement()); 55652 } 55653 if (element.hasRelatedDataElement()) { 55654 composeString("relatedData", element.getRelatedDataElement()); 55655 } 55656 } 55657 55658 protected void composePlanDefinitionActionRelatedActionComponent(String name, PlanDefinition.PlanDefinitionActionRelatedActionComponent element) throws IOException { 55659 if (element != null) { 55660 composeElementAttributes(element); 55661 xml.enter(FHIR_NS, name); 55662 composePlanDefinitionActionRelatedActionComponentElements(element); 55663 composeElementClose(element); 55664 xml.exit(FHIR_NS, name); 55665 } 55666 } 55667 55668 protected void composePlanDefinitionActionRelatedActionComponentElements(PlanDefinition.PlanDefinitionActionRelatedActionComponent element) throws IOException { 55669 composeBackboneElementElements(element); 55670 if (element.hasTargetIdElement()) { 55671 composeId("targetId", element.getTargetIdElement()); 55672 } 55673 if (element.hasRelationshipElement()) 55674 composeEnumeration("relationship", element.getRelationshipElement(), new Enumerations.ActionRelationshipTypeEnumFactory()); 55675 if (element.hasEndRelationshipElement()) 55676 composeEnumeration("endRelationship", element.getEndRelationshipElement(), new Enumerations.ActionRelationshipTypeEnumFactory()); 55677 if (element.hasOffset()) { 55678 composeType("offset", element.getOffset()); 55679 } } 55680 55681 protected void composePlanDefinitionActionParticipantComponent(String name, PlanDefinition.PlanDefinitionActionParticipantComponent element) throws IOException { 55682 if (element != null) { 55683 composeElementAttributes(element); 55684 xml.enter(FHIR_NS, name); 55685 composePlanDefinitionActionParticipantComponentElements(element); 55686 composeElementClose(element); 55687 xml.exit(FHIR_NS, name); 55688 } 55689 } 55690 55691 protected void composePlanDefinitionActionParticipantComponentElements(PlanDefinition.PlanDefinitionActionParticipantComponent element) throws IOException { 55692 composeBackboneElementElements(element); 55693 if (element.hasActorIdElement()) { 55694 composeString("actorId", element.getActorIdElement()); 55695 } 55696 if (element.hasTypeElement()) 55697 composeEnumeration("type", element.getTypeElement(), new Enumerations.ActionParticipantTypeEnumFactory()); 55698 if (element.hasTypeCanonicalElement()) { 55699 composeCanonical("typeCanonical", element.getTypeCanonicalElement()); 55700 } 55701 if (element.hasTypeReference()) { 55702 composeReference("typeReference", element.getTypeReference()); 55703 } 55704 if (element.hasRole()) { 55705 composeCodeableConcept("role", element.getRole()); 55706 } 55707 if (element.hasFunction()) { 55708 composeCodeableConcept("function", element.getFunction()); 55709 } 55710 } 55711 55712 protected void composePlanDefinitionActionDynamicValueComponent(String name, PlanDefinition.PlanDefinitionActionDynamicValueComponent element) throws IOException { 55713 if (element != null) { 55714 composeElementAttributes(element); 55715 xml.enter(FHIR_NS, name); 55716 composePlanDefinitionActionDynamicValueComponentElements(element); 55717 composeElementClose(element); 55718 xml.exit(FHIR_NS, name); 55719 } 55720 } 55721 55722 protected void composePlanDefinitionActionDynamicValueComponentElements(PlanDefinition.PlanDefinitionActionDynamicValueComponent element) throws IOException { 55723 composeBackboneElementElements(element); 55724 if (element.hasPathElement()) { 55725 composeString("path", element.getPathElement()); 55726 } 55727 if (element.hasExpression()) { 55728 composeExpression("expression", element.getExpression()); 55729 } 55730 } 55731 55732 protected void composePractitioner(String name, Practitioner element) throws IOException { 55733 if (element != null) { 55734 composeResourceAttributes(element); 55735 xml.enter(FHIR_NS, name); 55736 composePractitionerElements(element); 55737 composeElementClose(element); 55738 xml.exit(FHIR_NS, name); 55739 } 55740 } 55741 55742 protected void composePractitionerElements(Practitioner element) throws IOException { 55743 composeDomainResourceElements(element); 55744 if (element.hasIdentifier()) { 55745 for (Identifier e : element.getIdentifier()) 55746 composeIdentifier("identifier", e); 55747 } 55748 if (element.hasActiveElement()) { 55749 composeBoolean("active", element.getActiveElement()); 55750 } 55751 if (element.hasName()) { 55752 for (HumanName e : element.getName()) 55753 composeHumanName("name", e); 55754 } 55755 if (element.hasTelecom()) { 55756 for (ContactPoint e : element.getTelecom()) 55757 composeContactPoint("telecom", e); 55758 } 55759 if (element.hasGenderElement()) 55760 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 55761 if (element.hasBirthDateElement()) { 55762 composeDate("birthDate", element.getBirthDateElement()); 55763 } 55764 if (element.hasDeceased()) { 55765 composeType("deceased", element.getDeceased()); 55766 } if (element.hasAddress()) { 55767 for (Address e : element.getAddress()) 55768 composeAddress("address", e); 55769 } 55770 if (element.hasPhoto()) { 55771 for (Attachment e : element.getPhoto()) 55772 composeAttachment("photo", e); 55773 } 55774 if (element.hasQualification()) { 55775 for (Practitioner.PractitionerQualificationComponent e : element.getQualification()) 55776 composePractitionerQualificationComponent("qualification", e); 55777 } 55778 if (element.hasCommunication()) { 55779 for (Practitioner.PractitionerCommunicationComponent e : element.getCommunication()) 55780 composePractitionerCommunicationComponent("communication", e); 55781 } 55782 } 55783 55784 protected void composePractitionerQualificationComponent(String name, Practitioner.PractitionerQualificationComponent element) throws IOException { 55785 if (element != null) { 55786 composeElementAttributes(element); 55787 xml.enter(FHIR_NS, name); 55788 composePractitionerQualificationComponentElements(element); 55789 composeElementClose(element); 55790 xml.exit(FHIR_NS, name); 55791 } 55792 } 55793 55794 protected void composePractitionerQualificationComponentElements(Practitioner.PractitionerQualificationComponent element) throws IOException { 55795 composeBackboneElementElements(element); 55796 if (element.hasIdentifier()) { 55797 for (Identifier e : element.getIdentifier()) 55798 composeIdentifier("identifier", e); 55799 } 55800 if (element.hasCode()) { 55801 composeCodeableConcept("code", element.getCode()); 55802 } 55803 if (element.hasPeriod()) { 55804 composePeriod("period", element.getPeriod()); 55805 } 55806 if (element.hasIssuer()) { 55807 composeReference("issuer", element.getIssuer()); 55808 } 55809 } 55810 55811 protected void composePractitionerCommunicationComponent(String name, Practitioner.PractitionerCommunicationComponent element) throws IOException { 55812 if (element != null) { 55813 composeElementAttributes(element); 55814 xml.enter(FHIR_NS, name); 55815 composePractitionerCommunicationComponentElements(element); 55816 composeElementClose(element); 55817 xml.exit(FHIR_NS, name); 55818 } 55819 } 55820 55821 protected void composePractitionerCommunicationComponentElements(Practitioner.PractitionerCommunicationComponent element) throws IOException { 55822 composeBackboneElementElements(element); 55823 if (element.hasLanguage()) { 55824 composeCodeableConcept("language", element.getLanguage()); 55825 } 55826 if (element.hasPreferredElement()) { 55827 composeBoolean("preferred", element.getPreferredElement()); 55828 } 55829 } 55830 55831 protected void composePractitionerRole(String name, PractitionerRole element) throws IOException { 55832 if (element != null) { 55833 composeResourceAttributes(element); 55834 xml.enter(FHIR_NS, name); 55835 composePractitionerRoleElements(element); 55836 composeElementClose(element); 55837 xml.exit(FHIR_NS, name); 55838 } 55839 } 55840 55841 protected void composePractitionerRoleElements(PractitionerRole element) throws IOException { 55842 composeDomainResourceElements(element); 55843 if (element.hasIdentifier()) { 55844 for (Identifier e : element.getIdentifier()) 55845 composeIdentifier("identifier", e); 55846 } 55847 if (element.hasActiveElement()) { 55848 composeBoolean("active", element.getActiveElement()); 55849 } 55850 if (element.hasPeriod()) { 55851 composePeriod("period", element.getPeriod()); 55852 } 55853 if (element.hasPractitioner()) { 55854 composeReference("practitioner", element.getPractitioner()); 55855 } 55856 if (element.hasOrganization()) { 55857 composeReference("organization", element.getOrganization()); 55858 } 55859 if (element.hasCode()) { 55860 for (CodeableConcept e : element.getCode()) 55861 composeCodeableConcept("code", e); 55862 } 55863 if (element.hasSpecialty()) { 55864 for (CodeableConcept e : element.getSpecialty()) 55865 composeCodeableConcept("specialty", e); 55866 } 55867 if (element.hasLocation()) { 55868 for (Reference e : element.getLocation()) 55869 composeReference("location", e); 55870 } 55871 if (element.hasHealthcareService()) { 55872 for (Reference e : element.getHealthcareService()) 55873 composeReference("healthcareService", e); 55874 } 55875 if (element.hasContact()) { 55876 for (ExtendedContactDetail e : element.getContact()) 55877 composeExtendedContactDetail("contact", e); 55878 } 55879 if (element.hasCharacteristic()) { 55880 for (CodeableConcept e : element.getCharacteristic()) 55881 composeCodeableConcept("characteristic", e); 55882 } 55883 if (element.hasCommunication()) { 55884 for (CodeableConcept e : element.getCommunication()) 55885 composeCodeableConcept("communication", e); 55886 } 55887 if (element.hasAvailability()) { 55888 for (Availability e : element.getAvailability()) 55889 composeAvailability("availability", e); 55890 } 55891 if (element.hasEndpoint()) { 55892 for (Reference e : element.getEndpoint()) 55893 composeReference("endpoint", e); 55894 } 55895 } 55896 55897 protected void composeProcedure(String name, Procedure element) throws IOException { 55898 if (element != null) { 55899 composeResourceAttributes(element); 55900 xml.enter(FHIR_NS, name); 55901 composeProcedureElements(element); 55902 composeElementClose(element); 55903 xml.exit(FHIR_NS, name); 55904 } 55905 } 55906 55907 protected void composeProcedureElements(Procedure element) throws IOException { 55908 composeDomainResourceElements(element); 55909 if (element.hasIdentifier()) { 55910 for (Identifier e : element.getIdentifier()) 55911 composeIdentifier("identifier", e); 55912 } 55913 if (element.hasInstantiatesCanonical()) { 55914 for (CanonicalType e : element.getInstantiatesCanonical()) 55915 composeCanonical("instantiatesCanonical", e); 55916 } 55917 if (element.hasInstantiatesUri()) { 55918 for (UriType e : element.getInstantiatesUri()) 55919 composeUri("instantiatesUri", e); 55920 } 55921 if (element.hasBasedOn()) { 55922 for (Reference e : element.getBasedOn()) 55923 composeReference("basedOn", e); 55924 } 55925 if (element.hasPartOf()) { 55926 for (Reference e : element.getPartOf()) 55927 composeReference("partOf", e); 55928 } 55929 if (element.hasStatusElement()) 55930 composeEnumeration("status", element.getStatusElement(), new Enumerations.EventStatusEnumFactory()); 55931 if (element.hasStatusReason()) { 55932 composeCodeableConcept("statusReason", element.getStatusReason()); 55933 } 55934 if (element.hasCategory()) { 55935 for (CodeableConcept e : element.getCategory()) 55936 composeCodeableConcept("category", e); 55937 } 55938 if (element.hasCode()) { 55939 composeCodeableConcept("code", element.getCode()); 55940 } 55941 if (element.hasSubject()) { 55942 composeReference("subject", element.getSubject()); 55943 } 55944 if (element.hasFocus()) { 55945 composeReference("focus", element.getFocus()); 55946 } 55947 if (element.hasEncounter()) { 55948 composeReference("encounter", element.getEncounter()); 55949 } 55950 if (element.hasOccurrence()) { 55951 composeType("occurrence", element.getOccurrence()); 55952 } if (element.hasRecordedElement()) { 55953 composeDateTime("recorded", element.getRecordedElement()); 55954 } 55955 if (element.hasRecorder()) { 55956 composeReference("recorder", element.getRecorder()); 55957 } 55958 if (element.hasReported()) { 55959 composeType("reported", element.getReported()); 55960 } if (element.hasPerformer()) { 55961 for (Procedure.ProcedurePerformerComponent e : element.getPerformer()) 55962 composeProcedurePerformerComponent("performer", e); 55963 } 55964 if (element.hasLocation()) { 55965 composeReference("location", element.getLocation()); 55966 } 55967 if (element.hasReason()) { 55968 for (CodeableReference e : element.getReason()) 55969 composeCodeableReference("reason", e); 55970 } 55971 if (element.hasBodySite()) { 55972 for (CodeableConcept e : element.getBodySite()) 55973 composeCodeableConcept("bodySite", e); 55974 } 55975 if (element.hasOutcome()) { 55976 composeCodeableConcept("outcome", element.getOutcome()); 55977 } 55978 if (element.hasReport()) { 55979 for (Reference e : element.getReport()) 55980 composeReference("report", e); 55981 } 55982 if (element.hasComplication()) { 55983 for (CodeableReference e : element.getComplication()) 55984 composeCodeableReference("complication", e); 55985 } 55986 if (element.hasFollowUp()) { 55987 for (CodeableConcept e : element.getFollowUp()) 55988 composeCodeableConcept("followUp", e); 55989 } 55990 if (element.hasNote()) { 55991 for (Annotation e : element.getNote()) 55992 composeAnnotation("note", e); 55993 } 55994 if (element.hasFocalDevice()) { 55995 for (Procedure.ProcedureFocalDeviceComponent e : element.getFocalDevice()) 55996 composeProcedureFocalDeviceComponent("focalDevice", e); 55997 } 55998 if (element.hasUsed()) { 55999 for (CodeableReference e : element.getUsed()) 56000 composeCodeableReference("used", e); 56001 } 56002 if (element.hasSupportingInfo()) { 56003 for (Reference e : element.getSupportingInfo()) 56004 composeReference("supportingInfo", e); 56005 } 56006 } 56007 56008 protected void composeProcedurePerformerComponent(String name, Procedure.ProcedurePerformerComponent element) throws IOException { 56009 if (element != null) { 56010 composeElementAttributes(element); 56011 xml.enter(FHIR_NS, name); 56012 composeProcedurePerformerComponentElements(element); 56013 composeElementClose(element); 56014 xml.exit(FHIR_NS, name); 56015 } 56016 } 56017 56018 protected void composeProcedurePerformerComponentElements(Procedure.ProcedurePerformerComponent element) throws IOException { 56019 composeBackboneElementElements(element); 56020 if (element.hasFunction()) { 56021 composeCodeableConcept("function", element.getFunction()); 56022 } 56023 if (element.hasActor()) { 56024 composeReference("actor", element.getActor()); 56025 } 56026 if (element.hasOnBehalfOf()) { 56027 composeReference("onBehalfOf", element.getOnBehalfOf()); 56028 } 56029 if (element.hasPeriod()) { 56030 composePeriod("period", element.getPeriod()); 56031 } 56032 } 56033 56034 protected void composeProcedureFocalDeviceComponent(String name, Procedure.ProcedureFocalDeviceComponent element) throws IOException { 56035 if (element != null) { 56036 composeElementAttributes(element); 56037 xml.enter(FHIR_NS, name); 56038 composeProcedureFocalDeviceComponentElements(element); 56039 composeElementClose(element); 56040 xml.exit(FHIR_NS, name); 56041 } 56042 } 56043 56044 protected void composeProcedureFocalDeviceComponentElements(Procedure.ProcedureFocalDeviceComponent element) throws IOException { 56045 composeBackboneElementElements(element); 56046 if (element.hasAction()) { 56047 composeCodeableConcept("action", element.getAction()); 56048 } 56049 if (element.hasManipulated()) { 56050 composeReference("manipulated", element.getManipulated()); 56051 } 56052 } 56053 56054 protected void composeProvenance(String name, Provenance element) throws IOException { 56055 if (element != null) { 56056 composeResourceAttributes(element); 56057 xml.enter(FHIR_NS, name); 56058 composeProvenanceElements(element); 56059 composeElementClose(element); 56060 xml.exit(FHIR_NS, name); 56061 } 56062 } 56063 56064 protected void composeProvenanceElements(Provenance element) throws IOException { 56065 composeDomainResourceElements(element); 56066 if (element.hasTarget()) { 56067 for (Reference e : element.getTarget()) 56068 composeReference("target", e); 56069 } 56070 if (element.hasOccurred()) { 56071 composeType("occurred", element.getOccurred()); 56072 } if (element.hasRecordedElement()) { 56073 composeInstant("recorded", element.getRecordedElement()); 56074 } 56075 if (element.hasPolicy()) { 56076 for (UriType e : element.getPolicy()) 56077 composeUri("policy", e); 56078 } 56079 if (element.hasLocation()) { 56080 composeReference("location", element.getLocation()); 56081 } 56082 if (element.hasAuthorization()) { 56083 for (CodeableReference e : element.getAuthorization()) 56084 composeCodeableReference("authorization", e); 56085 } 56086 if (element.hasActivity()) { 56087 composeCodeableConcept("activity", element.getActivity()); 56088 } 56089 if (element.hasBasedOn()) { 56090 for (Reference e : element.getBasedOn()) 56091 composeReference("basedOn", e); 56092 } 56093 if (element.hasPatient()) { 56094 composeReference("patient", element.getPatient()); 56095 } 56096 if (element.hasEncounter()) { 56097 composeReference("encounter", element.getEncounter()); 56098 } 56099 if (element.hasAgent()) { 56100 for (Provenance.ProvenanceAgentComponent e : element.getAgent()) 56101 composeProvenanceAgentComponent("agent", e); 56102 } 56103 if (element.hasEntity()) { 56104 for (Provenance.ProvenanceEntityComponent e : element.getEntity()) 56105 composeProvenanceEntityComponent("entity", e); 56106 } 56107 if (element.hasSignature()) { 56108 for (Signature e : element.getSignature()) 56109 composeSignature("signature", e); 56110 } 56111 } 56112 56113 protected void composeProvenanceAgentComponent(String name, Provenance.ProvenanceAgentComponent element) throws IOException { 56114 if (element != null) { 56115 composeElementAttributes(element); 56116 xml.enter(FHIR_NS, name); 56117 composeProvenanceAgentComponentElements(element); 56118 composeElementClose(element); 56119 xml.exit(FHIR_NS, name); 56120 } 56121 } 56122 56123 protected void composeProvenanceAgentComponentElements(Provenance.ProvenanceAgentComponent element) throws IOException { 56124 composeBackboneElementElements(element); 56125 if (element.hasType()) { 56126 composeCodeableConcept("type", element.getType()); 56127 } 56128 if (element.hasRole()) { 56129 for (CodeableConcept e : element.getRole()) 56130 composeCodeableConcept("role", e); 56131 } 56132 if (element.hasWho()) { 56133 composeReference("who", element.getWho()); 56134 } 56135 if (element.hasOnBehalfOf()) { 56136 composeReference("onBehalfOf", element.getOnBehalfOf()); 56137 } 56138 } 56139 56140 protected void composeProvenanceEntityComponent(String name, Provenance.ProvenanceEntityComponent element) throws IOException { 56141 if (element != null) { 56142 composeElementAttributes(element); 56143 xml.enter(FHIR_NS, name); 56144 composeProvenanceEntityComponentElements(element); 56145 composeElementClose(element); 56146 xml.exit(FHIR_NS, name); 56147 } 56148 } 56149 56150 protected void composeProvenanceEntityComponentElements(Provenance.ProvenanceEntityComponent element) throws IOException { 56151 composeBackboneElementElements(element); 56152 if (element.hasRoleElement()) 56153 composeEnumeration("role", element.getRoleElement(), new Provenance.ProvenanceEntityRoleEnumFactory()); 56154 if (element.hasWhat()) { 56155 composeReference("what", element.getWhat()); 56156 } 56157 if (element.hasAgent()) { 56158 for (Provenance.ProvenanceAgentComponent e : element.getAgent()) 56159 composeProvenanceAgentComponent("agent", e); 56160 } 56161 } 56162 56163 protected void composeQuestionnaire(String name, Questionnaire element) throws IOException { 56164 if (element != null) { 56165 composeResourceAttributes(element); 56166 xml.enter(FHIR_NS, name); 56167 composeQuestionnaireElements(element); 56168 composeElementClose(element); 56169 xml.exit(FHIR_NS, name); 56170 } 56171 } 56172 56173 protected void composeQuestionnaireElements(Questionnaire element) throws IOException { 56174 composeMetadataResourceElements(element); 56175 if (element.hasUrlElement()) { 56176 composeUri("url", element.getUrlElement()); 56177 } 56178 if (element.hasIdentifier()) { 56179 for (Identifier e : element.getIdentifier()) 56180 composeIdentifier("identifier", e); 56181 } 56182 if (element.hasVersionElement()) { 56183 composeString("version", element.getVersionElement()); 56184 } 56185 if (element.hasVersionAlgorithm()) { 56186 composeType("versionAlgorithm", element.getVersionAlgorithm()); 56187 } if (element.hasNameElement()) { 56188 composeString("name", element.getNameElement()); 56189 } 56190 if (element.hasTitleElement()) { 56191 composeString("title", element.getTitleElement()); 56192 } 56193 if (element.hasDerivedFrom()) { 56194 for (CanonicalType e : element.getDerivedFrom()) 56195 composeCanonical("derivedFrom", e); 56196 } 56197 if (element.hasStatusElement()) 56198 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 56199 if (element.hasExperimentalElement()) { 56200 composeBoolean("experimental", element.getExperimentalElement()); 56201 } 56202 if (element.hasSubjectType()) { 56203 for (CodeType e : element.getSubjectType()) 56204 composeCode("subjectType", e); 56205 } 56206 if (element.hasDateElement()) { 56207 composeDateTime("date", element.getDateElement()); 56208 } 56209 if (element.hasPublisherElement()) { 56210 composeString("publisher", element.getPublisherElement()); 56211 } 56212 if (element.hasContact()) { 56213 for (ContactDetail e : element.getContact()) 56214 composeContactDetail("contact", e); 56215 } 56216 if (element.hasDescriptionElement()) { 56217 composeMarkdown("description", element.getDescriptionElement()); 56218 } 56219 if (element.hasUseContext()) { 56220 for (UsageContext e : element.getUseContext()) 56221 composeUsageContext("useContext", e); 56222 } 56223 if (element.hasJurisdiction()) { 56224 for (CodeableConcept e : element.getJurisdiction()) 56225 composeCodeableConcept("jurisdiction", e); 56226 } 56227 if (element.hasPurposeElement()) { 56228 composeMarkdown("purpose", element.getPurposeElement()); 56229 } 56230 if (element.hasCopyrightElement()) { 56231 composeMarkdown("copyright", element.getCopyrightElement()); 56232 } 56233 if (element.hasCopyrightLabelElement()) { 56234 composeString("copyrightLabel", element.getCopyrightLabelElement()); 56235 } 56236 if (element.hasApprovalDateElement()) { 56237 composeDate("approvalDate", element.getApprovalDateElement()); 56238 } 56239 if (element.hasLastReviewDateElement()) { 56240 composeDate("lastReviewDate", element.getLastReviewDateElement()); 56241 } 56242 if (element.hasEffectivePeriod()) { 56243 composePeriod("effectivePeriod", element.getEffectivePeriod()); 56244 } 56245 if (element.hasCode()) { 56246 for (Coding e : element.getCode()) 56247 composeCoding("code", e); 56248 } 56249 if (element.hasItem()) { 56250 for (Questionnaire.QuestionnaireItemComponent e : element.getItem()) 56251 composeQuestionnaireItemComponent("item", e); 56252 } 56253 } 56254 56255 protected void composeQuestionnaireItemComponent(String name, Questionnaire.QuestionnaireItemComponent element) throws IOException { 56256 if (element != null) { 56257 composeElementAttributes(element); 56258 xml.enter(FHIR_NS, name); 56259 composeQuestionnaireItemComponentElements(element); 56260 composeElementClose(element); 56261 xml.exit(FHIR_NS, name); 56262 } 56263 } 56264 56265 protected void composeQuestionnaireItemComponentElements(Questionnaire.QuestionnaireItemComponent element) throws IOException { 56266 composeBackboneElementElements(element); 56267 if (element.hasLinkIdElement()) { 56268 composeString("linkId", element.getLinkIdElement()); 56269 } 56270 if (element.hasDefinitionElement()) { 56271 composeUri("definition", element.getDefinitionElement()); 56272 } 56273 if (element.hasCode()) { 56274 for (Coding e : element.getCode()) 56275 composeCoding("code", e); 56276 } 56277 if (element.hasPrefixElement()) { 56278 composeString("prefix", element.getPrefixElement()); 56279 } 56280 if (element.hasTextElement()) { 56281 composeString("text", element.getTextElement()); 56282 } 56283 if (element.hasTypeElement()) 56284 composeEnumeration("type", element.getTypeElement(), new Questionnaire.QuestionnaireItemTypeEnumFactory()); 56285 if (element.hasEnableWhen()) { 56286 for (Questionnaire.QuestionnaireItemEnableWhenComponent e : element.getEnableWhen()) 56287 composeQuestionnaireItemEnableWhenComponent("enableWhen", e); 56288 } 56289 if (element.hasEnableBehaviorElement()) 56290 composeEnumeration("enableBehavior", element.getEnableBehaviorElement(), new Questionnaire.EnableWhenBehaviorEnumFactory()); 56291 if (element.hasDisabledDisplayElement()) 56292 composeEnumeration("disabledDisplay", element.getDisabledDisplayElement(), new Questionnaire.QuestionnaireItemDisabledDisplayEnumFactory()); 56293 if (element.hasRequiredElement()) { 56294 composeBoolean("required", element.getRequiredElement()); 56295 } 56296 if (element.hasRepeatsElement()) { 56297 composeBoolean("repeats", element.getRepeatsElement()); 56298 } 56299 if (element.hasReadOnlyElement()) { 56300 composeBoolean("readOnly", element.getReadOnlyElement()); 56301 } 56302 if (element.hasMaxLengthElement()) { 56303 composeInteger("maxLength", element.getMaxLengthElement()); 56304 } 56305 if (element.hasAnswerConstraintElement()) 56306 composeEnumeration("answerConstraint", element.getAnswerConstraintElement(), new Questionnaire.QuestionnaireAnswerConstraintEnumFactory()); 56307 if (element.hasAnswerValueSetElement()) { 56308 composeCanonical("answerValueSet", element.getAnswerValueSetElement()); 56309 } 56310 if (element.hasAnswerOption()) { 56311 for (Questionnaire.QuestionnaireItemAnswerOptionComponent e : element.getAnswerOption()) 56312 composeQuestionnaireItemAnswerOptionComponent("answerOption", e); 56313 } 56314 if (element.hasInitial()) { 56315 for (Questionnaire.QuestionnaireItemInitialComponent e : element.getInitial()) 56316 composeQuestionnaireItemInitialComponent("initial", e); 56317 } 56318 if (element.hasItem()) { 56319 for (Questionnaire.QuestionnaireItemComponent e : element.getItem()) 56320 composeQuestionnaireItemComponent("item", e); 56321 } 56322 } 56323 56324 protected void composeQuestionnaireItemEnableWhenComponent(String name, Questionnaire.QuestionnaireItemEnableWhenComponent element) throws IOException { 56325 if (element != null) { 56326 composeElementAttributes(element); 56327 xml.enter(FHIR_NS, name); 56328 composeQuestionnaireItemEnableWhenComponentElements(element); 56329 composeElementClose(element); 56330 xml.exit(FHIR_NS, name); 56331 } 56332 } 56333 56334 protected void composeQuestionnaireItemEnableWhenComponentElements(Questionnaire.QuestionnaireItemEnableWhenComponent element) throws IOException { 56335 composeBackboneElementElements(element); 56336 if (element.hasQuestionElement()) { 56337 composeString("question", element.getQuestionElement()); 56338 } 56339 if (element.hasOperatorElement()) 56340 composeEnumeration("operator", element.getOperatorElement(), new Questionnaire.QuestionnaireItemOperatorEnumFactory()); 56341 if (element.hasAnswer()) { 56342 composeType("answer", element.getAnswer()); 56343 } } 56344 56345 protected void composeQuestionnaireItemAnswerOptionComponent(String name, Questionnaire.QuestionnaireItemAnswerOptionComponent element) throws IOException { 56346 if (element != null) { 56347 composeElementAttributes(element); 56348 xml.enter(FHIR_NS, name); 56349 composeQuestionnaireItemAnswerOptionComponentElements(element); 56350 composeElementClose(element); 56351 xml.exit(FHIR_NS, name); 56352 } 56353 } 56354 56355 protected void composeQuestionnaireItemAnswerOptionComponentElements(Questionnaire.QuestionnaireItemAnswerOptionComponent element) throws IOException { 56356 composeBackboneElementElements(element); 56357 if (element.hasValue()) { 56358 composeType("value", element.getValue()); 56359 } if (element.hasInitialSelectedElement()) { 56360 composeBoolean("initialSelected", element.getInitialSelectedElement()); 56361 } 56362 } 56363 56364 protected void composeQuestionnaireItemInitialComponent(String name, Questionnaire.QuestionnaireItemInitialComponent element) throws IOException { 56365 if (element != null) { 56366 composeElementAttributes(element); 56367 xml.enter(FHIR_NS, name); 56368 composeQuestionnaireItemInitialComponentElements(element); 56369 composeElementClose(element); 56370 xml.exit(FHIR_NS, name); 56371 } 56372 } 56373 56374 protected void composeQuestionnaireItemInitialComponentElements(Questionnaire.QuestionnaireItemInitialComponent element) throws IOException { 56375 composeBackboneElementElements(element); 56376 if (element.hasValue()) { 56377 composeType("value", element.getValue()); 56378 } } 56379 56380 protected void composeQuestionnaireResponse(String name, QuestionnaireResponse element) throws IOException { 56381 if (element != null) { 56382 composeResourceAttributes(element); 56383 xml.enter(FHIR_NS, name); 56384 composeQuestionnaireResponseElements(element); 56385 composeElementClose(element); 56386 xml.exit(FHIR_NS, name); 56387 } 56388 } 56389 56390 protected void composeQuestionnaireResponseElements(QuestionnaireResponse element) throws IOException { 56391 composeDomainResourceElements(element); 56392 if (element.hasIdentifier()) { 56393 for (Identifier e : element.getIdentifier()) 56394 composeIdentifier("identifier", e); 56395 } 56396 if (element.hasBasedOn()) { 56397 for (Reference e : element.getBasedOn()) 56398 composeReference("basedOn", e); 56399 } 56400 if (element.hasPartOf()) { 56401 for (Reference e : element.getPartOf()) 56402 composeReference("partOf", e); 56403 } 56404 if (element.hasQuestionnaireElement()) { 56405 composeCanonical("questionnaire", element.getQuestionnaireElement()); 56406 } 56407 if (element.hasStatusElement()) 56408 composeEnumeration("status", element.getStatusElement(), new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory()); 56409 if (element.hasSubject()) { 56410 composeReference("subject", element.getSubject()); 56411 } 56412 if (element.hasEncounter()) { 56413 composeReference("encounter", element.getEncounter()); 56414 } 56415 if (element.hasAuthoredElement()) { 56416 composeDateTime("authored", element.getAuthoredElement()); 56417 } 56418 if (element.hasAuthor()) { 56419 composeReference("author", element.getAuthor()); 56420 } 56421 if (element.hasSource()) { 56422 composeReference("source", element.getSource()); 56423 } 56424 if (element.hasItem()) { 56425 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 56426 composeQuestionnaireResponseItemComponent("item", e); 56427 } 56428 } 56429 56430 protected void composeQuestionnaireResponseItemComponent(String name, QuestionnaireResponse.QuestionnaireResponseItemComponent element) throws IOException { 56431 if (element != null) { 56432 composeElementAttributes(element); 56433 xml.enter(FHIR_NS, name); 56434 composeQuestionnaireResponseItemComponentElements(element); 56435 composeElementClose(element); 56436 xml.exit(FHIR_NS, name); 56437 } 56438 } 56439 56440 protected void composeQuestionnaireResponseItemComponentElements(QuestionnaireResponse.QuestionnaireResponseItemComponent element) throws IOException { 56441 composeBackboneElementElements(element); 56442 if (element.hasLinkIdElement()) { 56443 composeString("linkId", element.getLinkIdElement()); 56444 } 56445 if (element.hasDefinitionElement()) { 56446 composeUri("definition", element.getDefinitionElement()); 56447 } 56448 if (element.hasTextElement()) { 56449 composeString("text", element.getTextElement()); 56450 } 56451 if (element.hasAnswer()) { 56452 for (QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent e : element.getAnswer()) 56453 composeQuestionnaireResponseItemAnswerComponent("answer", e); 56454 } 56455 if (element.hasItem()) { 56456 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 56457 composeQuestionnaireResponseItemComponent("item", e); 56458 } 56459 } 56460 56461 protected void composeQuestionnaireResponseItemAnswerComponent(String name, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element) throws IOException { 56462 if (element != null) { 56463 composeElementAttributes(element); 56464 xml.enter(FHIR_NS, name); 56465 composeQuestionnaireResponseItemAnswerComponentElements(element); 56466 composeElementClose(element); 56467 xml.exit(FHIR_NS, name); 56468 } 56469 } 56470 56471 protected void composeQuestionnaireResponseItemAnswerComponentElements(QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element) throws IOException { 56472 composeBackboneElementElements(element); 56473 if (element.hasValue()) { 56474 composeType("value", element.getValue()); 56475 } if (element.hasItem()) { 56476 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 56477 composeQuestionnaireResponseItemComponent("item", e); 56478 } 56479 } 56480 56481 protected void composeRegulatedAuthorization(String name, RegulatedAuthorization element) throws IOException { 56482 if (element != null) { 56483 composeResourceAttributes(element); 56484 xml.enter(FHIR_NS, name); 56485 composeRegulatedAuthorizationElements(element); 56486 composeElementClose(element); 56487 xml.exit(FHIR_NS, name); 56488 } 56489 } 56490 56491 protected void composeRegulatedAuthorizationElements(RegulatedAuthorization element) throws IOException { 56492 composeDomainResourceElements(element); 56493 if (element.hasIdentifier()) { 56494 for (Identifier e : element.getIdentifier()) 56495 composeIdentifier("identifier", e); 56496 } 56497 if (element.hasSubject()) { 56498 for (Reference e : element.getSubject()) 56499 composeReference("subject", e); 56500 } 56501 if (element.hasType()) { 56502 composeCodeableConcept("type", element.getType()); 56503 } 56504 if (element.hasDescriptionElement()) { 56505 composeMarkdown("description", element.getDescriptionElement()); 56506 } 56507 if (element.hasRegion()) { 56508 for (CodeableConcept e : element.getRegion()) 56509 composeCodeableConcept("region", e); 56510 } 56511 if (element.hasStatus()) { 56512 composeCodeableConcept("status", element.getStatus()); 56513 } 56514 if (element.hasStatusDateElement()) { 56515 composeDateTime("statusDate", element.getStatusDateElement()); 56516 } 56517 if (element.hasValidityPeriod()) { 56518 composePeriod("validityPeriod", element.getValidityPeriod()); 56519 } 56520 if (element.hasIndication()) { 56521 for (CodeableReference e : element.getIndication()) 56522 composeCodeableReference("indication", e); 56523 } 56524 if (element.hasIntendedUse()) { 56525 composeCodeableConcept("intendedUse", element.getIntendedUse()); 56526 } 56527 if (element.hasBasis()) { 56528 for (CodeableConcept e : element.getBasis()) 56529 composeCodeableConcept("basis", e); 56530 } 56531 if (element.hasHolder()) { 56532 composeReference("holder", element.getHolder()); 56533 } 56534 if (element.hasRegulator()) { 56535 composeReference("regulator", element.getRegulator()); 56536 } 56537 if (element.hasAttachedDocument()) { 56538 for (Reference e : element.getAttachedDocument()) 56539 composeReference("attachedDocument", e); 56540 } 56541 if (element.hasCase()) { 56542 composeRegulatedAuthorizationCaseComponent("case", element.getCase()); 56543 } 56544 } 56545 56546 protected void composeRegulatedAuthorizationCaseComponent(String name, RegulatedAuthorization.RegulatedAuthorizationCaseComponent element) throws IOException { 56547 if (element != null) { 56548 composeElementAttributes(element); 56549 xml.enter(FHIR_NS, name); 56550 composeRegulatedAuthorizationCaseComponentElements(element); 56551 composeElementClose(element); 56552 xml.exit(FHIR_NS, name); 56553 } 56554 } 56555 56556 protected void composeRegulatedAuthorizationCaseComponentElements(RegulatedAuthorization.RegulatedAuthorizationCaseComponent element) throws IOException { 56557 composeBackboneElementElements(element); 56558 if (element.hasIdentifier()) { 56559 composeIdentifier("identifier", element.getIdentifier()); 56560 } 56561 if (element.hasType()) { 56562 composeCodeableConcept("type", element.getType()); 56563 } 56564 if (element.hasStatus()) { 56565 composeCodeableConcept("status", element.getStatus()); 56566 } 56567 if (element.hasDate()) { 56568 composeType("date", element.getDate()); 56569 } if (element.hasApplication()) { 56570 for (RegulatedAuthorization.RegulatedAuthorizationCaseComponent e : element.getApplication()) 56571 composeRegulatedAuthorizationCaseComponent("application", e); 56572 } 56573 } 56574 56575 protected void composeRelatedPerson(String name, RelatedPerson element) throws IOException { 56576 if (element != null) { 56577 composeResourceAttributes(element); 56578 xml.enter(FHIR_NS, name); 56579 composeRelatedPersonElements(element); 56580 composeElementClose(element); 56581 xml.exit(FHIR_NS, name); 56582 } 56583 } 56584 56585 protected void composeRelatedPersonElements(RelatedPerson element) throws IOException { 56586 composeDomainResourceElements(element); 56587 if (element.hasIdentifier()) { 56588 for (Identifier e : element.getIdentifier()) 56589 composeIdentifier("identifier", e); 56590 } 56591 if (element.hasActiveElement()) { 56592 composeBoolean("active", element.getActiveElement()); 56593 } 56594 if (element.hasPatient()) { 56595 composeReference("patient", element.getPatient()); 56596 } 56597 if (element.hasRelationship()) { 56598 for (CodeableConcept e : element.getRelationship()) 56599 composeCodeableConcept("relationship", e); 56600 } 56601 if (element.hasName()) { 56602 for (HumanName e : element.getName()) 56603 composeHumanName("name", e); 56604 } 56605 if (element.hasTelecom()) { 56606 for (ContactPoint e : element.getTelecom()) 56607 composeContactPoint("telecom", e); 56608 } 56609 if (element.hasGenderElement()) 56610 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 56611 if (element.hasBirthDateElement()) { 56612 composeDate("birthDate", element.getBirthDateElement()); 56613 } 56614 if (element.hasAddress()) { 56615 for (Address e : element.getAddress()) 56616 composeAddress("address", e); 56617 } 56618 if (element.hasPhoto()) { 56619 for (Attachment e : element.getPhoto()) 56620 composeAttachment("photo", e); 56621 } 56622 if (element.hasPeriod()) { 56623 composePeriod("period", element.getPeriod()); 56624 } 56625 if (element.hasCommunication()) { 56626 for (RelatedPerson.RelatedPersonCommunicationComponent e : element.getCommunication()) 56627 composeRelatedPersonCommunicationComponent("communication", e); 56628 } 56629 } 56630 56631 protected void composeRelatedPersonCommunicationComponent(String name, RelatedPerson.RelatedPersonCommunicationComponent element) throws IOException { 56632 if (element != null) { 56633 composeElementAttributes(element); 56634 xml.enter(FHIR_NS, name); 56635 composeRelatedPersonCommunicationComponentElements(element); 56636 composeElementClose(element); 56637 xml.exit(FHIR_NS, name); 56638 } 56639 } 56640 56641 protected void composeRelatedPersonCommunicationComponentElements(RelatedPerson.RelatedPersonCommunicationComponent element) throws IOException { 56642 composeBackboneElementElements(element); 56643 if (element.hasLanguage()) { 56644 composeCodeableConcept("language", element.getLanguage()); 56645 } 56646 if (element.hasPreferredElement()) { 56647 composeBoolean("preferred", element.getPreferredElement()); 56648 } 56649 } 56650 56651 protected void composeRequestOrchestration(String name, RequestOrchestration element) throws IOException { 56652 if (element != null) { 56653 composeResourceAttributes(element); 56654 xml.enter(FHIR_NS, name); 56655 composeRequestOrchestrationElements(element); 56656 composeElementClose(element); 56657 xml.exit(FHIR_NS, name); 56658 } 56659 } 56660 56661 protected void composeRequestOrchestrationElements(RequestOrchestration element) throws IOException { 56662 composeDomainResourceElements(element); 56663 if (element.hasIdentifier()) { 56664 for (Identifier e : element.getIdentifier()) 56665 composeIdentifier("identifier", e); 56666 } 56667 if (element.hasInstantiatesCanonical()) { 56668 for (CanonicalType e : element.getInstantiatesCanonical()) 56669 composeCanonical("instantiatesCanonical", e); 56670 } 56671 if (element.hasInstantiatesUri()) { 56672 for (UriType e : element.getInstantiatesUri()) 56673 composeUri("instantiatesUri", e); 56674 } 56675 if (element.hasBasedOn()) { 56676 for (Reference e : element.getBasedOn()) 56677 composeReference("basedOn", e); 56678 } 56679 if (element.hasReplaces()) { 56680 for (Reference e : element.getReplaces()) 56681 composeReference("replaces", e); 56682 } 56683 if (element.hasGroupIdentifier()) { 56684 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 56685 } 56686 if (element.hasStatusElement()) 56687 composeEnumeration("status", element.getStatusElement(), new Enumerations.RequestStatusEnumFactory()); 56688 if (element.hasIntentElement()) 56689 composeEnumeration("intent", element.getIntentElement(), new Enumerations.RequestIntentEnumFactory()); 56690 if (element.hasPriorityElement()) 56691 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 56692 if (element.hasCode()) { 56693 composeCodeableConcept("code", element.getCode()); 56694 } 56695 if (element.hasSubject()) { 56696 composeReference("subject", element.getSubject()); 56697 } 56698 if (element.hasEncounter()) { 56699 composeReference("encounter", element.getEncounter()); 56700 } 56701 if (element.hasAuthoredOnElement()) { 56702 composeDateTime("authoredOn", element.getAuthoredOnElement()); 56703 } 56704 if (element.hasAuthor()) { 56705 composeReference("author", element.getAuthor()); 56706 } 56707 if (element.hasReason()) { 56708 for (CodeableReference e : element.getReason()) 56709 composeCodeableReference("reason", e); 56710 } 56711 if (element.hasGoal()) { 56712 for (Reference e : element.getGoal()) 56713 composeReference("goal", e); 56714 } 56715 if (element.hasNote()) { 56716 for (Annotation e : element.getNote()) 56717 composeAnnotation("note", e); 56718 } 56719 if (element.hasAction()) { 56720 for (RequestOrchestration.RequestOrchestrationActionComponent e : element.getAction()) 56721 composeRequestOrchestrationActionComponent("action", e); 56722 } 56723 } 56724 56725 protected void composeRequestOrchestrationActionComponent(String name, RequestOrchestration.RequestOrchestrationActionComponent element) throws IOException { 56726 if (element != null) { 56727 composeElementAttributes(element); 56728 xml.enter(FHIR_NS, name); 56729 composeRequestOrchestrationActionComponentElements(element); 56730 composeElementClose(element); 56731 xml.exit(FHIR_NS, name); 56732 } 56733 } 56734 56735 protected void composeRequestOrchestrationActionComponentElements(RequestOrchestration.RequestOrchestrationActionComponent element) throws IOException { 56736 composeBackboneElementElements(element); 56737 if (element.hasLinkIdElement()) { 56738 composeString("linkId", element.getLinkIdElement()); 56739 } 56740 if (element.hasPrefixElement()) { 56741 composeString("prefix", element.getPrefixElement()); 56742 } 56743 if (element.hasTitleElement()) { 56744 composeString("title", element.getTitleElement()); 56745 } 56746 if (element.hasDescriptionElement()) { 56747 composeMarkdown("description", element.getDescriptionElement()); 56748 } 56749 if (element.hasTextEquivalentElement()) { 56750 composeMarkdown("textEquivalent", element.getTextEquivalentElement()); 56751 } 56752 if (element.hasPriorityElement()) 56753 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 56754 if (element.hasCode()) { 56755 for (CodeableConcept e : element.getCode()) 56756 composeCodeableConcept("code", e); 56757 } 56758 if (element.hasDocumentation()) { 56759 for (RelatedArtifact e : element.getDocumentation()) 56760 composeRelatedArtifact("documentation", e); 56761 } 56762 if (element.hasGoal()) { 56763 for (Reference e : element.getGoal()) 56764 composeReference("goal", e); 56765 } 56766 if (element.hasCondition()) { 56767 for (RequestOrchestration.RequestOrchestrationActionConditionComponent e : element.getCondition()) 56768 composeRequestOrchestrationActionConditionComponent("condition", e); 56769 } 56770 if (element.hasInput()) { 56771 for (RequestOrchestration.RequestOrchestrationActionInputComponent e : element.getInput()) 56772 composeRequestOrchestrationActionInputComponent("input", e); 56773 } 56774 if (element.hasOutput()) { 56775 for (RequestOrchestration.RequestOrchestrationActionOutputComponent e : element.getOutput()) 56776 composeRequestOrchestrationActionOutputComponent("output", e); 56777 } 56778 if (element.hasRelatedAction()) { 56779 for (RequestOrchestration.RequestOrchestrationActionRelatedActionComponent e : element.getRelatedAction()) 56780 composeRequestOrchestrationActionRelatedActionComponent("relatedAction", e); 56781 } 56782 if (element.hasTiming()) { 56783 composeType("timing", element.getTiming()); 56784 } if (element.hasLocation()) { 56785 composeCodeableReference("location", element.getLocation()); 56786 } 56787 if (element.hasParticipant()) { 56788 for (RequestOrchestration.RequestOrchestrationActionParticipantComponent e : element.getParticipant()) 56789 composeRequestOrchestrationActionParticipantComponent("participant", e); 56790 } 56791 if (element.hasType()) { 56792 composeCodeableConcept("type", element.getType()); 56793 } 56794 if (element.hasGroupingBehaviorElement()) 56795 composeEnumeration("groupingBehavior", element.getGroupingBehaviorElement(), new Enumerations.ActionGroupingBehaviorEnumFactory()); 56796 if (element.hasSelectionBehaviorElement()) 56797 composeEnumeration("selectionBehavior", element.getSelectionBehaviorElement(), new Enumerations.ActionSelectionBehaviorEnumFactory()); 56798 if (element.hasRequiredBehaviorElement()) 56799 composeEnumeration("requiredBehavior", element.getRequiredBehaviorElement(), new Enumerations.ActionRequiredBehaviorEnumFactory()); 56800 if (element.hasPrecheckBehaviorElement()) 56801 composeEnumeration("precheckBehavior", element.getPrecheckBehaviorElement(), new Enumerations.ActionPrecheckBehaviorEnumFactory()); 56802 if (element.hasCardinalityBehaviorElement()) 56803 composeEnumeration("cardinalityBehavior", element.getCardinalityBehaviorElement(), new Enumerations.ActionCardinalityBehaviorEnumFactory()); 56804 if (element.hasResource()) { 56805 composeReference("resource", element.getResource()); 56806 } 56807 if (element.hasDefinition()) { 56808 composeType("definition", element.getDefinition()); 56809 } if (element.hasTransformElement()) { 56810 composeCanonical("transform", element.getTransformElement()); 56811 } 56812 if (element.hasDynamicValue()) { 56813 for (RequestOrchestration.RequestOrchestrationActionDynamicValueComponent e : element.getDynamicValue()) 56814 composeRequestOrchestrationActionDynamicValueComponent("dynamicValue", e); 56815 } 56816 if (element.hasAction()) { 56817 for (RequestOrchestration.RequestOrchestrationActionComponent e : element.getAction()) 56818 composeRequestOrchestrationActionComponent("action", e); 56819 } 56820 } 56821 56822 protected void composeRequestOrchestrationActionConditionComponent(String name, RequestOrchestration.RequestOrchestrationActionConditionComponent element) throws IOException { 56823 if (element != null) { 56824 composeElementAttributes(element); 56825 xml.enter(FHIR_NS, name); 56826 composeRequestOrchestrationActionConditionComponentElements(element); 56827 composeElementClose(element); 56828 xml.exit(FHIR_NS, name); 56829 } 56830 } 56831 56832 protected void composeRequestOrchestrationActionConditionComponentElements(RequestOrchestration.RequestOrchestrationActionConditionComponent element) throws IOException { 56833 composeBackboneElementElements(element); 56834 if (element.hasKindElement()) 56835 composeEnumeration("kind", element.getKindElement(), new Enumerations.ActionConditionKindEnumFactory()); 56836 if (element.hasExpression()) { 56837 composeExpression("expression", element.getExpression()); 56838 } 56839 } 56840 56841 protected void composeRequestOrchestrationActionInputComponent(String name, RequestOrchestration.RequestOrchestrationActionInputComponent element) throws IOException { 56842 if (element != null) { 56843 composeElementAttributes(element); 56844 xml.enter(FHIR_NS, name); 56845 composeRequestOrchestrationActionInputComponentElements(element); 56846 composeElementClose(element); 56847 xml.exit(FHIR_NS, name); 56848 } 56849 } 56850 56851 protected void composeRequestOrchestrationActionInputComponentElements(RequestOrchestration.RequestOrchestrationActionInputComponent element) throws IOException { 56852 composeBackboneElementElements(element); 56853 if (element.hasTitleElement()) { 56854 composeString("title", element.getTitleElement()); 56855 } 56856 if (element.hasRequirement()) { 56857 composeDataRequirement("requirement", element.getRequirement()); 56858 } 56859 if (element.hasRelatedDataElement()) { 56860 composeId("relatedData", element.getRelatedDataElement()); 56861 } 56862 } 56863 56864 protected void composeRequestOrchestrationActionOutputComponent(String name, RequestOrchestration.RequestOrchestrationActionOutputComponent element) throws IOException { 56865 if (element != null) { 56866 composeElementAttributes(element); 56867 xml.enter(FHIR_NS, name); 56868 composeRequestOrchestrationActionOutputComponentElements(element); 56869 composeElementClose(element); 56870 xml.exit(FHIR_NS, name); 56871 } 56872 } 56873 56874 protected void composeRequestOrchestrationActionOutputComponentElements(RequestOrchestration.RequestOrchestrationActionOutputComponent element) throws IOException { 56875 composeBackboneElementElements(element); 56876 if (element.hasTitleElement()) { 56877 composeString("title", element.getTitleElement()); 56878 } 56879 if (element.hasRequirement()) { 56880 composeDataRequirement("requirement", element.getRequirement()); 56881 } 56882 if (element.hasRelatedDataElement()) { 56883 composeString("relatedData", element.getRelatedDataElement()); 56884 } 56885 } 56886 56887 protected void composeRequestOrchestrationActionRelatedActionComponent(String name, RequestOrchestration.RequestOrchestrationActionRelatedActionComponent element) throws IOException { 56888 if (element != null) { 56889 composeElementAttributes(element); 56890 xml.enter(FHIR_NS, name); 56891 composeRequestOrchestrationActionRelatedActionComponentElements(element); 56892 composeElementClose(element); 56893 xml.exit(FHIR_NS, name); 56894 } 56895 } 56896 56897 protected void composeRequestOrchestrationActionRelatedActionComponentElements(RequestOrchestration.RequestOrchestrationActionRelatedActionComponent element) throws IOException { 56898 composeBackboneElementElements(element); 56899 if (element.hasTargetIdElement()) { 56900 composeId("targetId", element.getTargetIdElement()); 56901 } 56902 if (element.hasRelationshipElement()) 56903 composeEnumeration("relationship", element.getRelationshipElement(), new Enumerations.ActionRelationshipTypeEnumFactory()); 56904 if (element.hasEndRelationshipElement()) 56905 composeEnumeration("endRelationship", element.getEndRelationshipElement(), new Enumerations.ActionRelationshipTypeEnumFactory()); 56906 if (element.hasOffset()) { 56907 composeType("offset", element.getOffset()); 56908 } } 56909 56910 protected void composeRequestOrchestrationActionParticipantComponent(String name, RequestOrchestration.RequestOrchestrationActionParticipantComponent element) throws IOException { 56911 if (element != null) { 56912 composeElementAttributes(element); 56913 xml.enter(FHIR_NS, name); 56914 composeRequestOrchestrationActionParticipantComponentElements(element); 56915 composeElementClose(element); 56916 xml.exit(FHIR_NS, name); 56917 } 56918 } 56919 56920 protected void composeRequestOrchestrationActionParticipantComponentElements(RequestOrchestration.RequestOrchestrationActionParticipantComponent element) throws IOException { 56921 composeBackboneElementElements(element); 56922 if (element.hasTypeElement()) 56923 composeEnumeration("type", element.getTypeElement(), new Enumerations.ActionParticipantTypeEnumFactory()); 56924 if (element.hasTypeCanonicalElement()) { 56925 composeCanonical("typeCanonical", element.getTypeCanonicalElement()); 56926 } 56927 if (element.hasTypeReference()) { 56928 composeReference("typeReference", element.getTypeReference()); 56929 } 56930 if (element.hasRole()) { 56931 composeCodeableConcept("role", element.getRole()); 56932 } 56933 if (element.hasFunction()) { 56934 composeCodeableConcept("function", element.getFunction()); 56935 } 56936 if (element.hasActor()) { 56937 composeType("actor", element.getActor()); 56938 } } 56939 56940 protected void composeRequestOrchestrationActionDynamicValueComponent(String name, RequestOrchestration.RequestOrchestrationActionDynamicValueComponent element) throws IOException { 56941 if (element != null) { 56942 composeElementAttributes(element); 56943 xml.enter(FHIR_NS, name); 56944 composeRequestOrchestrationActionDynamicValueComponentElements(element); 56945 composeElementClose(element); 56946 xml.exit(FHIR_NS, name); 56947 } 56948 } 56949 56950 protected void composeRequestOrchestrationActionDynamicValueComponentElements(RequestOrchestration.RequestOrchestrationActionDynamicValueComponent element) throws IOException { 56951 composeBackboneElementElements(element); 56952 if (element.hasPathElement()) { 56953 composeString("path", element.getPathElement()); 56954 } 56955 if (element.hasExpression()) { 56956 composeExpression("expression", element.getExpression()); 56957 } 56958 } 56959 56960 protected void composeRequirements(String name, Requirements element) throws IOException { 56961 if (element != null) { 56962 composeResourceAttributes(element); 56963 xml.enter(FHIR_NS, name); 56964 composeRequirementsElements(element); 56965 composeElementClose(element); 56966 xml.exit(FHIR_NS, name); 56967 } 56968 } 56969 56970 protected void composeRequirementsElements(Requirements element) throws IOException { 56971 composeCanonicalResourceElements(element); 56972 if (element.hasUrlElement()) { 56973 composeUri("url", element.getUrlElement()); 56974 } 56975 if (element.hasIdentifier()) { 56976 for (Identifier e : element.getIdentifier()) 56977 composeIdentifier("identifier", e); 56978 } 56979 if (element.hasVersionElement()) { 56980 composeString("version", element.getVersionElement()); 56981 } 56982 if (element.hasVersionAlgorithm()) { 56983 composeType("versionAlgorithm", element.getVersionAlgorithm()); 56984 } if (element.hasNameElement()) { 56985 composeString("name", element.getNameElement()); 56986 } 56987 if (element.hasTitleElement()) { 56988 composeString("title", element.getTitleElement()); 56989 } 56990 if (element.hasStatusElement()) 56991 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 56992 if (element.hasExperimentalElement()) { 56993 composeBoolean("experimental", element.getExperimentalElement()); 56994 } 56995 if (element.hasDateElement()) { 56996 composeDateTime("date", element.getDateElement()); 56997 } 56998 if (element.hasPublisherElement()) { 56999 composeString("publisher", element.getPublisherElement()); 57000 } 57001 if (element.hasContact()) { 57002 for (ContactDetail e : element.getContact()) 57003 composeContactDetail("contact", e); 57004 } 57005 if (element.hasDescriptionElement()) { 57006 composeMarkdown("description", element.getDescriptionElement()); 57007 } 57008 if (element.hasUseContext()) { 57009 for (UsageContext e : element.getUseContext()) 57010 composeUsageContext("useContext", e); 57011 } 57012 if (element.hasJurisdiction()) { 57013 for (CodeableConcept e : element.getJurisdiction()) 57014 composeCodeableConcept("jurisdiction", e); 57015 } 57016 if (element.hasPurposeElement()) { 57017 composeMarkdown("purpose", element.getPurposeElement()); 57018 } 57019 if (element.hasCopyrightElement()) { 57020 composeMarkdown("copyright", element.getCopyrightElement()); 57021 } 57022 if (element.hasCopyrightLabelElement()) { 57023 composeString("copyrightLabel", element.getCopyrightLabelElement()); 57024 } 57025 if (element.hasDerivedFrom()) { 57026 for (CanonicalType e : element.getDerivedFrom()) 57027 composeCanonical("derivedFrom", e); 57028 } 57029 if (element.hasReference()) { 57030 for (UrlType e : element.getReference()) 57031 composeUrl("reference", e); 57032 } 57033 if (element.hasActor()) { 57034 for (CanonicalType e : element.getActor()) 57035 composeCanonical("actor", e); 57036 } 57037 if (element.hasStatement()) { 57038 for (Requirements.RequirementsStatementComponent e : element.getStatement()) 57039 composeRequirementsStatementComponent("statement", e); 57040 } 57041 } 57042 57043 protected void composeRequirementsStatementComponent(String name, Requirements.RequirementsStatementComponent element) throws IOException { 57044 if (element != null) { 57045 composeElementAttributes(element); 57046 xml.enter(FHIR_NS, name); 57047 composeRequirementsStatementComponentElements(element); 57048 composeElementClose(element); 57049 xml.exit(FHIR_NS, name); 57050 } 57051 } 57052 57053 protected void composeRequirementsStatementComponentElements(Requirements.RequirementsStatementComponent element) throws IOException { 57054 composeBackboneElementElements(element); 57055 if (element.hasKeyElement()) { 57056 composeId("key", element.getKeyElement()); 57057 } 57058 if (element.hasLabelElement()) { 57059 composeString("label", element.getLabelElement()); 57060 } 57061 if (element.hasConformance()) 57062 for (Enumeration<Requirements.ConformanceExpectation> e : element.getConformance()) 57063 composeEnumeration("conformance", e, new Requirements.ConformanceExpectationEnumFactory()); 57064 if (element.hasConditionalityElement()) { 57065 composeBoolean("conditionality", element.getConditionalityElement()); 57066 } 57067 if (element.hasRequirementElement()) { 57068 composeMarkdown("requirement", element.getRequirementElement()); 57069 } 57070 if (element.hasDerivedFromElement()) { 57071 composeString("derivedFrom", element.getDerivedFromElement()); 57072 } 57073 if (element.hasParentElement()) { 57074 composeString("parent", element.getParentElement()); 57075 } 57076 if (element.hasSatisfiedBy()) { 57077 for (UrlType e : element.getSatisfiedBy()) 57078 composeUrl("satisfiedBy", e); 57079 } 57080 if (element.hasReference()) { 57081 for (UrlType e : element.getReference()) 57082 composeUrl("reference", e); 57083 } 57084 if (element.hasSource()) { 57085 for (Reference e : element.getSource()) 57086 composeReference("source", e); 57087 } 57088 } 57089 57090 protected void composeResearchStudy(String name, ResearchStudy element) throws IOException { 57091 if (element != null) { 57092 composeResourceAttributes(element); 57093 xml.enter(FHIR_NS, name); 57094 composeResearchStudyElements(element); 57095 composeElementClose(element); 57096 xml.exit(FHIR_NS, name); 57097 } 57098 } 57099 57100 protected void composeResearchStudyElements(ResearchStudy element) throws IOException { 57101 composeDomainResourceElements(element); 57102 if (element.hasUrlElement()) { 57103 composeUri("url", element.getUrlElement()); 57104 } 57105 if (element.hasIdentifier()) { 57106 for (Identifier e : element.getIdentifier()) 57107 composeIdentifier("identifier", e); 57108 } 57109 if (element.hasVersionElement()) { 57110 composeString("version", element.getVersionElement()); 57111 } 57112 if (element.hasNameElement()) { 57113 composeString("name", element.getNameElement()); 57114 } 57115 if (element.hasTitleElement()) { 57116 composeString("title", element.getTitleElement()); 57117 } 57118 if (element.hasLabel()) { 57119 for (ResearchStudy.ResearchStudyLabelComponent e : element.getLabel()) 57120 composeResearchStudyLabelComponent("label", e); 57121 } 57122 if (element.hasProtocol()) { 57123 for (Reference e : element.getProtocol()) 57124 composeReference("protocol", e); 57125 } 57126 if (element.hasPartOf()) { 57127 for (Reference e : element.getPartOf()) 57128 composeReference("partOf", e); 57129 } 57130 if (element.hasRelatedArtifact()) { 57131 for (RelatedArtifact e : element.getRelatedArtifact()) 57132 composeRelatedArtifact("relatedArtifact", e); 57133 } 57134 if (element.hasDateElement()) { 57135 composeDateTime("date", element.getDateElement()); 57136 } 57137 if (element.hasStatusElement()) 57138 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 57139 if (element.hasPrimaryPurposeType()) { 57140 composeCodeableConcept("primaryPurposeType", element.getPrimaryPurposeType()); 57141 } 57142 if (element.hasPhase()) { 57143 composeCodeableConcept("phase", element.getPhase()); 57144 } 57145 if (element.hasStudyDesign()) { 57146 for (CodeableConcept e : element.getStudyDesign()) 57147 composeCodeableConcept("studyDesign", e); 57148 } 57149 if (element.hasFocus()) { 57150 for (CodeableReference e : element.getFocus()) 57151 composeCodeableReference("focus", e); 57152 } 57153 if (element.hasCondition()) { 57154 for (CodeableConcept e : element.getCondition()) 57155 composeCodeableConcept("condition", e); 57156 } 57157 if (element.hasKeyword()) { 57158 for (CodeableConcept e : element.getKeyword()) 57159 composeCodeableConcept("keyword", e); 57160 } 57161 if (element.hasRegion()) { 57162 for (CodeableConcept e : element.getRegion()) 57163 composeCodeableConcept("region", e); 57164 } 57165 if (element.hasDescriptionSummaryElement()) { 57166 composeMarkdown("descriptionSummary", element.getDescriptionSummaryElement()); 57167 } 57168 if (element.hasDescriptionElement()) { 57169 composeMarkdown("description", element.getDescriptionElement()); 57170 } 57171 if (element.hasPeriod()) { 57172 composePeriod("period", element.getPeriod()); 57173 } 57174 if (element.hasSite()) { 57175 for (Reference e : element.getSite()) 57176 composeReference("site", e); 57177 } 57178 if (element.hasNote()) { 57179 for (Annotation e : element.getNote()) 57180 composeAnnotation("note", e); 57181 } 57182 if (element.hasClassifier()) { 57183 for (CodeableConcept e : element.getClassifier()) 57184 composeCodeableConcept("classifier", e); 57185 } 57186 if (element.hasAssociatedParty()) { 57187 for (ResearchStudy.ResearchStudyAssociatedPartyComponent e : element.getAssociatedParty()) 57188 composeResearchStudyAssociatedPartyComponent("associatedParty", e); 57189 } 57190 if (element.hasProgressStatus()) { 57191 for (ResearchStudy.ResearchStudyProgressStatusComponent e : element.getProgressStatus()) 57192 composeResearchStudyProgressStatusComponent("progressStatus", e); 57193 } 57194 if (element.hasWhyStopped()) { 57195 composeCodeableConcept("whyStopped", element.getWhyStopped()); 57196 } 57197 if (element.hasRecruitment()) { 57198 composeResearchStudyRecruitmentComponent("recruitment", element.getRecruitment()); 57199 } 57200 if (element.hasComparisonGroup()) { 57201 for (ResearchStudy.ResearchStudyComparisonGroupComponent e : element.getComparisonGroup()) 57202 composeResearchStudyComparisonGroupComponent("comparisonGroup", e); 57203 } 57204 if (element.hasObjective()) { 57205 for (ResearchStudy.ResearchStudyObjectiveComponent e : element.getObjective()) 57206 composeResearchStudyObjectiveComponent("objective", e); 57207 } 57208 if (element.hasOutcomeMeasure()) { 57209 for (ResearchStudy.ResearchStudyOutcomeMeasureComponent e : element.getOutcomeMeasure()) 57210 composeResearchStudyOutcomeMeasureComponent("outcomeMeasure", e); 57211 } 57212 if (element.hasResult()) { 57213 for (Reference e : element.getResult()) 57214 composeReference("result", e); 57215 } 57216 } 57217 57218 protected void composeResearchStudyLabelComponent(String name, ResearchStudy.ResearchStudyLabelComponent element) throws IOException { 57219 if (element != null) { 57220 composeElementAttributes(element); 57221 xml.enter(FHIR_NS, name); 57222 composeResearchStudyLabelComponentElements(element); 57223 composeElementClose(element); 57224 xml.exit(FHIR_NS, name); 57225 } 57226 } 57227 57228 protected void composeResearchStudyLabelComponentElements(ResearchStudy.ResearchStudyLabelComponent element) throws IOException { 57229 composeBackboneElementElements(element); 57230 if (element.hasType()) { 57231 composeCodeableConcept("type", element.getType()); 57232 } 57233 if (element.hasValueElement()) { 57234 composeString("value", element.getValueElement()); 57235 } 57236 } 57237 57238 protected void composeResearchStudyAssociatedPartyComponent(String name, ResearchStudy.ResearchStudyAssociatedPartyComponent element) throws IOException { 57239 if (element != null) { 57240 composeElementAttributes(element); 57241 xml.enter(FHIR_NS, name); 57242 composeResearchStudyAssociatedPartyComponentElements(element); 57243 composeElementClose(element); 57244 xml.exit(FHIR_NS, name); 57245 } 57246 } 57247 57248 protected void composeResearchStudyAssociatedPartyComponentElements(ResearchStudy.ResearchStudyAssociatedPartyComponent element) throws IOException { 57249 composeBackboneElementElements(element); 57250 if (element.hasNameElement()) { 57251 composeString("name", element.getNameElement()); 57252 } 57253 if (element.hasRole()) { 57254 composeCodeableConcept("role", element.getRole()); 57255 } 57256 if (element.hasPeriod()) { 57257 for (Period e : element.getPeriod()) 57258 composePeriod("period", e); 57259 } 57260 if (element.hasClassifier()) { 57261 for (CodeableConcept e : element.getClassifier()) 57262 composeCodeableConcept("classifier", e); 57263 } 57264 if (element.hasParty()) { 57265 composeReference("party", element.getParty()); 57266 } 57267 } 57268 57269 protected void composeResearchStudyProgressStatusComponent(String name, ResearchStudy.ResearchStudyProgressStatusComponent element) throws IOException { 57270 if (element != null) { 57271 composeElementAttributes(element); 57272 xml.enter(FHIR_NS, name); 57273 composeResearchStudyProgressStatusComponentElements(element); 57274 composeElementClose(element); 57275 xml.exit(FHIR_NS, name); 57276 } 57277 } 57278 57279 protected void composeResearchStudyProgressStatusComponentElements(ResearchStudy.ResearchStudyProgressStatusComponent element) throws IOException { 57280 composeBackboneElementElements(element); 57281 if (element.hasState()) { 57282 composeCodeableConcept("state", element.getState()); 57283 } 57284 if (element.hasActualElement()) { 57285 composeBoolean("actual", element.getActualElement()); 57286 } 57287 if (element.hasPeriod()) { 57288 composePeriod("period", element.getPeriod()); 57289 } 57290 } 57291 57292 protected void composeResearchStudyRecruitmentComponent(String name, ResearchStudy.ResearchStudyRecruitmentComponent element) throws IOException { 57293 if (element != null) { 57294 composeElementAttributes(element); 57295 xml.enter(FHIR_NS, name); 57296 composeResearchStudyRecruitmentComponentElements(element); 57297 composeElementClose(element); 57298 xml.exit(FHIR_NS, name); 57299 } 57300 } 57301 57302 protected void composeResearchStudyRecruitmentComponentElements(ResearchStudy.ResearchStudyRecruitmentComponent element) throws IOException { 57303 composeBackboneElementElements(element); 57304 if (element.hasTargetNumberElement()) { 57305 composeUnsignedInt("targetNumber", element.getTargetNumberElement()); 57306 } 57307 if (element.hasActualNumberElement()) { 57308 composeUnsignedInt("actualNumber", element.getActualNumberElement()); 57309 } 57310 if (element.hasEligibility()) { 57311 composeReference("eligibility", element.getEligibility()); 57312 } 57313 if (element.hasActualGroup()) { 57314 composeReference("actualGroup", element.getActualGroup()); 57315 } 57316 } 57317 57318 protected void composeResearchStudyComparisonGroupComponent(String name, ResearchStudy.ResearchStudyComparisonGroupComponent element) throws IOException { 57319 if (element != null) { 57320 composeElementAttributes(element); 57321 xml.enter(FHIR_NS, name); 57322 composeResearchStudyComparisonGroupComponentElements(element); 57323 composeElementClose(element); 57324 xml.exit(FHIR_NS, name); 57325 } 57326 } 57327 57328 protected void composeResearchStudyComparisonGroupComponentElements(ResearchStudy.ResearchStudyComparisonGroupComponent element) throws IOException { 57329 composeBackboneElementElements(element); 57330 if (element.hasLinkIdElement()) { 57331 composeId("linkId", element.getLinkIdElement()); 57332 } 57333 if (element.hasNameElement()) { 57334 composeString("name", element.getNameElement()); 57335 } 57336 if (element.hasType()) { 57337 composeCodeableConcept("type", element.getType()); 57338 } 57339 if (element.hasDescriptionElement()) { 57340 composeMarkdown("description", element.getDescriptionElement()); 57341 } 57342 if (element.hasIntendedExposure()) { 57343 for (Reference e : element.getIntendedExposure()) 57344 composeReference("intendedExposure", e); 57345 } 57346 if (element.hasObservedGroup()) { 57347 composeReference("observedGroup", element.getObservedGroup()); 57348 } 57349 } 57350 57351 protected void composeResearchStudyObjectiveComponent(String name, ResearchStudy.ResearchStudyObjectiveComponent element) throws IOException { 57352 if (element != null) { 57353 composeElementAttributes(element); 57354 xml.enter(FHIR_NS, name); 57355 composeResearchStudyObjectiveComponentElements(element); 57356 composeElementClose(element); 57357 xml.exit(FHIR_NS, name); 57358 } 57359 } 57360 57361 protected void composeResearchStudyObjectiveComponentElements(ResearchStudy.ResearchStudyObjectiveComponent element) throws IOException { 57362 composeBackboneElementElements(element); 57363 if (element.hasNameElement()) { 57364 composeString("name", element.getNameElement()); 57365 } 57366 if (element.hasType()) { 57367 composeCodeableConcept("type", element.getType()); 57368 } 57369 if (element.hasDescriptionElement()) { 57370 composeMarkdown("description", element.getDescriptionElement()); 57371 } 57372 } 57373 57374 protected void composeResearchStudyOutcomeMeasureComponent(String name, ResearchStudy.ResearchStudyOutcomeMeasureComponent element) throws IOException { 57375 if (element != null) { 57376 composeElementAttributes(element); 57377 xml.enter(FHIR_NS, name); 57378 composeResearchStudyOutcomeMeasureComponentElements(element); 57379 composeElementClose(element); 57380 xml.exit(FHIR_NS, name); 57381 } 57382 } 57383 57384 protected void composeResearchStudyOutcomeMeasureComponentElements(ResearchStudy.ResearchStudyOutcomeMeasureComponent element) throws IOException { 57385 composeBackboneElementElements(element); 57386 if (element.hasNameElement()) { 57387 composeString("name", element.getNameElement()); 57388 } 57389 if (element.hasType()) { 57390 for (CodeableConcept e : element.getType()) 57391 composeCodeableConcept("type", e); 57392 } 57393 if (element.hasDescriptionElement()) { 57394 composeMarkdown("description", element.getDescriptionElement()); 57395 } 57396 if (element.hasReference()) { 57397 composeReference("reference", element.getReference()); 57398 } 57399 } 57400 57401 protected void composeResearchSubject(String name, ResearchSubject element) throws IOException { 57402 if (element != null) { 57403 composeResourceAttributes(element); 57404 xml.enter(FHIR_NS, name); 57405 composeResearchSubjectElements(element); 57406 composeElementClose(element); 57407 xml.exit(FHIR_NS, name); 57408 } 57409 } 57410 57411 protected void composeResearchSubjectElements(ResearchSubject element) throws IOException { 57412 composeDomainResourceElements(element); 57413 if (element.hasIdentifier()) { 57414 for (Identifier e : element.getIdentifier()) 57415 composeIdentifier("identifier", e); 57416 } 57417 if (element.hasStatusElement()) 57418 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 57419 if (element.hasProgress()) { 57420 for (ResearchSubject.ResearchSubjectProgressComponent e : element.getProgress()) 57421 composeResearchSubjectProgressComponent("progress", e); 57422 } 57423 if (element.hasPeriod()) { 57424 composePeriod("period", element.getPeriod()); 57425 } 57426 if (element.hasStudy()) { 57427 composeReference("study", element.getStudy()); 57428 } 57429 if (element.hasSubject()) { 57430 composeReference("subject", element.getSubject()); 57431 } 57432 if (element.hasAssignedComparisonGroupElement()) { 57433 composeId("assignedComparisonGroup", element.getAssignedComparisonGroupElement()); 57434 } 57435 if (element.hasActualComparisonGroupElement()) { 57436 composeId("actualComparisonGroup", element.getActualComparisonGroupElement()); 57437 } 57438 if (element.hasConsent()) { 57439 for (Reference e : element.getConsent()) 57440 composeReference("consent", e); 57441 } 57442 } 57443 57444 protected void composeResearchSubjectProgressComponent(String name, ResearchSubject.ResearchSubjectProgressComponent element) throws IOException { 57445 if (element != null) { 57446 composeElementAttributes(element); 57447 xml.enter(FHIR_NS, name); 57448 composeResearchSubjectProgressComponentElements(element); 57449 composeElementClose(element); 57450 xml.exit(FHIR_NS, name); 57451 } 57452 } 57453 57454 protected void composeResearchSubjectProgressComponentElements(ResearchSubject.ResearchSubjectProgressComponent element) throws IOException { 57455 composeBackboneElementElements(element); 57456 if (element.hasType()) { 57457 composeCodeableConcept("type", element.getType()); 57458 } 57459 if (element.hasSubjectState()) { 57460 composeCodeableConcept("subjectState", element.getSubjectState()); 57461 } 57462 if (element.hasMilestone()) { 57463 composeCodeableConcept("milestone", element.getMilestone()); 57464 } 57465 if (element.hasReason()) { 57466 composeCodeableConcept("reason", element.getReason()); 57467 } 57468 if (element.hasStartDateElement()) { 57469 composeDateTime("startDate", element.getStartDateElement()); 57470 } 57471 if (element.hasEndDateElement()) { 57472 composeDateTime("endDate", element.getEndDateElement()); 57473 } 57474 } 57475 57476 protected void composeRiskAssessment(String name, RiskAssessment element) throws IOException { 57477 if (element != null) { 57478 composeResourceAttributes(element); 57479 xml.enter(FHIR_NS, name); 57480 composeRiskAssessmentElements(element); 57481 composeElementClose(element); 57482 xml.exit(FHIR_NS, name); 57483 } 57484 } 57485 57486 protected void composeRiskAssessmentElements(RiskAssessment element) throws IOException { 57487 composeDomainResourceElements(element); 57488 if (element.hasIdentifier()) { 57489 for (Identifier e : element.getIdentifier()) 57490 composeIdentifier("identifier", e); 57491 } 57492 if (element.hasBasedOn()) { 57493 composeReference("basedOn", element.getBasedOn()); 57494 } 57495 if (element.hasParent()) { 57496 composeReference("parent", element.getParent()); 57497 } 57498 if (element.hasStatusElement()) 57499 composeEnumeration("status", element.getStatusElement(), new Enumerations.ObservationStatusEnumFactory()); 57500 if (element.hasMethod()) { 57501 composeCodeableConcept("method", element.getMethod()); 57502 } 57503 if (element.hasCode()) { 57504 composeCodeableConcept("code", element.getCode()); 57505 } 57506 if (element.hasSubject()) { 57507 composeReference("subject", element.getSubject()); 57508 } 57509 if (element.hasEncounter()) { 57510 composeReference("encounter", element.getEncounter()); 57511 } 57512 if (element.hasOccurrence()) { 57513 composeType("occurrence", element.getOccurrence()); 57514 } if (element.hasCondition()) { 57515 composeReference("condition", element.getCondition()); 57516 } 57517 if (element.hasPerformer()) { 57518 composeReference("performer", element.getPerformer()); 57519 } 57520 if (element.hasReason()) { 57521 for (CodeableReference e : element.getReason()) 57522 composeCodeableReference("reason", e); 57523 } 57524 if (element.hasBasis()) { 57525 for (Reference e : element.getBasis()) 57526 composeReference("basis", e); 57527 } 57528 if (element.hasPrediction()) { 57529 for (RiskAssessment.RiskAssessmentPredictionComponent e : element.getPrediction()) 57530 composeRiskAssessmentPredictionComponent("prediction", e); 57531 } 57532 if (element.hasMitigationElement()) { 57533 composeString("mitigation", element.getMitigationElement()); 57534 } 57535 if (element.hasNote()) { 57536 for (Annotation e : element.getNote()) 57537 composeAnnotation("note", e); 57538 } 57539 } 57540 57541 protected void composeRiskAssessmentPredictionComponent(String name, RiskAssessment.RiskAssessmentPredictionComponent element) throws IOException { 57542 if (element != null) { 57543 composeElementAttributes(element); 57544 xml.enter(FHIR_NS, name); 57545 composeRiskAssessmentPredictionComponentElements(element); 57546 composeElementClose(element); 57547 xml.exit(FHIR_NS, name); 57548 } 57549 } 57550 57551 protected void composeRiskAssessmentPredictionComponentElements(RiskAssessment.RiskAssessmentPredictionComponent element) throws IOException { 57552 composeBackboneElementElements(element); 57553 if (element.hasOutcome()) { 57554 composeCodeableConcept("outcome", element.getOutcome()); 57555 } 57556 if (element.hasProbability()) { 57557 composeType("probability", element.getProbability()); 57558 } if (element.hasQualitativeRisk()) { 57559 composeCodeableConcept("qualitativeRisk", element.getQualitativeRisk()); 57560 } 57561 if (element.hasRelativeRiskElement()) { 57562 composeDecimal("relativeRisk", element.getRelativeRiskElement()); 57563 } 57564 if (element.hasWhen()) { 57565 composeType("when", element.getWhen()); 57566 } if (element.hasRationaleElement()) { 57567 composeString("rationale", element.getRationaleElement()); 57568 } 57569 } 57570 57571 protected void composeSchedule(String name, Schedule element) throws IOException { 57572 if (element != null) { 57573 composeResourceAttributes(element); 57574 xml.enter(FHIR_NS, name); 57575 composeScheduleElements(element); 57576 composeElementClose(element); 57577 xml.exit(FHIR_NS, name); 57578 } 57579 } 57580 57581 protected void composeScheduleElements(Schedule element) throws IOException { 57582 composeDomainResourceElements(element); 57583 if (element.hasIdentifier()) { 57584 for (Identifier e : element.getIdentifier()) 57585 composeIdentifier("identifier", e); 57586 } 57587 if (element.hasActiveElement()) { 57588 composeBoolean("active", element.getActiveElement()); 57589 } 57590 if (element.hasServiceCategory()) { 57591 for (CodeableConcept e : element.getServiceCategory()) 57592 composeCodeableConcept("serviceCategory", e); 57593 } 57594 if (element.hasServiceType()) { 57595 for (CodeableReference e : element.getServiceType()) 57596 composeCodeableReference("serviceType", e); 57597 } 57598 if (element.hasSpecialty()) { 57599 for (CodeableConcept e : element.getSpecialty()) 57600 composeCodeableConcept("specialty", e); 57601 } 57602 if (element.hasNameElement()) { 57603 composeString("name", element.getNameElement()); 57604 } 57605 if (element.hasActor()) { 57606 for (Reference e : element.getActor()) 57607 composeReference("actor", e); 57608 } 57609 if (element.hasPlanningHorizon()) { 57610 composePeriod("planningHorizon", element.getPlanningHorizon()); 57611 } 57612 if (element.hasCommentElement()) { 57613 composeMarkdown("comment", element.getCommentElement()); 57614 } 57615 } 57616 57617 protected void composeSearchParameter(String name, SearchParameter element) throws IOException { 57618 if (element != null) { 57619 composeResourceAttributes(element); 57620 xml.enter(FHIR_NS, name); 57621 composeSearchParameterElements(element); 57622 composeElementClose(element); 57623 xml.exit(FHIR_NS, name); 57624 } 57625 } 57626 57627 protected void composeSearchParameterElements(SearchParameter element) throws IOException { 57628 composeCanonicalResourceElements(element); 57629 if (element.hasUrlElement()) { 57630 composeUri("url", element.getUrlElement()); 57631 } 57632 if (element.hasIdentifier()) { 57633 for (Identifier e : element.getIdentifier()) 57634 composeIdentifier("identifier", e); 57635 } 57636 if (element.hasVersionElement()) { 57637 composeString("version", element.getVersionElement()); 57638 } 57639 if (element.hasVersionAlgorithm()) { 57640 composeType("versionAlgorithm", element.getVersionAlgorithm()); 57641 } if (element.hasNameElement()) { 57642 composeString("name", element.getNameElement()); 57643 } 57644 if (element.hasTitleElement()) { 57645 composeString("title", element.getTitleElement()); 57646 } 57647 if (element.hasDerivedFromElement()) { 57648 composeCanonical("derivedFrom", element.getDerivedFromElement()); 57649 } 57650 if (element.hasStatusElement()) 57651 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 57652 if (element.hasExperimentalElement()) { 57653 composeBoolean("experimental", element.getExperimentalElement()); 57654 } 57655 if (element.hasDateElement()) { 57656 composeDateTime("date", element.getDateElement()); 57657 } 57658 if (element.hasPublisherElement()) { 57659 composeString("publisher", element.getPublisherElement()); 57660 } 57661 if (element.hasContact()) { 57662 for (ContactDetail e : element.getContact()) 57663 composeContactDetail("contact", e); 57664 } 57665 if (element.hasDescriptionElement()) { 57666 composeMarkdown("description", element.getDescriptionElement()); 57667 } 57668 if (element.hasUseContext()) { 57669 for (UsageContext e : element.getUseContext()) 57670 composeUsageContext("useContext", e); 57671 } 57672 if (element.hasJurisdiction()) { 57673 for (CodeableConcept e : element.getJurisdiction()) 57674 composeCodeableConcept("jurisdiction", e); 57675 } 57676 if (element.hasPurposeElement()) { 57677 composeMarkdown("purpose", element.getPurposeElement()); 57678 } 57679 if (element.hasCopyrightElement()) { 57680 composeMarkdown("copyright", element.getCopyrightElement()); 57681 } 57682 if (element.hasCopyrightLabelElement()) { 57683 composeString("copyrightLabel", element.getCopyrightLabelElement()); 57684 } 57685 if (element.hasCodeElement()) { 57686 composeCode("code", element.getCodeElement()); 57687 } 57688 if (element.hasBase()) 57689 for (Enumeration<Enumerations.VersionIndependentResourceTypesAll> e : element.getBase()) 57690 composeEnumeration("base", e, new Enumerations.VersionIndependentResourceTypesAllEnumFactory()); 57691 if (element.hasTypeElement()) 57692 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 57693 if (element.hasExpressionElement()) { 57694 composeString("expression", element.getExpressionElement()); 57695 } 57696 if (element.hasProcessingModeElement()) 57697 composeEnumeration("processingMode", element.getProcessingModeElement(), new SearchParameter.SearchProcessingModeTypeEnumFactory()); 57698 if (element.hasConstraintElement()) { 57699 composeString("constraint", element.getConstraintElement()); 57700 } 57701 if (element.hasTarget()) 57702 for (Enumeration<Enumerations.VersionIndependentResourceTypesAll> e : element.getTarget()) 57703 composeEnumeration("target", e, new Enumerations.VersionIndependentResourceTypesAllEnumFactory()); 57704 if (element.hasMultipleOrElement()) { 57705 composeBoolean("multipleOr", element.getMultipleOrElement()); 57706 } 57707 if (element.hasMultipleAndElement()) { 57708 composeBoolean("multipleAnd", element.getMultipleAndElement()); 57709 } 57710 if (element.hasComparator()) 57711 for (Enumeration<Enumerations.SearchComparator> e : element.getComparator()) 57712 composeEnumeration("comparator", e, new Enumerations.SearchComparatorEnumFactory()); 57713 if (element.hasModifier()) 57714 for (Enumeration<Enumerations.SearchModifierCode> e : element.getModifier()) 57715 composeEnumeration("modifier", e, new Enumerations.SearchModifierCodeEnumFactory()); 57716 if (element.hasChain()) { 57717 for (StringType e : element.getChain()) 57718 composeString("chain", e); 57719 } 57720 if (element.hasComponent()) { 57721 for (SearchParameter.SearchParameterComponentComponent e : element.getComponent()) 57722 composeSearchParameterComponentComponent("component", e); 57723 } 57724 } 57725 57726 protected void composeSearchParameterComponentComponent(String name, SearchParameter.SearchParameterComponentComponent element) throws IOException { 57727 if (element != null) { 57728 composeElementAttributes(element); 57729 xml.enter(FHIR_NS, name); 57730 composeSearchParameterComponentComponentElements(element); 57731 composeElementClose(element); 57732 xml.exit(FHIR_NS, name); 57733 } 57734 } 57735 57736 protected void composeSearchParameterComponentComponentElements(SearchParameter.SearchParameterComponentComponent element) throws IOException { 57737 composeBackboneElementElements(element); 57738 if (element.hasDefinitionElement()) { 57739 composeCanonical("definition", element.getDefinitionElement()); 57740 } 57741 if (element.hasExpressionElement()) { 57742 composeString("expression", element.getExpressionElement()); 57743 } 57744 } 57745 57746 protected void composeServiceRequest(String name, ServiceRequest element) throws IOException { 57747 if (element != null) { 57748 composeResourceAttributes(element); 57749 xml.enter(FHIR_NS, name); 57750 composeServiceRequestElements(element); 57751 composeElementClose(element); 57752 xml.exit(FHIR_NS, name); 57753 } 57754 } 57755 57756 protected void composeServiceRequestElements(ServiceRequest element) throws IOException { 57757 composeDomainResourceElements(element); 57758 if (element.hasIdentifier()) { 57759 for (Identifier e : element.getIdentifier()) 57760 composeIdentifier("identifier", e); 57761 } 57762 if (element.hasInstantiatesCanonical()) { 57763 for (CanonicalType e : element.getInstantiatesCanonical()) 57764 composeCanonical("instantiatesCanonical", e); 57765 } 57766 if (element.hasInstantiatesUri()) { 57767 for (UriType e : element.getInstantiatesUri()) 57768 composeUri("instantiatesUri", e); 57769 } 57770 if (element.hasBasedOn()) { 57771 for (Reference e : element.getBasedOn()) 57772 composeReference("basedOn", e); 57773 } 57774 if (element.hasReplaces()) { 57775 for (Reference e : element.getReplaces()) 57776 composeReference("replaces", e); 57777 } 57778 if (element.hasRequisition()) { 57779 composeIdentifier("requisition", element.getRequisition()); 57780 } 57781 if (element.hasStatusElement()) 57782 composeEnumeration("status", element.getStatusElement(), new Enumerations.RequestStatusEnumFactory()); 57783 if (element.hasIntentElement()) 57784 composeEnumeration("intent", element.getIntentElement(), new Enumerations.RequestIntentEnumFactory()); 57785 if (element.hasCategory()) { 57786 for (CodeableConcept e : element.getCategory()) 57787 composeCodeableConcept("category", e); 57788 } 57789 if (element.hasPriorityElement()) 57790 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 57791 if (element.hasDoNotPerformElement()) { 57792 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 57793 } 57794 if (element.hasCode()) { 57795 composeCodeableReference("code", element.getCode()); 57796 } 57797 if (element.hasOrderDetail()) { 57798 for (ServiceRequest.ServiceRequestOrderDetailComponent e : element.getOrderDetail()) 57799 composeServiceRequestOrderDetailComponent("orderDetail", e); 57800 } 57801 if (element.hasQuantity()) { 57802 composeType("quantity", element.getQuantity()); 57803 } if (element.hasSubject()) { 57804 composeReference("subject", element.getSubject()); 57805 } 57806 if (element.hasFocus()) { 57807 for (Reference e : element.getFocus()) 57808 composeReference("focus", e); 57809 } 57810 if (element.hasEncounter()) { 57811 composeReference("encounter", element.getEncounter()); 57812 } 57813 if (element.hasOccurrence()) { 57814 composeType("occurrence", element.getOccurrence()); 57815 } if (element.hasAsNeeded()) { 57816 composeType("asNeeded", element.getAsNeeded()); 57817 } if (element.hasAuthoredOnElement()) { 57818 composeDateTime("authoredOn", element.getAuthoredOnElement()); 57819 } 57820 if (element.hasRequester()) { 57821 composeReference("requester", element.getRequester()); 57822 } 57823 if (element.hasPerformerType()) { 57824 composeCodeableConcept("performerType", element.getPerformerType()); 57825 } 57826 if (element.hasPerformer()) { 57827 for (Reference e : element.getPerformer()) 57828 composeReference("performer", e); 57829 } 57830 if (element.hasLocation()) { 57831 for (CodeableReference e : element.getLocation()) 57832 composeCodeableReference("location", e); 57833 } 57834 if (element.hasReason()) { 57835 for (CodeableReference e : element.getReason()) 57836 composeCodeableReference("reason", e); 57837 } 57838 if (element.hasInsurance()) { 57839 for (Reference e : element.getInsurance()) 57840 composeReference("insurance", e); 57841 } 57842 if (element.hasSupportingInfo()) { 57843 for (CodeableReference e : element.getSupportingInfo()) 57844 composeCodeableReference("supportingInfo", e); 57845 } 57846 if (element.hasSpecimen()) { 57847 for (Reference e : element.getSpecimen()) 57848 composeReference("specimen", e); 57849 } 57850 if (element.hasBodySite()) { 57851 for (CodeableConcept e : element.getBodySite()) 57852 composeCodeableConcept("bodySite", e); 57853 } 57854 if (element.hasBodyStructure()) { 57855 composeReference("bodyStructure", element.getBodyStructure()); 57856 } 57857 if (element.hasNote()) { 57858 for (Annotation e : element.getNote()) 57859 composeAnnotation("note", e); 57860 } 57861 if (element.hasPatientInstruction()) { 57862 for (ServiceRequest.ServiceRequestPatientInstructionComponent e : element.getPatientInstruction()) 57863 composeServiceRequestPatientInstructionComponent("patientInstruction", e); 57864 } 57865 if (element.hasRelevantHistory()) { 57866 for (Reference e : element.getRelevantHistory()) 57867 composeReference("relevantHistory", e); 57868 } 57869 } 57870 57871 protected void composeServiceRequestOrderDetailComponent(String name, ServiceRequest.ServiceRequestOrderDetailComponent element) throws IOException { 57872 if (element != null) { 57873 composeElementAttributes(element); 57874 xml.enter(FHIR_NS, name); 57875 composeServiceRequestOrderDetailComponentElements(element); 57876 composeElementClose(element); 57877 xml.exit(FHIR_NS, name); 57878 } 57879 } 57880 57881 protected void composeServiceRequestOrderDetailComponentElements(ServiceRequest.ServiceRequestOrderDetailComponent element) throws IOException { 57882 composeBackboneElementElements(element); 57883 if (element.hasParameterFocus()) { 57884 composeCodeableReference("parameterFocus", element.getParameterFocus()); 57885 } 57886 if (element.hasParameter()) { 57887 for (ServiceRequest.ServiceRequestOrderDetailParameterComponent e : element.getParameter()) 57888 composeServiceRequestOrderDetailParameterComponent("parameter", e); 57889 } 57890 } 57891 57892 protected void composeServiceRequestOrderDetailParameterComponent(String name, ServiceRequest.ServiceRequestOrderDetailParameterComponent element) throws IOException { 57893 if (element != null) { 57894 composeElementAttributes(element); 57895 xml.enter(FHIR_NS, name); 57896 composeServiceRequestOrderDetailParameterComponentElements(element); 57897 composeElementClose(element); 57898 xml.exit(FHIR_NS, name); 57899 } 57900 } 57901 57902 protected void composeServiceRequestOrderDetailParameterComponentElements(ServiceRequest.ServiceRequestOrderDetailParameterComponent element) throws IOException { 57903 composeBackboneElementElements(element); 57904 if (element.hasCode()) { 57905 composeCodeableConcept("code", element.getCode()); 57906 } 57907 if (element.hasValue()) { 57908 composeType("value", element.getValue()); 57909 } } 57910 57911 protected void composeServiceRequestPatientInstructionComponent(String name, ServiceRequest.ServiceRequestPatientInstructionComponent element) throws IOException { 57912 if (element != null) { 57913 composeElementAttributes(element); 57914 xml.enter(FHIR_NS, name); 57915 composeServiceRequestPatientInstructionComponentElements(element); 57916 composeElementClose(element); 57917 xml.exit(FHIR_NS, name); 57918 } 57919 } 57920 57921 protected void composeServiceRequestPatientInstructionComponentElements(ServiceRequest.ServiceRequestPatientInstructionComponent element) throws IOException { 57922 composeBackboneElementElements(element); 57923 if (element.hasInstruction()) { 57924 composeType("instruction", element.getInstruction()); 57925 } } 57926 57927 protected void composeSlot(String name, Slot element) throws IOException { 57928 if (element != null) { 57929 composeResourceAttributes(element); 57930 xml.enter(FHIR_NS, name); 57931 composeSlotElements(element); 57932 composeElementClose(element); 57933 xml.exit(FHIR_NS, name); 57934 } 57935 } 57936 57937 protected void composeSlotElements(Slot element) throws IOException { 57938 composeDomainResourceElements(element); 57939 if (element.hasIdentifier()) { 57940 for (Identifier e : element.getIdentifier()) 57941 composeIdentifier("identifier", e); 57942 } 57943 if (element.hasServiceCategory()) { 57944 for (CodeableConcept e : element.getServiceCategory()) 57945 composeCodeableConcept("serviceCategory", e); 57946 } 57947 if (element.hasServiceType()) { 57948 for (CodeableReference e : element.getServiceType()) 57949 composeCodeableReference("serviceType", e); 57950 } 57951 if (element.hasSpecialty()) { 57952 for (CodeableConcept e : element.getSpecialty()) 57953 composeCodeableConcept("specialty", e); 57954 } 57955 if (element.hasAppointmentType()) { 57956 for (CodeableConcept e : element.getAppointmentType()) 57957 composeCodeableConcept("appointmentType", e); 57958 } 57959 if (element.hasSchedule()) { 57960 composeReference("schedule", element.getSchedule()); 57961 } 57962 if (element.hasStatusElement()) 57963 composeEnumeration("status", element.getStatusElement(), new Slot.SlotStatusEnumFactory()); 57964 if (element.hasStartElement()) { 57965 composeInstant("start", element.getStartElement()); 57966 } 57967 if (element.hasEndElement()) { 57968 composeInstant("end", element.getEndElement()); 57969 } 57970 if (element.hasOverbookedElement()) { 57971 composeBoolean("overbooked", element.getOverbookedElement()); 57972 } 57973 if (element.hasCommentElement()) { 57974 composeString("comment", element.getCommentElement()); 57975 } 57976 } 57977 57978 protected void composeSpecimen(String name, Specimen element) throws IOException { 57979 if (element != null) { 57980 composeResourceAttributes(element); 57981 xml.enter(FHIR_NS, name); 57982 composeSpecimenElements(element); 57983 composeElementClose(element); 57984 xml.exit(FHIR_NS, name); 57985 } 57986 } 57987 57988 protected void composeSpecimenElements(Specimen element) throws IOException { 57989 composeDomainResourceElements(element); 57990 if (element.hasIdentifier()) { 57991 for (Identifier e : element.getIdentifier()) 57992 composeIdentifier("identifier", e); 57993 } 57994 if (element.hasAccessionIdentifier()) { 57995 composeIdentifier("accessionIdentifier", element.getAccessionIdentifier()); 57996 } 57997 if (element.hasStatusElement()) 57998 composeEnumeration("status", element.getStatusElement(), new Specimen.SpecimenStatusEnumFactory()); 57999 if (element.hasType()) { 58000 composeCodeableConcept("type", element.getType()); 58001 } 58002 if (element.hasSubject()) { 58003 composeReference("subject", element.getSubject()); 58004 } 58005 if (element.hasReceivedTimeElement()) { 58006 composeDateTime("receivedTime", element.getReceivedTimeElement()); 58007 } 58008 if (element.hasParent()) { 58009 for (Reference e : element.getParent()) 58010 composeReference("parent", e); 58011 } 58012 if (element.hasRequest()) { 58013 for (Reference e : element.getRequest()) 58014 composeReference("request", e); 58015 } 58016 if (element.hasCombinedElement()) 58017 composeEnumeration("combined", element.getCombinedElement(), new Specimen.SpecimenCombinedEnumFactory()); 58018 if (element.hasRole()) { 58019 for (CodeableConcept e : element.getRole()) 58020 composeCodeableConcept("role", e); 58021 } 58022 if (element.hasFeature()) { 58023 for (Specimen.SpecimenFeatureComponent e : element.getFeature()) 58024 composeSpecimenFeatureComponent("feature", e); 58025 } 58026 if (element.hasCollection()) { 58027 composeSpecimenCollectionComponent("collection", element.getCollection()); 58028 } 58029 if (element.hasProcessing()) { 58030 for (Specimen.SpecimenProcessingComponent e : element.getProcessing()) 58031 composeSpecimenProcessingComponent("processing", e); 58032 } 58033 if (element.hasContainer()) { 58034 for (Specimen.SpecimenContainerComponent e : element.getContainer()) 58035 composeSpecimenContainerComponent("container", e); 58036 } 58037 if (element.hasCondition()) { 58038 for (CodeableConcept e : element.getCondition()) 58039 composeCodeableConcept("condition", e); 58040 } 58041 if (element.hasNote()) { 58042 for (Annotation e : element.getNote()) 58043 composeAnnotation("note", e); 58044 } 58045 } 58046 58047 protected void composeSpecimenFeatureComponent(String name, Specimen.SpecimenFeatureComponent element) throws IOException { 58048 if (element != null) { 58049 composeElementAttributes(element); 58050 xml.enter(FHIR_NS, name); 58051 composeSpecimenFeatureComponentElements(element); 58052 composeElementClose(element); 58053 xml.exit(FHIR_NS, name); 58054 } 58055 } 58056 58057 protected void composeSpecimenFeatureComponentElements(Specimen.SpecimenFeatureComponent element) throws IOException { 58058 composeBackboneElementElements(element); 58059 if (element.hasType()) { 58060 composeCodeableConcept("type", element.getType()); 58061 } 58062 if (element.hasDescriptionElement()) { 58063 composeString("description", element.getDescriptionElement()); 58064 } 58065 } 58066 58067 protected void composeSpecimenCollectionComponent(String name, Specimen.SpecimenCollectionComponent element) throws IOException { 58068 if (element != null) { 58069 composeElementAttributes(element); 58070 xml.enter(FHIR_NS, name); 58071 composeSpecimenCollectionComponentElements(element); 58072 composeElementClose(element); 58073 xml.exit(FHIR_NS, name); 58074 } 58075 } 58076 58077 protected void composeSpecimenCollectionComponentElements(Specimen.SpecimenCollectionComponent element) throws IOException { 58078 composeBackboneElementElements(element); 58079 if (element.hasCollector()) { 58080 composeReference("collector", element.getCollector()); 58081 } 58082 if (element.hasCollected()) { 58083 composeType("collected", element.getCollected()); 58084 } if (element.hasDuration()) { 58085 composeDuration("duration", element.getDuration()); 58086 } 58087 if (element.hasQuantity()) { 58088 composeQuantity("quantity", element.getQuantity()); 58089 } 58090 if (element.hasMethod()) { 58091 composeCodeableConcept("method", element.getMethod()); 58092 } 58093 if (element.hasDevice()) { 58094 composeCodeableReference("device", element.getDevice()); 58095 } 58096 if (element.hasProcedure()) { 58097 composeReference("procedure", element.getProcedure()); 58098 } 58099 if (element.hasBodySite()) { 58100 composeCodeableReference("bodySite", element.getBodySite()); 58101 } 58102 if (element.hasFastingStatus()) { 58103 composeType("fastingStatus", element.getFastingStatus()); 58104 } } 58105 58106 protected void composeSpecimenProcessingComponent(String name, Specimen.SpecimenProcessingComponent element) throws IOException { 58107 if (element != null) { 58108 composeElementAttributes(element); 58109 xml.enter(FHIR_NS, name); 58110 composeSpecimenProcessingComponentElements(element); 58111 composeElementClose(element); 58112 xml.exit(FHIR_NS, name); 58113 } 58114 } 58115 58116 protected void composeSpecimenProcessingComponentElements(Specimen.SpecimenProcessingComponent element) throws IOException { 58117 composeBackboneElementElements(element); 58118 if (element.hasDescriptionElement()) { 58119 composeString("description", element.getDescriptionElement()); 58120 } 58121 if (element.hasMethod()) { 58122 composeCodeableConcept("method", element.getMethod()); 58123 } 58124 if (element.hasAdditive()) { 58125 for (Reference e : element.getAdditive()) 58126 composeReference("additive", e); 58127 } 58128 if (element.hasTime()) { 58129 composeType("time", element.getTime()); 58130 } } 58131 58132 protected void composeSpecimenContainerComponent(String name, Specimen.SpecimenContainerComponent element) throws IOException { 58133 if (element != null) { 58134 composeElementAttributes(element); 58135 xml.enter(FHIR_NS, name); 58136 composeSpecimenContainerComponentElements(element); 58137 composeElementClose(element); 58138 xml.exit(FHIR_NS, name); 58139 } 58140 } 58141 58142 protected void composeSpecimenContainerComponentElements(Specimen.SpecimenContainerComponent element) throws IOException { 58143 composeBackboneElementElements(element); 58144 if (element.hasDevice()) { 58145 composeReference("device", element.getDevice()); 58146 } 58147 if (element.hasLocation()) { 58148 composeReference("location", element.getLocation()); 58149 } 58150 if (element.hasSpecimenQuantity()) { 58151 composeQuantity("specimenQuantity", element.getSpecimenQuantity()); 58152 } 58153 } 58154 58155 protected void composeSpecimenDefinition(String name, SpecimenDefinition element) throws IOException { 58156 if (element != null) { 58157 composeResourceAttributes(element); 58158 xml.enter(FHIR_NS, name); 58159 composeSpecimenDefinitionElements(element); 58160 composeElementClose(element); 58161 xml.exit(FHIR_NS, name); 58162 } 58163 } 58164 58165 protected void composeSpecimenDefinitionElements(SpecimenDefinition element) throws IOException { 58166 composeDomainResourceElements(element); 58167 if (element.hasUrlElement()) { 58168 composeUri("url", element.getUrlElement()); 58169 } 58170 if (element.hasIdentifier()) { 58171 composeIdentifier("identifier", element.getIdentifier()); 58172 } 58173 if (element.hasVersionElement()) { 58174 composeString("version", element.getVersionElement()); 58175 } 58176 if (element.hasVersionAlgorithm()) { 58177 composeType("versionAlgorithm", element.getVersionAlgorithm()); 58178 } if (element.hasNameElement()) { 58179 composeString("name", element.getNameElement()); 58180 } 58181 if (element.hasTitleElement()) { 58182 composeString("title", element.getTitleElement()); 58183 } 58184 if (element.hasDerivedFromCanonical()) { 58185 for (CanonicalType e : element.getDerivedFromCanonical()) 58186 composeCanonical("derivedFromCanonical", e); 58187 } 58188 if (element.hasDerivedFromUri()) { 58189 for (UriType e : element.getDerivedFromUri()) 58190 composeUri("derivedFromUri", e); 58191 } 58192 if (element.hasStatusElement()) 58193 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 58194 if (element.hasExperimentalElement()) { 58195 composeBoolean("experimental", element.getExperimentalElement()); 58196 } 58197 if (element.hasSubject()) { 58198 composeType("subject", element.getSubject()); 58199 } if (element.hasDateElement()) { 58200 composeDateTime("date", element.getDateElement()); 58201 } 58202 if (element.hasPublisherElement()) { 58203 composeString("publisher", element.getPublisherElement()); 58204 } 58205 if (element.hasContact()) { 58206 for (ContactDetail e : element.getContact()) 58207 composeContactDetail("contact", e); 58208 } 58209 if (element.hasDescriptionElement()) { 58210 composeMarkdown("description", element.getDescriptionElement()); 58211 } 58212 if (element.hasUseContext()) { 58213 for (UsageContext e : element.getUseContext()) 58214 composeUsageContext("useContext", e); 58215 } 58216 if (element.hasJurisdiction()) { 58217 for (CodeableConcept e : element.getJurisdiction()) 58218 composeCodeableConcept("jurisdiction", e); 58219 } 58220 if (element.hasPurposeElement()) { 58221 composeMarkdown("purpose", element.getPurposeElement()); 58222 } 58223 if (element.hasCopyrightElement()) { 58224 composeMarkdown("copyright", element.getCopyrightElement()); 58225 } 58226 if (element.hasCopyrightLabelElement()) { 58227 composeString("copyrightLabel", element.getCopyrightLabelElement()); 58228 } 58229 if (element.hasApprovalDateElement()) { 58230 composeDate("approvalDate", element.getApprovalDateElement()); 58231 } 58232 if (element.hasLastReviewDateElement()) { 58233 composeDate("lastReviewDate", element.getLastReviewDateElement()); 58234 } 58235 if (element.hasEffectivePeriod()) { 58236 composePeriod("effectivePeriod", element.getEffectivePeriod()); 58237 } 58238 if (element.hasTypeCollected()) { 58239 composeCodeableConcept("typeCollected", element.getTypeCollected()); 58240 } 58241 if (element.hasPatientPreparation()) { 58242 for (CodeableConcept e : element.getPatientPreparation()) 58243 composeCodeableConcept("patientPreparation", e); 58244 } 58245 if (element.hasTimeAspectElement()) { 58246 composeString("timeAspect", element.getTimeAspectElement()); 58247 } 58248 if (element.hasCollection()) { 58249 for (CodeableConcept e : element.getCollection()) 58250 composeCodeableConcept("collection", e); 58251 } 58252 if (element.hasTypeTested()) { 58253 for (SpecimenDefinition.SpecimenDefinitionTypeTestedComponent e : element.getTypeTested()) 58254 composeSpecimenDefinitionTypeTestedComponent("typeTested", e); 58255 } 58256 } 58257 58258 protected void composeSpecimenDefinitionTypeTestedComponent(String name, SpecimenDefinition.SpecimenDefinitionTypeTestedComponent element) throws IOException { 58259 if (element != null) { 58260 composeElementAttributes(element); 58261 xml.enter(FHIR_NS, name); 58262 composeSpecimenDefinitionTypeTestedComponentElements(element); 58263 composeElementClose(element); 58264 xml.exit(FHIR_NS, name); 58265 } 58266 } 58267 58268 protected void composeSpecimenDefinitionTypeTestedComponentElements(SpecimenDefinition.SpecimenDefinitionTypeTestedComponent element) throws IOException { 58269 composeBackboneElementElements(element); 58270 if (element.hasIsDerivedElement()) { 58271 composeBoolean("isDerived", element.getIsDerivedElement()); 58272 } 58273 if (element.hasType()) { 58274 composeCodeableConcept("type", element.getType()); 58275 } 58276 if (element.hasPreferenceElement()) 58277 composeEnumeration("preference", element.getPreferenceElement(), new SpecimenDefinition.SpecimenContainedPreferenceEnumFactory()); 58278 if (element.hasContainer()) { 58279 composeSpecimenDefinitionTypeTestedContainerComponent("container", element.getContainer()); 58280 } 58281 if (element.hasRequirementElement()) { 58282 composeMarkdown("requirement", element.getRequirementElement()); 58283 } 58284 if (element.hasRetentionTime()) { 58285 composeDuration("retentionTime", element.getRetentionTime()); 58286 } 58287 if (element.hasSingleUseElement()) { 58288 composeBoolean("singleUse", element.getSingleUseElement()); 58289 } 58290 if (element.hasRejectionCriterion()) { 58291 for (CodeableConcept e : element.getRejectionCriterion()) 58292 composeCodeableConcept("rejectionCriterion", e); 58293 } 58294 if (element.hasHandling()) { 58295 for (SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent e : element.getHandling()) 58296 composeSpecimenDefinitionTypeTestedHandlingComponent("handling", e); 58297 } 58298 if (element.hasTestingDestination()) { 58299 for (CodeableConcept e : element.getTestingDestination()) 58300 composeCodeableConcept("testingDestination", e); 58301 } 58302 } 58303 58304 protected void composeSpecimenDefinitionTypeTestedContainerComponent(String name, SpecimenDefinition.SpecimenDefinitionTypeTestedContainerComponent element) throws IOException { 58305 if (element != null) { 58306 composeElementAttributes(element); 58307 xml.enter(FHIR_NS, name); 58308 composeSpecimenDefinitionTypeTestedContainerComponentElements(element); 58309 composeElementClose(element); 58310 xml.exit(FHIR_NS, name); 58311 } 58312 } 58313 58314 protected void composeSpecimenDefinitionTypeTestedContainerComponentElements(SpecimenDefinition.SpecimenDefinitionTypeTestedContainerComponent element) throws IOException { 58315 composeBackboneElementElements(element); 58316 if (element.hasMaterial()) { 58317 composeCodeableConcept("material", element.getMaterial()); 58318 } 58319 if (element.hasType()) { 58320 composeCodeableConcept("type", element.getType()); 58321 } 58322 if (element.hasCap()) { 58323 composeCodeableConcept("cap", element.getCap()); 58324 } 58325 if (element.hasDescriptionElement()) { 58326 composeMarkdown("description", element.getDescriptionElement()); 58327 } 58328 if (element.hasCapacity()) { 58329 composeQuantity("capacity", element.getCapacity()); 58330 } 58331 if (element.hasMinimumVolume()) { 58332 composeType("minimumVolume", element.getMinimumVolume()); 58333 } if (element.hasAdditive()) { 58334 for (SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent e : element.getAdditive()) 58335 composeSpecimenDefinitionTypeTestedContainerAdditiveComponent("additive", e); 58336 } 58337 if (element.hasPreparationElement()) { 58338 composeMarkdown("preparation", element.getPreparationElement()); 58339 } 58340 } 58341 58342 protected void composeSpecimenDefinitionTypeTestedContainerAdditiveComponent(String name, SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent element) throws IOException { 58343 if (element != null) { 58344 composeElementAttributes(element); 58345 xml.enter(FHIR_NS, name); 58346 composeSpecimenDefinitionTypeTestedContainerAdditiveComponentElements(element); 58347 composeElementClose(element); 58348 xml.exit(FHIR_NS, name); 58349 } 58350 } 58351 58352 protected void composeSpecimenDefinitionTypeTestedContainerAdditiveComponentElements(SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent element) throws IOException { 58353 composeBackboneElementElements(element); 58354 if (element.hasAdditive()) { 58355 composeType("additive", element.getAdditive()); 58356 } } 58357 58358 protected void composeSpecimenDefinitionTypeTestedHandlingComponent(String name, SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent element) throws IOException { 58359 if (element != null) { 58360 composeElementAttributes(element); 58361 xml.enter(FHIR_NS, name); 58362 composeSpecimenDefinitionTypeTestedHandlingComponentElements(element); 58363 composeElementClose(element); 58364 xml.exit(FHIR_NS, name); 58365 } 58366 } 58367 58368 protected void composeSpecimenDefinitionTypeTestedHandlingComponentElements(SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent element) throws IOException { 58369 composeBackboneElementElements(element); 58370 if (element.hasTemperatureQualifier()) { 58371 composeCodeableConcept("temperatureQualifier", element.getTemperatureQualifier()); 58372 } 58373 if (element.hasTemperatureRange()) { 58374 composeRange("temperatureRange", element.getTemperatureRange()); 58375 } 58376 if (element.hasMaxDuration()) { 58377 composeDuration("maxDuration", element.getMaxDuration()); 58378 } 58379 if (element.hasInstructionElement()) { 58380 composeMarkdown("instruction", element.getInstructionElement()); 58381 } 58382 } 58383 58384 protected void composeStructureDefinition(String name, StructureDefinition element) throws IOException { 58385 if (element != null) { 58386 composeResourceAttributes(element); 58387 xml.enter(FHIR_NS, name); 58388 composeStructureDefinitionElements(element); 58389 composeElementClose(element); 58390 xml.exit(FHIR_NS, name); 58391 } 58392 } 58393 58394 protected void composeStructureDefinitionElements(StructureDefinition element) throws IOException { 58395 composeCanonicalResourceElements(element); 58396 if (element.hasUrlElement()) { 58397 composeUri("url", element.getUrlElement()); 58398 } 58399 if (element.hasIdentifier()) { 58400 for (Identifier e : element.getIdentifier()) 58401 composeIdentifier("identifier", e); 58402 } 58403 if (element.hasVersionElement()) { 58404 composeString("version", element.getVersionElement()); 58405 } 58406 if (element.hasVersionAlgorithm()) { 58407 composeType("versionAlgorithm", element.getVersionAlgorithm()); 58408 } if (element.hasNameElement()) { 58409 composeString("name", element.getNameElement()); 58410 } 58411 if (element.hasTitleElement()) { 58412 composeString("title", element.getTitleElement()); 58413 } 58414 if (element.hasStatusElement()) 58415 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 58416 if (element.hasExperimentalElement()) { 58417 composeBoolean("experimental", element.getExperimentalElement()); 58418 } 58419 if (element.hasDateElement()) { 58420 composeDateTime("date", element.getDateElement()); 58421 } 58422 if (element.hasPublisherElement()) { 58423 composeString("publisher", element.getPublisherElement()); 58424 } 58425 if (element.hasContact()) { 58426 for (ContactDetail e : element.getContact()) 58427 composeContactDetail("contact", e); 58428 } 58429 if (element.hasDescriptionElement()) { 58430 composeMarkdown("description", element.getDescriptionElement()); 58431 } 58432 if (element.hasUseContext()) { 58433 for (UsageContext e : element.getUseContext()) 58434 composeUsageContext("useContext", e); 58435 } 58436 if (element.hasJurisdiction()) { 58437 for (CodeableConcept e : element.getJurisdiction()) 58438 composeCodeableConcept("jurisdiction", e); 58439 } 58440 if (element.hasPurposeElement()) { 58441 composeMarkdown("purpose", element.getPurposeElement()); 58442 } 58443 if (element.hasCopyrightElement()) { 58444 composeMarkdown("copyright", element.getCopyrightElement()); 58445 } 58446 if (element.hasCopyrightLabelElement()) { 58447 composeString("copyrightLabel", element.getCopyrightLabelElement()); 58448 } 58449 if (element.hasKeyword()) { 58450 for (Coding e : element.getKeyword()) 58451 composeCoding("keyword", e); 58452 } 58453 if (element.hasFhirVersionElement()) 58454 composeEnumeration("fhirVersion", element.getFhirVersionElement(), new Enumerations.FHIRVersionEnumFactory()); 58455 if (element.hasMapping()) { 58456 for (StructureDefinition.StructureDefinitionMappingComponent e : element.getMapping()) 58457 composeStructureDefinitionMappingComponent("mapping", e); 58458 } 58459 if (element.hasKindElement()) 58460 composeEnumeration("kind", element.getKindElement(), new StructureDefinition.StructureDefinitionKindEnumFactory()); 58461 if (element.hasAbstractElement()) { 58462 composeBoolean("abstract", element.getAbstractElement()); 58463 } 58464 if (element.hasContext()) { 58465 for (StructureDefinition.StructureDefinitionContextComponent e : element.getContext()) 58466 composeStructureDefinitionContextComponent("context", e); 58467 } 58468 if (element.hasContextInvariant()) { 58469 for (StringType e : element.getContextInvariant()) 58470 composeString("contextInvariant", e); 58471 } 58472 if (element.hasTypeElement()) { 58473 composeUri("type", element.getTypeElement()); 58474 } 58475 if (element.hasBaseDefinitionElement()) { 58476 composeCanonical("baseDefinition", element.getBaseDefinitionElement()); 58477 } 58478 if (element.hasDerivationElement()) 58479 composeEnumeration("derivation", element.getDerivationElement(), new StructureDefinition.TypeDerivationRuleEnumFactory()); 58480 if (element.hasSnapshot()) { 58481 composeStructureDefinitionSnapshotComponent("snapshot", element.getSnapshot()); 58482 } 58483 if (element.hasDifferential()) { 58484 composeStructureDefinitionDifferentialComponent("differential", element.getDifferential()); 58485 } 58486 } 58487 58488 protected void composeStructureDefinitionMappingComponent(String name, StructureDefinition.StructureDefinitionMappingComponent element) throws IOException { 58489 if (element != null) { 58490 composeElementAttributes(element); 58491 xml.enter(FHIR_NS, name); 58492 composeStructureDefinitionMappingComponentElements(element); 58493 composeElementClose(element); 58494 xml.exit(FHIR_NS, name); 58495 } 58496 } 58497 58498 protected void composeStructureDefinitionMappingComponentElements(StructureDefinition.StructureDefinitionMappingComponent element) throws IOException { 58499 composeBackboneElementElements(element); 58500 if (element.hasIdentityElement()) { 58501 composeId("identity", element.getIdentityElement()); 58502 } 58503 if (element.hasUriElement()) { 58504 composeUri("uri", element.getUriElement()); 58505 } 58506 if (element.hasNameElement()) { 58507 composeString("name", element.getNameElement()); 58508 } 58509 if (element.hasCommentElement()) { 58510 composeString("comment", element.getCommentElement()); 58511 } 58512 } 58513 58514 protected void composeStructureDefinitionContextComponent(String name, StructureDefinition.StructureDefinitionContextComponent element) throws IOException { 58515 if (element != null) { 58516 composeElementAttributes(element); 58517 xml.enter(FHIR_NS, name); 58518 composeStructureDefinitionContextComponentElements(element); 58519 composeElementClose(element); 58520 xml.exit(FHIR_NS, name); 58521 } 58522 } 58523 58524 protected void composeStructureDefinitionContextComponentElements(StructureDefinition.StructureDefinitionContextComponent element) throws IOException { 58525 composeBackboneElementElements(element); 58526 if (element.hasTypeElement()) 58527 composeEnumeration("type", element.getTypeElement(), new StructureDefinition.ExtensionContextTypeEnumFactory()); 58528 if (element.hasExpressionElement()) { 58529 composeString("expression", element.getExpressionElement()); 58530 } 58531 } 58532 58533 protected void composeStructureDefinitionSnapshotComponent(String name, StructureDefinition.StructureDefinitionSnapshotComponent element) throws IOException { 58534 if (element != null) { 58535 composeElementAttributes(element); 58536 xml.enter(FHIR_NS, name); 58537 composeStructureDefinitionSnapshotComponentElements(element); 58538 composeElementClose(element); 58539 xml.exit(FHIR_NS, name); 58540 } 58541 } 58542 58543 protected void composeStructureDefinitionSnapshotComponentElements(StructureDefinition.StructureDefinitionSnapshotComponent element) throws IOException { 58544 composeBackboneElementElements(element); 58545 if (element.hasElement()) { 58546 for (ElementDefinition e : element.getElement()) 58547 composeElementDefinition("element", e); 58548 } 58549 } 58550 58551 protected void composeStructureDefinitionDifferentialComponent(String name, StructureDefinition.StructureDefinitionDifferentialComponent element) throws IOException { 58552 if (element != null) { 58553 composeElementAttributes(element); 58554 xml.enter(FHIR_NS, name); 58555 composeStructureDefinitionDifferentialComponentElements(element); 58556 composeElementClose(element); 58557 xml.exit(FHIR_NS, name); 58558 } 58559 } 58560 58561 protected void composeStructureDefinitionDifferentialComponentElements(StructureDefinition.StructureDefinitionDifferentialComponent element) throws IOException { 58562 composeBackboneElementElements(element); 58563 if (element.hasElement()) { 58564 for (ElementDefinition e : element.getElement()) 58565 composeElementDefinition("element", e); 58566 } 58567 } 58568 58569 protected void composeStructureMap(String name, StructureMap element) throws IOException { 58570 if (element != null) { 58571 composeResourceAttributes(element); 58572 xml.enter(FHIR_NS, name); 58573 composeStructureMapElements(element); 58574 composeElementClose(element); 58575 xml.exit(FHIR_NS, name); 58576 } 58577 } 58578 58579 protected void composeStructureMapElements(StructureMap element) throws IOException { 58580 composeCanonicalResourceElements(element); 58581 if (element.hasUrlElement()) { 58582 composeUri("url", element.getUrlElement()); 58583 } 58584 if (element.hasIdentifier()) { 58585 for (Identifier e : element.getIdentifier()) 58586 composeIdentifier("identifier", e); 58587 } 58588 if (element.hasVersionElement()) { 58589 composeString("version", element.getVersionElement()); 58590 } 58591 if (element.hasVersionAlgorithm()) { 58592 composeType("versionAlgorithm", element.getVersionAlgorithm()); 58593 } if (element.hasNameElement()) { 58594 composeString("name", element.getNameElement()); 58595 } 58596 if (element.hasTitleElement()) { 58597 composeString("title", element.getTitleElement()); 58598 } 58599 if (element.hasStatusElement()) 58600 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 58601 if (element.hasExperimentalElement()) { 58602 composeBoolean("experimental", element.getExperimentalElement()); 58603 } 58604 if (element.hasDateElement()) { 58605 composeDateTime("date", element.getDateElement()); 58606 } 58607 if (element.hasPublisherElement()) { 58608 composeString("publisher", element.getPublisherElement()); 58609 } 58610 if (element.hasContact()) { 58611 for (ContactDetail e : element.getContact()) 58612 composeContactDetail("contact", e); 58613 } 58614 if (element.hasDescriptionElement()) { 58615 composeMarkdown("description", element.getDescriptionElement()); 58616 } 58617 if (element.hasUseContext()) { 58618 for (UsageContext e : element.getUseContext()) 58619 composeUsageContext("useContext", e); 58620 } 58621 if (element.hasJurisdiction()) { 58622 for (CodeableConcept e : element.getJurisdiction()) 58623 composeCodeableConcept("jurisdiction", e); 58624 } 58625 if (element.hasPurposeElement()) { 58626 composeMarkdown("purpose", element.getPurposeElement()); 58627 } 58628 if (element.hasCopyrightElement()) { 58629 composeMarkdown("copyright", element.getCopyrightElement()); 58630 } 58631 if (element.hasCopyrightLabelElement()) { 58632 composeString("copyrightLabel", element.getCopyrightLabelElement()); 58633 } 58634 if (element.hasStructure()) { 58635 for (StructureMap.StructureMapStructureComponent e : element.getStructure()) 58636 composeStructureMapStructureComponent("structure", e); 58637 } 58638 if (element.hasImport()) { 58639 for (CanonicalType e : element.getImport()) 58640 composeCanonical("import", e); 58641 } 58642 if (element.hasConst()) { 58643 for (StructureMap.StructureMapConstComponent e : element.getConst()) 58644 composeStructureMapConstComponent("const", e); 58645 } 58646 if (element.hasGroup()) { 58647 for (StructureMap.StructureMapGroupComponent e : element.getGroup()) 58648 composeStructureMapGroupComponent("group", e); 58649 } 58650 } 58651 58652 protected void composeStructureMapStructureComponent(String name, StructureMap.StructureMapStructureComponent element) throws IOException { 58653 if (element != null) { 58654 composeElementAttributes(element); 58655 xml.enter(FHIR_NS, name); 58656 composeStructureMapStructureComponentElements(element); 58657 composeElementClose(element); 58658 xml.exit(FHIR_NS, name); 58659 } 58660 } 58661 58662 protected void composeStructureMapStructureComponentElements(StructureMap.StructureMapStructureComponent element) throws IOException { 58663 composeBackboneElementElements(element); 58664 if (element.hasUrlElement()) { 58665 composeCanonical("url", element.getUrlElement()); 58666 } 58667 if (element.hasModeElement()) 58668 composeEnumeration("mode", element.getModeElement(), new StructureMap.StructureMapModelModeEnumFactory()); 58669 if (element.hasAliasElement()) { 58670 composeString("alias", element.getAliasElement()); 58671 } 58672 if (element.hasDocumentationElement()) { 58673 composeString("documentation", element.getDocumentationElement()); 58674 } 58675 } 58676 58677 protected void composeStructureMapConstComponent(String name, StructureMap.StructureMapConstComponent element) throws IOException { 58678 if (element != null) { 58679 composeElementAttributes(element); 58680 xml.enter(FHIR_NS, name); 58681 composeStructureMapConstComponentElements(element); 58682 composeElementClose(element); 58683 xml.exit(FHIR_NS, name); 58684 } 58685 } 58686 58687 protected void composeStructureMapConstComponentElements(StructureMap.StructureMapConstComponent element) throws IOException { 58688 composeBackboneElementElements(element); 58689 if (element.hasNameElement()) { 58690 composeId("name", element.getNameElement()); 58691 } 58692 if (element.hasValueElement()) { 58693 composeString("value", element.getValueElement()); 58694 } 58695 } 58696 58697 protected void composeStructureMapGroupComponent(String name, StructureMap.StructureMapGroupComponent element) throws IOException { 58698 if (element != null) { 58699 composeElementAttributes(element); 58700 xml.enter(FHIR_NS, name); 58701 composeStructureMapGroupComponentElements(element); 58702 composeElementClose(element); 58703 xml.exit(FHIR_NS, name); 58704 } 58705 } 58706 58707 protected void composeStructureMapGroupComponentElements(StructureMap.StructureMapGroupComponent element) throws IOException { 58708 composeBackboneElementElements(element); 58709 if (element.hasNameElement()) { 58710 composeId("name", element.getNameElement()); 58711 } 58712 if (element.hasExtendsElement()) { 58713 composeId("extends", element.getExtendsElement()); 58714 } 58715 if (element.hasTypeModeElement()) 58716 composeEnumeration("typeMode", element.getTypeModeElement(), new StructureMap.StructureMapGroupTypeModeEnumFactory()); 58717 if (element.hasDocumentationElement()) { 58718 composeString("documentation", element.getDocumentationElement()); 58719 } 58720 if (element.hasInput()) { 58721 for (StructureMap.StructureMapGroupInputComponent e : element.getInput()) 58722 composeStructureMapGroupInputComponent("input", e); 58723 } 58724 if (element.hasRule()) { 58725 for (StructureMap.StructureMapGroupRuleComponent e : element.getRule()) 58726 composeStructureMapGroupRuleComponent("rule", e); 58727 } 58728 } 58729 58730 protected void composeStructureMapGroupInputComponent(String name, StructureMap.StructureMapGroupInputComponent element) throws IOException { 58731 if (element != null) { 58732 composeElementAttributes(element); 58733 xml.enter(FHIR_NS, name); 58734 composeStructureMapGroupInputComponentElements(element); 58735 composeElementClose(element); 58736 xml.exit(FHIR_NS, name); 58737 } 58738 } 58739 58740 protected void composeStructureMapGroupInputComponentElements(StructureMap.StructureMapGroupInputComponent element) throws IOException { 58741 composeBackboneElementElements(element); 58742 if (element.hasNameElement()) { 58743 composeId("name", element.getNameElement()); 58744 } 58745 if (element.hasTypeElement()) { 58746 composeString("type", element.getTypeElement()); 58747 } 58748 if (element.hasModeElement()) 58749 composeEnumeration("mode", element.getModeElement(), new StructureMap.StructureMapInputModeEnumFactory()); 58750 if (element.hasDocumentationElement()) { 58751 composeString("documentation", element.getDocumentationElement()); 58752 } 58753 } 58754 58755 protected void composeStructureMapGroupRuleComponent(String name, StructureMap.StructureMapGroupRuleComponent element) throws IOException { 58756 if (element != null) { 58757 composeElementAttributes(element); 58758 xml.enter(FHIR_NS, name); 58759 composeStructureMapGroupRuleComponentElements(element); 58760 composeElementClose(element); 58761 xml.exit(FHIR_NS, name); 58762 } 58763 } 58764 58765 protected void composeStructureMapGroupRuleComponentElements(StructureMap.StructureMapGroupRuleComponent element) throws IOException { 58766 composeBackboneElementElements(element); 58767 if (element.hasNameElement()) { 58768 composeId("name", element.getNameElement()); 58769 } 58770 if (element.hasSource()) { 58771 for (StructureMap.StructureMapGroupRuleSourceComponent e : element.getSource()) 58772 composeStructureMapGroupRuleSourceComponent("source", e); 58773 } 58774 if (element.hasTarget()) { 58775 for (StructureMap.StructureMapGroupRuleTargetComponent e : element.getTarget()) 58776 composeStructureMapGroupRuleTargetComponent("target", e); 58777 } 58778 if (element.hasRule()) { 58779 for (StructureMap.StructureMapGroupRuleComponent e : element.getRule()) 58780 composeStructureMapGroupRuleComponent("rule", e); 58781 } 58782 if (element.hasDependent()) { 58783 for (StructureMap.StructureMapGroupRuleDependentComponent e : element.getDependent()) 58784 composeStructureMapGroupRuleDependentComponent("dependent", e); 58785 } 58786 if (element.hasDocumentationElement()) { 58787 composeString("documentation", element.getDocumentationElement()); 58788 } 58789 } 58790 58791 protected void composeStructureMapGroupRuleSourceComponent(String name, StructureMap.StructureMapGroupRuleSourceComponent element) throws IOException { 58792 if (element != null) { 58793 composeElementAttributes(element); 58794 xml.enter(FHIR_NS, name); 58795 composeStructureMapGroupRuleSourceComponentElements(element); 58796 composeElementClose(element); 58797 xml.exit(FHIR_NS, name); 58798 } 58799 } 58800 58801 protected void composeStructureMapGroupRuleSourceComponentElements(StructureMap.StructureMapGroupRuleSourceComponent element) throws IOException { 58802 composeBackboneElementElements(element); 58803 if (element.hasContextElement()) { 58804 composeId("context", element.getContextElement()); 58805 } 58806 if (element.hasMinElement()) { 58807 composeInteger("min", element.getMinElement()); 58808 } 58809 if (element.hasMaxElement()) { 58810 composeString("max", element.getMaxElement()); 58811 } 58812 if (element.hasTypeElement()) { 58813 composeString("type", element.getTypeElement()); 58814 } 58815 if (element.hasDefaultValueElement()) { 58816 composeString("defaultValue", element.getDefaultValueElement()); 58817 } 58818 if (element.hasElementElement()) { 58819 composeString("element", element.getElementElement()); 58820 } 58821 if (element.hasListModeElement()) 58822 composeEnumeration("listMode", element.getListModeElement(), new StructureMap.StructureMapSourceListModeEnumFactory()); 58823 if (element.hasVariableElement()) { 58824 composeId("variable", element.getVariableElement()); 58825 } 58826 if (element.hasConditionElement()) { 58827 composeString("condition", element.getConditionElement()); 58828 } 58829 if (element.hasCheckElement()) { 58830 composeString("check", element.getCheckElement()); 58831 } 58832 if (element.hasLogMessageElement()) { 58833 composeString("logMessage", element.getLogMessageElement()); 58834 } 58835 } 58836 58837 protected void composeStructureMapGroupRuleTargetComponent(String name, StructureMap.StructureMapGroupRuleTargetComponent element) throws IOException { 58838 if (element != null) { 58839 composeElementAttributes(element); 58840 xml.enter(FHIR_NS, name); 58841 composeStructureMapGroupRuleTargetComponentElements(element); 58842 composeElementClose(element); 58843 xml.exit(FHIR_NS, name); 58844 } 58845 } 58846 58847 protected void composeStructureMapGroupRuleTargetComponentElements(StructureMap.StructureMapGroupRuleTargetComponent element) throws IOException { 58848 composeBackboneElementElements(element); 58849 if (element.hasContextElement()) { 58850 composeString("context", element.getContextElement()); 58851 } 58852 if (element.hasElementElement()) { 58853 composeString("element", element.getElementElement()); 58854 } 58855 if (element.hasVariableElement()) { 58856 composeId("variable", element.getVariableElement()); 58857 } 58858 if (element.hasListMode()) 58859 for (Enumeration<StructureMap.StructureMapTargetListMode> e : element.getListMode()) 58860 composeEnumeration("listMode", e, new StructureMap.StructureMapTargetListModeEnumFactory()); 58861 if (element.hasListRuleIdElement()) { 58862 composeId("listRuleId", element.getListRuleIdElement()); 58863 } 58864 if (element.hasTransformElement()) 58865 composeEnumeration("transform", element.getTransformElement(), new StructureMap.StructureMapTransformEnumFactory()); 58866 if (element.hasParameter()) { 58867 for (StructureMap.StructureMapGroupRuleTargetParameterComponent e : element.getParameter()) 58868 composeStructureMapGroupRuleTargetParameterComponent("parameter", e); 58869 } 58870 } 58871 58872 protected void composeStructureMapGroupRuleTargetParameterComponent(String name, StructureMap.StructureMapGroupRuleTargetParameterComponent element) throws IOException { 58873 if (element != null) { 58874 composeElementAttributes(element); 58875 xml.enter(FHIR_NS, name); 58876 composeStructureMapGroupRuleTargetParameterComponentElements(element); 58877 composeElementClose(element); 58878 xml.exit(FHIR_NS, name); 58879 } 58880 } 58881 58882 protected void composeStructureMapGroupRuleTargetParameterComponentElements(StructureMap.StructureMapGroupRuleTargetParameterComponent element) throws IOException { 58883 composeBackboneElementElements(element); 58884 if (element.hasValue()) { 58885 composeType("value", element.getValue()); 58886 } } 58887 58888 protected void composeStructureMapGroupRuleDependentComponent(String name, StructureMap.StructureMapGroupRuleDependentComponent element) throws IOException { 58889 if (element != null) { 58890 composeElementAttributes(element); 58891 xml.enter(FHIR_NS, name); 58892 composeStructureMapGroupRuleDependentComponentElements(element); 58893 composeElementClose(element); 58894 xml.exit(FHIR_NS, name); 58895 } 58896 } 58897 58898 protected void composeStructureMapGroupRuleDependentComponentElements(StructureMap.StructureMapGroupRuleDependentComponent element) throws IOException { 58899 composeBackboneElementElements(element); 58900 if (element.hasNameElement()) { 58901 composeId("name", element.getNameElement()); 58902 } 58903 if (element.hasParameter()) { 58904 for (StructureMap.StructureMapGroupRuleTargetParameterComponent e : element.getParameter()) 58905 composeStructureMapGroupRuleTargetParameterComponent("parameter", e); 58906 } 58907 } 58908 58909 protected void composeSubscription(String name, Subscription element) throws IOException { 58910 if (element != null) { 58911 composeResourceAttributes(element); 58912 xml.enter(FHIR_NS, name); 58913 composeSubscriptionElements(element); 58914 composeElementClose(element); 58915 xml.exit(FHIR_NS, name); 58916 } 58917 } 58918 58919 protected void composeSubscriptionElements(Subscription element) throws IOException { 58920 composeDomainResourceElements(element); 58921 if (element.hasIdentifier()) { 58922 for (Identifier e : element.getIdentifier()) 58923 composeIdentifier("identifier", e); 58924 } 58925 if (element.hasNameElement()) { 58926 composeString("name", element.getNameElement()); 58927 } 58928 if (element.hasStatusElement()) 58929 composeEnumeration("status", element.getStatusElement(), new Enumerations.SubscriptionStatusCodesEnumFactory()); 58930 if (element.hasTopicElement()) { 58931 composeCanonical("topic", element.getTopicElement()); 58932 } 58933 if (element.hasContact()) { 58934 for (ContactPoint e : element.getContact()) 58935 composeContactPoint("contact", e); 58936 } 58937 if (element.hasEndElement()) { 58938 composeInstant("end", element.getEndElement()); 58939 } 58940 if (element.hasManagingEntity()) { 58941 composeReference("managingEntity", element.getManagingEntity()); 58942 } 58943 if (element.hasReasonElement()) { 58944 composeString("reason", element.getReasonElement()); 58945 } 58946 if (element.hasFilterBy()) { 58947 for (Subscription.SubscriptionFilterByComponent e : element.getFilterBy()) 58948 composeSubscriptionFilterByComponent("filterBy", e); 58949 } 58950 if (element.hasChannelType()) { 58951 composeCoding("channelType", element.getChannelType()); 58952 } 58953 if (element.hasEndpointElement()) { 58954 composeUrl("endpoint", element.getEndpointElement()); 58955 } 58956 if (element.hasParameter()) { 58957 for (Subscription.SubscriptionParameterComponent e : element.getParameter()) 58958 composeSubscriptionParameterComponent("parameter", e); 58959 } 58960 if (element.hasHeartbeatPeriodElement()) { 58961 composeUnsignedInt("heartbeatPeriod", element.getHeartbeatPeriodElement()); 58962 } 58963 if (element.hasTimeoutElement()) { 58964 composeUnsignedInt("timeout", element.getTimeoutElement()); 58965 } 58966 if (element.hasContentTypeElement()) { 58967 composeCode("contentType", element.getContentTypeElement()); 58968 } 58969 if (element.hasContentElement()) 58970 composeEnumeration("content", element.getContentElement(), new Subscription.SubscriptionPayloadContentEnumFactory()); 58971 if (element.hasMaxCountElement()) { 58972 composePositiveInt("maxCount", element.getMaxCountElement()); 58973 } 58974 } 58975 58976 protected void composeSubscriptionFilterByComponent(String name, Subscription.SubscriptionFilterByComponent element) throws IOException { 58977 if (element != null) { 58978 composeElementAttributes(element); 58979 xml.enter(FHIR_NS, name); 58980 composeSubscriptionFilterByComponentElements(element); 58981 composeElementClose(element); 58982 xml.exit(FHIR_NS, name); 58983 } 58984 } 58985 58986 protected void composeSubscriptionFilterByComponentElements(Subscription.SubscriptionFilterByComponent element) throws IOException { 58987 composeBackboneElementElements(element); 58988 if (element.hasResourceTypeElement()) { 58989 composeUri("resourceType", element.getResourceTypeElement()); 58990 } 58991 if (element.hasFilterParameterElement()) { 58992 composeString("filterParameter", element.getFilterParameterElement()); 58993 } 58994 if (element.hasComparatorElement()) 58995 composeEnumeration("comparator", element.getComparatorElement(), new Enumerations.SearchComparatorEnumFactory()); 58996 if (element.hasModifierElement()) 58997 composeEnumeration("modifier", element.getModifierElement(), new Enumerations.SearchModifierCodeEnumFactory()); 58998 if (element.hasValueElement()) { 58999 composeString("value", element.getValueElement()); 59000 } 59001 } 59002 59003 protected void composeSubscriptionParameterComponent(String name, Subscription.SubscriptionParameterComponent element) throws IOException { 59004 if (element != null) { 59005 composeElementAttributes(element); 59006 xml.enter(FHIR_NS, name); 59007 composeSubscriptionParameterComponentElements(element); 59008 composeElementClose(element); 59009 xml.exit(FHIR_NS, name); 59010 } 59011 } 59012 59013 protected void composeSubscriptionParameterComponentElements(Subscription.SubscriptionParameterComponent element) throws IOException { 59014 composeBackboneElementElements(element); 59015 if (element.hasNameElement()) { 59016 composeString("name", element.getNameElement()); 59017 } 59018 if (element.hasValueElement()) { 59019 composeString("value", element.getValueElement()); 59020 } 59021 } 59022 59023 protected void composeSubscriptionStatus(String name, SubscriptionStatus element) throws IOException { 59024 if (element != null) { 59025 composeResourceAttributes(element); 59026 xml.enter(FHIR_NS, name); 59027 composeSubscriptionStatusElements(element); 59028 composeElementClose(element); 59029 xml.exit(FHIR_NS, name); 59030 } 59031 } 59032 59033 protected void composeSubscriptionStatusElements(SubscriptionStatus element) throws IOException { 59034 composeDomainResourceElements(element); 59035 if (element.hasStatusElement()) 59036 composeEnumeration("status", element.getStatusElement(), new Enumerations.SubscriptionStatusCodesEnumFactory()); 59037 if (element.hasTypeElement()) 59038 composeEnumeration("type", element.getTypeElement(), new SubscriptionStatus.SubscriptionNotificationTypeEnumFactory()); 59039 if (element.hasEventsSinceSubscriptionStartElement()) { 59040 composeInteger64("eventsSinceSubscriptionStart", element.getEventsSinceSubscriptionStartElement()); 59041 } 59042 if (element.hasNotificationEvent()) { 59043 for (SubscriptionStatus.SubscriptionStatusNotificationEventComponent e : element.getNotificationEvent()) 59044 composeSubscriptionStatusNotificationEventComponent("notificationEvent", e); 59045 } 59046 if (element.hasSubscription()) { 59047 composeReference("subscription", element.getSubscription()); 59048 } 59049 if (element.hasTopicElement()) { 59050 composeCanonical("topic", element.getTopicElement()); 59051 } 59052 if (element.hasError()) { 59053 for (CodeableConcept e : element.getError()) 59054 composeCodeableConcept("error", e); 59055 } 59056 } 59057 59058 protected void composeSubscriptionStatusNotificationEventComponent(String name, SubscriptionStatus.SubscriptionStatusNotificationEventComponent element) throws IOException { 59059 if (element != null) { 59060 composeElementAttributes(element); 59061 xml.enter(FHIR_NS, name); 59062 composeSubscriptionStatusNotificationEventComponentElements(element); 59063 composeElementClose(element); 59064 xml.exit(FHIR_NS, name); 59065 } 59066 } 59067 59068 protected void composeSubscriptionStatusNotificationEventComponentElements(SubscriptionStatus.SubscriptionStatusNotificationEventComponent element) throws IOException { 59069 composeBackboneElementElements(element); 59070 if (element.hasEventNumberElement()) { 59071 composeInteger64("eventNumber", element.getEventNumberElement()); 59072 } 59073 if (element.hasTimestampElement()) { 59074 composeInstant("timestamp", element.getTimestampElement()); 59075 } 59076 if (element.hasFocus()) { 59077 composeReference("focus", element.getFocus()); 59078 } 59079 if (element.hasAdditionalContext()) { 59080 for (Reference e : element.getAdditionalContext()) 59081 composeReference("additionalContext", e); 59082 } 59083 } 59084 59085 protected void composeSubscriptionTopic(String name, SubscriptionTopic element) throws IOException { 59086 if (element != null) { 59087 composeResourceAttributes(element); 59088 xml.enter(FHIR_NS, name); 59089 composeSubscriptionTopicElements(element); 59090 composeElementClose(element); 59091 xml.exit(FHIR_NS, name); 59092 } 59093 } 59094 59095 protected void composeSubscriptionTopicElements(SubscriptionTopic element) throws IOException { 59096 composeCanonicalResourceElements(element); 59097 if (element.hasUrlElement()) { 59098 composeUri("url", element.getUrlElement()); 59099 } 59100 if (element.hasIdentifier()) { 59101 for (Identifier e : element.getIdentifier()) 59102 composeIdentifier("identifier", e); 59103 } 59104 if (element.hasVersionElement()) { 59105 composeString("version", element.getVersionElement()); 59106 } 59107 if (element.hasVersionAlgorithm()) { 59108 composeType("versionAlgorithm", element.getVersionAlgorithm()); 59109 } if (element.hasNameElement()) { 59110 composeString("name", element.getNameElement()); 59111 } 59112 if (element.hasTitleElement()) { 59113 composeString("title", element.getTitleElement()); 59114 } 59115 if (element.hasDerivedFrom()) { 59116 for (CanonicalType e : element.getDerivedFrom()) 59117 composeCanonical("derivedFrom", e); 59118 } 59119 if (element.hasStatusElement()) 59120 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 59121 if (element.hasExperimentalElement()) { 59122 composeBoolean("experimental", element.getExperimentalElement()); 59123 } 59124 if (element.hasDateElement()) { 59125 composeDateTime("date", element.getDateElement()); 59126 } 59127 if (element.hasPublisherElement()) { 59128 composeString("publisher", element.getPublisherElement()); 59129 } 59130 if (element.hasContact()) { 59131 for (ContactDetail e : element.getContact()) 59132 composeContactDetail("contact", e); 59133 } 59134 if (element.hasDescriptionElement()) { 59135 composeMarkdown("description", element.getDescriptionElement()); 59136 } 59137 if (element.hasUseContext()) { 59138 for (UsageContext e : element.getUseContext()) 59139 composeUsageContext("useContext", e); 59140 } 59141 if (element.hasJurisdiction()) { 59142 for (CodeableConcept e : element.getJurisdiction()) 59143 composeCodeableConcept("jurisdiction", e); 59144 } 59145 if (element.hasPurposeElement()) { 59146 composeMarkdown("purpose", element.getPurposeElement()); 59147 } 59148 if (element.hasCopyrightElement()) { 59149 composeMarkdown("copyright", element.getCopyrightElement()); 59150 } 59151 if (element.hasCopyrightLabelElement()) { 59152 composeString("copyrightLabel", element.getCopyrightLabelElement()); 59153 } 59154 if (element.hasApprovalDateElement()) { 59155 composeDate("approvalDate", element.getApprovalDateElement()); 59156 } 59157 if (element.hasLastReviewDateElement()) { 59158 composeDate("lastReviewDate", element.getLastReviewDateElement()); 59159 } 59160 if (element.hasEffectivePeriod()) { 59161 composePeriod("effectivePeriod", element.getEffectivePeriod()); 59162 } 59163 if (element.hasResourceTrigger()) { 59164 for (SubscriptionTopic.SubscriptionTopicResourceTriggerComponent e : element.getResourceTrigger()) 59165 composeSubscriptionTopicResourceTriggerComponent("resourceTrigger", e); 59166 } 59167 if (element.hasEventTrigger()) { 59168 for (SubscriptionTopic.SubscriptionTopicEventTriggerComponent e : element.getEventTrigger()) 59169 composeSubscriptionTopicEventTriggerComponent("eventTrigger", e); 59170 } 59171 if (element.hasCanFilterBy()) { 59172 for (SubscriptionTopic.SubscriptionTopicCanFilterByComponent e : element.getCanFilterBy()) 59173 composeSubscriptionTopicCanFilterByComponent("canFilterBy", e); 59174 } 59175 if (element.hasNotificationShape()) { 59176 for (SubscriptionTopic.SubscriptionTopicNotificationShapeComponent e : element.getNotificationShape()) 59177 composeSubscriptionTopicNotificationShapeComponent("notificationShape", e); 59178 } 59179 } 59180 59181 protected void composeSubscriptionTopicResourceTriggerComponent(String name, SubscriptionTopic.SubscriptionTopicResourceTriggerComponent element) throws IOException { 59182 if (element != null) { 59183 composeElementAttributes(element); 59184 xml.enter(FHIR_NS, name); 59185 composeSubscriptionTopicResourceTriggerComponentElements(element); 59186 composeElementClose(element); 59187 xml.exit(FHIR_NS, name); 59188 } 59189 } 59190 59191 protected void composeSubscriptionTopicResourceTriggerComponentElements(SubscriptionTopic.SubscriptionTopicResourceTriggerComponent element) throws IOException { 59192 composeBackboneElementElements(element); 59193 if (element.hasDescriptionElement()) { 59194 composeMarkdown("description", element.getDescriptionElement()); 59195 } 59196 if (element.hasResourceElement()) { 59197 composeUri("resource", element.getResourceElement()); 59198 } 59199 if (element.hasSupportedInteraction()) 59200 for (Enumeration<SubscriptionTopic.InteractionTrigger> e : element.getSupportedInteraction()) 59201 composeEnumeration("supportedInteraction", e, new SubscriptionTopic.InteractionTriggerEnumFactory()); 59202 if (element.hasQueryCriteria()) { 59203 composeSubscriptionTopicResourceTriggerQueryCriteriaComponent("queryCriteria", element.getQueryCriteria()); 59204 } 59205 if (element.hasFhirPathCriteriaElement()) { 59206 composeString("fhirPathCriteria", element.getFhirPathCriteriaElement()); 59207 } 59208 } 59209 59210 protected void composeSubscriptionTopicResourceTriggerQueryCriteriaComponent(String name, SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent element) throws IOException { 59211 if (element != null) { 59212 composeElementAttributes(element); 59213 xml.enter(FHIR_NS, name); 59214 composeSubscriptionTopicResourceTriggerQueryCriteriaComponentElements(element); 59215 composeElementClose(element); 59216 xml.exit(FHIR_NS, name); 59217 } 59218 } 59219 59220 protected void composeSubscriptionTopicResourceTriggerQueryCriteriaComponentElements(SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent element) throws IOException { 59221 composeBackboneElementElements(element); 59222 if (element.hasPreviousElement()) { 59223 composeString("previous", element.getPreviousElement()); 59224 } 59225 if (element.hasResultForCreateElement()) 59226 composeEnumeration("resultForCreate", element.getResultForCreateElement(), new SubscriptionTopic.CriteriaNotExistsBehaviorEnumFactory()); 59227 if (element.hasCurrentElement()) { 59228 composeString("current", element.getCurrentElement()); 59229 } 59230 if (element.hasResultForDeleteElement()) 59231 composeEnumeration("resultForDelete", element.getResultForDeleteElement(), new SubscriptionTopic.CriteriaNotExistsBehaviorEnumFactory()); 59232 if (element.hasRequireBothElement()) { 59233 composeBoolean("requireBoth", element.getRequireBothElement()); 59234 } 59235 } 59236 59237 protected void composeSubscriptionTopicEventTriggerComponent(String name, SubscriptionTopic.SubscriptionTopicEventTriggerComponent element) throws IOException { 59238 if (element != null) { 59239 composeElementAttributes(element); 59240 xml.enter(FHIR_NS, name); 59241 composeSubscriptionTopicEventTriggerComponentElements(element); 59242 composeElementClose(element); 59243 xml.exit(FHIR_NS, name); 59244 } 59245 } 59246 59247 protected void composeSubscriptionTopicEventTriggerComponentElements(SubscriptionTopic.SubscriptionTopicEventTriggerComponent element) throws IOException { 59248 composeBackboneElementElements(element); 59249 if (element.hasDescriptionElement()) { 59250 composeMarkdown("description", element.getDescriptionElement()); 59251 } 59252 if (element.hasEvent()) { 59253 composeCodeableConcept("event", element.getEvent()); 59254 } 59255 if (element.hasResourceElement()) { 59256 composeUri("resource", element.getResourceElement()); 59257 } 59258 } 59259 59260 protected void composeSubscriptionTopicCanFilterByComponent(String name, SubscriptionTopic.SubscriptionTopicCanFilterByComponent element) throws IOException { 59261 if (element != null) { 59262 composeElementAttributes(element); 59263 xml.enter(FHIR_NS, name); 59264 composeSubscriptionTopicCanFilterByComponentElements(element); 59265 composeElementClose(element); 59266 xml.exit(FHIR_NS, name); 59267 } 59268 } 59269 59270 protected void composeSubscriptionTopicCanFilterByComponentElements(SubscriptionTopic.SubscriptionTopicCanFilterByComponent element) throws IOException { 59271 composeBackboneElementElements(element); 59272 if (element.hasDescriptionElement()) { 59273 composeMarkdown("description", element.getDescriptionElement()); 59274 } 59275 if (element.hasResourceElement()) { 59276 composeUri("resource", element.getResourceElement()); 59277 } 59278 if (element.hasFilterParameterElement()) { 59279 composeString("filterParameter", element.getFilterParameterElement()); 59280 } 59281 if (element.hasFilterDefinitionElement()) { 59282 composeUri("filterDefinition", element.getFilterDefinitionElement()); 59283 } 59284 if (element.hasComparator()) 59285 for (Enumeration<Enumerations.SearchComparator> e : element.getComparator()) 59286 composeEnumeration("comparator", e, new Enumerations.SearchComparatorEnumFactory()); 59287 if (element.hasModifier()) 59288 for (Enumeration<Enumerations.SearchModifierCode> e : element.getModifier()) 59289 composeEnumeration("modifier", e, new Enumerations.SearchModifierCodeEnumFactory()); 59290 } 59291 59292 protected void composeSubscriptionTopicNotificationShapeComponent(String name, SubscriptionTopic.SubscriptionTopicNotificationShapeComponent element) throws IOException { 59293 if (element != null) { 59294 composeElementAttributes(element); 59295 xml.enter(FHIR_NS, name); 59296 composeSubscriptionTopicNotificationShapeComponentElements(element); 59297 composeElementClose(element); 59298 xml.exit(FHIR_NS, name); 59299 } 59300 } 59301 59302 protected void composeSubscriptionTopicNotificationShapeComponentElements(SubscriptionTopic.SubscriptionTopicNotificationShapeComponent element) throws IOException { 59303 composeBackboneElementElements(element); 59304 if (element.hasResourceElement()) { 59305 composeUri("resource", element.getResourceElement()); 59306 } 59307 if (element.hasInclude()) { 59308 for (StringType e : element.getInclude()) 59309 composeString("include", e); 59310 } 59311 if (element.hasRevInclude()) { 59312 for (StringType e : element.getRevInclude()) 59313 composeString("revInclude", e); 59314 } 59315 } 59316 59317 protected void composeSubstance(String name, Substance element) throws IOException { 59318 if (element != null) { 59319 composeResourceAttributes(element); 59320 xml.enter(FHIR_NS, name); 59321 composeSubstanceElements(element); 59322 composeElementClose(element); 59323 xml.exit(FHIR_NS, name); 59324 } 59325 } 59326 59327 protected void composeSubstanceElements(Substance element) throws IOException { 59328 composeDomainResourceElements(element); 59329 if (element.hasIdentifier()) { 59330 for (Identifier e : element.getIdentifier()) 59331 composeIdentifier("identifier", e); 59332 } 59333 if (element.hasInstanceElement()) { 59334 composeBoolean("instance", element.getInstanceElement()); 59335 } 59336 if (element.hasStatusElement()) 59337 composeEnumeration("status", element.getStatusElement(), new Substance.FHIRSubstanceStatusEnumFactory()); 59338 if (element.hasCategory()) { 59339 for (CodeableConcept e : element.getCategory()) 59340 composeCodeableConcept("category", e); 59341 } 59342 if (element.hasCode()) { 59343 composeCodeableReference("code", element.getCode()); 59344 } 59345 if (element.hasDescriptionElement()) { 59346 composeMarkdown("description", element.getDescriptionElement()); 59347 } 59348 if (element.hasExpiryElement()) { 59349 composeDateTime("expiry", element.getExpiryElement()); 59350 } 59351 if (element.hasQuantity()) { 59352 composeQuantity("quantity", element.getQuantity()); 59353 } 59354 if (element.hasIngredient()) { 59355 for (Substance.SubstanceIngredientComponent e : element.getIngredient()) 59356 composeSubstanceIngredientComponent("ingredient", e); 59357 } 59358 } 59359 59360 protected void composeSubstanceIngredientComponent(String name, Substance.SubstanceIngredientComponent element) throws IOException { 59361 if (element != null) { 59362 composeElementAttributes(element); 59363 xml.enter(FHIR_NS, name); 59364 composeSubstanceIngredientComponentElements(element); 59365 composeElementClose(element); 59366 xml.exit(FHIR_NS, name); 59367 } 59368 } 59369 59370 protected void composeSubstanceIngredientComponentElements(Substance.SubstanceIngredientComponent element) throws IOException { 59371 composeBackboneElementElements(element); 59372 if (element.hasQuantity()) { 59373 composeRatio("quantity", element.getQuantity()); 59374 } 59375 if (element.hasSubstance()) { 59376 composeType("substance", element.getSubstance()); 59377 } } 59378 59379 protected void composeSubstanceDefinition(String name, SubstanceDefinition element) throws IOException { 59380 if (element != null) { 59381 composeResourceAttributes(element); 59382 xml.enter(FHIR_NS, name); 59383 composeSubstanceDefinitionElements(element); 59384 composeElementClose(element); 59385 xml.exit(FHIR_NS, name); 59386 } 59387 } 59388 59389 protected void composeSubstanceDefinitionElements(SubstanceDefinition element) throws IOException { 59390 composeDomainResourceElements(element); 59391 if (element.hasIdentifier()) { 59392 for (Identifier e : element.getIdentifier()) 59393 composeIdentifier("identifier", e); 59394 } 59395 if (element.hasVersionElement()) { 59396 composeString("version", element.getVersionElement()); 59397 } 59398 if (element.hasStatus()) { 59399 composeCodeableConcept("status", element.getStatus()); 59400 } 59401 if (element.hasClassification()) { 59402 for (CodeableConcept e : element.getClassification()) 59403 composeCodeableConcept("classification", e); 59404 } 59405 if (element.hasDomain()) { 59406 composeCodeableConcept("domain", element.getDomain()); 59407 } 59408 if (element.hasGrade()) { 59409 for (CodeableConcept e : element.getGrade()) 59410 composeCodeableConcept("grade", e); 59411 } 59412 if (element.hasDescriptionElement()) { 59413 composeMarkdown("description", element.getDescriptionElement()); 59414 } 59415 if (element.hasInformationSource()) { 59416 for (Reference e : element.getInformationSource()) 59417 composeReference("informationSource", e); 59418 } 59419 if (element.hasNote()) { 59420 for (Annotation e : element.getNote()) 59421 composeAnnotation("note", e); 59422 } 59423 if (element.hasManufacturer()) { 59424 for (Reference e : element.getManufacturer()) 59425 composeReference("manufacturer", e); 59426 } 59427 if (element.hasSupplier()) { 59428 for (Reference e : element.getSupplier()) 59429 composeReference("supplier", e); 59430 } 59431 if (element.hasMoiety()) { 59432 for (SubstanceDefinition.SubstanceDefinitionMoietyComponent e : element.getMoiety()) 59433 composeSubstanceDefinitionMoietyComponent("moiety", e); 59434 } 59435 if (element.hasCharacterization()) { 59436 for (SubstanceDefinition.SubstanceDefinitionCharacterizationComponent e : element.getCharacterization()) 59437 composeSubstanceDefinitionCharacterizationComponent("characterization", e); 59438 } 59439 if (element.hasProperty()) { 59440 for (SubstanceDefinition.SubstanceDefinitionPropertyComponent e : element.getProperty()) 59441 composeSubstanceDefinitionPropertyComponent("property", e); 59442 } 59443 if (element.hasReferenceInformation()) { 59444 composeReference("referenceInformation", element.getReferenceInformation()); 59445 } 59446 if (element.hasMolecularWeight()) { 59447 for (SubstanceDefinition.SubstanceDefinitionMolecularWeightComponent e : element.getMolecularWeight()) 59448 composeSubstanceDefinitionMolecularWeightComponent("molecularWeight", e); 59449 } 59450 if (element.hasStructure()) { 59451 composeSubstanceDefinitionStructureComponent("structure", element.getStructure()); 59452 } 59453 if (element.hasCode()) { 59454 for (SubstanceDefinition.SubstanceDefinitionCodeComponent e : element.getCode()) 59455 composeSubstanceDefinitionCodeComponent("code", e); 59456 } 59457 if (element.hasName()) { 59458 for (SubstanceDefinition.SubstanceDefinitionNameComponent e : element.getName()) 59459 composeSubstanceDefinitionNameComponent("name", e); 59460 } 59461 if (element.hasRelationship()) { 59462 for (SubstanceDefinition.SubstanceDefinitionRelationshipComponent e : element.getRelationship()) 59463 composeSubstanceDefinitionRelationshipComponent("relationship", e); 59464 } 59465 if (element.hasNucleicAcid()) { 59466 composeReference("nucleicAcid", element.getNucleicAcid()); 59467 } 59468 if (element.hasPolymer()) { 59469 composeReference("polymer", element.getPolymer()); 59470 } 59471 if (element.hasProtein()) { 59472 composeReference("protein", element.getProtein()); 59473 } 59474 if (element.hasSourceMaterial()) { 59475 composeSubstanceDefinitionSourceMaterialComponent("sourceMaterial", element.getSourceMaterial()); 59476 } 59477 } 59478 59479 protected void composeSubstanceDefinitionMoietyComponent(String name, SubstanceDefinition.SubstanceDefinitionMoietyComponent element) throws IOException { 59480 if (element != null) { 59481 composeElementAttributes(element); 59482 xml.enter(FHIR_NS, name); 59483 composeSubstanceDefinitionMoietyComponentElements(element); 59484 composeElementClose(element); 59485 xml.exit(FHIR_NS, name); 59486 } 59487 } 59488 59489 protected void composeSubstanceDefinitionMoietyComponentElements(SubstanceDefinition.SubstanceDefinitionMoietyComponent element) throws IOException { 59490 composeBackboneElementElements(element); 59491 if (element.hasRole()) { 59492 composeCodeableConcept("role", element.getRole()); 59493 } 59494 if (element.hasIdentifier()) { 59495 composeIdentifier("identifier", element.getIdentifier()); 59496 } 59497 if (element.hasNameElement()) { 59498 composeString("name", element.getNameElement()); 59499 } 59500 if (element.hasStereochemistry()) { 59501 composeCodeableConcept("stereochemistry", element.getStereochemistry()); 59502 } 59503 if (element.hasOpticalActivity()) { 59504 composeCodeableConcept("opticalActivity", element.getOpticalActivity()); 59505 } 59506 if (element.hasMolecularFormulaElement()) { 59507 composeString("molecularFormula", element.getMolecularFormulaElement()); 59508 } 59509 if (element.hasAmount()) { 59510 composeType("amount", element.getAmount()); 59511 } if (element.hasMeasurementType()) { 59512 composeCodeableConcept("measurementType", element.getMeasurementType()); 59513 } 59514 } 59515 59516 protected void composeSubstanceDefinitionCharacterizationComponent(String name, SubstanceDefinition.SubstanceDefinitionCharacterizationComponent element) throws IOException { 59517 if (element != null) { 59518 composeElementAttributes(element); 59519 xml.enter(FHIR_NS, name); 59520 composeSubstanceDefinitionCharacterizationComponentElements(element); 59521 composeElementClose(element); 59522 xml.exit(FHIR_NS, name); 59523 } 59524 } 59525 59526 protected void composeSubstanceDefinitionCharacterizationComponentElements(SubstanceDefinition.SubstanceDefinitionCharacterizationComponent element) throws IOException { 59527 composeBackboneElementElements(element); 59528 if (element.hasTechnique()) { 59529 composeCodeableConcept("technique", element.getTechnique()); 59530 } 59531 if (element.hasForm()) { 59532 composeCodeableConcept("form", element.getForm()); 59533 } 59534 if (element.hasDescriptionElement()) { 59535 composeMarkdown("description", element.getDescriptionElement()); 59536 } 59537 if (element.hasFile()) { 59538 for (Attachment e : element.getFile()) 59539 composeAttachment("file", e); 59540 } 59541 } 59542 59543 protected void composeSubstanceDefinitionPropertyComponent(String name, SubstanceDefinition.SubstanceDefinitionPropertyComponent element) throws IOException { 59544 if (element != null) { 59545 composeElementAttributes(element); 59546 xml.enter(FHIR_NS, name); 59547 composeSubstanceDefinitionPropertyComponentElements(element); 59548 composeElementClose(element); 59549 xml.exit(FHIR_NS, name); 59550 } 59551 } 59552 59553 protected void composeSubstanceDefinitionPropertyComponentElements(SubstanceDefinition.SubstanceDefinitionPropertyComponent element) throws IOException { 59554 composeBackboneElementElements(element); 59555 if (element.hasType()) { 59556 composeCodeableConcept("type", element.getType()); 59557 } 59558 if (element.hasValue()) { 59559 composeType("value", element.getValue()); 59560 } } 59561 59562 protected void composeSubstanceDefinitionMolecularWeightComponent(String name, SubstanceDefinition.SubstanceDefinitionMolecularWeightComponent element) throws IOException { 59563 if (element != null) { 59564 composeElementAttributes(element); 59565 xml.enter(FHIR_NS, name); 59566 composeSubstanceDefinitionMolecularWeightComponentElements(element); 59567 composeElementClose(element); 59568 xml.exit(FHIR_NS, name); 59569 } 59570 } 59571 59572 protected void composeSubstanceDefinitionMolecularWeightComponentElements(SubstanceDefinition.SubstanceDefinitionMolecularWeightComponent element) throws IOException { 59573 composeBackboneElementElements(element); 59574 if (element.hasMethod()) { 59575 composeCodeableConcept("method", element.getMethod()); 59576 } 59577 if (element.hasType()) { 59578 composeCodeableConcept("type", element.getType()); 59579 } 59580 if (element.hasAmount()) { 59581 composeQuantity("amount", element.getAmount()); 59582 } 59583 } 59584 59585 protected void composeSubstanceDefinitionStructureComponent(String name, SubstanceDefinition.SubstanceDefinitionStructureComponent element) throws IOException { 59586 if (element != null) { 59587 composeElementAttributes(element); 59588 xml.enter(FHIR_NS, name); 59589 composeSubstanceDefinitionStructureComponentElements(element); 59590 composeElementClose(element); 59591 xml.exit(FHIR_NS, name); 59592 } 59593 } 59594 59595 protected void composeSubstanceDefinitionStructureComponentElements(SubstanceDefinition.SubstanceDefinitionStructureComponent element) throws IOException { 59596 composeBackboneElementElements(element); 59597 if (element.hasStereochemistry()) { 59598 composeCodeableConcept("stereochemistry", element.getStereochemistry()); 59599 } 59600 if (element.hasOpticalActivity()) { 59601 composeCodeableConcept("opticalActivity", element.getOpticalActivity()); 59602 } 59603 if (element.hasMolecularFormulaElement()) { 59604 composeString("molecularFormula", element.getMolecularFormulaElement()); 59605 } 59606 if (element.hasMolecularFormulaByMoietyElement()) { 59607 composeString("molecularFormulaByMoiety", element.getMolecularFormulaByMoietyElement()); 59608 } 59609 if (element.hasMolecularWeight()) { 59610 composeSubstanceDefinitionMolecularWeightComponent("molecularWeight", element.getMolecularWeight()); 59611 } 59612 if (element.hasTechnique()) { 59613 for (CodeableConcept e : element.getTechnique()) 59614 composeCodeableConcept("technique", e); 59615 } 59616 if (element.hasSourceDocument()) { 59617 for (Reference e : element.getSourceDocument()) 59618 composeReference("sourceDocument", e); 59619 } 59620 if (element.hasRepresentation()) { 59621 for (SubstanceDefinition.SubstanceDefinitionStructureRepresentationComponent e : element.getRepresentation()) 59622 composeSubstanceDefinitionStructureRepresentationComponent("representation", e); 59623 } 59624 } 59625 59626 protected void composeSubstanceDefinitionStructureRepresentationComponent(String name, SubstanceDefinition.SubstanceDefinitionStructureRepresentationComponent element) throws IOException { 59627 if (element != null) { 59628 composeElementAttributes(element); 59629 xml.enter(FHIR_NS, name); 59630 composeSubstanceDefinitionStructureRepresentationComponentElements(element); 59631 composeElementClose(element); 59632 xml.exit(FHIR_NS, name); 59633 } 59634 } 59635 59636 protected void composeSubstanceDefinitionStructureRepresentationComponentElements(SubstanceDefinition.SubstanceDefinitionStructureRepresentationComponent element) throws IOException { 59637 composeBackboneElementElements(element); 59638 if (element.hasType()) { 59639 composeCodeableConcept("type", element.getType()); 59640 } 59641 if (element.hasRepresentationElement()) { 59642 composeString("representation", element.getRepresentationElement()); 59643 } 59644 if (element.hasFormat()) { 59645 composeCodeableConcept("format", element.getFormat()); 59646 } 59647 if (element.hasDocument()) { 59648 composeReference("document", element.getDocument()); 59649 } 59650 } 59651 59652 protected void composeSubstanceDefinitionCodeComponent(String name, SubstanceDefinition.SubstanceDefinitionCodeComponent element) throws IOException { 59653 if (element != null) { 59654 composeElementAttributes(element); 59655 xml.enter(FHIR_NS, name); 59656 composeSubstanceDefinitionCodeComponentElements(element); 59657 composeElementClose(element); 59658 xml.exit(FHIR_NS, name); 59659 } 59660 } 59661 59662 protected void composeSubstanceDefinitionCodeComponentElements(SubstanceDefinition.SubstanceDefinitionCodeComponent element) throws IOException { 59663 composeBackboneElementElements(element); 59664 if (element.hasCode()) { 59665 composeCodeableConcept("code", element.getCode()); 59666 } 59667 if (element.hasStatus()) { 59668 composeCodeableConcept("status", element.getStatus()); 59669 } 59670 if (element.hasStatusDateElement()) { 59671 composeDateTime("statusDate", element.getStatusDateElement()); 59672 } 59673 if (element.hasNote()) { 59674 for (Annotation e : element.getNote()) 59675 composeAnnotation("note", e); 59676 } 59677 if (element.hasSource()) { 59678 for (Reference e : element.getSource()) 59679 composeReference("source", e); 59680 } 59681 } 59682 59683 protected void composeSubstanceDefinitionNameComponent(String name, SubstanceDefinition.SubstanceDefinitionNameComponent element) throws IOException { 59684 if (element != null) { 59685 composeElementAttributes(element); 59686 xml.enter(FHIR_NS, name); 59687 composeSubstanceDefinitionNameComponentElements(element); 59688 composeElementClose(element); 59689 xml.exit(FHIR_NS, name); 59690 } 59691 } 59692 59693 protected void composeSubstanceDefinitionNameComponentElements(SubstanceDefinition.SubstanceDefinitionNameComponent element) throws IOException { 59694 composeBackboneElementElements(element); 59695 if (element.hasNameElement()) { 59696 composeString("name", element.getNameElement()); 59697 } 59698 if (element.hasType()) { 59699 composeCodeableConcept("type", element.getType()); 59700 } 59701 if (element.hasStatus()) { 59702 composeCodeableConcept("status", element.getStatus()); 59703 } 59704 if (element.hasPreferredElement()) { 59705 composeBoolean("preferred", element.getPreferredElement()); 59706 } 59707 if (element.hasLanguage()) { 59708 for (CodeableConcept e : element.getLanguage()) 59709 composeCodeableConcept("language", e); 59710 } 59711 if (element.hasDomain()) { 59712 for (CodeableConcept e : element.getDomain()) 59713 composeCodeableConcept("domain", e); 59714 } 59715 if (element.hasJurisdiction()) { 59716 for (CodeableConcept e : element.getJurisdiction()) 59717 composeCodeableConcept("jurisdiction", e); 59718 } 59719 if (element.hasSynonym()) { 59720 for (SubstanceDefinition.SubstanceDefinitionNameComponent e : element.getSynonym()) 59721 composeSubstanceDefinitionNameComponent("synonym", e); 59722 } 59723 if (element.hasTranslation()) { 59724 for (SubstanceDefinition.SubstanceDefinitionNameComponent e : element.getTranslation()) 59725 composeSubstanceDefinitionNameComponent("translation", e); 59726 } 59727 if (element.hasOfficial()) { 59728 for (SubstanceDefinition.SubstanceDefinitionNameOfficialComponent e : element.getOfficial()) 59729 composeSubstanceDefinitionNameOfficialComponent("official", e); 59730 } 59731 if (element.hasSource()) { 59732 for (Reference e : element.getSource()) 59733 composeReference("source", e); 59734 } 59735 } 59736 59737 protected void composeSubstanceDefinitionNameOfficialComponent(String name, SubstanceDefinition.SubstanceDefinitionNameOfficialComponent element) throws IOException { 59738 if (element != null) { 59739 composeElementAttributes(element); 59740 xml.enter(FHIR_NS, name); 59741 composeSubstanceDefinitionNameOfficialComponentElements(element); 59742 composeElementClose(element); 59743 xml.exit(FHIR_NS, name); 59744 } 59745 } 59746 59747 protected void composeSubstanceDefinitionNameOfficialComponentElements(SubstanceDefinition.SubstanceDefinitionNameOfficialComponent element) throws IOException { 59748 composeBackboneElementElements(element); 59749 if (element.hasAuthority()) { 59750 composeCodeableConcept("authority", element.getAuthority()); 59751 } 59752 if (element.hasStatus()) { 59753 composeCodeableConcept("status", element.getStatus()); 59754 } 59755 if (element.hasDateElement()) { 59756 composeDateTime("date", element.getDateElement()); 59757 } 59758 } 59759 59760 protected void composeSubstanceDefinitionRelationshipComponent(String name, SubstanceDefinition.SubstanceDefinitionRelationshipComponent element) throws IOException { 59761 if (element != null) { 59762 composeElementAttributes(element); 59763 xml.enter(FHIR_NS, name); 59764 composeSubstanceDefinitionRelationshipComponentElements(element); 59765 composeElementClose(element); 59766 xml.exit(FHIR_NS, name); 59767 } 59768 } 59769 59770 protected void composeSubstanceDefinitionRelationshipComponentElements(SubstanceDefinition.SubstanceDefinitionRelationshipComponent element) throws IOException { 59771 composeBackboneElementElements(element); 59772 if (element.hasSubstanceDefinition()) { 59773 composeType("substanceDefinition", element.getSubstanceDefinition()); 59774 } if (element.hasType()) { 59775 composeCodeableConcept("type", element.getType()); 59776 } 59777 if (element.hasIsDefiningElement()) { 59778 composeBoolean("isDefining", element.getIsDefiningElement()); 59779 } 59780 if (element.hasAmount()) { 59781 composeType("amount", element.getAmount()); 59782 } if (element.hasRatioHighLimitAmount()) { 59783 composeRatio("ratioHighLimitAmount", element.getRatioHighLimitAmount()); 59784 } 59785 if (element.hasComparator()) { 59786 composeCodeableConcept("comparator", element.getComparator()); 59787 } 59788 if (element.hasSource()) { 59789 for (Reference e : element.getSource()) 59790 composeReference("source", e); 59791 } 59792 } 59793 59794 protected void composeSubstanceDefinitionSourceMaterialComponent(String name, SubstanceDefinition.SubstanceDefinitionSourceMaterialComponent element) throws IOException { 59795 if (element != null) { 59796 composeElementAttributes(element); 59797 xml.enter(FHIR_NS, name); 59798 composeSubstanceDefinitionSourceMaterialComponentElements(element); 59799 composeElementClose(element); 59800 xml.exit(FHIR_NS, name); 59801 } 59802 } 59803 59804 protected void composeSubstanceDefinitionSourceMaterialComponentElements(SubstanceDefinition.SubstanceDefinitionSourceMaterialComponent element) throws IOException { 59805 composeBackboneElementElements(element); 59806 if (element.hasType()) { 59807 composeCodeableConcept("type", element.getType()); 59808 } 59809 if (element.hasGenus()) { 59810 composeCodeableConcept("genus", element.getGenus()); 59811 } 59812 if (element.hasSpecies()) { 59813 composeCodeableConcept("species", element.getSpecies()); 59814 } 59815 if (element.hasPart()) { 59816 composeCodeableConcept("part", element.getPart()); 59817 } 59818 if (element.hasCountryOfOrigin()) { 59819 for (CodeableConcept e : element.getCountryOfOrigin()) 59820 composeCodeableConcept("countryOfOrigin", e); 59821 } 59822 } 59823 59824 protected void composeSubstanceNucleicAcid(String name, SubstanceNucleicAcid element) throws IOException { 59825 if (element != null) { 59826 composeResourceAttributes(element); 59827 xml.enter(FHIR_NS, name); 59828 composeSubstanceNucleicAcidElements(element); 59829 composeElementClose(element); 59830 xml.exit(FHIR_NS, name); 59831 } 59832 } 59833 59834 protected void composeSubstanceNucleicAcidElements(SubstanceNucleicAcid element) throws IOException { 59835 composeDomainResourceElements(element); 59836 if (element.hasSequenceType()) { 59837 composeCodeableConcept("sequenceType", element.getSequenceType()); 59838 } 59839 if (element.hasNumberOfSubunitsElement()) { 59840 composeInteger("numberOfSubunits", element.getNumberOfSubunitsElement()); 59841 } 59842 if (element.hasAreaOfHybridisationElement()) { 59843 composeString("areaOfHybridisation", element.getAreaOfHybridisationElement()); 59844 } 59845 if (element.hasOligoNucleotideType()) { 59846 composeCodeableConcept("oligoNucleotideType", element.getOligoNucleotideType()); 59847 } 59848 if (element.hasSubunit()) { 59849 for (SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent e : element.getSubunit()) 59850 composeSubstanceNucleicAcidSubunitComponent("subunit", e); 59851 } 59852 } 59853 59854 protected void composeSubstanceNucleicAcidSubunitComponent(String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent element) throws IOException { 59855 if (element != null) { 59856 composeElementAttributes(element); 59857 xml.enter(FHIR_NS, name); 59858 composeSubstanceNucleicAcidSubunitComponentElements(element); 59859 composeElementClose(element); 59860 xml.exit(FHIR_NS, name); 59861 } 59862 } 59863 59864 protected void composeSubstanceNucleicAcidSubunitComponentElements(SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent element) throws IOException { 59865 composeBackboneElementElements(element); 59866 if (element.hasSubunitElement()) { 59867 composeInteger("subunit", element.getSubunitElement()); 59868 } 59869 if (element.hasSequenceElement()) { 59870 composeString("sequence", element.getSequenceElement()); 59871 } 59872 if (element.hasLengthElement()) { 59873 composeInteger("length", element.getLengthElement()); 59874 } 59875 if (element.hasSequenceAttachment()) { 59876 composeAttachment("sequenceAttachment", element.getSequenceAttachment()); 59877 } 59878 if (element.hasFivePrime()) { 59879 composeCodeableConcept("fivePrime", element.getFivePrime()); 59880 } 59881 if (element.hasThreePrime()) { 59882 composeCodeableConcept("threePrime", element.getThreePrime()); 59883 } 59884 if (element.hasLinkage()) { 59885 for (SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent e : element.getLinkage()) 59886 composeSubstanceNucleicAcidSubunitLinkageComponent("linkage", e); 59887 } 59888 if (element.hasSugar()) { 59889 for (SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent e : element.getSugar()) 59890 composeSubstanceNucleicAcidSubunitSugarComponent("sugar", e); 59891 } 59892 } 59893 59894 protected void composeSubstanceNucleicAcidSubunitLinkageComponent(String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent element) throws IOException { 59895 if (element != null) { 59896 composeElementAttributes(element); 59897 xml.enter(FHIR_NS, name); 59898 composeSubstanceNucleicAcidSubunitLinkageComponentElements(element); 59899 composeElementClose(element); 59900 xml.exit(FHIR_NS, name); 59901 } 59902 } 59903 59904 protected void composeSubstanceNucleicAcidSubunitLinkageComponentElements(SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent element) throws IOException { 59905 composeBackboneElementElements(element); 59906 if (element.hasConnectivityElement()) { 59907 composeString("connectivity", element.getConnectivityElement()); 59908 } 59909 if (element.hasIdentifier()) { 59910 composeIdentifier("identifier", element.getIdentifier()); 59911 } 59912 if (element.hasNameElement()) { 59913 composeString("name", element.getNameElement()); 59914 } 59915 if (element.hasResidueSiteElement()) { 59916 composeString("residueSite", element.getResidueSiteElement()); 59917 } 59918 } 59919 59920 protected void composeSubstanceNucleicAcidSubunitSugarComponent(String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent element) throws IOException { 59921 if (element != null) { 59922 composeElementAttributes(element); 59923 xml.enter(FHIR_NS, name); 59924 composeSubstanceNucleicAcidSubunitSugarComponentElements(element); 59925 composeElementClose(element); 59926 xml.exit(FHIR_NS, name); 59927 } 59928 } 59929 59930 protected void composeSubstanceNucleicAcidSubunitSugarComponentElements(SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent element) throws IOException { 59931 composeBackboneElementElements(element); 59932 if (element.hasIdentifier()) { 59933 composeIdentifier("identifier", element.getIdentifier()); 59934 } 59935 if (element.hasNameElement()) { 59936 composeString("name", element.getNameElement()); 59937 } 59938 if (element.hasResidueSiteElement()) { 59939 composeString("residueSite", element.getResidueSiteElement()); 59940 } 59941 } 59942 59943 protected void composeSubstancePolymer(String name, SubstancePolymer element) throws IOException { 59944 if (element != null) { 59945 composeResourceAttributes(element); 59946 xml.enter(FHIR_NS, name); 59947 composeSubstancePolymerElements(element); 59948 composeElementClose(element); 59949 xml.exit(FHIR_NS, name); 59950 } 59951 } 59952 59953 protected void composeSubstancePolymerElements(SubstancePolymer element) throws IOException { 59954 composeDomainResourceElements(element); 59955 if (element.hasIdentifier()) { 59956 composeIdentifier("identifier", element.getIdentifier()); 59957 } 59958 if (element.hasClass_()) { 59959 composeCodeableConcept("class", element.getClass_()); 59960 } 59961 if (element.hasGeometry()) { 59962 composeCodeableConcept("geometry", element.getGeometry()); 59963 } 59964 if (element.hasCopolymerConnectivity()) { 59965 for (CodeableConcept e : element.getCopolymerConnectivity()) 59966 composeCodeableConcept("copolymerConnectivity", e); 59967 } 59968 if (element.hasModificationElement()) { 59969 composeString("modification", element.getModificationElement()); 59970 } 59971 if (element.hasMonomerSet()) { 59972 for (SubstancePolymer.SubstancePolymerMonomerSetComponent e : element.getMonomerSet()) 59973 composeSubstancePolymerMonomerSetComponent("monomerSet", e); 59974 } 59975 if (element.hasRepeat()) { 59976 for (SubstancePolymer.SubstancePolymerRepeatComponent e : element.getRepeat()) 59977 composeSubstancePolymerRepeatComponent("repeat", e); 59978 } 59979 } 59980 59981 protected void composeSubstancePolymerMonomerSetComponent(String name, SubstancePolymer.SubstancePolymerMonomerSetComponent element) throws IOException { 59982 if (element != null) { 59983 composeElementAttributes(element); 59984 xml.enter(FHIR_NS, name); 59985 composeSubstancePolymerMonomerSetComponentElements(element); 59986 composeElementClose(element); 59987 xml.exit(FHIR_NS, name); 59988 } 59989 } 59990 59991 protected void composeSubstancePolymerMonomerSetComponentElements(SubstancePolymer.SubstancePolymerMonomerSetComponent element) throws IOException { 59992 composeBackboneElementElements(element); 59993 if (element.hasRatioType()) { 59994 composeCodeableConcept("ratioType", element.getRatioType()); 59995 } 59996 if (element.hasStartingMaterial()) { 59997 for (SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent e : element.getStartingMaterial()) 59998 composeSubstancePolymerMonomerSetStartingMaterialComponent("startingMaterial", e); 59999 } 60000 } 60001 60002 protected void composeSubstancePolymerMonomerSetStartingMaterialComponent(String name, SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent element) throws IOException { 60003 if (element != null) { 60004 composeElementAttributes(element); 60005 xml.enter(FHIR_NS, name); 60006 composeSubstancePolymerMonomerSetStartingMaterialComponentElements(element); 60007 composeElementClose(element); 60008 xml.exit(FHIR_NS, name); 60009 } 60010 } 60011 60012 protected void composeSubstancePolymerMonomerSetStartingMaterialComponentElements(SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent element) throws IOException { 60013 composeBackboneElementElements(element); 60014 if (element.hasCode()) { 60015 composeCodeableConcept("code", element.getCode()); 60016 } 60017 if (element.hasCategory()) { 60018 composeCodeableConcept("category", element.getCategory()); 60019 } 60020 if (element.hasIsDefiningElement()) { 60021 composeBoolean("isDefining", element.getIsDefiningElement()); 60022 } 60023 if (element.hasAmount()) { 60024 composeQuantity("amount", element.getAmount()); 60025 } 60026 } 60027 60028 protected void composeSubstancePolymerRepeatComponent(String name, SubstancePolymer.SubstancePolymerRepeatComponent element) throws IOException { 60029 if (element != null) { 60030 composeElementAttributes(element); 60031 xml.enter(FHIR_NS, name); 60032 composeSubstancePolymerRepeatComponentElements(element); 60033 composeElementClose(element); 60034 xml.exit(FHIR_NS, name); 60035 } 60036 } 60037 60038 protected void composeSubstancePolymerRepeatComponentElements(SubstancePolymer.SubstancePolymerRepeatComponent element) throws IOException { 60039 composeBackboneElementElements(element); 60040 if (element.hasAverageMolecularFormulaElement()) { 60041 composeString("averageMolecularFormula", element.getAverageMolecularFormulaElement()); 60042 } 60043 if (element.hasRepeatUnitAmountType()) { 60044 composeCodeableConcept("repeatUnitAmountType", element.getRepeatUnitAmountType()); 60045 } 60046 if (element.hasRepeatUnit()) { 60047 for (SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent e : element.getRepeatUnit()) 60048 composeSubstancePolymerRepeatRepeatUnitComponent("repeatUnit", e); 60049 } 60050 } 60051 60052 protected void composeSubstancePolymerRepeatRepeatUnitComponent(String name, SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent element) throws IOException { 60053 if (element != null) { 60054 composeElementAttributes(element); 60055 xml.enter(FHIR_NS, name); 60056 composeSubstancePolymerRepeatRepeatUnitComponentElements(element); 60057 composeElementClose(element); 60058 xml.exit(FHIR_NS, name); 60059 } 60060 } 60061 60062 protected void composeSubstancePolymerRepeatRepeatUnitComponentElements(SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent element) throws IOException { 60063 composeBackboneElementElements(element); 60064 if (element.hasUnitElement()) { 60065 composeString("unit", element.getUnitElement()); 60066 } 60067 if (element.hasOrientation()) { 60068 composeCodeableConcept("orientation", element.getOrientation()); 60069 } 60070 if (element.hasAmountElement()) { 60071 composeInteger("amount", element.getAmountElement()); 60072 } 60073 if (element.hasDegreeOfPolymerisation()) { 60074 for (SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent e : element.getDegreeOfPolymerisation()) 60075 composeSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent("degreeOfPolymerisation", e); 60076 } 60077 if (element.hasStructuralRepresentation()) { 60078 for (SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent e : element.getStructuralRepresentation()) 60079 composeSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent("structuralRepresentation", e); 60080 } 60081 } 60082 60083 protected void composeSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(String name, SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent element) throws IOException { 60084 if (element != null) { 60085 composeElementAttributes(element); 60086 xml.enter(FHIR_NS, name); 60087 composeSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponentElements(element); 60088 composeElementClose(element); 60089 xml.exit(FHIR_NS, name); 60090 } 60091 } 60092 60093 protected void composeSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponentElements(SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent element) throws IOException { 60094 composeBackboneElementElements(element); 60095 if (element.hasType()) { 60096 composeCodeableConcept("type", element.getType()); 60097 } 60098 if (element.hasAverageElement()) { 60099 composeInteger("average", element.getAverageElement()); 60100 } 60101 if (element.hasLowElement()) { 60102 composeInteger("low", element.getLowElement()); 60103 } 60104 if (element.hasHighElement()) { 60105 composeInteger("high", element.getHighElement()); 60106 } 60107 } 60108 60109 protected void composeSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent(String name, SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent element) throws IOException { 60110 if (element != null) { 60111 composeElementAttributes(element); 60112 xml.enter(FHIR_NS, name); 60113 composeSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponentElements(element); 60114 composeElementClose(element); 60115 xml.exit(FHIR_NS, name); 60116 } 60117 } 60118 60119 protected void composeSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponentElements(SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent element) throws IOException { 60120 composeBackboneElementElements(element); 60121 if (element.hasType()) { 60122 composeCodeableConcept("type", element.getType()); 60123 } 60124 if (element.hasRepresentationElement()) { 60125 composeString("representation", element.getRepresentationElement()); 60126 } 60127 if (element.hasFormat()) { 60128 composeCodeableConcept("format", element.getFormat()); 60129 } 60130 if (element.hasAttachment()) { 60131 composeAttachment("attachment", element.getAttachment()); 60132 } 60133 } 60134 60135 protected void composeSubstanceProtein(String name, SubstanceProtein element) throws IOException { 60136 if (element != null) { 60137 composeResourceAttributes(element); 60138 xml.enter(FHIR_NS, name); 60139 composeSubstanceProteinElements(element); 60140 composeElementClose(element); 60141 xml.exit(FHIR_NS, name); 60142 } 60143 } 60144 60145 protected void composeSubstanceProteinElements(SubstanceProtein element) throws IOException { 60146 composeDomainResourceElements(element); 60147 if (element.hasSequenceType()) { 60148 composeCodeableConcept("sequenceType", element.getSequenceType()); 60149 } 60150 if (element.hasNumberOfSubunitsElement()) { 60151 composeInteger("numberOfSubunits", element.getNumberOfSubunitsElement()); 60152 } 60153 if (element.hasDisulfideLinkage()) { 60154 for (StringType e : element.getDisulfideLinkage()) 60155 composeString("disulfideLinkage", e); 60156 } 60157 if (element.hasSubunit()) { 60158 for (SubstanceProtein.SubstanceProteinSubunitComponent e : element.getSubunit()) 60159 composeSubstanceProteinSubunitComponent("subunit", e); 60160 } 60161 } 60162 60163 protected void composeSubstanceProteinSubunitComponent(String name, SubstanceProtein.SubstanceProteinSubunitComponent element) throws IOException { 60164 if (element != null) { 60165 composeElementAttributes(element); 60166 xml.enter(FHIR_NS, name); 60167 composeSubstanceProteinSubunitComponentElements(element); 60168 composeElementClose(element); 60169 xml.exit(FHIR_NS, name); 60170 } 60171 } 60172 60173 protected void composeSubstanceProteinSubunitComponentElements(SubstanceProtein.SubstanceProteinSubunitComponent element) throws IOException { 60174 composeBackboneElementElements(element); 60175 if (element.hasSubunitElement()) { 60176 composeInteger("subunit", element.getSubunitElement()); 60177 } 60178 if (element.hasSequenceElement()) { 60179 composeString("sequence", element.getSequenceElement()); 60180 } 60181 if (element.hasLengthElement()) { 60182 composeInteger("length", element.getLengthElement()); 60183 } 60184 if (element.hasSequenceAttachment()) { 60185 composeAttachment("sequenceAttachment", element.getSequenceAttachment()); 60186 } 60187 if (element.hasNTerminalModificationId()) { 60188 composeIdentifier("nTerminalModificationId", element.getNTerminalModificationId()); 60189 } 60190 if (element.hasNTerminalModificationElement()) { 60191 composeString("nTerminalModification", element.getNTerminalModificationElement()); 60192 } 60193 if (element.hasCTerminalModificationId()) { 60194 composeIdentifier("cTerminalModificationId", element.getCTerminalModificationId()); 60195 } 60196 if (element.hasCTerminalModificationElement()) { 60197 composeString("cTerminalModification", element.getCTerminalModificationElement()); 60198 } 60199 } 60200 60201 protected void composeSubstanceReferenceInformation(String name, SubstanceReferenceInformation element) throws IOException { 60202 if (element != null) { 60203 composeResourceAttributes(element); 60204 xml.enter(FHIR_NS, name); 60205 composeSubstanceReferenceInformationElements(element); 60206 composeElementClose(element); 60207 xml.exit(FHIR_NS, name); 60208 } 60209 } 60210 60211 protected void composeSubstanceReferenceInformationElements(SubstanceReferenceInformation element) throws IOException { 60212 composeDomainResourceElements(element); 60213 if (element.hasCommentElement()) { 60214 composeString("comment", element.getCommentElement()); 60215 } 60216 if (element.hasGene()) { 60217 for (SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent e : element.getGene()) 60218 composeSubstanceReferenceInformationGeneComponent("gene", e); 60219 } 60220 if (element.hasGeneElement()) { 60221 for (SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent e : element.getGeneElement()) 60222 composeSubstanceReferenceInformationGeneElementComponent("geneElement", e); 60223 } 60224 if (element.hasTarget()) { 60225 for (SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent e : element.getTarget()) 60226 composeSubstanceReferenceInformationTargetComponent("target", e); 60227 } 60228 } 60229 60230 protected void composeSubstanceReferenceInformationGeneComponent(String name, SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent element) throws IOException { 60231 if (element != null) { 60232 composeElementAttributes(element); 60233 xml.enter(FHIR_NS, name); 60234 composeSubstanceReferenceInformationGeneComponentElements(element); 60235 composeElementClose(element); 60236 xml.exit(FHIR_NS, name); 60237 } 60238 } 60239 60240 protected void composeSubstanceReferenceInformationGeneComponentElements(SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent element) throws IOException { 60241 composeBackboneElementElements(element); 60242 if (element.hasGeneSequenceOrigin()) { 60243 composeCodeableConcept("geneSequenceOrigin", element.getGeneSequenceOrigin()); 60244 } 60245 if (element.hasGene()) { 60246 composeCodeableConcept("gene", element.getGene()); 60247 } 60248 if (element.hasSource()) { 60249 for (Reference e : element.getSource()) 60250 composeReference("source", e); 60251 } 60252 } 60253 60254 protected void composeSubstanceReferenceInformationGeneElementComponent(String name, SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent element) throws IOException { 60255 if (element != null) { 60256 composeElementAttributes(element); 60257 xml.enter(FHIR_NS, name); 60258 composeSubstanceReferenceInformationGeneElementComponentElements(element); 60259 composeElementClose(element); 60260 xml.exit(FHIR_NS, name); 60261 } 60262 } 60263 60264 protected void composeSubstanceReferenceInformationGeneElementComponentElements(SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent element) throws IOException { 60265 composeBackboneElementElements(element); 60266 if (element.hasType()) { 60267 composeCodeableConcept("type", element.getType()); 60268 } 60269 if (element.hasElement()) { 60270 composeIdentifier("element", element.getElement()); 60271 } 60272 if (element.hasSource()) { 60273 for (Reference e : element.getSource()) 60274 composeReference("source", e); 60275 } 60276 } 60277 60278 protected void composeSubstanceReferenceInformationTargetComponent(String name, SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent element) throws IOException { 60279 if (element != null) { 60280 composeElementAttributes(element); 60281 xml.enter(FHIR_NS, name); 60282 composeSubstanceReferenceInformationTargetComponentElements(element); 60283 composeElementClose(element); 60284 xml.exit(FHIR_NS, name); 60285 } 60286 } 60287 60288 protected void composeSubstanceReferenceInformationTargetComponentElements(SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent element) throws IOException { 60289 composeBackboneElementElements(element); 60290 if (element.hasTarget()) { 60291 composeIdentifier("target", element.getTarget()); 60292 } 60293 if (element.hasType()) { 60294 composeCodeableConcept("type", element.getType()); 60295 } 60296 if (element.hasInteraction()) { 60297 composeCodeableConcept("interaction", element.getInteraction()); 60298 } 60299 if (element.hasOrganism()) { 60300 composeCodeableConcept("organism", element.getOrganism()); 60301 } 60302 if (element.hasOrganismType()) { 60303 composeCodeableConcept("organismType", element.getOrganismType()); 60304 } 60305 if (element.hasAmount()) { 60306 composeType("amount", element.getAmount()); 60307 } if (element.hasAmountType()) { 60308 composeCodeableConcept("amountType", element.getAmountType()); 60309 } 60310 if (element.hasSource()) { 60311 for (Reference e : element.getSource()) 60312 composeReference("source", e); 60313 } 60314 } 60315 60316 protected void composeSubstanceSourceMaterial(String name, SubstanceSourceMaterial element) throws IOException { 60317 if (element != null) { 60318 composeResourceAttributes(element); 60319 xml.enter(FHIR_NS, name); 60320 composeSubstanceSourceMaterialElements(element); 60321 composeElementClose(element); 60322 xml.exit(FHIR_NS, name); 60323 } 60324 } 60325 60326 protected void composeSubstanceSourceMaterialElements(SubstanceSourceMaterial element) throws IOException { 60327 composeDomainResourceElements(element); 60328 if (element.hasSourceMaterialClass()) { 60329 composeCodeableConcept("sourceMaterialClass", element.getSourceMaterialClass()); 60330 } 60331 if (element.hasSourceMaterialType()) { 60332 composeCodeableConcept("sourceMaterialType", element.getSourceMaterialType()); 60333 } 60334 if (element.hasSourceMaterialState()) { 60335 composeCodeableConcept("sourceMaterialState", element.getSourceMaterialState()); 60336 } 60337 if (element.hasOrganismId()) { 60338 composeIdentifier("organismId", element.getOrganismId()); 60339 } 60340 if (element.hasOrganismNameElement()) { 60341 composeString("organismName", element.getOrganismNameElement()); 60342 } 60343 if (element.hasParentSubstanceId()) { 60344 for (Identifier e : element.getParentSubstanceId()) 60345 composeIdentifier("parentSubstanceId", e); 60346 } 60347 if (element.hasParentSubstanceName()) { 60348 for (StringType e : element.getParentSubstanceName()) 60349 composeString("parentSubstanceName", e); 60350 } 60351 if (element.hasCountryOfOrigin()) { 60352 for (CodeableConcept e : element.getCountryOfOrigin()) 60353 composeCodeableConcept("countryOfOrigin", e); 60354 } 60355 if (element.hasGeographicalLocation()) { 60356 for (StringType e : element.getGeographicalLocation()) 60357 composeString("geographicalLocation", e); 60358 } 60359 if (element.hasDevelopmentStage()) { 60360 composeCodeableConcept("developmentStage", element.getDevelopmentStage()); 60361 } 60362 if (element.hasFractionDescription()) { 60363 for (SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent e : element.getFractionDescription()) 60364 composeSubstanceSourceMaterialFractionDescriptionComponent("fractionDescription", e); 60365 } 60366 if (element.hasOrganism()) { 60367 composeSubstanceSourceMaterialOrganismComponent("organism", element.getOrganism()); 60368 } 60369 if (element.hasPartDescription()) { 60370 for (SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent e : element.getPartDescription()) 60371 composeSubstanceSourceMaterialPartDescriptionComponent("partDescription", e); 60372 } 60373 } 60374 60375 protected void composeSubstanceSourceMaterialFractionDescriptionComponent(String name, SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent element) throws IOException { 60376 if (element != null) { 60377 composeElementAttributes(element); 60378 xml.enter(FHIR_NS, name); 60379 composeSubstanceSourceMaterialFractionDescriptionComponentElements(element); 60380 composeElementClose(element); 60381 xml.exit(FHIR_NS, name); 60382 } 60383 } 60384 60385 protected void composeSubstanceSourceMaterialFractionDescriptionComponentElements(SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent element) throws IOException { 60386 composeBackboneElementElements(element); 60387 if (element.hasFractionElement()) { 60388 composeString("fraction", element.getFractionElement()); 60389 } 60390 if (element.hasMaterialType()) { 60391 composeCodeableConcept("materialType", element.getMaterialType()); 60392 } 60393 } 60394 60395 protected void composeSubstanceSourceMaterialOrganismComponent(String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismComponent element) throws IOException { 60396 if (element != null) { 60397 composeElementAttributes(element); 60398 xml.enter(FHIR_NS, name); 60399 composeSubstanceSourceMaterialOrganismComponentElements(element); 60400 composeElementClose(element); 60401 xml.exit(FHIR_NS, name); 60402 } 60403 } 60404 60405 protected void composeSubstanceSourceMaterialOrganismComponentElements(SubstanceSourceMaterial.SubstanceSourceMaterialOrganismComponent element) throws IOException { 60406 composeBackboneElementElements(element); 60407 if (element.hasFamily()) { 60408 composeCodeableConcept("family", element.getFamily()); 60409 } 60410 if (element.hasGenus()) { 60411 composeCodeableConcept("genus", element.getGenus()); 60412 } 60413 if (element.hasSpecies()) { 60414 composeCodeableConcept("species", element.getSpecies()); 60415 } 60416 if (element.hasIntraspecificType()) { 60417 composeCodeableConcept("intraspecificType", element.getIntraspecificType()); 60418 } 60419 if (element.hasIntraspecificDescriptionElement()) { 60420 composeString("intraspecificDescription", element.getIntraspecificDescriptionElement()); 60421 } 60422 if (element.hasAuthor()) { 60423 for (SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent e : element.getAuthor()) 60424 composeSubstanceSourceMaterialOrganismAuthorComponent("author", e); 60425 } 60426 if (element.hasHybrid()) { 60427 composeSubstanceSourceMaterialOrganismHybridComponent("hybrid", element.getHybrid()); 60428 } 60429 if (element.hasOrganismGeneral()) { 60430 composeSubstanceSourceMaterialOrganismOrganismGeneralComponent("organismGeneral", element.getOrganismGeneral()); 60431 } 60432 } 60433 60434 protected void composeSubstanceSourceMaterialOrganismAuthorComponent(String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent element) throws IOException { 60435 if (element != null) { 60436 composeElementAttributes(element); 60437 xml.enter(FHIR_NS, name); 60438 composeSubstanceSourceMaterialOrganismAuthorComponentElements(element); 60439 composeElementClose(element); 60440 xml.exit(FHIR_NS, name); 60441 } 60442 } 60443 60444 protected void composeSubstanceSourceMaterialOrganismAuthorComponentElements(SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent element) throws IOException { 60445 composeBackboneElementElements(element); 60446 if (element.hasAuthorType()) { 60447 composeCodeableConcept("authorType", element.getAuthorType()); 60448 } 60449 if (element.hasAuthorDescriptionElement()) { 60450 composeString("authorDescription", element.getAuthorDescriptionElement()); 60451 } 60452 } 60453 60454 protected void composeSubstanceSourceMaterialOrganismHybridComponent(String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismHybridComponent element) throws IOException { 60455 if (element != null) { 60456 composeElementAttributes(element); 60457 xml.enter(FHIR_NS, name); 60458 composeSubstanceSourceMaterialOrganismHybridComponentElements(element); 60459 composeElementClose(element); 60460 xml.exit(FHIR_NS, name); 60461 } 60462 } 60463 60464 protected void composeSubstanceSourceMaterialOrganismHybridComponentElements(SubstanceSourceMaterial.SubstanceSourceMaterialOrganismHybridComponent element) throws IOException { 60465 composeBackboneElementElements(element); 60466 if (element.hasMaternalOrganismIdElement()) { 60467 composeString("maternalOrganismId", element.getMaternalOrganismIdElement()); 60468 } 60469 if (element.hasMaternalOrganismNameElement()) { 60470 composeString("maternalOrganismName", element.getMaternalOrganismNameElement()); 60471 } 60472 if (element.hasPaternalOrganismIdElement()) { 60473 composeString("paternalOrganismId", element.getPaternalOrganismIdElement()); 60474 } 60475 if (element.hasPaternalOrganismNameElement()) { 60476 composeString("paternalOrganismName", element.getPaternalOrganismNameElement()); 60477 } 60478 if (element.hasHybridType()) { 60479 composeCodeableConcept("hybridType", element.getHybridType()); 60480 } 60481 } 60482 60483 protected void composeSubstanceSourceMaterialOrganismOrganismGeneralComponent(String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismOrganismGeneralComponent element) throws IOException { 60484 if (element != null) { 60485 composeElementAttributes(element); 60486 xml.enter(FHIR_NS, name); 60487 composeSubstanceSourceMaterialOrganismOrganismGeneralComponentElements(element); 60488 composeElementClose(element); 60489 xml.exit(FHIR_NS, name); 60490 } 60491 } 60492 60493 protected void composeSubstanceSourceMaterialOrganismOrganismGeneralComponentElements(SubstanceSourceMaterial.SubstanceSourceMaterialOrganismOrganismGeneralComponent element) throws IOException { 60494 composeBackboneElementElements(element); 60495 if (element.hasKingdom()) { 60496 composeCodeableConcept("kingdom", element.getKingdom()); 60497 } 60498 if (element.hasPhylum()) { 60499 composeCodeableConcept("phylum", element.getPhylum()); 60500 } 60501 if (element.hasClass_()) { 60502 composeCodeableConcept("class", element.getClass_()); 60503 } 60504 if (element.hasOrder()) { 60505 composeCodeableConcept("order", element.getOrder()); 60506 } 60507 } 60508 60509 protected void composeSubstanceSourceMaterialPartDescriptionComponent(String name, SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent element) throws IOException { 60510 if (element != null) { 60511 composeElementAttributes(element); 60512 xml.enter(FHIR_NS, name); 60513 composeSubstanceSourceMaterialPartDescriptionComponentElements(element); 60514 composeElementClose(element); 60515 xml.exit(FHIR_NS, name); 60516 } 60517 } 60518 60519 protected void composeSubstanceSourceMaterialPartDescriptionComponentElements(SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent element) throws IOException { 60520 composeBackboneElementElements(element); 60521 if (element.hasPart()) { 60522 composeCodeableConcept("part", element.getPart()); 60523 } 60524 if (element.hasPartLocation()) { 60525 composeCodeableConcept("partLocation", element.getPartLocation()); 60526 } 60527 } 60528 60529 protected void composeSupplyDelivery(String name, SupplyDelivery element) throws IOException { 60530 if (element != null) { 60531 composeResourceAttributes(element); 60532 xml.enter(FHIR_NS, name); 60533 composeSupplyDeliveryElements(element); 60534 composeElementClose(element); 60535 xml.exit(FHIR_NS, name); 60536 } 60537 } 60538 60539 protected void composeSupplyDeliveryElements(SupplyDelivery element) throws IOException { 60540 composeDomainResourceElements(element); 60541 if (element.hasIdentifier()) { 60542 for (Identifier e : element.getIdentifier()) 60543 composeIdentifier("identifier", e); 60544 } 60545 if (element.hasBasedOn()) { 60546 for (Reference e : element.getBasedOn()) 60547 composeReference("basedOn", e); 60548 } 60549 if (element.hasPartOf()) { 60550 for (Reference e : element.getPartOf()) 60551 composeReference("partOf", e); 60552 } 60553 if (element.hasStatusElement()) 60554 composeEnumeration("status", element.getStatusElement(), new SupplyDelivery.SupplyDeliveryStatusEnumFactory()); 60555 if (element.hasPatient()) { 60556 composeReference("patient", element.getPatient()); 60557 } 60558 if (element.hasType()) { 60559 composeCodeableConcept("type", element.getType()); 60560 } 60561 if (element.hasSuppliedItem()) { 60562 for (SupplyDelivery.SupplyDeliverySuppliedItemComponent e : element.getSuppliedItem()) 60563 composeSupplyDeliverySuppliedItemComponent("suppliedItem", e); 60564 } 60565 if (element.hasOccurrence()) { 60566 composeType("occurrence", element.getOccurrence()); 60567 } if (element.hasSupplier()) { 60568 composeReference("supplier", element.getSupplier()); 60569 } 60570 if (element.hasDestination()) { 60571 composeReference("destination", element.getDestination()); 60572 } 60573 if (element.hasReceiver()) { 60574 for (Reference e : element.getReceiver()) 60575 composeReference("receiver", e); 60576 } 60577 } 60578 60579 protected void composeSupplyDeliverySuppliedItemComponent(String name, SupplyDelivery.SupplyDeliverySuppliedItemComponent element) throws IOException { 60580 if (element != null) { 60581 composeElementAttributes(element); 60582 xml.enter(FHIR_NS, name); 60583 composeSupplyDeliverySuppliedItemComponentElements(element); 60584 composeElementClose(element); 60585 xml.exit(FHIR_NS, name); 60586 } 60587 } 60588 60589 protected void composeSupplyDeliverySuppliedItemComponentElements(SupplyDelivery.SupplyDeliverySuppliedItemComponent element) throws IOException { 60590 composeBackboneElementElements(element); 60591 if (element.hasQuantity()) { 60592 composeQuantity("quantity", element.getQuantity()); 60593 } 60594 if (element.hasItem()) { 60595 composeType("item", element.getItem()); 60596 } } 60597 60598 protected void composeSupplyRequest(String name, SupplyRequest element) throws IOException { 60599 if (element != null) { 60600 composeResourceAttributes(element); 60601 xml.enter(FHIR_NS, name); 60602 composeSupplyRequestElements(element); 60603 composeElementClose(element); 60604 xml.exit(FHIR_NS, name); 60605 } 60606 } 60607 60608 protected void composeSupplyRequestElements(SupplyRequest element) throws IOException { 60609 composeDomainResourceElements(element); 60610 if (element.hasIdentifier()) { 60611 for (Identifier e : element.getIdentifier()) 60612 composeIdentifier("identifier", e); 60613 } 60614 if (element.hasStatusElement()) 60615 composeEnumeration("status", element.getStatusElement(), new SupplyRequest.SupplyRequestStatusEnumFactory()); 60616 if (element.hasBasedOn()) { 60617 for (Reference e : element.getBasedOn()) 60618 composeReference("basedOn", e); 60619 } 60620 if (element.hasCategory()) { 60621 composeCodeableConcept("category", element.getCategory()); 60622 } 60623 if (element.hasPriorityElement()) 60624 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 60625 if (element.hasDeliverFor()) { 60626 composeReference("deliverFor", element.getDeliverFor()); 60627 } 60628 if (element.hasItem()) { 60629 composeCodeableReference("item", element.getItem()); 60630 } 60631 if (element.hasQuantity()) { 60632 composeQuantity("quantity", element.getQuantity()); 60633 } 60634 if (element.hasParameter()) { 60635 for (SupplyRequest.SupplyRequestParameterComponent e : element.getParameter()) 60636 composeSupplyRequestParameterComponent("parameter", e); 60637 } 60638 if (element.hasOccurrence()) { 60639 composeType("occurrence", element.getOccurrence()); 60640 } if (element.hasAuthoredOnElement()) { 60641 composeDateTime("authoredOn", element.getAuthoredOnElement()); 60642 } 60643 if (element.hasRequester()) { 60644 composeReference("requester", element.getRequester()); 60645 } 60646 if (element.hasSupplier()) { 60647 for (Reference e : element.getSupplier()) 60648 composeReference("supplier", e); 60649 } 60650 if (element.hasReason()) { 60651 for (CodeableReference e : element.getReason()) 60652 composeCodeableReference("reason", e); 60653 } 60654 if (element.hasDeliverFrom()) { 60655 composeReference("deliverFrom", element.getDeliverFrom()); 60656 } 60657 if (element.hasDeliverTo()) { 60658 composeReference("deliverTo", element.getDeliverTo()); 60659 } 60660 } 60661 60662 protected void composeSupplyRequestParameterComponent(String name, SupplyRequest.SupplyRequestParameterComponent element) throws IOException { 60663 if (element != null) { 60664 composeElementAttributes(element); 60665 xml.enter(FHIR_NS, name); 60666 composeSupplyRequestParameterComponentElements(element); 60667 composeElementClose(element); 60668 xml.exit(FHIR_NS, name); 60669 } 60670 } 60671 60672 protected void composeSupplyRequestParameterComponentElements(SupplyRequest.SupplyRequestParameterComponent element) throws IOException { 60673 composeBackboneElementElements(element); 60674 if (element.hasCode()) { 60675 composeCodeableConcept("code", element.getCode()); 60676 } 60677 if (element.hasValue()) { 60678 composeType("value", element.getValue()); 60679 } } 60680 60681 protected void composeTask(String name, Task element) throws IOException { 60682 if (element != null) { 60683 composeResourceAttributes(element); 60684 xml.enter(FHIR_NS, name); 60685 composeTaskElements(element); 60686 composeElementClose(element); 60687 xml.exit(FHIR_NS, name); 60688 } 60689 } 60690 60691 protected void composeTaskElements(Task element) throws IOException { 60692 composeDomainResourceElements(element); 60693 if (element.hasIdentifier()) { 60694 for (Identifier e : element.getIdentifier()) 60695 composeIdentifier("identifier", e); 60696 } 60697 if (element.hasInstantiatesCanonicalElement()) { 60698 composeCanonical("instantiatesCanonical", element.getInstantiatesCanonicalElement()); 60699 } 60700 if (element.hasInstantiatesUriElement()) { 60701 composeUri("instantiatesUri", element.getInstantiatesUriElement()); 60702 } 60703 if (element.hasBasedOn()) { 60704 for (Reference e : element.getBasedOn()) 60705 composeReference("basedOn", e); 60706 } 60707 if (element.hasGroupIdentifier()) { 60708 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 60709 } 60710 if (element.hasPartOf()) { 60711 for (Reference e : element.getPartOf()) 60712 composeReference("partOf", e); 60713 } 60714 if (element.hasStatusElement()) 60715 composeEnumeration("status", element.getStatusElement(), new Task.TaskStatusEnumFactory()); 60716 if (element.hasStatusReason()) { 60717 composeCodeableReference("statusReason", element.getStatusReason()); 60718 } 60719 if (element.hasBusinessStatus()) { 60720 composeCodeableConcept("businessStatus", element.getBusinessStatus()); 60721 } 60722 if (element.hasIntentElement()) 60723 composeEnumeration("intent", element.getIntentElement(), new Task.TaskIntentEnumFactory()); 60724 if (element.hasPriorityElement()) 60725 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 60726 if (element.hasDoNotPerformElement()) { 60727 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 60728 } 60729 if (element.hasCode()) { 60730 composeCodeableConcept("code", element.getCode()); 60731 } 60732 if (element.hasDescriptionElement()) { 60733 composeString("description", element.getDescriptionElement()); 60734 } 60735 if (element.hasFocus()) { 60736 composeReference("focus", element.getFocus()); 60737 } 60738 if (element.hasFor()) { 60739 composeReference("for", element.getFor()); 60740 } 60741 if (element.hasEncounter()) { 60742 composeReference("encounter", element.getEncounter()); 60743 } 60744 if (element.hasRequestedPeriod()) { 60745 composePeriod("requestedPeriod", element.getRequestedPeriod()); 60746 } 60747 if (element.hasExecutionPeriod()) { 60748 composePeriod("executionPeriod", element.getExecutionPeriod()); 60749 } 60750 if (element.hasAuthoredOnElement()) { 60751 composeDateTime("authoredOn", element.getAuthoredOnElement()); 60752 } 60753 if (element.hasLastModifiedElement()) { 60754 composeDateTime("lastModified", element.getLastModifiedElement()); 60755 } 60756 if (element.hasRequester()) { 60757 composeReference("requester", element.getRequester()); 60758 } 60759 if (element.hasRequestedPerformer()) { 60760 for (CodeableReference e : element.getRequestedPerformer()) 60761 composeCodeableReference("requestedPerformer", e); 60762 } 60763 if (element.hasOwner()) { 60764 composeReference("owner", element.getOwner()); 60765 } 60766 if (element.hasPerformer()) { 60767 for (Task.TaskPerformerComponent e : element.getPerformer()) 60768 composeTaskPerformerComponent("performer", e); 60769 } 60770 if (element.hasLocation()) { 60771 composeReference("location", element.getLocation()); 60772 } 60773 if (element.hasReason()) { 60774 for (CodeableReference e : element.getReason()) 60775 composeCodeableReference("reason", e); 60776 } 60777 if (element.hasInsurance()) { 60778 for (Reference e : element.getInsurance()) 60779 composeReference("insurance", e); 60780 } 60781 if (element.hasNote()) { 60782 for (Annotation e : element.getNote()) 60783 composeAnnotation("note", e); 60784 } 60785 if (element.hasRelevantHistory()) { 60786 for (Reference e : element.getRelevantHistory()) 60787 composeReference("relevantHistory", e); 60788 } 60789 if (element.hasRestriction()) { 60790 composeTaskRestrictionComponent("restriction", element.getRestriction()); 60791 } 60792 if (element.hasInput()) { 60793 for (Task.TaskInputComponent e : element.getInput()) 60794 composeTaskInputComponent("input", e); 60795 } 60796 if (element.hasOutput()) { 60797 for (Task.TaskOutputComponent e : element.getOutput()) 60798 composeTaskOutputComponent("output", e); 60799 } 60800 } 60801 60802 protected void composeTaskPerformerComponent(String name, Task.TaskPerformerComponent element) throws IOException { 60803 if (element != null) { 60804 composeElementAttributes(element); 60805 xml.enter(FHIR_NS, name); 60806 composeTaskPerformerComponentElements(element); 60807 composeElementClose(element); 60808 xml.exit(FHIR_NS, name); 60809 } 60810 } 60811 60812 protected void composeTaskPerformerComponentElements(Task.TaskPerformerComponent element) throws IOException { 60813 composeBackboneElementElements(element); 60814 if (element.hasFunction()) { 60815 composeCodeableConcept("function", element.getFunction()); 60816 } 60817 if (element.hasActor()) { 60818 composeReference("actor", element.getActor()); 60819 } 60820 } 60821 60822 protected void composeTaskRestrictionComponent(String name, Task.TaskRestrictionComponent element) throws IOException { 60823 if (element != null) { 60824 composeElementAttributes(element); 60825 xml.enter(FHIR_NS, name); 60826 composeTaskRestrictionComponentElements(element); 60827 composeElementClose(element); 60828 xml.exit(FHIR_NS, name); 60829 } 60830 } 60831 60832 protected void composeTaskRestrictionComponentElements(Task.TaskRestrictionComponent element) throws IOException { 60833 composeBackboneElementElements(element); 60834 if (element.hasRepetitionsElement()) { 60835 composePositiveInt("repetitions", element.getRepetitionsElement()); 60836 } 60837 if (element.hasPeriod()) { 60838 composePeriod("period", element.getPeriod()); 60839 } 60840 if (element.hasRecipient()) { 60841 for (Reference e : element.getRecipient()) 60842 composeReference("recipient", e); 60843 } 60844 } 60845 60846 protected void composeTaskInputComponent(String name, Task.TaskInputComponent element) throws IOException { 60847 if (element != null) { 60848 composeElementAttributes(element); 60849 xml.enter(FHIR_NS, name); 60850 composeTaskInputComponentElements(element); 60851 composeElementClose(element); 60852 xml.exit(FHIR_NS, name); 60853 } 60854 } 60855 60856 protected void composeTaskInputComponentElements(Task.TaskInputComponent element) throws IOException { 60857 composeBackboneElementElements(element); 60858 if (element.hasType()) { 60859 composeCodeableConcept("type", element.getType()); 60860 } 60861 if (element.hasValue()) { 60862 composeType("value", element.getValue()); 60863 } } 60864 60865 protected void composeTaskOutputComponent(String name, Task.TaskOutputComponent element) throws IOException { 60866 if (element != null) { 60867 composeElementAttributes(element); 60868 xml.enter(FHIR_NS, name); 60869 composeTaskOutputComponentElements(element); 60870 composeElementClose(element); 60871 xml.exit(FHIR_NS, name); 60872 } 60873 } 60874 60875 protected void composeTaskOutputComponentElements(Task.TaskOutputComponent element) throws IOException { 60876 composeBackboneElementElements(element); 60877 if (element.hasType()) { 60878 composeCodeableConcept("type", element.getType()); 60879 } 60880 if (element.hasValue()) { 60881 composeType("value", element.getValue()); 60882 } } 60883 60884 protected void composeTerminologyCapabilities(String name, TerminologyCapabilities element) throws IOException { 60885 if (element != null) { 60886 composeResourceAttributes(element); 60887 xml.enter(FHIR_NS, name); 60888 composeTerminologyCapabilitiesElements(element); 60889 composeElementClose(element); 60890 xml.exit(FHIR_NS, name); 60891 } 60892 } 60893 60894 protected void composeTerminologyCapabilitiesElements(TerminologyCapabilities element) throws IOException { 60895 composeCanonicalResourceElements(element); 60896 if (element.hasUrlElement()) { 60897 composeUri("url", element.getUrlElement()); 60898 } 60899 if (element.hasIdentifier()) { 60900 for (Identifier e : element.getIdentifier()) 60901 composeIdentifier("identifier", e); 60902 } 60903 if (element.hasVersionElement()) { 60904 composeString("version", element.getVersionElement()); 60905 } 60906 if (element.hasVersionAlgorithm()) { 60907 composeType("versionAlgorithm", element.getVersionAlgorithm()); 60908 } if (element.hasNameElement()) { 60909 composeString("name", element.getNameElement()); 60910 } 60911 if (element.hasTitleElement()) { 60912 composeString("title", element.getTitleElement()); 60913 } 60914 if (element.hasStatusElement()) 60915 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 60916 if (element.hasExperimentalElement()) { 60917 composeBoolean("experimental", element.getExperimentalElement()); 60918 } 60919 if (element.hasDateElement()) { 60920 composeDateTime("date", element.getDateElement()); 60921 } 60922 if (element.hasPublisherElement()) { 60923 composeString("publisher", element.getPublisherElement()); 60924 } 60925 if (element.hasContact()) { 60926 for (ContactDetail e : element.getContact()) 60927 composeContactDetail("contact", e); 60928 } 60929 if (element.hasDescriptionElement()) { 60930 composeMarkdown("description", element.getDescriptionElement()); 60931 } 60932 if (element.hasUseContext()) { 60933 for (UsageContext e : element.getUseContext()) 60934 composeUsageContext("useContext", e); 60935 } 60936 if (element.hasJurisdiction()) { 60937 for (CodeableConcept e : element.getJurisdiction()) 60938 composeCodeableConcept("jurisdiction", e); 60939 } 60940 if (element.hasPurposeElement()) { 60941 composeMarkdown("purpose", element.getPurposeElement()); 60942 } 60943 if (element.hasCopyrightElement()) { 60944 composeMarkdown("copyright", element.getCopyrightElement()); 60945 } 60946 if (element.hasCopyrightLabelElement()) { 60947 composeString("copyrightLabel", element.getCopyrightLabelElement()); 60948 } 60949 if (element.hasKindElement()) 60950 composeEnumeration("kind", element.getKindElement(), new Enumerations.CapabilityStatementKindEnumFactory()); 60951 if (element.hasSoftware()) { 60952 composeTerminologyCapabilitiesSoftwareComponent("software", element.getSoftware()); 60953 } 60954 if (element.hasImplementation()) { 60955 composeTerminologyCapabilitiesImplementationComponent("implementation", element.getImplementation()); 60956 } 60957 if (element.hasLockedDateElement()) { 60958 composeBoolean("lockedDate", element.getLockedDateElement()); 60959 } 60960 if (element.hasCodeSystem()) { 60961 for (TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent e : element.getCodeSystem()) 60962 composeTerminologyCapabilitiesCodeSystemComponent("codeSystem", e); 60963 } 60964 if (element.hasExpansion()) { 60965 composeTerminologyCapabilitiesExpansionComponent("expansion", element.getExpansion()); 60966 } 60967 if (element.hasCodeSearchElement()) 60968 composeEnumeration("codeSearch", element.getCodeSearchElement(), new TerminologyCapabilities.CodeSearchSupportEnumFactory()); 60969 if (element.hasValidateCode()) { 60970 composeTerminologyCapabilitiesValidateCodeComponent("validateCode", element.getValidateCode()); 60971 } 60972 if (element.hasTranslation()) { 60973 composeTerminologyCapabilitiesTranslationComponent("translation", element.getTranslation()); 60974 } 60975 if (element.hasClosure()) { 60976 composeTerminologyCapabilitiesClosureComponent("closure", element.getClosure()); 60977 } 60978 } 60979 60980 protected void composeTerminologyCapabilitiesSoftwareComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesSoftwareComponent element) throws IOException { 60981 if (element != null) { 60982 composeElementAttributes(element); 60983 xml.enter(FHIR_NS, name); 60984 composeTerminologyCapabilitiesSoftwareComponentElements(element); 60985 composeElementClose(element); 60986 xml.exit(FHIR_NS, name); 60987 } 60988 } 60989 60990 protected void composeTerminologyCapabilitiesSoftwareComponentElements(TerminologyCapabilities.TerminologyCapabilitiesSoftwareComponent element) throws IOException { 60991 composeBackboneElementElements(element); 60992 if (element.hasNameElement()) { 60993 composeString("name", element.getNameElement()); 60994 } 60995 if (element.hasVersionElement()) { 60996 composeString("version", element.getVersionElement()); 60997 } 60998 } 60999 61000 protected void composeTerminologyCapabilitiesImplementationComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesImplementationComponent element) throws IOException { 61001 if (element != null) { 61002 composeElementAttributes(element); 61003 xml.enter(FHIR_NS, name); 61004 composeTerminologyCapabilitiesImplementationComponentElements(element); 61005 composeElementClose(element); 61006 xml.exit(FHIR_NS, name); 61007 } 61008 } 61009 61010 protected void composeTerminologyCapabilitiesImplementationComponentElements(TerminologyCapabilities.TerminologyCapabilitiesImplementationComponent element) throws IOException { 61011 composeBackboneElementElements(element); 61012 if (element.hasDescriptionElement()) { 61013 composeString("description", element.getDescriptionElement()); 61014 } 61015 if (element.hasUrlElement()) { 61016 composeUrl("url", element.getUrlElement()); 61017 } 61018 } 61019 61020 protected void composeTerminologyCapabilitiesCodeSystemComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent element) throws IOException { 61021 if (element != null) { 61022 composeElementAttributes(element); 61023 xml.enter(FHIR_NS, name); 61024 composeTerminologyCapabilitiesCodeSystemComponentElements(element); 61025 composeElementClose(element); 61026 xml.exit(FHIR_NS, name); 61027 } 61028 } 61029 61030 protected void composeTerminologyCapabilitiesCodeSystemComponentElements(TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent element) throws IOException { 61031 composeBackboneElementElements(element); 61032 if (element.hasUriElement()) { 61033 composeCanonical("uri", element.getUriElement()); 61034 } 61035 if (element.hasVersion()) { 61036 for (TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent e : element.getVersion()) 61037 composeTerminologyCapabilitiesCodeSystemVersionComponent("version", e); 61038 } 61039 if (element.hasContentElement()) 61040 composeEnumeration("content", element.getContentElement(), new Enumerations.CodeSystemContentModeEnumFactory()); 61041 if (element.hasSubsumptionElement()) { 61042 composeBoolean("subsumption", element.getSubsumptionElement()); 61043 } 61044 } 61045 61046 protected void composeTerminologyCapabilitiesCodeSystemVersionComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent element) throws IOException { 61047 if (element != null) { 61048 composeElementAttributes(element); 61049 xml.enter(FHIR_NS, name); 61050 composeTerminologyCapabilitiesCodeSystemVersionComponentElements(element); 61051 composeElementClose(element); 61052 xml.exit(FHIR_NS, name); 61053 } 61054 } 61055 61056 protected void composeTerminologyCapabilitiesCodeSystemVersionComponentElements(TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent element) throws IOException { 61057 composeBackboneElementElements(element); 61058 if (element.hasCodeElement()) { 61059 composeString("code", element.getCodeElement()); 61060 } 61061 if (element.hasIsDefaultElement()) { 61062 composeBoolean("isDefault", element.getIsDefaultElement()); 61063 } 61064 if (element.hasCompositionalElement()) { 61065 composeBoolean("compositional", element.getCompositionalElement()); 61066 } 61067 if (element.hasLanguage()) 61068 for (Enumeration<Enumerations.CommonLanguages> e : element.getLanguage()) 61069 composeEnumeration("language", e, new Enumerations.CommonLanguagesEnumFactory()); 61070 if (element.hasFilter()) { 61071 for (TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent e : element.getFilter()) 61072 composeTerminologyCapabilitiesCodeSystemVersionFilterComponent("filter", e); 61073 } 61074 if (element.hasProperty()) { 61075 for (CodeType e : element.getProperty()) 61076 composeCode("property", e); 61077 } 61078 } 61079 61080 protected void composeTerminologyCapabilitiesCodeSystemVersionFilterComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent element) throws IOException { 61081 if (element != null) { 61082 composeElementAttributes(element); 61083 xml.enter(FHIR_NS, name); 61084 composeTerminologyCapabilitiesCodeSystemVersionFilterComponentElements(element); 61085 composeElementClose(element); 61086 xml.exit(FHIR_NS, name); 61087 } 61088 } 61089 61090 protected void composeTerminologyCapabilitiesCodeSystemVersionFilterComponentElements(TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent element) throws IOException { 61091 composeBackboneElementElements(element); 61092 if (element.hasCodeElement()) { 61093 composeCode("code", element.getCodeElement()); 61094 } 61095 if (element.hasOp()) { 61096 for (CodeType e : element.getOp()) 61097 composeCode("op", e); 61098 } 61099 } 61100 61101 protected void composeTerminologyCapabilitiesExpansionComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesExpansionComponent element) throws IOException { 61102 if (element != null) { 61103 composeElementAttributes(element); 61104 xml.enter(FHIR_NS, name); 61105 composeTerminologyCapabilitiesExpansionComponentElements(element); 61106 composeElementClose(element); 61107 xml.exit(FHIR_NS, name); 61108 } 61109 } 61110 61111 protected void composeTerminologyCapabilitiesExpansionComponentElements(TerminologyCapabilities.TerminologyCapabilitiesExpansionComponent element) throws IOException { 61112 composeBackboneElementElements(element); 61113 if (element.hasHierarchicalElement()) { 61114 composeBoolean("hierarchical", element.getHierarchicalElement()); 61115 } 61116 if (element.hasPagingElement()) { 61117 composeBoolean("paging", element.getPagingElement()); 61118 } 61119 if (element.hasIncompleteElement()) { 61120 composeBoolean("incomplete", element.getIncompleteElement()); 61121 } 61122 if (element.hasParameter()) { 61123 for (TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent e : element.getParameter()) 61124 composeTerminologyCapabilitiesExpansionParameterComponent("parameter", e); 61125 } 61126 if (element.hasTextFilterElement()) { 61127 composeMarkdown("textFilter", element.getTextFilterElement()); 61128 } 61129 } 61130 61131 protected void composeTerminologyCapabilitiesExpansionParameterComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent element) throws IOException { 61132 if (element != null) { 61133 composeElementAttributes(element); 61134 xml.enter(FHIR_NS, name); 61135 composeTerminologyCapabilitiesExpansionParameterComponentElements(element); 61136 composeElementClose(element); 61137 xml.exit(FHIR_NS, name); 61138 } 61139 } 61140 61141 protected void composeTerminologyCapabilitiesExpansionParameterComponentElements(TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent element) throws IOException { 61142 composeBackboneElementElements(element); 61143 if (element.hasNameElement()) { 61144 composeCode("name", element.getNameElement()); 61145 } 61146 if (element.hasDocumentationElement()) { 61147 composeString("documentation", element.getDocumentationElement()); 61148 } 61149 } 61150 61151 protected void composeTerminologyCapabilitiesValidateCodeComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesValidateCodeComponent element) throws IOException { 61152 if (element != null) { 61153 composeElementAttributes(element); 61154 xml.enter(FHIR_NS, name); 61155 composeTerminologyCapabilitiesValidateCodeComponentElements(element); 61156 composeElementClose(element); 61157 xml.exit(FHIR_NS, name); 61158 } 61159 } 61160 61161 protected void composeTerminologyCapabilitiesValidateCodeComponentElements(TerminologyCapabilities.TerminologyCapabilitiesValidateCodeComponent element) throws IOException { 61162 composeBackboneElementElements(element); 61163 if (element.hasTranslationsElement()) { 61164 composeBoolean("translations", element.getTranslationsElement()); 61165 } 61166 } 61167 61168 protected void composeTerminologyCapabilitiesTranslationComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesTranslationComponent element) throws IOException { 61169 if (element != null) { 61170 composeElementAttributes(element); 61171 xml.enter(FHIR_NS, name); 61172 composeTerminologyCapabilitiesTranslationComponentElements(element); 61173 composeElementClose(element); 61174 xml.exit(FHIR_NS, name); 61175 } 61176 } 61177 61178 protected void composeTerminologyCapabilitiesTranslationComponentElements(TerminologyCapabilities.TerminologyCapabilitiesTranslationComponent element) throws IOException { 61179 composeBackboneElementElements(element); 61180 if (element.hasNeedsMapElement()) { 61181 composeBoolean("needsMap", element.getNeedsMapElement()); 61182 } 61183 } 61184 61185 protected void composeTerminologyCapabilitiesClosureComponent(String name, TerminologyCapabilities.TerminologyCapabilitiesClosureComponent element) throws IOException { 61186 if (element != null) { 61187 composeElementAttributes(element); 61188 xml.enter(FHIR_NS, name); 61189 composeTerminologyCapabilitiesClosureComponentElements(element); 61190 composeElementClose(element); 61191 xml.exit(FHIR_NS, name); 61192 } 61193 } 61194 61195 protected void composeTerminologyCapabilitiesClosureComponentElements(TerminologyCapabilities.TerminologyCapabilitiesClosureComponent element) throws IOException { 61196 composeBackboneElementElements(element); 61197 if (element.hasTranslationElement()) { 61198 composeBoolean("translation", element.getTranslationElement()); 61199 } 61200 } 61201 61202 protected void composeTestPlan(String name, TestPlan element) throws IOException { 61203 if (element != null) { 61204 composeResourceAttributes(element); 61205 xml.enter(FHIR_NS, name); 61206 composeTestPlanElements(element); 61207 composeElementClose(element); 61208 xml.exit(FHIR_NS, name); 61209 } 61210 } 61211 61212 protected void composeTestPlanElements(TestPlan element) throws IOException { 61213 composeCanonicalResourceElements(element); 61214 if (element.hasUrlElement()) { 61215 composeUri("url", element.getUrlElement()); 61216 } 61217 if (element.hasIdentifier()) { 61218 for (Identifier e : element.getIdentifier()) 61219 composeIdentifier("identifier", e); 61220 } 61221 if (element.hasVersionElement()) { 61222 composeString("version", element.getVersionElement()); 61223 } 61224 if (element.hasVersionAlgorithm()) { 61225 composeType("versionAlgorithm", element.getVersionAlgorithm()); 61226 } if (element.hasNameElement()) { 61227 composeString("name", element.getNameElement()); 61228 } 61229 if (element.hasTitleElement()) { 61230 composeString("title", element.getTitleElement()); 61231 } 61232 if (element.hasStatusElement()) 61233 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 61234 if (element.hasExperimentalElement()) { 61235 composeBoolean("experimental", element.getExperimentalElement()); 61236 } 61237 if (element.hasDateElement()) { 61238 composeDateTime("date", element.getDateElement()); 61239 } 61240 if (element.hasPublisherElement()) { 61241 composeString("publisher", element.getPublisherElement()); 61242 } 61243 if (element.hasContact()) { 61244 for (ContactDetail e : element.getContact()) 61245 composeContactDetail("contact", e); 61246 } 61247 if (element.hasDescriptionElement()) { 61248 composeMarkdown("description", element.getDescriptionElement()); 61249 } 61250 if (element.hasUseContext()) { 61251 for (UsageContext e : element.getUseContext()) 61252 composeUsageContext("useContext", e); 61253 } 61254 if (element.hasJurisdiction()) { 61255 for (CodeableConcept e : element.getJurisdiction()) 61256 composeCodeableConcept("jurisdiction", e); 61257 } 61258 if (element.hasPurposeElement()) { 61259 composeMarkdown("purpose", element.getPurposeElement()); 61260 } 61261 if (element.hasCopyrightElement()) { 61262 composeMarkdown("copyright", element.getCopyrightElement()); 61263 } 61264 if (element.hasCopyrightLabelElement()) { 61265 composeString("copyrightLabel", element.getCopyrightLabelElement()); 61266 } 61267 if (element.hasCategory()) { 61268 for (CodeableConcept e : element.getCategory()) 61269 composeCodeableConcept("category", e); 61270 } 61271 if (element.hasScope()) { 61272 for (Reference e : element.getScope()) 61273 composeReference("scope", e); 61274 } 61275 if (element.hasTestToolsElement()) { 61276 composeMarkdown("testTools", element.getTestToolsElement()); 61277 } 61278 if (element.hasDependency()) { 61279 for (TestPlan.TestPlanDependencyComponent e : element.getDependency()) 61280 composeTestPlanDependencyComponent("dependency", e); 61281 } 61282 if (element.hasExitCriteriaElement()) { 61283 composeMarkdown("exitCriteria", element.getExitCriteriaElement()); 61284 } 61285 if (element.hasTestCase()) { 61286 for (TestPlan.TestPlanTestCaseComponent e : element.getTestCase()) 61287 composeTestPlanTestCaseComponent("testCase", e); 61288 } 61289 } 61290 61291 protected void composeTestPlanDependencyComponent(String name, TestPlan.TestPlanDependencyComponent element) throws IOException { 61292 if (element != null) { 61293 composeElementAttributes(element); 61294 xml.enter(FHIR_NS, name); 61295 composeTestPlanDependencyComponentElements(element); 61296 composeElementClose(element); 61297 xml.exit(FHIR_NS, name); 61298 } 61299 } 61300 61301 protected void composeTestPlanDependencyComponentElements(TestPlan.TestPlanDependencyComponent element) throws IOException { 61302 composeBackboneElementElements(element); 61303 if (element.hasDescriptionElement()) { 61304 composeMarkdown("description", element.getDescriptionElement()); 61305 } 61306 if (element.hasPredecessor()) { 61307 composeReference("predecessor", element.getPredecessor()); 61308 } 61309 } 61310 61311 protected void composeTestPlanTestCaseComponent(String name, TestPlan.TestPlanTestCaseComponent element) throws IOException { 61312 if (element != null) { 61313 composeElementAttributes(element); 61314 xml.enter(FHIR_NS, name); 61315 composeTestPlanTestCaseComponentElements(element); 61316 composeElementClose(element); 61317 xml.exit(FHIR_NS, name); 61318 } 61319 } 61320 61321 protected void composeTestPlanTestCaseComponentElements(TestPlan.TestPlanTestCaseComponent element) throws IOException { 61322 composeBackboneElementElements(element); 61323 if (element.hasSequenceElement()) { 61324 composeInteger("sequence", element.getSequenceElement()); 61325 } 61326 if (element.hasScope()) { 61327 for (Reference e : element.getScope()) 61328 composeReference("scope", e); 61329 } 61330 if (element.hasDependency()) { 61331 for (TestPlan.TestCaseDependencyComponent e : element.getDependency()) 61332 composeTestPlanTestCaseDependencyComponent("dependency", e); 61333 } 61334 if (element.hasTestRun()) { 61335 for (TestPlan.TestPlanTestCaseTestRunComponent e : element.getTestRun()) 61336 composeTestPlanTestCaseTestRunComponent("testRun", e); 61337 } 61338 if (element.hasTestData()) { 61339 for (TestPlan.TestPlanTestCaseTestDataComponent e : element.getTestData()) 61340 composeTestPlanTestCaseTestDataComponent("testData", e); 61341 } 61342 if (element.hasAssertion()) { 61343 for (TestPlan.TestPlanTestCaseAssertionComponent e : element.getAssertion()) 61344 composeTestPlanTestCaseAssertionComponent("assertion", e); 61345 } 61346 } 61347 61348 protected void composeTestPlanTestCaseDependencyComponent(String name, TestPlan.TestCaseDependencyComponent element) throws IOException { 61349 if (element != null) { 61350 composeElementAttributes(element); 61351 xml.enter(FHIR_NS, name); 61352 composeTestPlanTestCaseDependencyComponentElements(element); 61353 composeElementClose(element); 61354 xml.exit(FHIR_NS, name); 61355 } 61356 } 61357 61358 protected void composeTestPlanTestCaseDependencyComponentElements(TestPlan.TestCaseDependencyComponent element) throws IOException { 61359 composeBackboneElementElements(element); 61360 if (element.hasDescriptionElement()) { 61361 composeMarkdown("description", element.getDescriptionElement()); 61362 } 61363 if (element.hasPredecessor()) { 61364 composeReference("predecessor", element.getPredecessor()); 61365 } 61366 } 61367 61368 protected void composeTestPlanTestCaseTestRunComponent(String name, TestPlan.TestPlanTestCaseTestRunComponent element) throws IOException { 61369 if (element != null) { 61370 composeElementAttributes(element); 61371 xml.enter(FHIR_NS, name); 61372 composeTestPlanTestCaseTestRunComponentElements(element); 61373 composeElementClose(element); 61374 xml.exit(FHIR_NS, name); 61375 } 61376 } 61377 61378 protected void composeTestPlanTestCaseTestRunComponentElements(TestPlan.TestPlanTestCaseTestRunComponent element) throws IOException { 61379 composeBackboneElementElements(element); 61380 if (element.hasNarrativeElement()) { 61381 composeMarkdown("narrative", element.getNarrativeElement()); 61382 } 61383 if (element.hasScript()) { 61384 composeTestPlanTestCaseTestRunScriptComponent("script", element.getScript()); 61385 } 61386 } 61387 61388 protected void composeTestPlanTestCaseTestRunScriptComponent(String name, TestPlan.TestPlanTestCaseTestRunScriptComponent element) throws IOException { 61389 if (element != null) { 61390 composeElementAttributes(element); 61391 xml.enter(FHIR_NS, name); 61392 composeTestPlanTestCaseTestRunScriptComponentElements(element); 61393 composeElementClose(element); 61394 xml.exit(FHIR_NS, name); 61395 } 61396 } 61397 61398 protected void composeTestPlanTestCaseTestRunScriptComponentElements(TestPlan.TestPlanTestCaseTestRunScriptComponent element) throws IOException { 61399 composeBackboneElementElements(element); 61400 if (element.hasLanguage()) { 61401 composeCodeableConcept("language", element.getLanguage()); 61402 } 61403 if (element.hasSource()) { 61404 composeType("source", element.getSource()); 61405 } } 61406 61407 protected void composeTestPlanTestCaseTestDataComponent(String name, TestPlan.TestPlanTestCaseTestDataComponent element) throws IOException { 61408 if (element != null) { 61409 composeElementAttributes(element); 61410 xml.enter(FHIR_NS, name); 61411 composeTestPlanTestCaseTestDataComponentElements(element); 61412 composeElementClose(element); 61413 xml.exit(FHIR_NS, name); 61414 } 61415 } 61416 61417 protected void composeTestPlanTestCaseTestDataComponentElements(TestPlan.TestPlanTestCaseTestDataComponent element) throws IOException { 61418 composeBackboneElementElements(element); 61419 if (element.hasType()) { 61420 composeCoding("type", element.getType()); 61421 } 61422 if (element.hasContent()) { 61423 composeReference("content", element.getContent()); 61424 } 61425 if (element.hasSource()) { 61426 composeType("source", element.getSource()); 61427 } } 61428 61429 protected void composeTestPlanTestCaseAssertionComponent(String name, TestPlan.TestPlanTestCaseAssertionComponent element) throws IOException { 61430 if (element != null) { 61431 composeElementAttributes(element); 61432 xml.enter(FHIR_NS, name); 61433 composeTestPlanTestCaseAssertionComponentElements(element); 61434 composeElementClose(element); 61435 xml.exit(FHIR_NS, name); 61436 } 61437 } 61438 61439 protected void composeTestPlanTestCaseAssertionComponentElements(TestPlan.TestPlanTestCaseAssertionComponent element) throws IOException { 61440 composeBackboneElementElements(element); 61441 if (element.hasType()) { 61442 for (CodeableConcept e : element.getType()) 61443 composeCodeableConcept("type", e); 61444 } 61445 if (element.hasObject()) { 61446 for (CodeableReference e : element.getObject()) 61447 composeCodeableReference("object", e); 61448 } 61449 if (element.hasResult()) { 61450 for (CodeableReference e : element.getResult()) 61451 composeCodeableReference("result", e); 61452 } 61453 } 61454 61455 protected void composeTestReport(String name, TestReport element) throws IOException { 61456 if (element != null) { 61457 composeResourceAttributes(element); 61458 xml.enter(FHIR_NS, name); 61459 composeTestReportElements(element); 61460 composeElementClose(element); 61461 xml.exit(FHIR_NS, name); 61462 } 61463 } 61464 61465 protected void composeTestReportElements(TestReport element) throws IOException { 61466 composeDomainResourceElements(element); 61467 if (element.hasIdentifier()) { 61468 composeIdentifier("identifier", element.getIdentifier()); 61469 } 61470 if (element.hasNameElement()) { 61471 composeString("name", element.getNameElement()); 61472 } 61473 if (element.hasStatusElement()) 61474 composeEnumeration("status", element.getStatusElement(), new TestReport.TestReportStatusEnumFactory()); 61475 if (element.hasTestScriptElement()) { 61476 composeCanonical("testScript", element.getTestScriptElement()); 61477 } 61478 if (element.hasResultElement()) 61479 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportResultEnumFactory()); 61480 if (element.hasScoreElement()) { 61481 composeDecimal("score", element.getScoreElement()); 61482 } 61483 if (element.hasTesterElement()) { 61484 composeString("tester", element.getTesterElement()); 61485 } 61486 if (element.hasIssuedElement()) { 61487 composeDateTime("issued", element.getIssuedElement()); 61488 } 61489 if (element.hasParticipant()) { 61490 for (TestReport.TestReportParticipantComponent e : element.getParticipant()) 61491 composeTestReportParticipantComponent("participant", e); 61492 } 61493 if (element.hasSetup()) { 61494 composeTestReportSetupComponent("setup", element.getSetup()); 61495 } 61496 if (element.hasTest()) { 61497 for (TestReport.TestReportTestComponent e : element.getTest()) 61498 composeTestReportTestComponent("test", e); 61499 } 61500 if (element.hasTeardown()) { 61501 composeTestReportTeardownComponent("teardown", element.getTeardown()); 61502 } 61503 } 61504 61505 protected void composeTestReportParticipantComponent(String name, TestReport.TestReportParticipantComponent element) throws IOException { 61506 if (element != null) { 61507 composeElementAttributes(element); 61508 xml.enter(FHIR_NS, name); 61509 composeTestReportParticipantComponentElements(element); 61510 composeElementClose(element); 61511 xml.exit(FHIR_NS, name); 61512 } 61513 } 61514 61515 protected void composeTestReportParticipantComponentElements(TestReport.TestReportParticipantComponent element) throws IOException { 61516 composeBackboneElementElements(element); 61517 if (element.hasTypeElement()) 61518 composeEnumeration("type", element.getTypeElement(), new TestReport.TestReportParticipantTypeEnumFactory()); 61519 if (element.hasUriElement()) { 61520 composeUri("uri", element.getUriElement()); 61521 } 61522 if (element.hasDisplayElement()) { 61523 composeString("display", element.getDisplayElement()); 61524 } 61525 } 61526 61527 protected void composeTestReportSetupComponent(String name, TestReport.TestReportSetupComponent element) throws IOException { 61528 if (element != null) { 61529 composeElementAttributes(element); 61530 xml.enter(FHIR_NS, name); 61531 composeTestReportSetupComponentElements(element); 61532 composeElementClose(element); 61533 xml.exit(FHIR_NS, name); 61534 } 61535 } 61536 61537 protected void composeTestReportSetupComponentElements(TestReport.TestReportSetupComponent element) throws IOException { 61538 composeBackboneElementElements(element); 61539 if (element.hasAction()) { 61540 for (TestReport.SetupActionComponent e : element.getAction()) 61541 composeTestReportSetupActionComponent("action", e); 61542 } 61543 } 61544 61545 protected void composeTestReportSetupActionComponent(String name, TestReport.SetupActionComponent element) throws IOException { 61546 if (element != null) { 61547 composeElementAttributes(element); 61548 xml.enter(FHIR_NS, name); 61549 composeTestReportSetupActionComponentElements(element); 61550 composeElementClose(element); 61551 xml.exit(FHIR_NS, name); 61552 } 61553 } 61554 61555 protected void composeTestReportSetupActionComponentElements(TestReport.SetupActionComponent element) throws IOException { 61556 composeBackboneElementElements(element); 61557 if (element.hasOperation()) { 61558 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 61559 } 61560 if (element.hasAssert()) { 61561 composeTestReportSetupActionAssertComponent("assert", element.getAssert()); 61562 } 61563 } 61564 61565 protected void composeTestReportSetupActionOperationComponent(String name, TestReport.SetupActionOperationComponent element) throws IOException { 61566 if (element != null) { 61567 composeElementAttributes(element); 61568 xml.enter(FHIR_NS, name); 61569 composeTestReportSetupActionOperationComponentElements(element); 61570 composeElementClose(element); 61571 xml.exit(FHIR_NS, name); 61572 } 61573 } 61574 61575 protected void composeTestReportSetupActionOperationComponentElements(TestReport.SetupActionOperationComponent element) throws IOException { 61576 composeBackboneElementElements(element); 61577 if (element.hasResultElement()) 61578 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportActionResultEnumFactory()); 61579 if (element.hasMessageElement()) { 61580 composeMarkdown("message", element.getMessageElement()); 61581 } 61582 if (element.hasDetailElement()) { 61583 composeUri("detail", element.getDetailElement()); 61584 } 61585 } 61586 61587 protected void composeTestReportSetupActionAssertComponent(String name, TestReport.SetupActionAssertComponent element) throws IOException { 61588 if (element != null) { 61589 composeElementAttributes(element); 61590 xml.enter(FHIR_NS, name); 61591 composeTestReportSetupActionAssertComponentElements(element); 61592 composeElementClose(element); 61593 xml.exit(FHIR_NS, name); 61594 } 61595 } 61596 61597 protected void composeTestReportSetupActionAssertComponentElements(TestReport.SetupActionAssertComponent element) throws IOException { 61598 composeBackboneElementElements(element); 61599 if (element.hasResultElement()) 61600 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportActionResultEnumFactory()); 61601 if (element.hasMessageElement()) { 61602 composeMarkdown("message", element.getMessageElement()); 61603 } 61604 if (element.hasDetailElement()) { 61605 composeString("detail", element.getDetailElement()); 61606 } 61607 if (element.hasRequirement()) { 61608 for (TestReport.SetupActionAssertRequirementComponent e : element.getRequirement()) 61609 composeTestReportSetupActionAssertRequirementComponent("requirement", e); 61610 } 61611 } 61612 61613 protected void composeTestReportSetupActionAssertRequirementComponent(String name, TestReport.SetupActionAssertRequirementComponent element) throws IOException { 61614 if (element != null) { 61615 composeElementAttributes(element); 61616 xml.enter(FHIR_NS, name); 61617 composeTestReportSetupActionAssertRequirementComponentElements(element); 61618 composeElementClose(element); 61619 xml.exit(FHIR_NS, name); 61620 } 61621 } 61622 61623 protected void composeTestReportSetupActionAssertRequirementComponentElements(TestReport.SetupActionAssertRequirementComponent element) throws IOException { 61624 composeBackboneElementElements(element); 61625 if (element.hasLink()) { 61626 composeType("link", element.getLink()); 61627 } } 61628 61629 protected void composeTestReportTestComponent(String name, TestReport.TestReportTestComponent element) throws IOException { 61630 if (element != null) { 61631 composeElementAttributes(element); 61632 xml.enter(FHIR_NS, name); 61633 composeTestReportTestComponentElements(element); 61634 composeElementClose(element); 61635 xml.exit(FHIR_NS, name); 61636 } 61637 } 61638 61639 protected void composeTestReportTestComponentElements(TestReport.TestReportTestComponent element) throws IOException { 61640 composeBackboneElementElements(element); 61641 if (element.hasNameElement()) { 61642 composeString("name", element.getNameElement()); 61643 } 61644 if (element.hasDescriptionElement()) { 61645 composeString("description", element.getDescriptionElement()); 61646 } 61647 if (element.hasAction()) { 61648 for (TestReport.TestActionComponent e : element.getAction()) 61649 composeTestReportTestActionComponent("action", e); 61650 } 61651 } 61652 61653 protected void composeTestReportTestActionComponent(String name, TestReport.TestActionComponent element) throws IOException { 61654 if (element != null) { 61655 composeElementAttributes(element); 61656 xml.enter(FHIR_NS, name); 61657 composeTestReportTestActionComponentElements(element); 61658 composeElementClose(element); 61659 xml.exit(FHIR_NS, name); 61660 } 61661 } 61662 61663 protected void composeTestReportTestActionComponentElements(TestReport.TestActionComponent element) throws IOException { 61664 composeBackboneElementElements(element); 61665 if (element.hasOperation()) { 61666 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 61667 } 61668 if (element.hasAssert()) { 61669 composeTestReportSetupActionAssertComponent("assert", element.getAssert()); 61670 } 61671 } 61672 61673 protected void composeTestReportTeardownComponent(String name, TestReport.TestReportTeardownComponent element) throws IOException { 61674 if (element != null) { 61675 composeElementAttributes(element); 61676 xml.enter(FHIR_NS, name); 61677 composeTestReportTeardownComponentElements(element); 61678 composeElementClose(element); 61679 xml.exit(FHIR_NS, name); 61680 } 61681 } 61682 61683 protected void composeTestReportTeardownComponentElements(TestReport.TestReportTeardownComponent element) throws IOException { 61684 composeBackboneElementElements(element); 61685 if (element.hasAction()) { 61686 for (TestReport.TeardownActionComponent e : element.getAction()) 61687 composeTestReportTeardownActionComponent("action", e); 61688 } 61689 } 61690 61691 protected void composeTestReportTeardownActionComponent(String name, TestReport.TeardownActionComponent element) throws IOException { 61692 if (element != null) { 61693 composeElementAttributes(element); 61694 xml.enter(FHIR_NS, name); 61695 composeTestReportTeardownActionComponentElements(element); 61696 composeElementClose(element); 61697 xml.exit(FHIR_NS, name); 61698 } 61699 } 61700 61701 protected void composeTestReportTeardownActionComponentElements(TestReport.TeardownActionComponent element) throws IOException { 61702 composeBackboneElementElements(element); 61703 if (element.hasOperation()) { 61704 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 61705 } 61706 } 61707 61708 protected void composeTestScript(String name, TestScript element) throws IOException { 61709 if (element != null) { 61710 composeResourceAttributes(element); 61711 xml.enter(FHIR_NS, name); 61712 composeTestScriptElements(element); 61713 composeElementClose(element); 61714 xml.exit(FHIR_NS, name); 61715 } 61716 } 61717 61718 protected void composeTestScriptElements(TestScript element) throws IOException { 61719 composeCanonicalResourceElements(element); 61720 if (element.hasUrlElement()) { 61721 composeUri("url", element.getUrlElement()); 61722 } 61723 if (element.hasIdentifier()) { 61724 for (Identifier e : element.getIdentifier()) 61725 composeIdentifier("identifier", e); 61726 } 61727 if (element.hasVersionElement()) { 61728 composeString("version", element.getVersionElement()); 61729 } 61730 if (element.hasVersionAlgorithm()) { 61731 composeType("versionAlgorithm", element.getVersionAlgorithm()); 61732 } if (element.hasNameElement()) { 61733 composeString("name", element.getNameElement()); 61734 } 61735 if (element.hasTitleElement()) { 61736 composeString("title", element.getTitleElement()); 61737 } 61738 if (element.hasStatusElement()) 61739 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 61740 if (element.hasExperimentalElement()) { 61741 composeBoolean("experimental", element.getExperimentalElement()); 61742 } 61743 if (element.hasDateElement()) { 61744 composeDateTime("date", element.getDateElement()); 61745 } 61746 if (element.hasPublisherElement()) { 61747 composeString("publisher", element.getPublisherElement()); 61748 } 61749 if (element.hasContact()) { 61750 for (ContactDetail e : element.getContact()) 61751 composeContactDetail("contact", e); 61752 } 61753 if (element.hasDescriptionElement()) { 61754 composeMarkdown("description", element.getDescriptionElement()); 61755 } 61756 if (element.hasUseContext()) { 61757 for (UsageContext e : element.getUseContext()) 61758 composeUsageContext("useContext", e); 61759 } 61760 if (element.hasJurisdiction()) { 61761 for (CodeableConcept e : element.getJurisdiction()) 61762 composeCodeableConcept("jurisdiction", e); 61763 } 61764 if (element.hasPurposeElement()) { 61765 composeMarkdown("purpose", element.getPurposeElement()); 61766 } 61767 if (element.hasCopyrightElement()) { 61768 composeMarkdown("copyright", element.getCopyrightElement()); 61769 } 61770 if (element.hasCopyrightLabelElement()) { 61771 composeString("copyrightLabel", element.getCopyrightLabelElement()); 61772 } 61773 if (element.hasOrigin()) { 61774 for (TestScript.TestScriptOriginComponent e : element.getOrigin()) 61775 composeTestScriptOriginComponent("origin", e); 61776 } 61777 if (element.hasDestination()) { 61778 for (TestScript.TestScriptDestinationComponent e : element.getDestination()) 61779 composeTestScriptDestinationComponent("destination", e); 61780 } 61781 if (element.hasMetadata()) { 61782 composeTestScriptMetadataComponent("metadata", element.getMetadata()); 61783 } 61784 if (element.hasScope()) { 61785 for (TestScript.TestScriptScopeComponent e : element.getScope()) 61786 composeTestScriptScopeComponent("scope", e); 61787 } 61788 if (element.hasFixture()) { 61789 for (TestScript.TestScriptFixtureComponent e : element.getFixture()) 61790 composeTestScriptFixtureComponent("fixture", e); 61791 } 61792 if (element.hasProfile()) { 61793 for (CanonicalType e : element.getProfile()) 61794 composeCanonical("profile", e); 61795 } 61796 if (element.hasVariable()) { 61797 for (TestScript.TestScriptVariableComponent e : element.getVariable()) 61798 composeTestScriptVariableComponent("variable", e); 61799 } 61800 if (element.hasSetup()) { 61801 composeTestScriptSetupComponent("setup", element.getSetup()); 61802 } 61803 if (element.hasTest()) { 61804 for (TestScript.TestScriptTestComponent e : element.getTest()) 61805 composeTestScriptTestComponent("test", e); 61806 } 61807 if (element.hasTeardown()) { 61808 composeTestScriptTeardownComponent("teardown", element.getTeardown()); 61809 } 61810 } 61811 61812 protected void composeTestScriptOriginComponent(String name, TestScript.TestScriptOriginComponent element) throws IOException { 61813 if (element != null) { 61814 composeElementAttributes(element); 61815 xml.enter(FHIR_NS, name); 61816 composeTestScriptOriginComponentElements(element); 61817 composeElementClose(element); 61818 xml.exit(FHIR_NS, name); 61819 } 61820 } 61821 61822 protected void composeTestScriptOriginComponentElements(TestScript.TestScriptOriginComponent element) throws IOException { 61823 composeBackboneElementElements(element); 61824 if (element.hasIndexElement()) { 61825 composeInteger("index", element.getIndexElement()); 61826 } 61827 if (element.hasProfile()) { 61828 composeCoding("profile", element.getProfile()); 61829 } 61830 if (element.hasUrlElement()) { 61831 composeUrl("url", element.getUrlElement()); 61832 } 61833 } 61834 61835 protected void composeTestScriptDestinationComponent(String name, TestScript.TestScriptDestinationComponent element) throws IOException { 61836 if (element != null) { 61837 composeElementAttributes(element); 61838 xml.enter(FHIR_NS, name); 61839 composeTestScriptDestinationComponentElements(element); 61840 composeElementClose(element); 61841 xml.exit(FHIR_NS, name); 61842 } 61843 } 61844 61845 protected void composeTestScriptDestinationComponentElements(TestScript.TestScriptDestinationComponent element) throws IOException { 61846 composeBackboneElementElements(element); 61847 if (element.hasIndexElement()) { 61848 composeInteger("index", element.getIndexElement()); 61849 } 61850 if (element.hasProfile()) { 61851 composeCoding("profile", element.getProfile()); 61852 } 61853 if (element.hasUrlElement()) { 61854 composeUrl("url", element.getUrlElement()); 61855 } 61856 } 61857 61858 protected void composeTestScriptMetadataComponent(String name, TestScript.TestScriptMetadataComponent element) throws IOException { 61859 if (element != null) { 61860 composeElementAttributes(element); 61861 xml.enter(FHIR_NS, name); 61862 composeTestScriptMetadataComponentElements(element); 61863 composeElementClose(element); 61864 xml.exit(FHIR_NS, name); 61865 } 61866 } 61867 61868 protected void composeTestScriptMetadataComponentElements(TestScript.TestScriptMetadataComponent element) throws IOException { 61869 composeBackboneElementElements(element); 61870 if (element.hasLink()) { 61871 for (TestScript.TestScriptMetadataLinkComponent e : element.getLink()) 61872 composeTestScriptMetadataLinkComponent("link", e); 61873 } 61874 if (element.hasCapability()) { 61875 for (TestScript.TestScriptMetadataCapabilityComponent e : element.getCapability()) 61876 composeTestScriptMetadataCapabilityComponent("capability", e); 61877 } 61878 } 61879 61880 protected void composeTestScriptMetadataLinkComponent(String name, TestScript.TestScriptMetadataLinkComponent element) throws IOException { 61881 if (element != null) { 61882 composeElementAttributes(element); 61883 xml.enter(FHIR_NS, name); 61884 composeTestScriptMetadataLinkComponentElements(element); 61885 composeElementClose(element); 61886 xml.exit(FHIR_NS, name); 61887 } 61888 } 61889 61890 protected void composeTestScriptMetadataLinkComponentElements(TestScript.TestScriptMetadataLinkComponent element) throws IOException { 61891 composeBackboneElementElements(element); 61892 if (element.hasUrlElement()) { 61893 composeUri("url", element.getUrlElement()); 61894 } 61895 if (element.hasDescriptionElement()) { 61896 composeString("description", element.getDescriptionElement()); 61897 } 61898 } 61899 61900 protected void composeTestScriptMetadataCapabilityComponent(String name, TestScript.TestScriptMetadataCapabilityComponent element) throws IOException { 61901 if (element != null) { 61902 composeElementAttributes(element); 61903 xml.enter(FHIR_NS, name); 61904 composeTestScriptMetadataCapabilityComponentElements(element); 61905 composeElementClose(element); 61906 xml.exit(FHIR_NS, name); 61907 } 61908 } 61909 61910 protected void composeTestScriptMetadataCapabilityComponentElements(TestScript.TestScriptMetadataCapabilityComponent element) throws IOException { 61911 composeBackboneElementElements(element); 61912 if (element.hasRequiredElement()) { 61913 composeBoolean("required", element.getRequiredElement()); 61914 } 61915 if (element.hasValidatedElement()) { 61916 composeBoolean("validated", element.getValidatedElement()); 61917 } 61918 if (element.hasDescriptionElement()) { 61919 composeString("description", element.getDescriptionElement()); 61920 } 61921 if (element.hasOrigin()) { 61922 for (IntegerType e : element.getOrigin()) 61923 composeInteger("origin", e); 61924 } 61925 if (element.hasDestinationElement()) { 61926 composeInteger("destination", element.getDestinationElement()); 61927 } 61928 if (element.hasLink()) { 61929 for (UriType e : element.getLink()) 61930 composeUri("link", e); 61931 } 61932 if (element.hasCapabilitiesElement()) { 61933 composeCanonical("capabilities", element.getCapabilitiesElement()); 61934 } 61935 } 61936 61937 protected void composeTestScriptScopeComponent(String name, TestScript.TestScriptScopeComponent element) throws IOException { 61938 if (element != null) { 61939 composeElementAttributes(element); 61940 xml.enter(FHIR_NS, name); 61941 composeTestScriptScopeComponentElements(element); 61942 composeElementClose(element); 61943 xml.exit(FHIR_NS, name); 61944 } 61945 } 61946 61947 protected void composeTestScriptScopeComponentElements(TestScript.TestScriptScopeComponent element) throws IOException { 61948 composeBackboneElementElements(element); 61949 if (element.hasArtifactElement()) { 61950 composeCanonical("artifact", element.getArtifactElement()); 61951 } 61952 if (element.hasConformance()) { 61953 composeCodeableConcept("conformance", element.getConformance()); 61954 } 61955 if (element.hasPhase()) { 61956 composeCodeableConcept("phase", element.getPhase()); 61957 } 61958 } 61959 61960 protected void composeTestScriptFixtureComponent(String name, TestScript.TestScriptFixtureComponent element) throws IOException { 61961 if (element != null) { 61962 composeElementAttributes(element); 61963 xml.enter(FHIR_NS, name); 61964 composeTestScriptFixtureComponentElements(element); 61965 composeElementClose(element); 61966 xml.exit(FHIR_NS, name); 61967 } 61968 } 61969 61970 protected void composeTestScriptFixtureComponentElements(TestScript.TestScriptFixtureComponent element) throws IOException { 61971 composeBackboneElementElements(element); 61972 if (element.hasAutocreateElement()) { 61973 composeBoolean("autocreate", element.getAutocreateElement()); 61974 } 61975 if (element.hasAutodeleteElement()) { 61976 composeBoolean("autodelete", element.getAutodeleteElement()); 61977 } 61978 if (element.hasResource()) { 61979 composeReference("resource", element.getResource()); 61980 } 61981 } 61982 61983 protected void composeTestScriptVariableComponent(String name, TestScript.TestScriptVariableComponent element) throws IOException { 61984 if (element != null) { 61985 composeElementAttributes(element); 61986 xml.enter(FHIR_NS, name); 61987 composeTestScriptVariableComponentElements(element); 61988 composeElementClose(element); 61989 xml.exit(FHIR_NS, name); 61990 } 61991 } 61992 61993 protected void composeTestScriptVariableComponentElements(TestScript.TestScriptVariableComponent element) throws IOException { 61994 composeBackboneElementElements(element); 61995 if (element.hasNameElement()) { 61996 composeString("name", element.getNameElement()); 61997 } 61998 if (element.hasDefaultValueElement()) { 61999 composeString("defaultValue", element.getDefaultValueElement()); 62000 } 62001 if (element.hasDescriptionElement()) { 62002 composeString("description", element.getDescriptionElement()); 62003 } 62004 if (element.hasExpressionElement()) { 62005 composeString("expression", element.getExpressionElement()); 62006 } 62007 if (element.hasHeaderFieldElement()) { 62008 composeString("headerField", element.getHeaderFieldElement()); 62009 } 62010 if (element.hasHintElement()) { 62011 composeString("hint", element.getHintElement()); 62012 } 62013 if (element.hasPathElement()) { 62014 composeString("path", element.getPathElement()); 62015 } 62016 if (element.hasSourceIdElement()) { 62017 composeId("sourceId", element.getSourceIdElement()); 62018 } 62019 } 62020 62021 protected void composeTestScriptSetupComponent(String name, TestScript.TestScriptSetupComponent element) throws IOException { 62022 if (element != null) { 62023 composeElementAttributes(element); 62024 xml.enter(FHIR_NS, name); 62025 composeTestScriptSetupComponentElements(element); 62026 composeElementClose(element); 62027 xml.exit(FHIR_NS, name); 62028 } 62029 } 62030 62031 protected void composeTestScriptSetupComponentElements(TestScript.TestScriptSetupComponent element) throws IOException { 62032 composeBackboneElementElements(element); 62033 if (element.hasAction()) { 62034 for (TestScript.SetupActionComponent e : element.getAction()) 62035 composeTestScriptSetupActionComponent("action", e); 62036 } 62037 } 62038 62039 protected void composeTestScriptSetupActionComponent(String name, TestScript.SetupActionComponent element) throws IOException { 62040 if (element != null) { 62041 composeElementAttributes(element); 62042 xml.enter(FHIR_NS, name); 62043 composeTestScriptSetupActionComponentElements(element); 62044 composeElementClose(element); 62045 xml.exit(FHIR_NS, name); 62046 } 62047 } 62048 62049 protected void composeTestScriptSetupActionComponentElements(TestScript.SetupActionComponent element) throws IOException { 62050 composeBackboneElementElements(element); 62051 if (element.hasOperation()) { 62052 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 62053 } 62054 if (element.hasAssert()) { 62055 composeTestScriptSetupActionAssertComponent("assert", element.getAssert()); 62056 } 62057 } 62058 62059 protected void composeTestScriptSetupActionOperationComponent(String name, TestScript.SetupActionOperationComponent element) throws IOException { 62060 if (element != null) { 62061 composeElementAttributes(element); 62062 xml.enter(FHIR_NS, name); 62063 composeTestScriptSetupActionOperationComponentElements(element); 62064 composeElementClose(element); 62065 xml.exit(FHIR_NS, name); 62066 } 62067 } 62068 62069 protected void composeTestScriptSetupActionOperationComponentElements(TestScript.SetupActionOperationComponent element) throws IOException { 62070 composeBackboneElementElements(element); 62071 if (element.hasType()) { 62072 composeCoding("type", element.getType()); 62073 } 62074 if (element.hasResourceElement()) { 62075 composeUri("resource", element.getResourceElement()); 62076 } 62077 if (element.hasLabelElement()) { 62078 composeString("label", element.getLabelElement()); 62079 } 62080 if (element.hasDescriptionElement()) { 62081 composeString("description", element.getDescriptionElement()); 62082 } 62083 if (element.hasAcceptElement()) { 62084 composeCode("accept", element.getAcceptElement()); 62085 } 62086 if (element.hasContentTypeElement()) { 62087 composeCode("contentType", element.getContentTypeElement()); 62088 } 62089 if (element.hasDestinationElement()) { 62090 composeInteger("destination", element.getDestinationElement()); 62091 } 62092 if (element.hasEncodeRequestUrlElement()) { 62093 composeBoolean("encodeRequestUrl", element.getEncodeRequestUrlElement()); 62094 } 62095 if (element.hasMethodElement()) 62096 composeEnumeration("method", element.getMethodElement(), new TestScript.TestScriptRequestMethodCodeEnumFactory()); 62097 if (element.hasOriginElement()) { 62098 composeInteger("origin", element.getOriginElement()); 62099 } 62100 if (element.hasParamsElement()) { 62101 composeString("params", element.getParamsElement()); 62102 } 62103 if (element.hasRequestHeader()) { 62104 for (TestScript.SetupActionOperationRequestHeaderComponent e : element.getRequestHeader()) 62105 composeTestScriptSetupActionOperationRequestHeaderComponent("requestHeader", e); 62106 } 62107 if (element.hasRequestIdElement()) { 62108 composeId("requestId", element.getRequestIdElement()); 62109 } 62110 if (element.hasResponseIdElement()) { 62111 composeId("responseId", element.getResponseIdElement()); 62112 } 62113 if (element.hasSourceIdElement()) { 62114 composeId("sourceId", element.getSourceIdElement()); 62115 } 62116 if (element.hasTargetIdElement()) { 62117 composeId("targetId", element.getTargetIdElement()); 62118 } 62119 if (element.hasUrlElement()) { 62120 composeString("url", element.getUrlElement()); 62121 } 62122 } 62123 62124 protected void composeTestScriptSetupActionOperationRequestHeaderComponent(String name, TestScript.SetupActionOperationRequestHeaderComponent element) throws IOException { 62125 if (element != null) { 62126 composeElementAttributes(element); 62127 xml.enter(FHIR_NS, name); 62128 composeTestScriptSetupActionOperationRequestHeaderComponentElements(element); 62129 composeElementClose(element); 62130 xml.exit(FHIR_NS, name); 62131 } 62132 } 62133 62134 protected void composeTestScriptSetupActionOperationRequestHeaderComponentElements(TestScript.SetupActionOperationRequestHeaderComponent element) throws IOException { 62135 composeBackboneElementElements(element); 62136 if (element.hasFieldElement()) { 62137 composeString("field", element.getFieldElement()); 62138 } 62139 if (element.hasValueElement()) { 62140 composeString("value", element.getValueElement()); 62141 } 62142 } 62143 62144 protected void composeTestScriptSetupActionAssertComponent(String name, TestScript.SetupActionAssertComponent element) throws IOException { 62145 if (element != null) { 62146 composeElementAttributes(element); 62147 xml.enter(FHIR_NS, name); 62148 composeTestScriptSetupActionAssertComponentElements(element); 62149 composeElementClose(element); 62150 xml.exit(FHIR_NS, name); 62151 } 62152 } 62153 62154 protected void composeTestScriptSetupActionAssertComponentElements(TestScript.SetupActionAssertComponent element) throws IOException { 62155 composeBackboneElementElements(element); 62156 if (element.hasLabelElement()) { 62157 composeString("label", element.getLabelElement()); 62158 } 62159 if (element.hasDescriptionElement()) { 62160 composeString("description", element.getDescriptionElement()); 62161 } 62162 if (element.hasDirectionElement()) 62163 composeEnumeration("direction", element.getDirectionElement(), new TestScript.AssertionDirectionTypeEnumFactory()); 62164 if (element.hasCompareToSourceIdElement()) { 62165 composeString("compareToSourceId", element.getCompareToSourceIdElement()); 62166 } 62167 if (element.hasCompareToSourceExpressionElement()) { 62168 composeString("compareToSourceExpression", element.getCompareToSourceExpressionElement()); 62169 } 62170 if (element.hasCompareToSourcePathElement()) { 62171 composeString("compareToSourcePath", element.getCompareToSourcePathElement()); 62172 } 62173 if (element.hasContentTypeElement()) { 62174 composeCode("contentType", element.getContentTypeElement()); 62175 } 62176 if (element.hasDefaultManualCompletionElement()) 62177 composeEnumeration("defaultManualCompletion", element.getDefaultManualCompletionElement(), new TestScript.AssertionManualCompletionTypeEnumFactory()); 62178 if (element.hasExpressionElement()) { 62179 composeString("expression", element.getExpressionElement()); 62180 } 62181 if (element.hasHeaderFieldElement()) { 62182 composeString("headerField", element.getHeaderFieldElement()); 62183 } 62184 if (element.hasMinimumIdElement()) { 62185 composeString("minimumId", element.getMinimumIdElement()); 62186 } 62187 if (element.hasNavigationLinksElement()) { 62188 composeBoolean("navigationLinks", element.getNavigationLinksElement()); 62189 } 62190 if (element.hasOperatorElement()) 62191 composeEnumeration("operator", element.getOperatorElement(), new TestScript.AssertionOperatorTypeEnumFactory()); 62192 if (element.hasPathElement()) { 62193 composeString("path", element.getPathElement()); 62194 } 62195 if (element.hasRequestMethodElement()) 62196 composeEnumeration("requestMethod", element.getRequestMethodElement(), new TestScript.TestScriptRequestMethodCodeEnumFactory()); 62197 if (element.hasRequestURLElement()) { 62198 composeString("requestURL", element.getRequestURLElement()); 62199 } 62200 if (element.hasResourceElement()) { 62201 composeUri("resource", element.getResourceElement()); 62202 } 62203 if (element.hasResponseElement()) 62204 composeEnumeration("response", element.getResponseElement(), new TestScript.AssertionResponseTypesEnumFactory()); 62205 if (element.hasResponseCodeElement()) { 62206 composeString("responseCode", element.getResponseCodeElement()); 62207 } 62208 if (element.hasSourceIdElement()) { 62209 composeId("sourceId", element.getSourceIdElement()); 62210 } 62211 if (element.hasStopTestOnFailElement()) { 62212 composeBoolean("stopTestOnFail", element.getStopTestOnFailElement()); 62213 } 62214 if (element.hasValidateProfileIdElement()) { 62215 composeId("validateProfileId", element.getValidateProfileIdElement()); 62216 } 62217 if (element.hasValueElement()) { 62218 composeString("value", element.getValueElement()); 62219 } 62220 if (element.hasWarningOnlyElement()) { 62221 composeBoolean("warningOnly", element.getWarningOnlyElement()); 62222 } 62223 if (element.hasRequirement()) { 62224 for (TestScript.SetupActionAssertRequirementComponent e : element.getRequirement()) 62225 composeTestScriptSetupActionAssertRequirementComponent("requirement", e); 62226 } 62227 } 62228 62229 protected void composeTestScriptSetupActionAssertRequirementComponent(String name, TestScript.SetupActionAssertRequirementComponent element) throws IOException { 62230 if (element != null) { 62231 composeElementAttributes(element); 62232 xml.enter(FHIR_NS, name); 62233 composeTestScriptSetupActionAssertRequirementComponentElements(element); 62234 composeElementClose(element); 62235 xml.exit(FHIR_NS, name); 62236 } 62237 } 62238 62239 protected void composeTestScriptSetupActionAssertRequirementComponentElements(TestScript.SetupActionAssertRequirementComponent element) throws IOException { 62240 composeBackboneElementElements(element); 62241 if (element.hasLink()) { 62242 composeType("link", element.getLink()); 62243 } } 62244 62245 protected void composeTestScriptTestComponent(String name, TestScript.TestScriptTestComponent element) throws IOException { 62246 if (element != null) { 62247 composeElementAttributes(element); 62248 xml.enter(FHIR_NS, name); 62249 composeTestScriptTestComponentElements(element); 62250 composeElementClose(element); 62251 xml.exit(FHIR_NS, name); 62252 } 62253 } 62254 62255 protected void composeTestScriptTestComponentElements(TestScript.TestScriptTestComponent element) throws IOException { 62256 composeBackboneElementElements(element); 62257 if (element.hasNameElement()) { 62258 composeString("name", element.getNameElement()); 62259 } 62260 if (element.hasDescriptionElement()) { 62261 composeString("description", element.getDescriptionElement()); 62262 } 62263 if (element.hasAction()) { 62264 for (TestScript.TestActionComponent e : element.getAction()) 62265 composeTestScriptTestActionComponent("action", e); 62266 } 62267 } 62268 62269 protected void composeTestScriptTestActionComponent(String name, TestScript.TestActionComponent element) throws IOException { 62270 if (element != null) { 62271 composeElementAttributes(element); 62272 xml.enter(FHIR_NS, name); 62273 composeTestScriptTestActionComponentElements(element); 62274 composeElementClose(element); 62275 xml.exit(FHIR_NS, name); 62276 } 62277 } 62278 62279 protected void composeTestScriptTestActionComponentElements(TestScript.TestActionComponent element) throws IOException { 62280 composeBackboneElementElements(element); 62281 if (element.hasOperation()) { 62282 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 62283 } 62284 if (element.hasAssert()) { 62285 composeTestScriptSetupActionAssertComponent("assert", element.getAssert()); 62286 } 62287 } 62288 62289 protected void composeTestScriptTeardownComponent(String name, TestScript.TestScriptTeardownComponent element) throws IOException { 62290 if (element != null) { 62291 composeElementAttributes(element); 62292 xml.enter(FHIR_NS, name); 62293 composeTestScriptTeardownComponentElements(element); 62294 composeElementClose(element); 62295 xml.exit(FHIR_NS, name); 62296 } 62297 } 62298 62299 protected void composeTestScriptTeardownComponentElements(TestScript.TestScriptTeardownComponent element) throws IOException { 62300 composeBackboneElementElements(element); 62301 if (element.hasAction()) { 62302 for (TestScript.TeardownActionComponent e : element.getAction()) 62303 composeTestScriptTeardownActionComponent("action", e); 62304 } 62305 } 62306 62307 protected void composeTestScriptTeardownActionComponent(String name, TestScript.TeardownActionComponent element) throws IOException { 62308 if (element != null) { 62309 composeElementAttributes(element); 62310 xml.enter(FHIR_NS, name); 62311 composeTestScriptTeardownActionComponentElements(element); 62312 composeElementClose(element); 62313 xml.exit(FHIR_NS, name); 62314 } 62315 } 62316 62317 protected void composeTestScriptTeardownActionComponentElements(TestScript.TeardownActionComponent element) throws IOException { 62318 composeBackboneElementElements(element); 62319 if (element.hasOperation()) { 62320 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 62321 } 62322 } 62323 62324 protected void composeTransport(String name, Transport element) throws IOException { 62325 if (element != null) { 62326 composeResourceAttributes(element); 62327 xml.enter(FHIR_NS, name); 62328 composeTransportElements(element); 62329 composeElementClose(element); 62330 xml.exit(FHIR_NS, name); 62331 } 62332 } 62333 62334 protected void composeTransportElements(Transport element) throws IOException { 62335 composeDomainResourceElements(element); 62336 if (element.hasIdentifier()) { 62337 for (Identifier e : element.getIdentifier()) 62338 composeIdentifier("identifier", e); 62339 } 62340 if (element.hasInstantiatesCanonicalElement()) { 62341 composeCanonical("instantiatesCanonical", element.getInstantiatesCanonicalElement()); 62342 } 62343 if (element.hasInstantiatesUriElement()) { 62344 composeUri("instantiatesUri", element.getInstantiatesUriElement()); 62345 } 62346 if (element.hasBasedOn()) { 62347 for (Reference e : element.getBasedOn()) 62348 composeReference("basedOn", e); 62349 } 62350 if (element.hasGroupIdentifier()) { 62351 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 62352 } 62353 if (element.hasPartOf()) { 62354 for (Reference e : element.getPartOf()) 62355 composeReference("partOf", e); 62356 } 62357 if (element.hasStatusElement()) 62358 composeEnumeration("status", element.getStatusElement(), new Transport.TransportStatusEnumFactory()); 62359 if (element.hasStatusReason()) { 62360 composeCodeableConcept("statusReason", element.getStatusReason()); 62361 } 62362 if (element.hasIntentElement()) 62363 composeEnumeration("intent", element.getIntentElement(), new Transport.TransportIntentEnumFactory()); 62364 if (element.hasPriorityElement()) 62365 composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); 62366 if (element.hasCode()) { 62367 composeCodeableConcept("code", element.getCode()); 62368 } 62369 if (element.hasDescriptionElement()) { 62370 composeString("description", element.getDescriptionElement()); 62371 } 62372 if (element.hasFocus()) { 62373 composeReference("focus", element.getFocus()); 62374 } 62375 if (element.hasFor()) { 62376 composeReference("for", element.getFor()); 62377 } 62378 if (element.hasEncounter()) { 62379 composeReference("encounter", element.getEncounter()); 62380 } 62381 if (element.hasCompletionTimeElement()) { 62382 composeDateTime("completionTime", element.getCompletionTimeElement()); 62383 } 62384 if (element.hasAuthoredOnElement()) { 62385 composeDateTime("authoredOn", element.getAuthoredOnElement()); 62386 } 62387 if (element.hasLastModifiedElement()) { 62388 composeDateTime("lastModified", element.getLastModifiedElement()); 62389 } 62390 if (element.hasRequester()) { 62391 composeReference("requester", element.getRequester()); 62392 } 62393 if (element.hasPerformerType()) { 62394 for (CodeableConcept e : element.getPerformerType()) 62395 composeCodeableConcept("performerType", e); 62396 } 62397 if (element.hasOwner()) { 62398 composeReference("owner", element.getOwner()); 62399 } 62400 if (element.hasLocation()) { 62401 composeReference("location", element.getLocation()); 62402 } 62403 if (element.hasInsurance()) { 62404 for (Reference e : element.getInsurance()) 62405 composeReference("insurance", e); 62406 } 62407 if (element.hasNote()) { 62408 for (Annotation e : element.getNote()) 62409 composeAnnotation("note", e); 62410 } 62411 if (element.hasRelevantHistory()) { 62412 for (Reference e : element.getRelevantHistory()) 62413 composeReference("relevantHistory", e); 62414 } 62415 if (element.hasRestriction()) { 62416 composeTransportRestrictionComponent("restriction", element.getRestriction()); 62417 } 62418 if (element.hasInput()) { 62419 for (Transport.ParameterComponent e : element.getInput()) 62420 composeTransportParameterComponent("input", e); 62421 } 62422 if (element.hasOutput()) { 62423 for (Transport.TransportOutputComponent e : element.getOutput()) 62424 composeTransportOutputComponent("output", e); 62425 } 62426 if (element.hasRequestedLocation()) { 62427 composeReference("requestedLocation", element.getRequestedLocation()); 62428 } 62429 if (element.hasCurrentLocation()) { 62430 composeReference("currentLocation", element.getCurrentLocation()); 62431 } 62432 if (element.hasReason()) { 62433 composeCodeableReference("reason", element.getReason()); 62434 } 62435 if (element.hasHistory()) { 62436 composeReference("history", element.getHistory()); 62437 } 62438 } 62439 62440 protected void composeTransportRestrictionComponent(String name, Transport.TransportRestrictionComponent element) throws IOException { 62441 if (element != null) { 62442 composeElementAttributes(element); 62443 xml.enter(FHIR_NS, name); 62444 composeTransportRestrictionComponentElements(element); 62445 composeElementClose(element); 62446 xml.exit(FHIR_NS, name); 62447 } 62448 } 62449 62450 protected void composeTransportRestrictionComponentElements(Transport.TransportRestrictionComponent element) throws IOException { 62451 composeBackboneElementElements(element); 62452 if (element.hasRepetitionsElement()) { 62453 composePositiveInt("repetitions", element.getRepetitionsElement()); 62454 } 62455 if (element.hasPeriod()) { 62456 composePeriod("period", element.getPeriod()); 62457 } 62458 if (element.hasRecipient()) { 62459 for (Reference e : element.getRecipient()) 62460 composeReference("recipient", e); 62461 } 62462 } 62463 62464 protected void composeTransportParameterComponent(String name, Transport.ParameterComponent element) throws IOException { 62465 if (element != null) { 62466 composeElementAttributes(element); 62467 xml.enter(FHIR_NS, name); 62468 composeTransportParameterComponentElements(element); 62469 composeElementClose(element); 62470 xml.exit(FHIR_NS, name); 62471 } 62472 } 62473 62474 protected void composeTransportParameterComponentElements(Transport.ParameterComponent element) throws IOException { 62475 composeBackboneElementElements(element); 62476 if (element.hasType()) { 62477 composeCodeableConcept("type", element.getType()); 62478 } 62479 if (element.hasValue()) { 62480 composeType("value", element.getValue()); 62481 } } 62482 62483 protected void composeTransportOutputComponent(String name, Transport.TransportOutputComponent element) throws IOException { 62484 if (element != null) { 62485 composeElementAttributes(element); 62486 xml.enter(FHIR_NS, name); 62487 composeTransportOutputComponentElements(element); 62488 composeElementClose(element); 62489 xml.exit(FHIR_NS, name); 62490 } 62491 } 62492 62493 protected void composeTransportOutputComponentElements(Transport.TransportOutputComponent element) throws IOException { 62494 composeBackboneElementElements(element); 62495 if (element.hasType()) { 62496 composeCodeableConcept("type", element.getType()); 62497 } 62498 if (element.hasValue()) { 62499 composeType("value", element.getValue()); 62500 } } 62501 62502 protected void composeValueSet(String name, ValueSet element) throws IOException { 62503 if (element != null) { 62504 composeResourceAttributes(element); 62505 xml.enter(FHIR_NS, name); 62506 composeValueSetElements(element); 62507 composeElementClose(element); 62508 xml.exit(FHIR_NS, name); 62509 } 62510 } 62511 62512 protected void composeValueSetElements(ValueSet element) throws IOException { 62513 composeMetadataResourceElements(element); 62514 if (element.hasUrlElement()) { 62515 composeUri("url", element.getUrlElement()); 62516 } 62517 if (element.hasIdentifier()) { 62518 for (Identifier e : element.getIdentifier()) 62519 composeIdentifier("identifier", e); 62520 } 62521 if (element.hasVersionElement()) { 62522 composeString("version", element.getVersionElement()); 62523 } 62524 if (element.hasVersionAlgorithm()) { 62525 composeType("versionAlgorithm", element.getVersionAlgorithm()); 62526 } if (element.hasNameElement()) { 62527 composeString("name", element.getNameElement()); 62528 } 62529 if (element.hasTitleElement()) { 62530 composeString("title", element.getTitleElement()); 62531 } 62532 if (element.hasStatusElement()) 62533 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 62534 if (element.hasExperimentalElement()) { 62535 composeBoolean("experimental", element.getExperimentalElement()); 62536 } 62537 if (element.hasDateElement()) { 62538 composeDateTime("date", element.getDateElement()); 62539 } 62540 if (element.hasPublisherElement()) { 62541 composeString("publisher", element.getPublisherElement()); 62542 } 62543 if (element.hasContact()) { 62544 for (ContactDetail e : element.getContact()) 62545 composeContactDetail("contact", e); 62546 } 62547 if (element.hasDescriptionElement()) { 62548 composeMarkdown("description", element.getDescriptionElement()); 62549 } 62550 if (element.hasUseContext()) { 62551 for (UsageContext e : element.getUseContext()) 62552 composeUsageContext("useContext", e); 62553 } 62554 if (element.hasJurisdiction()) { 62555 for (CodeableConcept e : element.getJurisdiction()) 62556 composeCodeableConcept("jurisdiction", e); 62557 } 62558 if (element.hasImmutableElement()) { 62559 composeBoolean("immutable", element.getImmutableElement()); 62560 } 62561 if (element.hasPurposeElement()) { 62562 composeMarkdown("purpose", element.getPurposeElement()); 62563 } 62564 if (element.hasCopyrightElement()) { 62565 composeMarkdown("copyright", element.getCopyrightElement()); 62566 } 62567 if (element.hasCopyrightLabelElement()) { 62568 composeString("copyrightLabel", element.getCopyrightLabelElement()); 62569 } 62570 if (element.hasApprovalDateElement()) { 62571 composeDate("approvalDate", element.getApprovalDateElement()); 62572 } 62573 if (element.hasLastReviewDateElement()) { 62574 composeDate("lastReviewDate", element.getLastReviewDateElement()); 62575 } 62576 if (element.hasEffectivePeriod()) { 62577 composePeriod("effectivePeriod", element.getEffectivePeriod()); 62578 } 62579 if (element.hasTopic()) { 62580 for (CodeableConcept e : element.getTopic()) 62581 composeCodeableConcept("topic", e); 62582 } 62583 if (element.hasAuthor()) { 62584 for (ContactDetail e : element.getAuthor()) 62585 composeContactDetail("author", e); 62586 } 62587 if (element.hasEditor()) { 62588 for (ContactDetail e : element.getEditor()) 62589 composeContactDetail("editor", e); 62590 } 62591 if (element.hasReviewer()) { 62592 for (ContactDetail e : element.getReviewer()) 62593 composeContactDetail("reviewer", e); 62594 } 62595 if (element.hasEndorser()) { 62596 for (ContactDetail e : element.getEndorser()) 62597 composeContactDetail("endorser", e); 62598 } 62599 if (element.hasRelatedArtifact()) { 62600 for (RelatedArtifact e : element.getRelatedArtifact()) 62601 composeRelatedArtifact("relatedArtifact", e); 62602 } 62603 if (element.hasCompose()) { 62604 composeValueSetComposeComponent("compose", element.getCompose()); 62605 } 62606 if (element.hasExpansion()) { 62607 composeValueSetExpansionComponent("expansion", element.getExpansion()); 62608 } 62609 if (element.hasScope()) { 62610 composeValueSetScopeComponent("scope", element.getScope()); 62611 } 62612 } 62613 62614 protected void composeValueSetComposeComponent(String name, ValueSet.ValueSetComposeComponent element) throws IOException { 62615 if (element != null) { 62616 composeElementAttributes(element); 62617 xml.enter(FHIR_NS, name); 62618 composeValueSetComposeComponentElements(element); 62619 composeElementClose(element); 62620 xml.exit(FHIR_NS, name); 62621 } 62622 } 62623 62624 protected void composeValueSetComposeComponentElements(ValueSet.ValueSetComposeComponent element) throws IOException { 62625 composeBackboneElementElements(element); 62626 if (element.hasLockedDateElement()) { 62627 composeDate("lockedDate", element.getLockedDateElement()); 62628 } 62629 if (element.hasInactiveElement()) { 62630 composeBoolean("inactive", element.getInactiveElement()); 62631 } 62632 if (element.hasInclude()) { 62633 for (ValueSet.ConceptSetComponent e : element.getInclude()) 62634 composeValueSetConceptSetComponent("include", e); 62635 } 62636 if (element.hasExclude()) { 62637 for (ValueSet.ConceptSetComponent e : element.getExclude()) 62638 composeValueSetConceptSetComponent("exclude", e); 62639 } 62640 if (element.hasProperty()) { 62641 for (StringType e : element.getProperty()) 62642 composeString("property", e); 62643 } 62644 } 62645 62646 protected void composeValueSetConceptSetComponent(String name, ValueSet.ConceptSetComponent element) throws IOException { 62647 if (element != null) { 62648 composeElementAttributes(element); 62649 xml.enter(FHIR_NS, name); 62650 composeValueSetConceptSetComponentElements(element); 62651 composeElementClose(element); 62652 xml.exit(FHIR_NS, name); 62653 } 62654 } 62655 62656 protected void composeValueSetConceptSetComponentElements(ValueSet.ConceptSetComponent element) throws IOException { 62657 composeBackboneElementElements(element); 62658 if (element.hasSystemElement()) { 62659 composeUri("system", element.getSystemElement()); 62660 } 62661 if (element.hasVersionElement()) { 62662 composeString("version", element.getVersionElement()); 62663 } 62664 if (element.hasConcept()) { 62665 for (ValueSet.ConceptReferenceComponent e : element.getConcept()) 62666 composeValueSetConceptReferenceComponent("concept", e); 62667 } 62668 if (element.hasFilter()) { 62669 for (ValueSet.ConceptSetFilterComponent e : element.getFilter()) 62670 composeValueSetConceptSetFilterComponent("filter", e); 62671 } 62672 if (element.hasValueSet()) { 62673 for (CanonicalType e : element.getValueSet()) 62674 composeCanonical("valueSet", e); 62675 } 62676 if (element.hasCopyrightElement()) { 62677 composeString("copyright", element.getCopyrightElement()); 62678 } 62679 } 62680 62681 protected void composeValueSetConceptReferenceComponent(String name, ValueSet.ConceptReferenceComponent element) throws IOException { 62682 if (element != null) { 62683 composeElementAttributes(element); 62684 xml.enter(FHIR_NS, name); 62685 composeValueSetConceptReferenceComponentElements(element); 62686 composeElementClose(element); 62687 xml.exit(FHIR_NS, name); 62688 } 62689 } 62690 62691 protected void composeValueSetConceptReferenceComponentElements(ValueSet.ConceptReferenceComponent element) throws IOException { 62692 composeBackboneElementElements(element); 62693 if (element.hasCodeElement()) { 62694 composeCode("code", element.getCodeElement()); 62695 } 62696 if (element.hasDisplayElement()) { 62697 composeString("display", element.getDisplayElement()); 62698 } 62699 if (element.hasDesignation()) { 62700 for (ValueSet.ConceptReferenceDesignationComponent e : element.getDesignation()) 62701 composeValueSetConceptReferenceDesignationComponent("designation", e); 62702 } 62703 } 62704 62705 protected void composeValueSetConceptReferenceDesignationComponent(String name, ValueSet.ConceptReferenceDesignationComponent element) throws IOException { 62706 if (element != null) { 62707 composeElementAttributes(element); 62708 xml.enter(FHIR_NS, name); 62709 composeValueSetConceptReferenceDesignationComponentElements(element); 62710 composeElementClose(element); 62711 xml.exit(FHIR_NS, name); 62712 } 62713 } 62714 62715 protected void composeValueSetConceptReferenceDesignationComponentElements(ValueSet.ConceptReferenceDesignationComponent element) throws IOException { 62716 composeBackboneElementElements(element); 62717 if (element.hasLanguageElement()) { 62718 composeCode("language", element.getLanguageElement()); 62719 } 62720 if (element.hasUse()) { 62721 composeCoding("use", element.getUse()); 62722 } 62723 if (element.hasAdditionalUse()) { 62724 for (Coding e : element.getAdditionalUse()) 62725 composeCoding("additionalUse", e); 62726 } 62727 if (element.hasValueElement()) { 62728 composeString("value", element.getValueElement()); 62729 } 62730 } 62731 62732 protected void composeValueSetConceptSetFilterComponent(String name, ValueSet.ConceptSetFilterComponent element) throws IOException { 62733 if (element != null) { 62734 composeElementAttributes(element); 62735 xml.enter(FHIR_NS, name); 62736 composeValueSetConceptSetFilterComponentElements(element); 62737 composeElementClose(element); 62738 xml.exit(FHIR_NS, name); 62739 } 62740 } 62741 62742 protected void composeValueSetConceptSetFilterComponentElements(ValueSet.ConceptSetFilterComponent element) throws IOException { 62743 composeBackboneElementElements(element); 62744 if (element.hasPropertyElement()) { 62745 composeCode("property", element.getPropertyElement()); 62746 } 62747 if (element.hasOpElement()) 62748 composeEnumeration("op", element.getOpElement(), new Enumerations.FilterOperatorEnumFactory()); 62749 if (element.hasValueElement()) { 62750 composeString("value", element.getValueElement()); 62751 } 62752 } 62753 62754 protected void composeValueSetExpansionComponent(String name, ValueSet.ValueSetExpansionComponent element) throws IOException { 62755 if (element != null) { 62756 composeElementAttributes(element); 62757 xml.enter(FHIR_NS, name); 62758 composeValueSetExpansionComponentElements(element); 62759 composeElementClose(element); 62760 xml.exit(FHIR_NS, name); 62761 } 62762 } 62763 62764 protected void composeValueSetExpansionComponentElements(ValueSet.ValueSetExpansionComponent element) throws IOException { 62765 composeBackboneElementElements(element); 62766 if (element.hasIdentifierElement()) { 62767 composeUri("identifier", element.getIdentifierElement()); 62768 } 62769 if (element.hasNextElement()) { 62770 composeUri("next", element.getNextElement()); 62771 } 62772 if (element.hasTimestampElement()) { 62773 composeDateTime("timestamp", element.getTimestampElement()); 62774 } 62775 if (element.hasTotalElement()) { 62776 composeInteger("total", element.getTotalElement()); 62777 } 62778 if (element.hasOffsetElement()) { 62779 composeInteger("offset", element.getOffsetElement()); 62780 } 62781 if (element.hasParameter()) { 62782 for (ValueSet.ValueSetExpansionParameterComponent e : element.getParameter()) 62783 composeValueSetExpansionParameterComponent("parameter", e); 62784 } 62785 if (element.hasProperty()) { 62786 for (ValueSet.ValueSetExpansionPropertyComponent e : element.getProperty()) 62787 composeValueSetExpansionPropertyComponent("property", e); 62788 } 62789 if (element.hasContains()) { 62790 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 62791 composeValueSetExpansionContainsComponent("contains", e); 62792 } 62793 } 62794 62795 protected void composeValueSetExpansionParameterComponent(String name, ValueSet.ValueSetExpansionParameterComponent element) throws IOException { 62796 if (element != null) { 62797 composeElementAttributes(element); 62798 xml.enter(FHIR_NS, name); 62799 composeValueSetExpansionParameterComponentElements(element); 62800 composeElementClose(element); 62801 xml.exit(FHIR_NS, name); 62802 } 62803 } 62804 62805 protected void composeValueSetExpansionParameterComponentElements(ValueSet.ValueSetExpansionParameterComponent element) throws IOException { 62806 composeBackboneElementElements(element); 62807 if (element.hasNameElement()) { 62808 composeString("name", element.getNameElement()); 62809 } 62810 if (element.hasValue()) { 62811 composeType("value", element.getValue()); 62812 } } 62813 62814 protected void composeValueSetExpansionPropertyComponent(String name, ValueSet.ValueSetExpansionPropertyComponent element) throws IOException { 62815 if (element != null) { 62816 composeElementAttributes(element); 62817 xml.enter(FHIR_NS, name); 62818 composeValueSetExpansionPropertyComponentElements(element); 62819 composeElementClose(element); 62820 xml.exit(FHIR_NS, name); 62821 } 62822 } 62823 62824 protected void composeValueSetExpansionPropertyComponentElements(ValueSet.ValueSetExpansionPropertyComponent element) throws IOException { 62825 composeBackboneElementElements(element); 62826 if (element.hasCodeElement()) { 62827 composeCode("code", element.getCodeElement()); 62828 } 62829 if (element.hasUriElement()) { 62830 composeUri("uri", element.getUriElement()); 62831 } 62832 } 62833 62834 protected void composeValueSetExpansionContainsComponent(String name, ValueSet.ValueSetExpansionContainsComponent element) throws IOException { 62835 if (element != null) { 62836 composeElementAttributes(element); 62837 xml.enter(FHIR_NS, name); 62838 composeValueSetExpansionContainsComponentElements(element); 62839 composeElementClose(element); 62840 xml.exit(FHIR_NS, name); 62841 } 62842 } 62843 62844 protected void composeValueSetExpansionContainsComponentElements(ValueSet.ValueSetExpansionContainsComponent element) throws IOException { 62845 composeBackboneElementElements(element); 62846 if (element.hasSystemElement()) { 62847 composeUri("system", element.getSystemElement()); 62848 } 62849 if (element.hasAbstractElement()) { 62850 composeBoolean("abstract", element.getAbstractElement()); 62851 } 62852 if (element.hasInactiveElement()) { 62853 composeBoolean("inactive", element.getInactiveElement()); 62854 } 62855 if (element.hasVersionElement()) { 62856 composeString("version", element.getVersionElement()); 62857 } 62858 if (element.hasCodeElement()) { 62859 composeCode("code", element.getCodeElement()); 62860 } 62861 if (element.hasDisplayElement()) { 62862 composeString("display", element.getDisplayElement()); 62863 } 62864 if (element.hasDesignation()) { 62865 for (ValueSet.ConceptReferenceDesignationComponent e : element.getDesignation()) 62866 composeValueSetConceptReferenceDesignationComponent("designation", e); 62867 } 62868 if (element.hasProperty()) { 62869 for (ValueSet.ConceptPropertyComponent e : element.getProperty()) 62870 composeValueSetConceptPropertyComponent("property", e); 62871 } 62872 if (element.hasContains()) { 62873 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 62874 composeValueSetExpansionContainsComponent("contains", e); 62875 } 62876 } 62877 62878 protected void composeValueSetConceptPropertyComponent(String name, ValueSet.ConceptPropertyComponent element) throws IOException { 62879 if (element != null) { 62880 composeElementAttributes(element); 62881 xml.enter(FHIR_NS, name); 62882 composeValueSetConceptPropertyComponentElements(element); 62883 composeElementClose(element); 62884 xml.exit(FHIR_NS, name); 62885 } 62886 } 62887 62888 protected void composeValueSetConceptPropertyComponentElements(ValueSet.ConceptPropertyComponent element) throws IOException { 62889 composeBackboneElementElements(element); 62890 if (element.hasCodeElement()) { 62891 composeCode("code", element.getCodeElement()); 62892 } 62893 if (element.hasValue()) { 62894 composeType("value", element.getValue()); 62895 } if (element.hasSubProperty()) { 62896 for (ValueSet.ConceptSubPropertyComponent e : element.getSubProperty()) 62897 composeValueSetConceptSubPropertyComponent("subProperty", e); 62898 } 62899 } 62900 62901 protected void composeValueSetConceptSubPropertyComponent(String name, ValueSet.ConceptSubPropertyComponent element) throws IOException { 62902 if (element != null) { 62903 composeElementAttributes(element); 62904 xml.enter(FHIR_NS, name); 62905 composeValueSetConceptSubPropertyComponentElements(element); 62906 composeElementClose(element); 62907 xml.exit(FHIR_NS, name); 62908 } 62909 } 62910 62911 protected void composeValueSetConceptSubPropertyComponentElements(ValueSet.ConceptSubPropertyComponent element) throws IOException { 62912 composeBackboneElementElements(element); 62913 if (element.hasCodeElement()) { 62914 composeCode("code", element.getCodeElement()); 62915 } 62916 if (element.hasValue()) { 62917 composeType("value", element.getValue()); 62918 } } 62919 62920 protected void composeValueSetScopeComponent(String name, ValueSet.ValueSetScopeComponent element) throws IOException { 62921 if (element != null) { 62922 composeElementAttributes(element); 62923 xml.enter(FHIR_NS, name); 62924 composeValueSetScopeComponentElements(element); 62925 composeElementClose(element); 62926 xml.exit(FHIR_NS, name); 62927 } 62928 } 62929 62930 protected void composeValueSetScopeComponentElements(ValueSet.ValueSetScopeComponent element) throws IOException { 62931 composeBackboneElementElements(element); 62932 if (element.hasInclusionCriteriaElement()) { 62933 composeString("inclusionCriteria", element.getInclusionCriteriaElement()); 62934 } 62935 if (element.hasExclusionCriteriaElement()) { 62936 composeString("exclusionCriteria", element.getExclusionCriteriaElement()); 62937 } 62938 } 62939 62940 protected void composeVerificationResult(String name, VerificationResult element) throws IOException { 62941 if (element != null) { 62942 composeResourceAttributes(element); 62943 xml.enter(FHIR_NS, name); 62944 composeVerificationResultElements(element); 62945 composeElementClose(element); 62946 xml.exit(FHIR_NS, name); 62947 } 62948 } 62949 62950 protected void composeVerificationResultElements(VerificationResult element) throws IOException { 62951 composeDomainResourceElements(element); 62952 if (element.hasTarget()) { 62953 for (Reference e : element.getTarget()) 62954 composeReference("target", e); 62955 } 62956 if (element.hasTargetLocation()) { 62957 for (StringType e : element.getTargetLocation()) 62958 composeString("targetLocation", e); 62959 } 62960 if (element.hasNeed()) { 62961 composeCodeableConcept("need", element.getNeed()); 62962 } 62963 if (element.hasStatusElement()) 62964 composeEnumeration("status", element.getStatusElement(), new VerificationResult.VerificationResultStatusEnumFactory()); 62965 if (element.hasStatusDateElement()) { 62966 composeDateTime("statusDate", element.getStatusDateElement()); 62967 } 62968 if (element.hasValidationType()) { 62969 composeCodeableConcept("validationType", element.getValidationType()); 62970 } 62971 if (element.hasValidationProcess()) { 62972 for (CodeableConcept e : element.getValidationProcess()) 62973 composeCodeableConcept("validationProcess", e); 62974 } 62975 if (element.hasFrequency()) { 62976 composeTiming("frequency", element.getFrequency()); 62977 } 62978 if (element.hasLastPerformedElement()) { 62979 composeDateTime("lastPerformed", element.getLastPerformedElement()); 62980 } 62981 if (element.hasNextScheduledElement()) { 62982 composeDate("nextScheduled", element.getNextScheduledElement()); 62983 } 62984 if (element.hasFailureAction()) { 62985 composeCodeableConcept("failureAction", element.getFailureAction()); 62986 } 62987 if (element.hasPrimarySource()) { 62988 for (VerificationResult.VerificationResultPrimarySourceComponent e : element.getPrimarySource()) 62989 composeVerificationResultPrimarySourceComponent("primarySource", e); 62990 } 62991 if (element.hasAttestation()) { 62992 composeVerificationResultAttestationComponent("attestation", element.getAttestation()); 62993 } 62994 if (element.hasValidator()) { 62995 for (VerificationResult.VerificationResultValidatorComponent e : element.getValidator()) 62996 composeVerificationResultValidatorComponent("validator", e); 62997 } 62998 } 62999 63000 protected void composeVerificationResultPrimarySourceComponent(String name, VerificationResult.VerificationResultPrimarySourceComponent element) throws IOException { 63001 if (element != null) { 63002 composeElementAttributes(element); 63003 xml.enter(FHIR_NS, name); 63004 composeVerificationResultPrimarySourceComponentElements(element); 63005 composeElementClose(element); 63006 xml.exit(FHIR_NS, name); 63007 } 63008 } 63009 63010 protected void composeVerificationResultPrimarySourceComponentElements(VerificationResult.VerificationResultPrimarySourceComponent element) throws IOException { 63011 composeBackboneElementElements(element); 63012 if (element.hasWho()) { 63013 composeReference("who", element.getWho()); 63014 } 63015 if (element.hasType()) { 63016 for (CodeableConcept e : element.getType()) 63017 composeCodeableConcept("type", e); 63018 } 63019 if (element.hasCommunicationMethod()) { 63020 for (CodeableConcept e : element.getCommunicationMethod()) 63021 composeCodeableConcept("communicationMethod", e); 63022 } 63023 if (element.hasValidationStatus()) { 63024 composeCodeableConcept("validationStatus", element.getValidationStatus()); 63025 } 63026 if (element.hasValidationDateElement()) { 63027 composeDateTime("validationDate", element.getValidationDateElement()); 63028 } 63029 if (element.hasCanPushUpdates()) { 63030 composeCodeableConcept("canPushUpdates", element.getCanPushUpdates()); 63031 } 63032 if (element.hasPushTypeAvailable()) { 63033 for (CodeableConcept e : element.getPushTypeAvailable()) 63034 composeCodeableConcept("pushTypeAvailable", e); 63035 } 63036 } 63037 63038 protected void composeVerificationResultAttestationComponent(String name, VerificationResult.VerificationResultAttestationComponent element) throws IOException { 63039 if (element != null) { 63040 composeElementAttributes(element); 63041 xml.enter(FHIR_NS, name); 63042 composeVerificationResultAttestationComponentElements(element); 63043 composeElementClose(element); 63044 xml.exit(FHIR_NS, name); 63045 } 63046 } 63047 63048 protected void composeVerificationResultAttestationComponentElements(VerificationResult.VerificationResultAttestationComponent element) throws IOException { 63049 composeBackboneElementElements(element); 63050 if (element.hasWho()) { 63051 composeReference("who", element.getWho()); 63052 } 63053 if (element.hasOnBehalfOf()) { 63054 composeReference("onBehalfOf", element.getOnBehalfOf()); 63055 } 63056 if (element.hasCommunicationMethod()) { 63057 composeCodeableConcept("communicationMethod", element.getCommunicationMethod()); 63058 } 63059 if (element.hasDateElement()) { 63060 composeDate("date", element.getDateElement()); 63061 } 63062 if (element.hasSourceIdentityCertificateElement()) { 63063 composeString("sourceIdentityCertificate", element.getSourceIdentityCertificateElement()); 63064 } 63065 if (element.hasProxyIdentityCertificateElement()) { 63066 composeString("proxyIdentityCertificate", element.getProxyIdentityCertificateElement()); 63067 } 63068 if (element.hasProxySignature()) { 63069 composeSignature("proxySignature", element.getProxySignature()); 63070 } 63071 if (element.hasSourceSignature()) { 63072 composeSignature("sourceSignature", element.getSourceSignature()); 63073 } 63074 } 63075 63076 protected void composeVerificationResultValidatorComponent(String name, VerificationResult.VerificationResultValidatorComponent element) throws IOException { 63077 if (element != null) { 63078 composeElementAttributes(element); 63079 xml.enter(FHIR_NS, name); 63080 composeVerificationResultValidatorComponentElements(element); 63081 composeElementClose(element); 63082 xml.exit(FHIR_NS, name); 63083 } 63084 } 63085 63086 protected void composeVerificationResultValidatorComponentElements(VerificationResult.VerificationResultValidatorComponent element) throws IOException { 63087 composeBackboneElementElements(element); 63088 if (element.hasOrganization()) { 63089 composeReference("organization", element.getOrganization()); 63090 } 63091 if (element.hasIdentityCertificateElement()) { 63092 composeString("identityCertificate", element.getIdentityCertificateElement()); 63093 } 63094 if (element.hasAttestationSignature()) { 63095 composeSignature("attestationSignature", element.getAttestationSignature()); 63096 } 63097 } 63098 63099 protected void composeVisionPrescription(String name, VisionPrescription element) throws IOException { 63100 if (element != null) { 63101 composeResourceAttributes(element); 63102 xml.enter(FHIR_NS, name); 63103 composeVisionPrescriptionElements(element); 63104 composeElementClose(element); 63105 xml.exit(FHIR_NS, name); 63106 } 63107 } 63108 63109 protected void composeVisionPrescriptionElements(VisionPrescription element) throws IOException { 63110 composeDomainResourceElements(element); 63111 if (element.hasIdentifier()) { 63112 for (Identifier e : element.getIdentifier()) 63113 composeIdentifier("identifier", e); 63114 } 63115 if (element.hasStatusElement()) 63116 composeEnumeration("status", element.getStatusElement(), new Enumerations.FinancialResourceStatusCodesEnumFactory()); 63117 if (element.hasCreatedElement()) { 63118 composeDateTime("created", element.getCreatedElement()); 63119 } 63120 if (element.hasPatient()) { 63121 composeReference("patient", element.getPatient()); 63122 } 63123 if (element.hasEncounter()) { 63124 composeReference("encounter", element.getEncounter()); 63125 } 63126 if (element.hasDateWrittenElement()) { 63127 composeDateTime("dateWritten", element.getDateWrittenElement()); 63128 } 63129 if (element.hasPrescriber()) { 63130 composeReference("prescriber", element.getPrescriber()); 63131 } 63132 if (element.hasLensSpecification()) { 63133 for (VisionPrescription.VisionPrescriptionLensSpecificationComponent e : element.getLensSpecification()) 63134 composeVisionPrescriptionLensSpecificationComponent("lensSpecification", e); 63135 } 63136 } 63137 63138 protected void composeVisionPrescriptionLensSpecificationComponent(String name, VisionPrescription.VisionPrescriptionLensSpecificationComponent element) throws IOException { 63139 if (element != null) { 63140 composeElementAttributes(element); 63141 xml.enter(FHIR_NS, name); 63142 composeVisionPrescriptionLensSpecificationComponentElements(element); 63143 composeElementClose(element); 63144 xml.exit(FHIR_NS, name); 63145 } 63146 } 63147 63148 protected void composeVisionPrescriptionLensSpecificationComponentElements(VisionPrescription.VisionPrescriptionLensSpecificationComponent element) throws IOException { 63149 composeBackboneElementElements(element); 63150 if (element.hasProduct()) { 63151 composeCodeableConcept("product", element.getProduct()); 63152 } 63153 if (element.hasEyeElement()) 63154 composeEnumeration("eye", element.getEyeElement(), new VisionPrescription.VisionEyesEnumFactory()); 63155 if (element.hasSphereElement()) { 63156 composeDecimal("sphere", element.getSphereElement()); 63157 } 63158 if (element.hasCylinderElement()) { 63159 composeDecimal("cylinder", element.getCylinderElement()); 63160 } 63161 if (element.hasAxisElement()) { 63162 composeInteger("axis", element.getAxisElement()); 63163 } 63164 if (element.hasPrism()) { 63165 for (VisionPrescription.PrismComponent e : element.getPrism()) 63166 composeVisionPrescriptionPrismComponent("prism", e); 63167 } 63168 if (element.hasAddElement()) { 63169 composeDecimal("add", element.getAddElement()); 63170 } 63171 if (element.hasPowerElement()) { 63172 composeDecimal("power", element.getPowerElement()); 63173 } 63174 if (element.hasBackCurveElement()) { 63175 composeDecimal("backCurve", element.getBackCurveElement()); 63176 } 63177 if (element.hasDiameterElement()) { 63178 composeDecimal("diameter", element.getDiameterElement()); 63179 } 63180 if (element.hasDuration()) { 63181 composeQuantity("duration", element.getDuration()); 63182 } 63183 if (element.hasColorElement()) { 63184 composeString("color", element.getColorElement()); 63185 } 63186 if (element.hasBrandElement()) { 63187 composeString("brand", element.getBrandElement()); 63188 } 63189 if (element.hasNote()) { 63190 for (Annotation e : element.getNote()) 63191 composeAnnotation("note", e); 63192 } 63193 } 63194 63195 protected void composeVisionPrescriptionPrismComponent(String name, VisionPrescription.PrismComponent element) throws IOException { 63196 if (element != null) { 63197 composeElementAttributes(element); 63198 xml.enter(FHIR_NS, name); 63199 composeVisionPrescriptionPrismComponentElements(element); 63200 composeElementClose(element); 63201 xml.exit(FHIR_NS, name); 63202 } 63203 } 63204 63205 protected void composeVisionPrescriptionPrismComponentElements(VisionPrescription.PrismComponent element) throws IOException { 63206 composeBackboneElementElements(element); 63207 if (element.hasAmountElement()) { 63208 composeDecimal("amount", element.getAmountElement()); 63209 } 63210 if (element.hasBaseElement()) 63211 composeEnumeration("base", element.getBaseElement(), new VisionPrescription.VisionBaseEnumFactory()); 63212 } 63213 63214 63215 63216 @Override 63217 protected void composeResource(Resource resource) throws IOException { 63218 if (resource == null) { 63219 throw new IOException("resource == null"); 63220 } else if (resource instanceof Account) { 63221 composeAccount("Account", (Account)resource); 63222 } else if (resource instanceof ActivityDefinition) { 63223 composeActivityDefinition("ActivityDefinition", (ActivityDefinition)resource); 63224 } else if (resource instanceof ActorDefinition) { 63225 composeActorDefinition("ActorDefinition", (ActorDefinition)resource); 63226 } else if (resource instanceof AdministrableProductDefinition) { 63227 composeAdministrableProductDefinition("AdministrableProductDefinition", (AdministrableProductDefinition)resource); 63228 } else if (resource instanceof AdverseEvent) { 63229 composeAdverseEvent("AdverseEvent", (AdverseEvent)resource); 63230 } else if (resource instanceof AllergyIntolerance) { 63231 composeAllergyIntolerance("AllergyIntolerance", (AllergyIntolerance)resource); 63232 } else if (resource instanceof Appointment) { 63233 composeAppointment("Appointment", (Appointment)resource); 63234 } else if (resource instanceof AppointmentResponse) { 63235 composeAppointmentResponse("AppointmentResponse", (AppointmentResponse)resource); 63236 } else if (resource instanceof ArtifactAssessment) { 63237 composeArtifactAssessment("ArtifactAssessment", (ArtifactAssessment)resource); 63238 } else if (resource instanceof AuditEvent) { 63239 composeAuditEvent("AuditEvent", (AuditEvent)resource); 63240 } else if (resource instanceof Basic) { 63241 composeBasic("Basic", (Basic)resource); 63242 } else if (resource instanceof Binary) { 63243 composeBinary("Binary", (Binary)resource); 63244 } else if (resource instanceof BiologicallyDerivedProduct) { 63245 composeBiologicallyDerivedProduct("BiologicallyDerivedProduct", (BiologicallyDerivedProduct)resource); 63246 } else if (resource instanceof BiologicallyDerivedProductDispense) { 63247 composeBiologicallyDerivedProductDispense("BiologicallyDerivedProductDispense", (BiologicallyDerivedProductDispense)resource); 63248 } else if (resource instanceof BodyStructure) { 63249 composeBodyStructure("BodyStructure", (BodyStructure)resource); 63250 } else if (resource instanceof Bundle) { 63251 composeBundle("Bundle", (Bundle)resource); 63252 } else if (resource instanceof CapabilityStatement) { 63253 composeCapabilityStatement("CapabilityStatement", (CapabilityStatement)resource); 63254 } else if (resource instanceof CarePlan) { 63255 composeCarePlan("CarePlan", (CarePlan)resource); 63256 } else if (resource instanceof CareTeam) { 63257 composeCareTeam("CareTeam", (CareTeam)resource); 63258 } else if (resource instanceof ChargeItem) { 63259 composeChargeItem("ChargeItem", (ChargeItem)resource); 63260 } else if (resource instanceof ChargeItemDefinition) { 63261 composeChargeItemDefinition("ChargeItemDefinition", (ChargeItemDefinition)resource); 63262 } else if (resource instanceof Citation) { 63263 composeCitation("Citation", (Citation)resource); 63264 } else if (resource instanceof Claim) { 63265 composeClaim("Claim", (Claim)resource); 63266 } else if (resource instanceof ClaimResponse) { 63267 composeClaimResponse("ClaimResponse", (ClaimResponse)resource); 63268 } else if (resource instanceof ClinicalImpression) { 63269 composeClinicalImpression("ClinicalImpression", (ClinicalImpression)resource); 63270 } else if (resource instanceof ClinicalUseDefinition) { 63271 composeClinicalUseDefinition("ClinicalUseDefinition", (ClinicalUseDefinition)resource); 63272 } else if (resource instanceof CodeSystem) { 63273 composeCodeSystem("CodeSystem", (CodeSystem)resource); 63274 } else if (resource instanceof Communication) { 63275 composeCommunication("Communication", (Communication)resource); 63276 } else if (resource instanceof CommunicationRequest) { 63277 composeCommunicationRequest("CommunicationRequest", (CommunicationRequest)resource); 63278 } else if (resource instanceof CompartmentDefinition) { 63279 composeCompartmentDefinition("CompartmentDefinition", (CompartmentDefinition)resource); 63280 } else if (resource instanceof Composition) { 63281 composeComposition("Composition", (Composition)resource); 63282 } else if (resource instanceof ConceptMap) { 63283 composeConceptMap("ConceptMap", (ConceptMap)resource); 63284 } else if (resource instanceof Condition) { 63285 composeCondition("Condition", (Condition)resource); 63286 } else if (resource instanceof ConditionDefinition) { 63287 composeConditionDefinition("ConditionDefinition", (ConditionDefinition)resource); 63288 } else if (resource instanceof Consent) { 63289 composeConsent("Consent", (Consent)resource); 63290 } else if (resource instanceof Contract) { 63291 composeContract("Contract", (Contract)resource); 63292 } else if (resource instanceof Coverage) { 63293 composeCoverage("Coverage", (Coverage)resource); 63294 } else if (resource instanceof CoverageEligibilityRequest) { 63295 composeCoverageEligibilityRequest("CoverageEligibilityRequest", (CoverageEligibilityRequest)resource); 63296 } else if (resource instanceof CoverageEligibilityResponse) { 63297 composeCoverageEligibilityResponse("CoverageEligibilityResponse", (CoverageEligibilityResponse)resource); 63298 } else if (resource instanceof DetectedIssue) { 63299 composeDetectedIssue("DetectedIssue", (DetectedIssue)resource); 63300 } else if (resource instanceof Device) { 63301 composeDevice("Device", (Device)resource); 63302 } else if (resource instanceof DeviceAssociation) { 63303 composeDeviceAssociation("DeviceAssociation", (DeviceAssociation)resource); 63304 } else if (resource instanceof DeviceDefinition) { 63305 composeDeviceDefinition("DeviceDefinition", (DeviceDefinition)resource); 63306 } else if (resource instanceof DeviceDispense) { 63307 composeDeviceDispense("DeviceDispense", (DeviceDispense)resource); 63308 } else if (resource instanceof DeviceMetric) { 63309 composeDeviceMetric("DeviceMetric", (DeviceMetric)resource); 63310 } else if (resource instanceof DeviceRequest) { 63311 composeDeviceRequest("DeviceRequest", (DeviceRequest)resource); 63312 } else if (resource instanceof DeviceUsage) { 63313 composeDeviceUsage("DeviceUsage", (DeviceUsage)resource); 63314 } else if (resource instanceof DiagnosticReport) { 63315 composeDiagnosticReport("DiagnosticReport", (DiagnosticReport)resource); 63316 } else if (resource instanceof DocumentReference) { 63317 composeDocumentReference("DocumentReference", (DocumentReference)resource); 63318 } else if (resource instanceof Encounter) { 63319 composeEncounter("Encounter", (Encounter)resource); 63320 } else if (resource instanceof EncounterHistory) { 63321 composeEncounterHistory("EncounterHistory", (EncounterHistory)resource); 63322 } else if (resource instanceof Endpoint) { 63323 composeEndpoint("Endpoint", (Endpoint)resource); 63324 } else if (resource instanceof EnrollmentRequest) { 63325 composeEnrollmentRequest("EnrollmentRequest", (EnrollmentRequest)resource); 63326 } else if (resource instanceof EnrollmentResponse) { 63327 composeEnrollmentResponse("EnrollmentResponse", (EnrollmentResponse)resource); 63328 } else if (resource instanceof EpisodeOfCare) { 63329 composeEpisodeOfCare("EpisodeOfCare", (EpisodeOfCare)resource); 63330 } else if (resource instanceof EventDefinition) { 63331 composeEventDefinition("EventDefinition", (EventDefinition)resource); 63332 } else if (resource instanceof Evidence) { 63333 composeEvidence("Evidence", (Evidence)resource); 63334 } else if (resource instanceof EvidenceReport) { 63335 composeEvidenceReport("EvidenceReport", (EvidenceReport)resource); 63336 } else if (resource instanceof EvidenceVariable) { 63337 composeEvidenceVariable("EvidenceVariable", (EvidenceVariable)resource); 63338 } else if (resource instanceof ExampleScenario) { 63339 composeExampleScenario("ExampleScenario", (ExampleScenario)resource); 63340 } else if (resource instanceof ExplanationOfBenefit) { 63341 composeExplanationOfBenefit("ExplanationOfBenefit", (ExplanationOfBenefit)resource); 63342 } else if (resource instanceof FamilyMemberHistory) { 63343 composeFamilyMemberHistory("FamilyMemberHistory", (FamilyMemberHistory)resource); 63344 } else if (resource instanceof Flag) { 63345 composeFlag("Flag", (Flag)resource); 63346 } else if (resource instanceof FormularyItem) { 63347 composeFormularyItem("FormularyItem", (FormularyItem)resource); 63348 } else if (resource instanceof GenomicStudy) { 63349 composeGenomicStudy("GenomicStudy", (GenomicStudy)resource); 63350 } else if (resource instanceof Goal) { 63351 composeGoal("Goal", (Goal)resource); 63352 } else if (resource instanceof GraphDefinition) { 63353 composeGraphDefinition("GraphDefinition", (GraphDefinition)resource); 63354 } else if (resource instanceof Group) { 63355 composeGroup("Group", (Group)resource); 63356 } else if (resource instanceof GuidanceResponse) { 63357 composeGuidanceResponse("GuidanceResponse", (GuidanceResponse)resource); 63358 } else if (resource instanceof HealthcareService) { 63359 composeHealthcareService("HealthcareService", (HealthcareService)resource); 63360 } else if (resource instanceof ImagingSelection) { 63361 composeImagingSelection("ImagingSelection", (ImagingSelection)resource); 63362 } else if (resource instanceof ImagingStudy) { 63363 composeImagingStudy("ImagingStudy", (ImagingStudy)resource); 63364 } else if (resource instanceof Immunization) { 63365 composeImmunization("Immunization", (Immunization)resource); 63366 } else if (resource instanceof ImmunizationEvaluation) { 63367 composeImmunizationEvaluation("ImmunizationEvaluation", (ImmunizationEvaluation)resource); 63368 } else if (resource instanceof ImmunizationRecommendation) { 63369 composeImmunizationRecommendation("ImmunizationRecommendation", (ImmunizationRecommendation)resource); 63370 } else if (resource instanceof ImplementationGuide) { 63371 composeImplementationGuide("ImplementationGuide", (ImplementationGuide)resource); 63372 } else if (resource instanceof Ingredient) { 63373 composeIngredient("Ingredient", (Ingredient)resource); 63374 } else if (resource instanceof InsurancePlan) { 63375 composeInsurancePlan("InsurancePlan", (InsurancePlan)resource); 63376 } else if (resource instanceof InventoryItem) { 63377 composeInventoryItem("InventoryItem", (InventoryItem)resource); 63378 } else if (resource instanceof InventoryReport) { 63379 composeInventoryReport("InventoryReport", (InventoryReport)resource); 63380 } else if (resource instanceof Invoice) { 63381 composeInvoice("Invoice", (Invoice)resource); 63382 } else if (resource instanceof Library) { 63383 composeLibrary("Library", (Library)resource); 63384 } else if (resource instanceof Linkage) { 63385 composeLinkage("Linkage", (Linkage)resource); 63386 } else if (resource instanceof ListResource) { 63387 composeListResource("List", (ListResource)resource); 63388 } else if (resource instanceof Location) { 63389 composeLocation("Location", (Location)resource); 63390 } else if (resource instanceof ManufacturedItemDefinition) { 63391 composeManufacturedItemDefinition("ManufacturedItemDefinition", (ManufacturedItemDefinition)resource); 63392 } else if (resource instanceof Measure) { 63393 composeMeasure("Measure", (Measure)resource); 63394 } else if (resource instanceof MeasureReport) { 63395 composeMeasureReport("MeasureReport", (MeasureReport)resource); 63396 } else if (resource instanceof Medication) { 63397 composeMedication("Medication", (Medication)resource); 63398 } else if (resource instanceof MedicationAdministration) { 63399 composeMedicationAdministration("MedicationAdministration", (MedicationAdministration)resource); 63400 } else if (resource instanceof MedicationDispense) { 63401 composeMedicationDispense("MedicationDispense", (MedicationDispense)resource); 63402 } else if (resource instanceof MedicationKnowledge) { 63403 composeMedicationKnowledge("MedicationKnowledge", (MedicationKnowledge)resource); 63404 } else if (resource instanceof MedicationRequest) { 63405 composeMedicationRequest("MedicationRequest", (MedicationRequest)resource); 63406 } else if (resource instanceof MedicationStatement) { 63407 composeMedicationStatement("MedicationStatement", (MedicationStatement)resource); 63408 } else if (resource instanceof MedicinalProductDefinition) { 63409 composeMedicinalProductDefinition("MedicinalProductDefinition", (MedicinalProductDefinition)resource); 63410 } else if (resource instanceof MessageDefinition) { 63411 composeMessageDefinition("MessageDefinition", (MessageDefinition)resource); 63412 } else if (resource instanceof MessageHeader) { 63413 composeMessageHeader("MessageHeader", (MessageHeader)resource); 63414 } else if (resource instanceof MolecularSequence) { 63415 composeMolecularSequence("MolecularSequence", (MolecularSequence)resource); 63416 } else if (resource instanceof NamingSystem) { 63417 composeNamingSystem("NamingSystem", (NamingSystem)resource); 63418 } else if (resource instanceof NutritionIntake) { 63419 composeNutritionIntake("NutritionIntake", (NutritionIntake)resource); 63420 } else if (resource instanceof NutritionOrder) { 63421 composeNutritionOrder("NutritionOrder", (NutritionOrder)resource); 63422 } else if (resource instanceof NutritionProduct) { 63423 composeNutritionProduct("NutritionProduct", (NutritionProduct)resource); 63424 } else if (resource instanceof Observation) { 63425 composeObservation("Observation", (Observation)resource); 63426 } else if (resource instanceof ObservationDefinition) { 63427 composeObservationDefinition("ObservationDefinition", (ObservationDefinition)resource); 63428 } else if (resource instanceof OperationDefinition) { 63429 composeOperationDefinition("OperationDefinition", (OperationDefinition)resource); 63430 } else if (resource instanceof OperationOutcome) { 63431 composeOperationOutcome("OperationOutcome", (OperationOutcome)resource); 63432 } else if (resource instanceof Organization) { 63433 composeOrganization("Organization", (Organization)resource); 63434 } else if (resource instanceof OrganizationAffiliation) { 63435 composeOrganizationAffiliation("OrganizationAffiliation", (OrganizationAffiliation)resource); 63436 } else if (resource instanceof PackagedProductDefinition) { 63437 composePackagedProductDefinition("PackagedProductDefinition", (PackagedProductDefinition)resource); 63438 } else if (resource instanceof Parameters) { 63439 composeParameters("Parameters", (Parameters)resource); 63440 } else if (resource instanceof Patient) { 63441 composePatient("Patient", (Patient)resource); 63442 } else if (resource instanceof PaymentNotice) { 63443 composePaymentNotice("PaymentNotice", (PaymentNotice)resource); 63444 } else if (resource instanceof PaymentReconciliation) { 63445 composePaymentReconciliation("PaymentReconciliation", (PaymentReconciliation)resource); 63446 } else if (resource instanceof Permission) { 63447 composePermission("Permission", (Permission)resource); 63448 } else if (resource instanceof Person) { 63449 composePerson("Person", (Person)resource); 63450 } else if (resource instanceof PlanDefinition) { 63451 composePlanDefinition("PlanDefinition", (PlanDefinition)resource); 63452 } else if (resource instanceof Practitioner) { 63453 composePractitioner("Practitioner", (Practitioner)resource); 63454 } else if (resource instanceof PractitionerRole) { 63455 composePractitionerRole("PractitionerRole", (PractitionerRole)resource); 63456 } else if (resource instanceof Procedure) { 63457 composeProcedure("Procedure", (Procedure)resource); 63458 } else if (resource instanceof Provenance) { 63459 composeProvenance("Provenance", (Provenance)resource); 63460 } else if (resource instanceof Questionnaire) { 63461 composeQuestionnaire("Questionnaire", (Questionnaire)resource); 63462 } else if (resource instanceof QuestionnaireResponse) { 63463 composeQuestionnaireResponse("QuestionnaireResponse", (QuestionnaireResponse)resource); 63464 } else if (resource instanceof RegulatedAuthorization) { 63465 composeRegulatedAuthorization("RegulatedAuthorization", (RegulatedAuthorization)resource); 63466 } else if (resource instanceof RelatedPerson) { 63467 composeRelatedPerson("RelatedPerson", (RelatedPerson)resource); 63468 } else if (resource instanceof RequestOrchestration) { 63469 composeRequestOrchestration("RequestOrchestration", (RequestOrchestration)resource); 63470 } else if (resource instanceof Requirements) { 63471 composeRequirements("Requirements", (Requirements)resource); 63472 } else if (resource instanceof ResearchStudy) { 63473 composeResearchStudy("ResearchStudy", (ResearchStudy)resource); 63474 } else if (resource instanceof ResearchSubject) { 63475 composeResearchSubject("ResearchSubject", (ResearchSubject)resource); 63476 } else if (resource instanceof RiskAssessment) { 63477 composeRiskAssessment("RiskAssessment", (RiskAssessment)resource); 63478 } else if (resource instanceof Schedule) { 63479 composeSchedule("Schedule", (Schedule)resource); 63480 } else if (resource instanceof SearchParameter) { 63481 composeSearchParameter("SearchParameter", (SearchParameter)resource); 63482 } else if (resource instanceof ServiceRequest) { 63483 composeServiceRequest("ServiceRequest", (ServiceRequest)resource); 63484 } else if (resource instanceof Slot) { 63485 composeSlot("Slot", (Slot)resource); 63486 } else if (resource instanceof Specimen) { 63487 composeSpecimen("Specimen", (Specimen)resource); 63488 } else if (resource instanceof SpecimenDefinition) { 63489 composeSpecimenDefinition("SpecimenDefinition", (SpecimenDefinition)resource); 63490 } else if (resource instanceof StructureDefinition) { 63491 composeStructureDefinition("StructureDefinition", (StructureDefinition)resource); 63492 } else if (resource instanceof StructureMap) { 63493 composeStructureMap("StructureMap", (StructureMap)resource); 63494 } else if (resource instanceof Subscription) { 63495 composeSubscription("Subscription", (Subscription)resource); 63496 } else if (resource instanceof SubscriptionStatus) { 63497 composeSubscriptionStatus("SubscriptionStatus", (SubscriptionStatus)resource); 63498 } else if (resource instanceof SubscriptionTopic) { 63499 composeSubscriptionTopic("SubscriptionTopic", (SubscriptionTopic)resource); 63500 } else if (resource instanceof Substance) { 63501 composeSubstance("Substance", (Substance)resource); 63502 } else if (resource instanceof SubstanceDefinition) { 63503 composeSubstanceDefinition("SubstanceDefinition", (SubstanceDefinition)resource); 63504 } else if (resource instanceof SubstanceNucleicAcid) { 63505 composeSubstanceNucleicAcid("SubstanceNucleicAcid", (SubstanceNucleicAcid)resource); 63506 } else if (resource instanceof SubstancePolymer) { 63507 composeSubstancePolymer("SubstancePolymer", (SubstancePolymer)resource); 63508 } else if (resource instanceof SubstanceProtein) { 63509 composeSubstanceProtein("SubstanceProtein", (SubstanceProtein)resource); 63510 } else if (resource instanceof SubstanceReferenceInformation) { 63511 composeSubstanceReferenceInformation("SubstanceReferenceInformation", (SubstanceReferenceInformation)resource); 63512 } else if (resource instanceof SubstanceSourceMaterial) { 63513 composeSubstanceSourceMaterial("SubstanceSourceMaterial", (SubstanceSourceMaterial)resource); 63514 } else if (resource instanceof SupplyDelivery) { 63515 composeSupplyDelivery("SupplyDelivery", (SupplyDelivery)resource); 63516 } else if (resource instanceof SupplyRequest) { 63517 composeSupplyRequest("SupplyRequest", (SupplyRequest)resource); 63518 } else if (resource instanceof Task) { 63519 composeTask("Task", (Task)resource); 63520 } else if (resource instanceof TerminologyCapabilities) { 63521 composeTerminologyCapabilities("TerminologyCapabilities", (TerminologyCapabilities)resource); 63522 } else if (resource instanceof TestPlan) { 63523 composeTestPlan("TestPlan", (TestPlan)resource); 63524 } else if (resource instanceof TestReport) { 63525 composeTestReport("TestReport", (TestReport)resource); 63526 } else if (resource instanceof TestScript) { 63527 composeTestScript("TestScript", (TestScript)resource); 63528 } else if (resource instanceof Transport) { 63529 composeTransport("Transport", (Transport)resource); 63530 } else if (resource instanceof ValueSet) { 63531 composeValueSet("ValueSet", (ValueSet)resource); 63532 } else if (resource instanceof VerificationResult) { 63533 composeVerificationResult("VerificationResult", (VerificationResult)resource); 63534 } else if (resource instanceof VisionPrescription) { 63535 composeVisionPrescription("VisionPrescription", (VisionPrescription)resource); 63536 } else if (!composeCustomResource(resource)) { 63537 throw new Error("Unhandled resource type "+resource.getClass().getName()); 63538 } 63539 } 63540 63541 63542 protected void composeResource(String name, Resource resource) throws IOException { 63543 if (name == null) { 63544 throw new IOException("name == null"); 63545 } else if (resource == null) { 63546 throw new IOException("resource == null"); 63547 } else if (resource instanceof Account) { 63548 composeAccount(name, (Account)resource); 63549 } else if (resource instanceof ActivityDefinition) { 63550 composeActivityDefinition(name, (ActivityDefinition)resource); 63551 } else if (resource instanceof ActorDefinition) { 63552 composeActorDefinition(name, (ActorDefinition)resource); 63553 } else if (resource instanceof AdministrableProductDefinition) { 63554 composeAdministrableProductDefinition(name, (AdministrableProductDefinition)resource); 63555 } else if (resource instanceof AdverseEvent) { 63556 composeAdverseEvent(name, (AdverseEvent)resource); 63557 } else if (resource instanceof AllergyIntolerance) { 63558 composeAllergyIntolerance(name, (AllergyIntolerance)resource); 63559 } else if (resource instanceof Appointment) { 63560 composeAppointment(name, (Appointment)resource); 63561 } else if (resource instanceof AppointmentResponse) { 63562 composeAppointmentResponse(name, (AppointmentResponse)resource); 63563 } else if (resource instanceof ArtifactAssessment) { 63564 composeArtifactAssessment(name, (ArtifactAssessment)resource); 63565 } else if (resource instanceof AuditEvent) { 63566 composeAuditEvent(name, (AuditEvent)resource); 63567 } else if (resource instanceof Basic) { 63568 composeBasic(name, (Basic)resource); 63569 } else if (resource instanceof Binary) { 63570 composeBinary(name, (Binary)resource); 63571 } else if (resource instanceof BiologicallyDerivedProduct) { 63572 composeBiologicallyDerivedProduct(name, (BiologicallyDerivedProduct)resource); 63573 } else if (resource instanceof BiologicallyDerivedProductDispense) { 63574 composeBiologicallyDerivedProductDispense(name, (BiologicallyDerivedProductDispense)resource); 63575 } else if (resource instanceof BodyStructure) { 63576 composeBodyStructure(name, (BodyStructure)resource); 63577 } else if (resource instanceof Bundle) { 63578 composeBundle(name, (Bundle)resource); 63579 } else if (resource instanceof CapabilityStatement) { 63580 composeCapabilityStatement(name, (CapabilityStatement)resource); 63581 } else if (resource instanceof CarePlan) { 63582 composeCarePlan(name, (CarePlan)resource); 63583 } else if (resource instanceof CareTeam) { 63584 composeCareTeam(name, (CareTeam)resource); 63585 } else if (resource instanceof ChargeItem) { 63586 composeChargeItem(name, (ChargeItem)resource); 63587 } else if (resource instanceof ChargeItemDefinition) { 63588 composeChargeItemDefinition(name, (ChargeItemDefinition)resource); 63589 } else if (resource instanceof Citation) { 63590 composeCitation(name, (Citation)resource); 63591 } else if (resource instanceof Claim) { 63592 composeClaim(name, (Claim)resource); 63593 } else if (resource instanceof ClaimResponse) { 63594 composeClaimResponse(name, (ClaimResponse)resource); 63595 } else if (resource instanceof ClinicalImpression) { 63596 composeClinicalImpression(name, (ClinicalImpression)resource); 63597 } else if (resource instanceof ClinicalUseDefinition) { 63598 composeClinicalUseDefinition(name, (ClinicalUseDefinition)resource); 63599 } else if (resource instanceof CodeSystem) { 63600 composeCodeSystem(name, (CodeSystem)resource); 63601 } else if (resource instanceof Communication) { 63602 composeCommunication(name, (Communication)resource); 63603 } else if (resource instanceof CommunicationRequest) { 63604 composeCommunicationRequest(name, (CommunicationRequest)resource); 63605 } else if (resource instanceof CompartmentDefinition) { 63606 composeCompartmentDefinition(name, (CompartmentDefinition)resource); 63607 } else if (resource instanceof Composition) { 63608 composeComposition(name, (Composition)resource); 63609 } else if (resource instanceof ConceptMap) { 63610 composeConceptMap(name, (ConceptMap)resource); 63611 } else if (resource instanceof Condition) { 63612 composeCondition(name, (Condition)resource); 63613 } else if (resource instanceof ConditionDefinition) { 63614 composeConditionDefinition(name, (ConditionDefinition)resource); 63615 } else if (resource instanceof Consent) { 63616 composeConsent(name, (Consent)resource); 63617 } else if (resource instanceof Contract) { 63618 composeContract(name, (Contract)resource); 63619 } else if (resource instanceof Coverage) { 63620 composeCoverage(name, (Coverage)resource); 63621 } else if (resource instanceof CoverageEligibilityRequest) { 63622 composeCoverageEligibilityRequest(name, (CoverageEligibilityRequest)resource); 63623 } else if (resource instanceof CoverageEligibilityResponse) { 63624 composeCoverageEligibilityResponse(name, (CoverageEligibilityResponse)resource); 63625 } else if (resource instanceof DetectedIssue) { 63626 composeDetectedIssue(name, (DetectedIssue)resource); 63627 } else if (resource instanceof Device) { 63628 composeDevice(name, (Device)resource); 63629 } else if (resource instanceof DeviceAssociation) { 63630 composeDeviceAssociation(name, (DeviceAssociation)resource); 63631 } else if (resource instanceof DeviceDefinition) { 63632 composeDeviceDefinition(name, (DeviceDefinition)resource); 63633 } else if (resource instanceof DeviceDispense) { 63634 composeDeviceDispense(name, (DeviceDispense)resource); 63635 } else if (resource instanceof DeviceMetric) { 63636 composeDeviceMetric(name, (DeviceMetric)resource); 63637 } else if (resource instanceof DeviceRequest) { 63638 composeDeviceRequest(name, (DeviceRequest)resource); 63639 } else if (resource instanceof DeviceUsage) { 63640 composeDeviceUsage(name, (DeviceUsage)resource); 63641 } else if (resource instanceof DiagnosticReport) { 63642 composeDiagnosticReport(name, (DiagnosticReport)resource); 63643 } else if (resource instanceof DocumentReference) { 63644 composeDocumentReference(name, (DocumentReference)resource); 63645 } else if (resource instanceof Encounter) { 63646 composeEncounter(name, (Encounter)resource); 63647 } else if (resource instanceof EncounterHistory) { 63648 composeEncounterHistory(name, (EncounterHistory)resource); 63649 } else if (resource instanceof Endpoint) { 63650 composeEndpoint(name, (Endpoint)resource); 63651 } else if (resource instanceof EnrollmentRequest) { 63652 composeEnrollmentRequest(name, (EnrollmentRequest)resource); 63653 } else if (resource instanceof EnrollmentResponse) { 63654 composeEnrollmentResponse(name, (EnrollmentResponse)resource); 63655 } else if (resource instanceof EpisodeOfCare) { 63656 composeEpisodeOfCare(name, (EpisodeOfCare)resource); 63657 } else if (resource instanceof EventDefinition) { 63658 composeEventDefinition(name, (EventDefinition)resource); 63659 } else if (resource instanceof Evidence) { 63660 composeEvidence(name, (Evidence)resource); 63661 } else if (resource instanceof EvidenceReport) { 63662 composeEvidenceReport(name, (EvidenceReport)resource); 63663 } else if (resource instanceof EvidenceVariable) { 63664 composeEvidenceVariable(name, (EvidenceVariable)resource); 63665 } else if (resource instanceof ExampleScenario) { 63666 composeExampleScenario(name, (ExampleScenario)resource); 63667 } else if (resource instanceof ExplanationOfBenefit) { 63668 composeExplanationOfBenefit(name, (ExplanationOfBenefit)resource); 63669 } else if (resource instanceof FamilyMemberHistory) { 63670 composeFamilyMemberHistory(name, (FamilyMemberHistory)resource); 63671 } else if (resource instanceof Flag) { 63672 composeFlag(name, (Flag)resource); 63673 } else if (resource instanceof FormularyItem) { 63674 composeFormularyItem(name, (FormularyItem)resource); 63675 } else if (resource instanceof GenomicStudy) { 63676 composeGenomicStudy(name, (GenomicStudy)resource); 63677 } else if (resource instanceof Goal) { 63678 composeGoal(name, (Goal)resource); 63679 } else if (resource instanceof GraphDefinition) { 63680 composeGraphDefinition(name, (GraphDefinition)resource); 63681 } else if (resource instanceof Group) { 63682 composeGroup(name, (Group)resource); 63683 } else if (resource instanceof GuidanceResponse) { 63684 composeGuidanceResponse(name, (GuidanceResponse)resource); 63685 } else if (resource instanceof HealthcareService) { 63686 composeHealthcareService(name, (HealthcareService)resource); 63687 } else if (resource instanceof ImagingSelection) { 63688 composeImagingSelection(name, (ImagingSelection)resource); 63689 } else if (resource instanceof ImagingStudy) { 63690 composeImagingStudy(name, (ImagingStudy)resource); 63691 } else if (resource instanceof Immunization) { 63692 composeImmunization(name, (Immunization)resource); 63693 } else if (resource instanceof ImmunizationEvaluation) { 63694 composeImmunizationEvaluation(name, (ImmunizationEvaluation)resource); 63695 } else if (resource instanceof ImmunizationRecommendation) { 63696 composeImmunizationRecommendation(name, (ImmunizationRecommendation)resource); 63697 } else if (resource instanceof ImplementationGuide) { 63698 composeImplementationGuide(name, (ImplementationGuide)resource); 63699 } else if (resource instanceof Ingredient) { 63700 composeIngredient(name, (Ingredient)resource); 63701 } else if (resource instanceof InsurancePlan) { 63702 composeInsurancePlan(name, (InsurancePlan)resource); 63703 } else if (resource instanceof InventoryItem) { 63704 composeInventoryItem(name, (InventoryItem)resource); 63705 } else if (resource instanceof InventoryReport) { 63706 composeInventoryReport(name, (InventoryReport)resource); 63707 } else if (resource instanceof Invoice) { 63708 composeInvoice(name, (Invoice)resource); 63709 } else if (resource instanceof Library) { 63710 composeLibrary(name, (Library)resource); 63711 } else if (resource instanceof Linkage) { 63712 composeLinkage(name, (Linkage)resource); 63713 } else if (resource instanceof ListResource) { 63714 composeListResource(name, (ListResource)resource); 63715 } else if (resource instanceof Location) { 63716 composeLocation(name, (Location)resource); 63717 } else if (resource instanceof ManufacturedItemDefinition) { 63718 composeManufacturedItemDefinition(name, (ManufacturedItemDefinition)resource); 63719 } else if (resource instanceof Measure) { 63720 composeMeasure(name, (Measure)resource); 63721 } else if (resource instanceof MeasureReport) { 63722 composeMeasureReport(name, (MeasureReport)resource); 63723 } else if (resource instanceof Medication) { 63724 composeMedication(name, (Medication)resource); 63725 } else if (resource instanceof MedicationAdministration) { 63726 composeMedicationAdministration(name, (MedicationAdministration)resource); 63727 } else if (resource instanceof MedicationDispense) { 63728 composeMedicationDispense(name, (MedicationDispense)resource); 63729 } else if (resource instanceof MedicationKnowledge) { 63730 composeMedicationKnowledge(name, (MedicationKnowledge)resource); 63731 } else if (resource instanceof MedicationRequest) { 63732 composeMedicationRequest(name, (MedicationRequest)resource); 63733 } else if (resource instanceof MedicationStatement) { 63734 composeMedicationStatement(name, (MedicationStatement)resource); 63735 } else if (resource instanceof MedicinalProductDefinition) { 63736 composeMedicinalProductDefinition(name, (MedicinalProductDefinition)resource); 63737 } else if (resource instanceof MessageDefinition) { 63738 composeMessageDefinition(name, (MessageDefinition)resource); 63739 } else if (resource instanceof MessageHeader) { 63740 composeMessageHeader(name, (MessageHeader)resource); 63741 } else if (resource instanceof MolecularSequence) { 63742 composeMolecularSequence(name, (MolecularSequence)resource); 63743 } else if (resource instanceof NamingSystem) { 63744 composeNamingSystem(name, (NamingSystem)resource); 63745 } else if (resource instanceof NutritionIntake) { 63746 composeNutritionIntake(name, (NutritionIntake)resource); 63747 } else if (resource instanceof NutritionOrder) { 63748 composeNutritionOrder(name, (NutritionOrder)resource); 63749 } else if (resource instanceof NutritionProduct) { 63750 composeNutritionProduct(name, (NutritionProduct)resource); 63751 } else if (resource instanceof Observation) { 63752 composeObservation(name, (Observation)resource); 63753 } else if (resource instanceof ObservationDefinition) { 63754 composeObservationDefinition(name, (ObservationDefinition)resource); 63755 } else if (resource instanceof OperationDefinition) { 63756 composeOperationDefinition(name, (OperationDefinition)resource); 63757 } else if (resource instanceof OperationOutcome) { 63758 composeOperationOutcome(name, (OperationOutcome)resource); 63759 } else if (resource instanceof Organization) { 63760 composeOrganization(name, (Organization)resource); 63761 } else if (resource instanceof OrganizationAffiliation) { 63762 composeOrganizationAffiliation(name, (OrganizationAffiliation)resource); 63763 } else if (resource instanceof PackagedProductDefinition) { 63764 composePackagedProductDefinition(name, (PackagedProductDefinition)resource); 63765 } else if (resource instanceof Parameters) { 63766 composeParameters(name, (Parameters)resource); 63767 } else if (resource instanceof Patient) { 63768 composePatient(name, (Patient)resource); 63769 } else if (resource instanceof PaymentNotice) { 63770 composePaymentNotice(name, (PaymentNotice)resource); 63771 } else if (resource instanceof PaymentReconciliation) { 63772 composePaymentReconciliation(name, (PaymentReconciliation)resource); 63773 } else if (resource instanceof Permission) { 63774 composePermission(name, (Permission)resource); 63775 } else if (resource instanceof Person) { 63776 composePerson(name, (Person)resource); 63777 } else if (resource instanceof PlanDefinition) { 63778 composePlanDefinition(name, (PlanDefinition)resource); 63779 } else if (resource instanceof Practitioner) { 63780 composePractitioner(name, (Practitioner)resource); 63781 } else if (resource instanceof PractitionerRole) { 63782 composePractitionerRole(name, (PractitionerRole)resource); 63783 } else if (resource instanceof Procedure) { 63784 composeProcedure(name, (Procedure)resource); 63785 } else if (resource instanceof Provenance) { 63786 composeProvenance(name, (Provenance)resource); 63787 } else if (resource instanceof Questionnaire) { 63788 composeQuestionnaire(name, (Questionnaire)resource); 63789 } else if (resource instanceof QuestionnaireResponse) { 63790 composeQuestionnaireResponse(name, (QuestionnaireResponse)resource); 63791 } else if (resource instanceof RegulatedAuthorization) { 63792 composeRegulatedAuthorization(name, (RegulatedAuthorization)resource); 63793 } else if (resource instanceof RelatedPerson) { 63794 composeRelatedPerson(name, (RelatedPerson)resource); 63795 } else if (resource instanceof RequestOrchestration) { 63796 composeRequestOrchestration(name, (RequestOrchestration)resource); 63797 } else if (resource instanceof Requirements) { 63798 composeRequirements(name, (Requirements)resource); 63799 } else if (resource instanceof ResearchStudy) { 63800 composeResearchStudy(name, (ResearchStudy)resource); 63801 } else if (resource instanceof ResearchSubject) { 63802 composeResearchSubject(name, (ResearchSubject)resource); 63803 } else if (resource instanceof RiskAssessment) { 63804 composeRiskAssessment(name, (RiskAssessment)resource); 63805 } else if (resource instanceof Schedule) { 63806 composeSchedule(name, (Schedule)resource); 63807 } else if (resource instanceof SearchParameter) { 63808 composeSearchParameter(name, (SearchParameter)resource); 63809 } else if (resource instanceof ServiceRequest) { 63810 composeServiceRequest(name, (ServiceRequest)resource); 63811 } else if (resource instanceof Slot) { 63812 composeSlot(name, (Slot)resource); 63813 } else if (resource instanceof Specimen) { 63814 composeSpecimen(name, (Specimen)resource); 63815 } else if (resource instanceof SpecimenDefinition) { 63816 composeSpecimenDefinition(name, (SpecimenDefinition)resource); 63817 } else if (resource instanceof StructureDefinition) { 63818 composeStructureDefinition(name, (StructureDefinition)resource); 63819 } else if (resource instanceof StructureMap) { 63820 composeStructureMap(name, (StructureMap)resource); 63821 } else if (resource instanceof Subscription) { 63822 composeSubscription(name, (Subscription)resource); 63823 } else if (resource instanceof SubscriptionStatus) { 63824 composeSubscriptionStatus(name, (SubscriptionStatus)resource); 63825 } else if (resource instanceof SubscriptionTopic) { 63826 composeSubscriptionTopic(name, (SubscriptionTopic)resource); 63827 } else if (resource instanceof Substance) { 63828 composeSubstance(name, (Substance)resource); 63829 } else if (resource instanceof SubstanceDefinition) { 63830 composeSubstanceDefinition(name, (SubstanceDefinition)resource); 63831 } else if (resource instanceof SubstanceNucleicAcid) { 63832 composeSubstanceNucleicAcid(name, (SubstanceNucleicAcid)resource); 63833 } else if (resource instanceof SubstancePolymer) { 63834 composeSubstancePolymer(name, (SubstancePolymer)resource); 63835 } else if (resource instanceof SubstanceProtein) { 63836 composeSubstanceProtein(name, (SubstanceProtein)resource); 63837 } else if (resource instanceof SubstanceReferenceInformation) { 63838 composeSubstanceReferenceInformation(name, (SubstanceReferenceInformation)resource); 63839 } else if (resource instanceof SubstanceSourceMaterial) { 63840 composeSubstanceSourceMaterial(name, (SubstanceSourceMaterial)resource); 63841 } else if (resource instanceof SupplyDelivery) { 63842 composeSupplyDelivery(name, (SupplyDelivery)resource); 63843 } else if (resource instanceof SupplyRequest) { 63844 composeSupplyRequest(name, (SupplyRequest)resource); 63845 } else if (resource instanceof Task) { 63846 composeTask(name, (Task)resource); 63847 } else if (resource instanceof TerminologyCapabilities) { 63848 composeTerminologyCapabilities(name, (TerminologyCapabilities)resource); 63849 } else if (resource instanceof TestPlan) { 63850 composeTestPlan(name, (TestPlan)resource); 63851 } else if (resource instanceof TestReport) { 63852 composeTestReport(name, (TestReport)resource); 63853 } else if (resource instanceof TestScript) { 63854 composeTestScript(name, (TestScript)resource); 63855 } else if (resource instanceof Transport) { 63856 composeTransport(name, (Transport)resource); 63857 } else if (resource instanceof ValueSet) { 63858 composeValueSet(name, (ValueSet)resource); 63859 } else if (resource instanceof VerificationResult) { 63860 composeVerificationResult(name, (VerificationResult)resource); 63861 } else if (resource instanceof VisionPrescription) { 63862 composeVisionPrescription(name, (VisionPrescription)resource); 63863 63864 } else { 63865 throw new Error("Unhandled resource type "+resource.getClass().getName()); 63866 } 63867 } 63868 63869 protected void composeType(String prefix, DataType type) throws IOException { 63870 if (prefix == null) { 63871 throw new IOException("prefix == null"); 63872 } else if (type == null) { 63873 throw new IOException("type == null"); 63874 } else if (type instanceof Address) { 63875 composeAddress(prefix+"Address", (Address) type); 63876 } else if (type instanceof Age) { 63877 composeAge(prefix+"Age", (Age) type); 63878 } else if (type instanceof Annotation) { 63879 composeAnnotation(prefix+"Annotation", (Annotation) type); 63880 } else if (type instanceof Attachment) { 63881 composeAttachment(prefix+"Attachment", (Attachment) type); 63882 } else if (type instanceof Availability) { 63883 composeAvailability(prefix+"Availability", (Availability) type); 63884 } else if (type instanceof CodeableConcept) { 63885 composeCodeableConcept(prefix+"CodeableConcept", (CodeableConcept) type); 63886 } else if (type instanceof CodeableReference) { 63887 composeCodeableReference(prefix+"CodeableReference", (CodeableReference) type); 63888 } else if (type instanceof Coding) { 63889 composeCoding(prefix+"Coding", (Coding) type); 63890 } else if (type instanceof ContactDetail) { 63891 composeContactDetail(prefix+"ContactDetail", (ContactDetail) type); 63892 } else if (type instanceof ContactPoint) { 63893 composeContactPoint(prefix+"ContactPoint", (ContactPoint) type); 63894 } else if (type instanceof Contributor) { 63895 composeContributor(prefix+"Contributor", (Contributor) type); 63896 } else if (type instanceof Count) { 63897 composeCount(prefix+"Count", (Count) type); 63898 } else if (type instanceof DataRequirement) { 63899 composeDataRequirement(prefix+"DataRequirement", (DataRequirement) type); 63900 } else if (type instanceof Distance) { 63901 composeDistance(prefix+"Distance", (Distance) type); 63902 } else if (type instanceof Dosage) { 63903 composeDosage(prefix+"Dosage", (Dosage) type); 63904 } else if (type instanceof Duration) { 63905 composeDuration(prefix+"Duration", (Duration) type); 63906 } else if (type instanceof ElementDefinition) { 63907 composeElementDefinition(prefix+"ElementDefinition", (ElementDefinition) type); 63908 } else if (type instanceof Expression) { 63909 composeExpression(prefix+"Expression", (Expression) type); 63910 } else if (type instanceof ExtendedContactDetail) { 63911 composeExtendedContactDetail(prefix+"ExtendedContactDetail", (ExtendedContactDetail) type); 63912 } else if (type instanceof Extension) { 63913 composeExtension(prefix+"Extension", (Extension) type); 63914 } else if (type instanceof HumanName) { 63915 composeHumanName(prefix+"HumanName", (HumanName) type); 63916 } else if (type instanceof Identifier) { 63917 composeIdentifier(prefix+"Identifier", (Identifier) type); 63918 } else if (type instanceof MarketingStatus) { 63919 composeMarketingStatus(prefix+"MarketingStatus", (MarketingStatus) type); 63920 } else if (type instanceof Meta) { 63921 composeMeta(prefix+"Meta", (Meta) type); 63922 } else if (type instanceof MonetaryComponent) { 63923 composeMonetaryComponent(prefix+"MonetaryComponent", (MonetaryComponent) type); 63924 } else if (type instanceof Money) { 63925 composeMoney(prefix+"Money", (Money) type); 63926 } else if (type instanceof Narrative) { 63927 composeNarrative(prefix+"Narrative", (Narrative) type); 63928 } else if (type instanceof ParameterDefinition) { 63929 composeParameterDefinition(prefix+"ParameterDefinition", (ParameterDefinition) type); 63930 } else if (type instanceof Period) { 63931 composePeriod(prefix+"Period", (Period) type); 63932 } else if (type instanceof ProductShelfLife) { 63933 composeProductShelfLife(prefix+"ProductShelfLife", (ProductShelfLife) type); 63934 } else if (type instanceof Quantity) { 63935 composeQuantity(prefix+"Quantity", (Quantity) type); 63936 } else if (type instanceof Range) { 63937 composeRange(prefix+"Range", (Range) type); 63938 } else if (type instanceof Ratio) { 63939 composeRatio(prefix+"Ratio", (Ratio) type); 63940 } else if (type instanceof RatioRange) { 63941 composeRatioRange(prefix+"RatioRange", (RatioRange) type); 63942 } else if (type instanceof Reference) { 63943 composeReference(prefix+"Reference", (Reference) type); 63944 } else if (type instanceof RelatedArtifact) { 63945 composeRelatedArtifact(prefix+"RelatedArtifact", (RelatedArtifact) type); 63946 } else if (type instanceof SampledData) { 63947 composeSampledData(prefix+"SampledData", (SampledData) type); 63948 } else if (type instanceof Signature) { 63949 composeSignature(prefix+"Signature", (Signature) type); 63950 } else if (type instanceof Timing) { 63951 composeTiming(prefix+"Timing", (Timing) type); 63952 } else if (type instanceof TriggerDefinition) { 63953 composeTriggerDefinition(prefix+"TriggerDefinition", (TriggerDefinition) type); 63954 } else if (type instanceof UsageContext) { 63955 composeUsageContext(prefix+"UsageContext", (UsageContext) type); 63956 } else if (type instanceof VirtualServiceDetail) { 63957 composeVirtualServiceDetail(prefix+"VirtualServiceDetail", (VirtualServiceDetail) type); 63958 63959 } else if (type instanceof CodeType) { 63960 composeCode(prefix+"Code", (CodeType) type); 63961 } else if (type instanceof OidType) { 63962 composeOid(prefix+"Oid", (OidType) type); 63963 } else if (type instanceof CanonicalType) { 63964 composeCanonical(prefix+"Canonical", (CanonicalType) type); 63965 } else if (type instanceof UuidType) { 63966 composeUuid(prefix+"Uuid", (UuidType) type); 63967 } else if (type instanceof UrlType) { 63968 composeUrl(prefix+"Url", (UrlType) type); 63969 } else if (type instanceof UnsignedIntType) { 63970 composeUnsignedInt(prefix+"UnsignedInt", (UnsignedIntType) type); 63971 } else if (type instanceof MarkdownType) { 63972 composeMarkdown(prefix+"Markdown", (MarkdownType) type); 63973 } else if (type instanceof IdType) { 63974 composeId(prefix+"Id", (IdType) type); 63975 } else if (type instanceof PositiveIntType) { 63976 composePositiveInt(prefix+"PositiveInt", (PositiveIntType) type); 63977 } else if (type instanceof DateType) { 63978 composeDate(prefix+"Date", (DateType) type); 63979 } else if (type instanceof DateTimeType) { 63980 composeDateTime(prefix+"DateTime", (DateTimeType) type); 63981 } else if (type instanceof StringType) { 63982 composeString(prefix+"String", (StringType) type); 63983 } else if (type instanceof IntegerType) { 63984 composeInteger(prefix+"Integer", (IntegerType) type); 63985 } else if (type instanceof Integer64Type) { 63986 composeInteger64(prefix+"Integer64", (Integer64Type) type); 63987 } else if (type instanceof UriType) { 63988 composeUri(prefix+"Uri", (UriType) type); 63989 } else if (type instanceof InstantType) { 63990 composeInstant(prefix+"Instant", (InstantType) type); 63991 } else if (type instanceof BooleanType) { 63992 composeBoolean(prefix+"Boolean", (BooleanType) type); 63993 } else if (type instanceof Base64BinaryType) { 63994 composeBase64Binary(prefix+"Base64Binary", (Base64BinaryType) type); 63995 } else if (type instanceof TimeType) { 63996 composeTime(prefix+"Time", (TimeType) type); 63997 } else if (type instanceof DecimalType) { 63998 composeDecimal(prefix+"Decimal", (DecimalType) type); 63999 } else { 64000 throw new Error("Unhandled type "+type.fhirType()); 64001 } 64002 } 64003 64004}