001package org.hl7.fhir.instance.model; 002 003import org.hl7.fhir.exceptions.FHIRException; 004 005public class Enumerations { 006 007// In here: 008// AdministrativeGender: The gender of a person used for administrative purposes. 009// AgeUnits: A valueSet of UCUM codes for representing age value units. 010// BindingStrength: Indication of the degree of conformance expectations associated with a binding. 011// ConceptMapEquivalence: The degree of equivalence between concepts. 012// ConformanceResourceStatus: The lifecycle status of a Value Set or Concept Map. 013// DataAbsentReason: Used to specify why the normally expected content of the data element is missing. 014// DataType: The type of an element - one of the FHIR data types. 015// DocumentReferenceStatus: The status of the document reference. 016// FHIRDefinedType: Either a resource or a data type. 017// MessageEvent: One of the message events defined as part of FHIR. 018// NoteType: The presentation types of notes. 019// RemittanceOutcome: The outcome of the processing. 020// ResourceType: One of the resource types defined as part of FHIR. 021// SearchParamType: Data types allowed to be used for search parameters. 022// SpecialValues: A set of generally useful codes defined so they can be included in value sets. 023 024 025 public enum AdministrativeGender { 026 /** 027 * Male 028 */ 029 MALE, 030 /** 031 * Female 032 */ 033 FEMALE, 034 /** 035 * Other 036 */ 037 OTHER, 038 /** 039 * Unknown 040 */ 041 UNKNOWN, 042 /** 043 * added to help the parsers 044 */ 045 NULL; 046 public static AdministrativeGender fromCode(String codeString) throws FHIRException { 047 if (codeString == null || "".equals(codeString)) 048 return null; 049 if ("male".equals(codeString)) 050 return MALE; 051 if ("female".equals(codeString)) 052 return FEMALE; 053 if ("other".equals(codeString)) 054 return OTHER; 055 if ("unknown".equals(codeString)) 056 return UNKNOWN; 057 throw new FHIRException("Unknown AdministrativeGender code '"+codeString+"'"); 058 } 059 public String toCode() { 060 switch (this) { 061 case MALE: return "male"; 062 case FEMALE: return "female"; 063 case OTHER: return "other"; 064 case UNKNOWN: return "unknown"; 065 default: return "?"; 066 } 067 } 068 public String getSystem() { 069 switch (this) { 070 case MALE: return "http://hl7.org/fhir/administrative-gender"; 071 case FEMALE: return "http://hl7.org/fhir/administrative-gender"; 072 case OTHER: return "http://hl7.org/fhir/administrative-gender"; 073 case UNKNOWN: return "http://hl7.org/fhir/administrative-gender"; 074 default: return "?"; 075 } 076 } 077 public String getDefinition() { 078 switch (this) { 079 case MALE: return "Male"; 080 case FEMALE: return "Female"; 081 case OTHER: return "Other"; 082 case UNKNOWN: return "Unknown"; 083 default: return "?"; 084 } 085 } 086 public String getDisplay() { 087 switch (this) { 088 case MALE: return "Male"; 089 case FEMALE: return "Female"; 090 case OTHER: return "Other"; 091 case UNKNOWN: return "Unknown"; 092 default: return "?"; 093 } 094 } 095 } 096 097 public static class AdministrativeGenderEnumFactory implements EnumFactory<AdministrativeGender> { 098 public AdministrativeGender fromCode(String codeString) throws IllegalArgumentException { 099 if (codeString == null || "".equals(codeString)) 100 if (codeString == null || "".equals(codeString)) 101 return null; 102 if ("male".equals(codeString)) 103 return AdministrativeGender.MALE; 104 if ("female".equals(codeString)) 105 return AdministrativeGender.FEMALE; 106 if ("other".equals(codeString)) 107 return AdministrativeGender.OTHER; 108 if ("unknown".equals(codeString)) 109 return AdministrativeGender.UNKNOWN; 110 throw new IllegalArgumentException("Unknown AdministrativeGender code '"+codeString+"'"); 111 } 112 public Enumeration<AdministrativeGender> fromType(Base code) throws FHIRException { 113 if (code == null || code.isEmpty()) 114 return null; 115 String codeString = ((PrimitiveType) code).asStringValue(); 116 if (codeString == null || "".equals(codeString)) 117 return null; 118 if ("male".equals(codeString)) 119 return new Enumeration<AdministrativeGender>(this, AdministrativeGender.MALE); 120 if ("female".equals(codeString)) 121 return new Enumeration<AdministrativeGender>(this, AdministrativeGender.FEMALE); 122 if ("other".equals(codeString)) 123 return new Enumeration<AdministrativeGender>(this, AdministrativeGender.OTHER); 124 if ("unknown".equals(codeString)) 125 return new Enumeration<AdministrativeGender>(this, AdministrativeGender.UNKNOWN); 126 throw new FHIRException("Unknown AdministrativeGender code '"+codeString+"'"); 127 } 128 public String toCode(AdministrativeGender code) { 129 if (code == AdministrativeGender.MALE) 130 return "male"; 131 if (code == AdministrativeGender.FEMALE) 132 return "female"; 133 if (code == AdministrativeGender.OTHER) 134 return "other"; 135 if (code == AdministrativeGender.UNKNOWN) 136 return "unknown"; 137 return "?"; 138 } 139 } 140 141 public enum AgeUnits { 142 /** 143 * null 144 */ 145 MIN, 146 /** 147 * null 148 */ 149 H, 150 /** 151 * null 152 */ 153 D, 154 /** 155 * null 156 */ 157 WK, 158 /** 159 * null 160 */ 161 MO, 162 /** 163 * null 164 */ 165 A, 166 /** 167 * added to help the parsers 168 */ 169 NULL; 170 public static AgeUnits fromCode(String codeString) throws FHIRException { 171 if (codeString == null || "".equals(codeString)) 172 return null; 173 if ("min".equals(codeString)) 174 return MIN; 175 if ("h".equals(codeString)) 176 return H; 177 if ("d".equals(codeString)) 178 return D; 179 if ("wk".equals(codeString)) 180 return WK; 181 if ("mo".equals(codeString)) 182 return MO; 183 if ("a".equals(codeString)) 184 return A; 185 throw new FHIRException("Unknown AgeUnits code '"+codeString+"'"); 186 } 187 public String toCode() { 188 switch (this) { 189 case MIN: return "min"; 190 case H: return "h"; 191 case D: return "d"; 192 case WK: return "wk"; 193 case MO: return "mo"; 194 case A: return "a"; 195 default: return "?"; 196 } 197 } 198 public String getSystem() { 199 switch (this) { 200 case MIN: return "http://unitsofmeasure.org"; 201 case H: return "http://unitsofmeasure.org"; 202 case D: return "http://unitsofmeasure.org"; 203 case WK: return "http://unitsofmeasure.org"; 204 case MO: return "http://unitsofmeasure.org"; 205 case A: return "http://unitsofmeasure.org"; 206 default: return "?"; 207 } 208 } 209 public String getDefinition() { 210 switch (this) { 211 case MIN: return ""; 212 case H: return ""; 213 case D: return ""; 214 case WK: return ""; 215 case MO: return ""; 216 case A: return ""; 217 default: return "?"; 218 } 219 } 220 public String getDisplay() { 221 switch (this) { 222 case MIN: return "Minute"; 223 case H: return "Hour"; 224 case D: return "Day"; 225 case WK: return "Week"; 226 case MO: return "Month"; 227 case A: return "Year"; 228 default: return "?"; 229 } 230 } 231 } 232 233 public static class AgeUnitsEnumFactory implements EnumFactory<AgeUnits> { 234 public AgeUnits fromCode(String codeString) throws IllegalArgumentException { 235 if (codeString == null || "".equals(codeString)) 236 if (codeString == null || "".equals(codeString)) 237 return null; 238 if ("min".equals(codeString)) 239 return AgeUnits.MIN; 240 if ("h".equals(codeString)) 241 return AgeUnits.H; 242 if ("d".equals(codeString)) 243 return AgeUnits.D; 244 if ("wk".equals(codeString)) 245 return AgeUnits.WK; 246 if ("mo".equals(codeString)) 247 return AgeUnits.MO; 248 if ("a".equals(codeString)) 249 return AgeUnits.A; 250 throw new IllegalArgumentException("Unknown AgeUnits code '"+codeString+"'"); 251 } 252 public Enumeration<AgeUnits> fromType(Base code) throws FHIRException { 253 if (code == null || code.isEmpty()) 254 return null; 255 String codeString = ((PrimitiveType) code).asStringValue(); 256 if (codeString == null || "".equals(codeString)) 257 return null; 258 if ("min".equals(codeString)) 259 return new Enumeration<AgeUnits>(this, AgeUnits.MIN); 260 if ("h".equals(codeString)) 261 return new Enumeration<AgeUnits>(this, AgeUnits.H); 262 if ("d".equals(codeString)) 263 return new Enumeration<AgeUnits>(this, AgeUnits.D); 264 if ("wk".equals(codeString)) 265 return new Enumeration<AgeUnits>(this, AgeUnits.WK); 266 if ("mo".equals(codeString)) 267 return new Enumeration<AgeUnits>(this, AgeUnits.MO); 268 if ("a".equals(codeString)) 269 return new Enumeration<AgeUnits>(this, AgeUnits.A); 270 throw new FHIRException("Unknown AgeUnits code '"+codeString+"'"); 271 } 272 public String toCode(AgeUnits code) { 273 if (code == AgeUnits.MIN) 274 return "min"; 275 if (code == AgeUnits.H) 276 return "h"; 277 if (code == AgeUnits.D) 278 return "d"; 279 if (code == AgeUnits.WK) 280 return "wk"; 281 if (code == AgeUnits.MO) 282 return "mo"; 283 if (code == AgeUnits.A) 284 return "a"; 285 return "?"; 286 } 287 } 288 289 public enum BindingStrength { 290 /** 291 * To be conformant, instances of this element SHALL include a code from the specified value set. 292 */ 293 REQUIRED, 294 /** 295 * To be conformant, instances of this element SHALL include a code from the specified value set if any of the codes within the value set can apply to the concept being communicated. If the valueset does not cover the concept (based on human review), alternate codings (or, data type allowing, text) may be included instead. 296 */ 297 EXTENSIBLE, 298 /** 299 * Instances are encouraged to draw from the specified codes for interoperability purposes but are not required to do so to be considered conformant. 300 */ 301 PREFERRED, 302 /** 303 * Instances are not expected or even encouraged to draw from the specified value set. The value set merely provides examples of the types of concepts intended to be included. 304 */ 305 EXAMPLE, 306 /** 307 * added to help the parsers 308 */ 309 NULL; 310 public static BindingStrength fromCode(String codeString) throws FHIRException { 311 if (codeString == null || "".equals(codeString)) 312 return null; 313 if ("required".equals(codeString)) 314 return REQUIRED; 315 if ("extensible".equals(codeString)) 316 return EXTENSIBLE; 317 if ("preferred".equals(codeString)) 318 return PREFERRED; 319 if ("example".equals(codeString)) 320 return EXAMPLE; 321 throw new FHIRException("Unknown BindingStrength code '"+codeString+"'"); 322 } 323 public String toCode() { 324 switch (this) { 325 case REQUIRED: return "required"; 326 case EXTENSIBLE: return "extensible"; 327 case PREFERRED: return "preferred"; 328 case EXAMPLE: return "example"; 329 default: return "?"; 330 } 331 } 332 public String getSystem() { 333 switch (this) { 334 case REQUIRED: return "http://hl7.org/fhir/binding-strength"; 335 case EXTENSIBLE: return "http://hl7.org/fhir/binding-strength"; 336 case PREFERRED: return "http://hl7.org/fhir/binding-strength"; 337 case EXAMPLE: return "http://hl7.org/fhir/binding-strength"; 338 default: return "?"; 339 } 340 } 341 public String getDefinition() { 342 switch (this) { 343 case REQUIRED: return "To be conformant, instances of this element SHALL include a code from the specified value set."; 344 case EXTENSIBLE: return "To be conformant, instances of this element SHALL include a code from the specified value set if any of the codes within the value set can apply to the concept being communicated. If the valueset does not cover the concept (based on human review), alternate codings (or, data type allowing, text) may be included instead."; 345 case PREFERRED: return "Instances are encouraged to draw from the specified codes for interoperability purposes but are not required to do so to be considered conformant."; 346 case EXAMPLE: return "Instances are not expected or even encouraged to draw from the specified value set. The value set merely provides examples of the types of concepts intended to be included."; 347 default: return "?"; 348 } 349 } 350 public String getDisplay() { 351 switch (this) { 352 case REQUIRED: return "Required"; 353 case EXTENSIBLE: return "Extensible"; 354 case PREFERRED: return "Preferred"; 355 case EXAMPLE: return "Example"; 356 default: return "?"; 357 } 358 } 359 } 360 361 public static class BindingStrengthEnumFactory implements EnumFactory<BindingStrength> { 362 public BindingStrength fromCode(String codeString) throws IllegalArgumentException { 363 if (codeString == null || "".equals(codeString)) 364 if (codeString == null || "".equals(codeString)) 365 return null; 366 if ("required".equals(codeString)) 367 return BindingStrength.REQUIRED; 368 if ("extensible".equals(codeString)) 369 return BindingStrength.EXTENSIBLE; 370 if ("preferred".equals(codeString)) 371 return BindingStrength.PREFERRED; 372 if ("example".equals(codeString)) 373 return BindingStrength.EXAMPLE; 374 throw new IllegalArgumentException("Unknown BindingStrength code '"+codeString+"'"); 375 } 376 public Enumeration<BindingStrength> fromType(Base code) throws FHIRException { 377 if (code == null || code.isEmpty()) 378 return null; 379 String codeString = ((PrimitiveType) code).asStringValue(); 380 if (codeString == null || "".equals(codeString)) 381 return null; 382 if ("required".equals(codeString)) 383 return new Enumeration<BindingStrength>(this, BindingStrength.REQUIRED); 384 if ("extensible".equals(codeString)) 385 return new Enumeration<BindingStrength>(this, BindingStrength.EXTENSIBLE); 386 if ("preferred".equals(codeString)) 387 return new Enumeration<BindingStrength>(this, BindingStrength.PREFERRED); 388 if ("example".equals(codeString)) 389 return new Enumeration<BindingStrength>(this, BindingStrength.EXAMPLE); 390 throw new FHIRException("Unknown BindingStrength code '"+codeString+"'"); 391 } 392 public String toCode(BindingStrength code) { 393 if (code == BindingStrength.REQUIRED) 394 return "required"; 395 if (code == BindingStrength.EXTENSIBLE) 396 return "extensible"; 397 if (code == BindingStrength.PREFERRED) 398 return "preferred"; 399 if (code == BindingStrength.EXAMPLE) 400 return "example"; 401 return "?"; 402 } 403 } 404 405 public enum ConceptMapEquivalence { 406 /** 407 * The definitions of the concepts mean the same thing (including when structural implications of meaning are considered) (i.e. extensionally identical). 408 */ 409 EQUIVALENT, 410 /** 411 * The definitions of the concepts are exactly the same (i.e. only grammatical differences) and structural implications of meaning are identical or irrelevant (i.e. intentionally identical). 412 */ 413 EQUAL, 414 /** 415 * The target mapping is wider in meaning than the source concept. 416 */ 417 WIDER, 418 /** 419 * The target mapping subsumes the meaning of the source concept (e.g. the source is-a target). 420 */ 421 SUBSUMES, 422 /** 423 * The target mapping is narrower in meaning that the source concept. The sense in which the mapping is narrower SHALL be described in the comments in this case, and applications should be careful when attempting to use these mappings operationally. 424 */ 425 NARROWER, 426 /** 427 * The target mapping specializes the meaning of the source concept (e.g. the target is-a source). 428 */ 429 SPECIALIZES, 430 /** 431 * The target mapping overlaps with the source concept, but both source and target cover additional meaning, or the definitions are imprecise and it is uncertain whether they have the same boundaries to their meaning. The sense in which the mapping is narrower SHALL be described in the comments in this case, and applications should be careful when attempting to use these mappings operationally. 432 */ 433 INEXACT, 434 /** 435 * There is no match for this concept in the destination concept system. 436 */ 437 UNMATCHED, 438 /** 439 * This is an explicit assertion that there is no mapping between the source and target concept. 440 */ 441 DISJOINT, 442 /** 443 * added to help the parsers 444 */ 445 NULL; 446 public static ConceptMapEquivalence fromCode(String codeString) throws FHIRException { 447 if (codeString == null || "".equals(codeString)) 448 return null; 449 if ("equivalent".equals(codeString)) 450 return EQUIVALENT; 451 if ("equal".equals(codeString)) 452 return EQUAL; 453 if ("wider".equals(codeString)) 454 return WIDER; 455 if ("subsumes".equals(codeString)) 456 return SUBSUMES; 457 if ("narrower".equals(codeString)) 458 return NARROWER; 459 if ("specializes".equals(codeString)) 460 return SPECIALIZES; 461 if ("inexact".equals(codeString)) 462 return INEXACT; 463 if ("unmatched".equals(codeString)) 464 return UNMATCHED; 465 if ("disjoint".equals(codeString)) 466 return DISJOINT; 467 throw new FHIRException("Unknown ConceptMapEquivalence code '"+codeString+"'"); 468 } 469 public String toCode() { 470 switch (this) { 471 case EQUIVALENT: return "equivalent"; 472 case EQUAL: return "equal"; 473 case WIDER: return "wider"; 474 case SUBSUMES: return "subsumes"; 475 case NARROWER: return "narrower"; 476 case SPECIALIZES: return "specializes"; 477 case INEXACT: return "inexact"; 478 case UNMATCHED: return "unmatched"; 479 case DISJOINT: return "disjoint"; 480 default: return "?"; 481 } 482 } 483 public String getSystem() { 484 switch (this) { 485 case EQUIVALENT: return "http://hl7.org/fhir/concept-map-equivalence"; 486 case EQUAL: return "http://hl7.org/fhir/concept-map-equivalence"; 487 case WIDER: return "http://hl7.org/fhir/concept-map-equivalence"; 488 case SUBSUMES: return "http://hl7.org/fhir/concept-map-equivalence"; 489 case NARROWER: return "http://hl7.org/fhir/concept-map-equivalence"; 490 case SPECIALIZES: return "http://hl7.org/fhir/concept-map-equivalence"; 491 case INEXACT: return "http://hl7.org/fhir/concept-map-equivalence"; 492 case UNMATCHED: return "http://hl7.org/fhir/concept-map-equivalence"; 493 case DISJOINT: return "http://hl7.org/fhir/concept-map-equivalence"; 494 default: return "?"; 495 } 496 } 497 public String getDefinition() { 498 switch (this) { 499 case EQUIVALENT: return "The definitions of the concepts mean the same thing (including when structural implications of meaning are considered) (i.e. extensionally identical)."; 500 case EQUAL: return "The definitions of the concepts are exactly the same (i.e. only grammatical differences) and structural implications of meaning are identical or irrelevant (i.e. intentionally identical)."; 501 case WIDER: return "The target mapping is wider in meaning than the source concept."; 502 case SUBSUMES: return "The target mapping subsumes the meaning of the source concept (e.g. the source is-a target)."; 503 case NARROWER: return "The target mapping is narrower in meaning that the source concept. The sense in which the mapping is narrower SHALL be described in the comments in this case, and applications should be careful when attempting to use these mappings operationally."; 504 case SPECIALIZES: return "The target mapping specializes the meaning of the source concept (e.g. the target is-a source)."; 505 case INEXACT: return "The target mapping overlaps with the source concept, but both source and target cover additional meaning, or the definitions are imprecise and it is uncertain whether they have the same boundaries to their meaning. The sense in which the mapping is narrower SHALL be described in the comments in this case, and applications should be careful when attempting to use these mappings operationally."; 506 case UNMATCHED: return "There is no match for this concept in the destination concept system."; 507 case DISJOINT: return "This is an explicit assertion that there is no mapping between the source and target concept."; 508 default: return "?"; 509 } 510 } 511 public String getDisplay() { 512 switch (this) { 513 case EQUIVALENT: return "Equivalent"; 514 case EQUAL: return "Equal"; 515 case WIDER: return "Wider"; 516 case SUBSUMES: return "Subsumes"; 517 case NARROWER: return "Narrower"; 518 case SPECIALIZES: return "Specializes"; 519 case INEXACT: return "Inexact"; 520 case UNMATCHED: return "Unmatched"; 521 case DISJOINT: return "Disjoint"; 522 default: return "?"; 523 } 524 } 525 } 526 527 public static class ConceptMapEquivalenceEnumFactory implements EnumFactory<ConceptMapEquivalence> { 528 public ConceptMapEquivalence fromCode(String codeString) throws IllegalArgumentException { 529 if (codeString == null || "".equals(codeString)) 530 if (codeString == null || "".equals(codeString)) 531 return null; 532 if ("equivalent".equals(codeString)) 533 return ConceptMapEquivalence.EQUIVALENT; 534 if ("equal".equals(codeString)) 535 return ConceptMapEquivalence.EQUAL; 536 if ("wider".equals(codeString)) 537 return ConceptMapEquivalence.WIDER; 538 if ("subsumes".equals(codeString)) 539 return ConceptMapEquivalence.SUBSUMES; 540 if ("narrower".equals(codeString)) 541 return ConceptMapEquivalence.NARROWER; 542 if ("specializes".equals(codeString)) 543 return ConceptMapEquivalence.SPECIALIZES; 544 if ("inexact".equals(codeString)) 545 return ConceptMapEquivalence.INEXACT; 546 if ("unmatched".equals(codeString)) 547 return ConceptMapEquivalence.UNMATCHED; 548 if ("disjoint".equals(codeString)) 549 return ConceptMapEquivalence.DISJOINT; 550 throw new IllegalArgumentException("Unknown ConceptMapEquivalence code '"+codeString+"'"); 551 } 552 public Enumeration<ConceptMapEquivalence> fromType(Base code) throws FHIRException { 553 if (code == null || code.isEmpty()) 554 return null; 555 String codeString = ((PrimitiveType) code).asStringValue(); 556 if (codeString == null || "".equals(codeString)) 557 return null; 558 if ("equivalent".equals(codeString)) 559 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.EQUIVALENT); 560 if ("equal".equals(codeString)) 561 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.EQUAL); 562 if ("wider".equals(codeString)) 563 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.WIDER); 564 if ("subsumes".equals(codeString)) 565 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.SUBSUMES); 566 if ("narrower".equals(codeString)) 567 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.NARROWER); 568 if ("specializes".equals(codeString)) 569 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.SPECIALIZES); 570 if ("inexact".equals(codeString)) 571 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.INEXACT); 572 if ("unmatched".equals(codeString)) 573 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.UNMATCHED); 574 if ("disjoint".equals(codeString)) 575 return new Enumeration<ConceptMapEquivalence>(this, ConceptMapEquivalence.DISJOINT); 576 throw new FHIRException("Unknown ConceptMapEquivalence code '"+codeString+"'"); 577 } 578 public String toCode(ConceptMapEquivalence code) { 579 if (code == ConceptMapEquivalence.EQUIVALENT) 580 return "equivalent"; 581 if (code == ConceptMapEquivalence.EQUAL) 582 return "equal"; 583 if (code == ConceptMapEquivalence.WIDER) 584 return "wider"; 585 if (code == ConceptMapEquivalence.SUBSUMES) 586 return "subsumes"; 587 if (code == ConceptMapEquivalence.NARROWER) 588 return "narrower"; 589 if (code == ConceptMapEquivalence.SPECIALIZES) 590 return "specializes"; 591 if (code == ConceptMapEquivalence.INEXACT) 592 return "inexact"; 593 if (code == ConceptMapEquivalence.UNMATCHED) 594 return "unmatched"; 595 if (code == ConceptMapEquivalence.DISJOINT) 596 return "disjoint"; 597 return "?"; 598 } 599 } 600 601 public enum ConformanceResourceStatus { 602 /** 603 * This resource is still under development. 604 */ 605 DRAFT, 606 /** 607 * This resource is ready for normal use. 608 */ 609 ACTIVE, 610 /** 611 * This resource has been withdrawn or superseded and should no longer be used. 612 */ 613 RETIRED, 614 /** 615 * added to help the parsers 616 */ 617 NULL; 618 public static ConformanceResourceStatus fromCode(String codeString) throws FHIRException { 619 if (codeString == null || "".equals(codeString)) 620 return null; 621 if ("draft".equals(codeString)) 622 return DRAFT; 623 if ("active".equals(codeString)) 624 return ACTIVE; 625 if ("retired".equals(codeString)) 626 return RETIRED; 627 throw new FHIRException("Unknown ConformanceResourceStatus code '"+codeString+"'"); 628 } 629 public String toCode() { 630 switch (this) { 631 case DRAFT: return "draft"; 632 case ACTIVE: return "active"; 633 case RETIRED: return "retired"; 634 default: return "?"; 635 } 636 } 637 public String getSystem() { 638 switch (this) { 639 case DRAFT: return "http://hl7.org/fhir/conformance-resource-status"; 640 case ACTIVE: return "http://hl7.org/fhir/conformance-resource-status"; 641 case RETIRED: return "http://hl7.org/fhir/conformance-resource-status"; 642 default: return "?"; 643 } 644 } 645 public String getDefinition() { 646 switch (this) { 647 case DRAFT: return "This resource is still under development."; 648 case ACTIVE: return "This resource is ready for normal use."; 649 case RETIRED: return "This resource has been withdrawn or superseded and should no longer be used."; 650 default: return "?"; 651 } 652 } 653 public String getDisplay() { 654 switch (this) { 655 case DRAFT: return "Draft"; 656 case ACTIVE: return "Active"; 657 case RETIRED: return "Retired"; 658 default: return "?"; 659 } 660 } 661 } 662 663 public static class ConformanceResourceStatusEnumFactory implements EnumFactory<ConformanceResourceStatus> { 664 public ConformanceResourceStatus fromCode(String codeString) throws IllegalArgumentException { 665 if (codeString == null || "".equals(codeString)) 666 if (codeString == null || "".equals(codeString)) 667 return null; 668 if ("draft".equals(codeString)) 669 return ConformanceResourceStatus.DRAFT; 670 if ("active".equals(codeString)) 671 return ConformanceResourceStatus.ACTIVE; 672 if ("retired".equals(codeString)) 673 return ConformanceResourceStatus.RETIRED; 674 throw new IllegalArgumentException("Unknown ConformanceResourceStatus code '"+codeString+"'"); 675 } 676 public Enumeration<ConformanceResourceStatus> fromType(Base code) throws FHIRException { 677 if (code == null || code.isEmpty()) 678 return null; 679 String codeString = ((PrimitiveType) code).asStringValue(); 680 if (codeString == null || "".equals(codeString)) 681 return null; 682 if ("draft".equals(codeString)) 683 return new Enumeration<ConformanceResourceStatus>(this, ConformanceResourceStatus.DRAFT); 684 if ("active".equals(codeString)) 685 return new Enumeration<ConformanceResourceStatus>(this, ConformanceResourceStatus.ACTIVE); 686 if ("retired".equals(codeString)) 687 return new Enumeration<ConformanceResourceStatus>(this, ConformanceResourceStatus.RETIRED); 688 throw new FHIRException("Unknown ConformanceResourceStatus code '"+codeString+"'"); 689 } 690 public String toCode(ConformanceResourceStatus code) { 691 if (code == ConformanceResourceStatus.DRAFT) 692 return "draft"; 693 if (code == ConformanceResourceStatus.ACTIVE) 694 return "active"; 695 if (code == ConformanceResourceStatus.RETIRED) 696 return "retired"; 697 return "?"; 698 } 699 } 700 701 public enum DataAbsentReason { 702 /** 703 * The value is not known. 704 */ 705 UNKNOWN, 706 /** 707 * The source human does not know the value. 708 */ 709 ASKED, 710 /** 711 * There is reason to expect (from the workflow) that the value may become known. 712 */ 713 TEMP, 714 /** 715 * The workflow didn't lead to this value being known. 716 */ 717 NOTASKED, 718 /** 719 * The information is not available due to security, privacy or related reasons. 720 */ 721 MASKED, 722 /** 723 * The source system wasn't capable of supporting this element. 724 */ 725 UNSUPPORTED, 726 /** 727 * The content of the data is represented in the resource narrative. 728 */ 729 ASTEXT, 730 /** 731 * Some system or workflow process error means that the information is not available. 732 */ 733 ERROR, 734 /** 735 * NaN, standing for not a number, is a numeric data type value representing an undefined or unrepresentable value. 736 */ 737 NAN, 738 /** 739 * added to help the parsers 740 */ 741 NULL; 742 public static DataAbsentReason fromCode(String codeString) throws FHIRException { 743 if (codeString == null || "".equals(codeString)) 744 return null; 745 if ("unknown".equals(codeString)) 746 return UNKNOWN; 747 if ("asked".equals(codeString)) 748 return ASKED; 749 if ("temp".equals(codeString)) 750 return TEMP; 751 if ("not-asked".equals(codeString)) 752 return NOTASKED; 753 if ("masked".equals(codeString)) 754 return MASKED; 755 if ("unsupported".equals(codeString)) 756 return UNSUPPORTED; 757 if ("astext".equals(codeString)) 758 return ASTEXT; 759 if ("error".equals(codeString)) 760 return ERROR; 761 if ("NaN".equals(codeString)) 762 return NAN; 763 throw new FHIRException("Unknown DataAbsentReason code '"+codeString+"'"); 764 } 765 public String toCode() { 766 switch (this) { 767 case UNKNOWN: return "unknown"; 768 case ASKED: return "asked"; 769 case TEMP: return "temp"; 770 case NOTASKED: return "not-asked"; 771 case MASKED: return "masked"; 772 case UNSUPPORTED: return "unsupported"; 773 case ASTEXT: return "astext"; 774 case ERROR: return "error"; 775 case NAN: return "NaN"; 776 default: return "?"; 777 } 778 } 779 public String getSystem() { 780 switch (this) { 781 case UNKNOWN: return "http://hl7.org/fhir/data-absent-reason"; 782 case ASKED: return "http://hl7.org/fhir/data-absent-reason"; 783 case TEMP: return "http://hl7.org/fhir/data-absent-reason"; 784 case NOTASKED: return "http://hl7.org/fhir/data-absent-reason"; 785 case MASKED: return "http://hl7.org/fhir/data-absent-reason"; 786 case UNSUPPORTED: return "http://hl7.org/fhir/data-absent-reason"; 787 case ASTEXT: return "http://hl7.org/fhir/data-absent-reason"; 788 case ERROR: return "http://hl7.org/fhir/data-absent-reason"; 789 case NAN: return "http://hl7.org/fhir/data-absent-reason"; 790 default: return "?"; 791 } 792 } 793 public String getDefinition() { 794 switch (this) { 795 case UNKNOWN: return "The value is not known."; 796 case ASKED: return "The source human does not know the value."; 797 case TEMP: return "There is reason to expect (from the workflow) that the value may become known."; 798 case NOTASKED: return "The workflow didn't lead to this value being known."; 799 case MASKED: return "The information is not available due to security, privacy or related reasons."; 800 case UNSUPPORTED: return "The source system wasn't capable of supporting this element."; 801 case ASTEXT: return "The content of the data is represented in the resource narrative."; 802 case ERROR: return "Some system or workflow process error means that the information is not available."; 803 case NAN: return "NaN, standing for not a number, is a numeric data type value representing an undefined or unrepresentable value."; 804 default: return "?"; 805 } 806 } 807 public String getDisplay() { 808 switch (this) { 809 case UNKNOWN: return "Unknown"; 810 case ASKED: return "Asked"; 811 case TEMP: return "Temp"; 812 case NOTASKED: return "Not Asked"; 813 case MASKED: return "Masked"; 814 case UNSUPPORTED: return "Unsupported"; 815 case ASTEXT: return "As Text"; 816 case ERROR: return "Error"; 817 case NAN: return "Not a Number"; 818 default: return "?"; 819 } 820 } 821 } 822 823 public static class DataAbsentReasonEnumFactory implements EnumFactory<DataAbsentReason> { 824 public DataAbsentReason fromCode(String codeString) throws IllegalArgumentException { 825 if (codeString == null || "".equals(codeString)) 826 if (codeString == null || "".equals(codeString)) 827 return null; 828 if ("unknown".equals(codeString)) 829 return DataAbsentReason.UNKNOWN; 830 if ("asked".equals(codeString)) 831 return DataAbsentReason.ASKED; 832 if ("temp".equals(codeString)) 833 return DataAbsentReason.TEMP; 834 if ("not-asked".equals(codeString)) 835 return DataAbsentReason.NOTASKED; 836 if ("masked".equals(codeString)) 837 return DataAbsentReason.MASKED; 838 if ("unsupported".equals(codeString)) 839 return DataAbsentReason.UNSUPPORTED; 840 if ("astext".equals(codeString)) 841 return DataAbsentReason.ASTEXT; 842 if ("error".equals(codeString)) 843 return DataAbsentReason.ERROR; 844 if ("NaN".equals(codeString)) 845 return DataAbsentReason.NAN; 846 throw new IllegalArgumentException("Unknown DataAbsentReason code '"+codeString+"'"); 847 } 848 public Enumeration<DataAbsentReason> fromType(Base code) throws FHIRException { 849 if (code == null || code.isEmpty()) 850 return null; 851 String codeString = ((PrimitiveType) code).asStringValue(); 852 if (codeString == null || "".equals(codeString)) 853 return null; 854 if ("unknown".equals(codeString)) 855 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.UNKNOWN); 856 if ("asked".equals(codeString)) 857 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.ASKED); 858 if ("temp".equals(codeString)) 859 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.TEMP); 860 if ("not-asked".equals(codeString)) 861 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.NOTASKED); 862 if ("masked".equals(codeString)) 863 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.MASKED); 864 if ("unsupported".equals(codeString)) 865 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.UNSUPPORTED); 866 if ("astext".equals(codeString)) 867 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.ASTEXT); 868 if ("error".equals(codeString)) 869 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.ERROR); 870 if ("NaN".equals(codeString)) 871 return new Enumeration<DataAbsentReason>(this, DataAbsentReason.NAN); 872 throw new FHIRException("Unknown DataAbsentReason code '"+codeString+"'"); 873 } 874 public String toCode(DataAbsentReason code) { 875 if (code == DataAbsentReason.UNKNOWN) 876 return "unknown"; 877 if (code == DataAbsentReason.ASKED) 878 return "asked"; 879 if (code == DataAbsentReason.TEMP) 880 return "temp"; 881 if (code == DataAbsentReason.NOTASKED) 882 return "not-asked"; 883 if (code == DataAbsentReason.MASKED) 884 return "masked"; 885 if (code == DataAbsentReason.UNSUPPORTED) 886 return "unsupported"; 887 if (code == DataAbsentReason.ASTEXT) 888 return "astext"; 889 if (code == DataAbsentReason.ERROR) 890 return "error"; 891 if (code == DataAbsentReason.NAN) 892 return "NaN"; 893 return "?"; 894 } 895 } 896 897 public enum DataType { 898 /** 899 * There is a variety of postal address formats defined around the world. This format defines a superset that is the basis for all addresses around the world. 900 */ 901 ADDRESS, 902 /** 903 * null 904 */ 905 AGE, 906 /** 907 * A text note which also contains information about who made the statement and when. 908 */ 909 ANNOTATION, 910 /** 911 * For referring to data content defined in other formats. 912 */ 913 ATTACHMENT, 914 /** 915 * Base definition for all elements that are defined inside a resource - but not those in a data type. 916 */ 917 BACKBONEELEMENT, 918 /** 919 * A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text. 920 */ 921 CODEABLECONCEPT, 922 /** 923 * A reference to a code defined by a terminology system. 924 */ 925 CODING, 926 /** 927 * Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc. 928 */ 929 CONTACTPOINT, 930 /** 931 * null 932 */ 933 COUNT, 934 /** 935 * null 936 */ 937 DISTANCE, 938 /** 939 * null 940 */ 941 DURATION, 942 /** 943 * Base definition for all elements in a resource. 944 */ 945 ELEMENT, 946 /** 947 * Captures constraints on each element within the resource, profile, or extension. 948 */ 949 ELEMENTDEFINITION, 950 /** 951 * Optional Extensions Element - found in all resources. 952 */ 953 EXTENSION, 954 /** 955 * A human's name with the ability to identify parts and usage. 956 */ 957 HUMANNAME, 958 /** 959 * A technical identifier - identifies some entity uniquely and unambiguously. 960 */ 961 IDENTIFIER, 962 /** 963 * The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource. 964 */ 965 META, 966 /** 967 * null 968 */ 969 MONEY, 970 /** 971 * A human-readable formatted text, including images. 972 */ 973 NARRATIVE, 974 /** 975 * A time period defined by a start and end date and optionally time. 976 */ 977 PERIOD, 978 /** 979 * A measured amount (or an amount that can potentially be measured). Note that measured amounts include amounts that are not precisely quantified, including amounts involving arbitrary units and floating currencies. 980 */ 981 QUANTITY, 982 /** 983 * A set of ordered Quantities defined by a low and high limit. 984 */ 985 RANGE, 986 /** 987 * A relationship of two Quantity values - expressed as a numerator and a denominator. 988 */ 989 RATIO, 990 /** 991 * A reference from one resource to another. 992 */ 993 REFERENCE, 994 /** 995 * A series of measurements taken by a device, with upper and lower limits. There may be more than one dimension in the data. 996 */ 997 SAMPLEDDATA, 998 /** 999 * A digital signature along with supporting context. The signature may be electronic/cryptographic in nature, or a graphical image representing a hand-written signature, or a signature process. Different Signature approaches have different utilities. 1000 */ 1001 SIGNATURE, 1002 /** 1003 * null 1004 */ 1005 SIMPLEQUANTITY, 1006 /** 1007 * Specifies an event that may occur multiple times. Timing schedules are used to record when things are expected or requested to occur. The most common usage is in dosage instructions for medications. They are also used when planning care of various kinds. 1008 */ 1009 TIMING, 1010 /** 1011 * A stream of bytes 1012 */ 1013 BASE64BINARY, 1014 /** 1015 * Value of "true" or "false" 1016 */ 1017 BOOLEAN, 1018 /** 1019 * A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents 1020 */ 1021 CODE, 1022 /** 1023 * A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates. 1024 */ 1025 DATE, 1026 /** 1027 * A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates. 1028 */ 1029 DATETIME, 1030 /** 1031 * A rational number with implicit precision 1032 */ 1033 DECIMAL, 1034 /** 1035 * Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive. 1036 */ 1037 ID, 1038 /** 1039 * An instant in time - known at least to the second 1040 */ 1041 INSTANT, 1042 /** 1043 * A whole number 1044 */ 1045 INTEGER, 1046 /** 1047 * A string that may contain markdown syntax for optional processing by a mark down presentation engine 1048 */ 1049 MARKDOWN, 1050 /** 1051 * An oid represented as a URI 1052 */ 1053 OID, 1054 /** 1055 * An integer with a value that is positive (e.g. >0) 1056 */ 1057 POSITIVEINT, 1058 /** 1059 * A sequence of Unicode characters 1060 */ 1061 STRING, 1062 /** 1063 * A time during the day, with no date specified 1064 */ 1065 TIME, 1066 /** 1067 * An integer with a value that is not negative (e.g. >= 0) 1068 */ 1069 UNSIGNEDINT, 1070 /** 1071 * String of characters used to identify a name or a resource 1072 */ 1073 URI, 1074 /** 1075 * A UUID, represented as a URI 1076 */ 1077 UUID, 1078 /** 1079 * XHTML format, as defined by W3C, but restricted usage (mainly, no active content) 1080 */ 1081 XHTML, 1082 /** 1083 * added to help the parsers 1084 */ 1085 NULL; 1086 public static DataType fromCode(String codeString) throws FHIRException { 1087 if (codeString == null || "".equals(codeString)) 1088 return null; 1089 if ("Address".equals(codeString)) 1090 return ADDRESS; 1091 if ("Age".equals(codeString)) 1092 return AGE; 1093 if ("Annotation".equals(codeString)) 1094 return ANNOTATION; 1095 if ("Attachment".equals(codeString)) 1096 return ATTACHMENT; 1097 if ("BackboneElement".equals(codeString)) 1098 return BACKBONEELEMENT; 1099 if ("CodeableConcept".equals(codeString)) 1100 return CODEABLECONCEPT; 1101 if ("Coding".equals(codeString)) 1102 return CODING; 1103 if ("ContactPoint".equals(codeString)) 1104 return CONTACTPOINT; 1105 if ("Count".equals(codeString)) 1106 return COUNT; 1107 if ("Distance".equals(codeString)) 1108 return DISTANCE; 1109 if ("Duration".equals(codeString)) 1110 return DURATION; 1111 if ("Element".equals(codeString)) 1112 return ELEMENT; 1113 if ("ElementDefinition".equals(codeString)) 1114 return ELEMENTDEFINITION; 1115 if ("Extension".equals(codeString)) 1116 return EXTENSION; 1117 if ("HumanName".equals(codeString)) 1118 return HUMANNAME; 1119 if ("Identifier".equals(codeString)) 1120 return IDENTIFIER; 1121 if ("Meta".equals(codeString)) 1122 return META; 1123 if ("Money".equals(codeString)) 1124 return MONEY; 1125 if ("Narrative".equals(codeString)) 1126 return NARRATIVE; 1127 if ("Period".equals(codeString)) 1128 return PERIOD; 1129 if ("Quantity".equals(codeString)) 1130 return QUANTITY; 1131 if ("Range".equals(codeString)) 1132 return RANGE; 1133 if ("Ratio".equals(codeString)) 1134 return RATIO; 1135 if ("Reference".equals(codeString)) 1136 return REFERENCE; 1137 if ("SampledData".equals(codeString)) 1138 return SAMPLEDDATA; 1139 if ("Signature".equals(codeString)) 1140 return SIGNATURE; 1141 if ("SimpleQuantity".equals(codeString)) 1142 return SIMPLEQUANTITY; 1143 if ("Timing".equals(codeString)) 1144 return TIMING; 1145 if ("base64Binary".equals(codeString)) 1146 return BASE64BINARY; 1147 if ("boolean".equals(codeString)) 1148 return BOOLEAN; 1149 if ("code".equals(codeString)) 1150 return CODE; 1151 if ("date".equals(codeString)) 1152 return DATE; 1153 if ("dateTime".equals(codeString)) 1154 return DATETIME; 1155 if ("decimal".equals(codeString)) 1156 return DECIMAL; 1157 if ("id".equals(codeString)) 1158 return ID; 1159 if ("instant".equals(codeString)) 1160 return INSTANT; 1161 if ("integer".equals(codeString)) 1162 return INTEGER; 1163 if ("markdown".equals(codeString)) 1164 return MARKDOWN; 1165 if ("oid".equals(codeString)) 1166 return OID; 1167 if ("positiveInt".equals(codeString)) 1168 return POSITIVEINT; 1169 if ("string".equals(codeString)) 1170 return STRING; 1171 if ("time".equals(codeString)) 1172 return TIME; 1173 if ("unsignedInt".equals(codeString)) 1174 return UNSIGNEDINT; 1175 if ("uri".equals(codeString)) 1176 return URI; 1177 if ("uuid".equals(codeString)) 1178 return UUID; 1179 if ("xhtml".equals(codeString)) 1180 return XHTML; 1181 throw new FHIRException("Unknown DataType code '"+codeString+"'"); 1182 } 1183 public String toCode() { 1184 switch (this) { 1185 case ADDRESS: return "Address"; 1186 case AGE: return "Age"; 1187 case ANNOTATION: return "Annotation"; 1188 case ATTACHMENT: return "Attachment"; 1189 case BACKBONEELEMENT: return "BackboneElement"; 1190 case CODEABLECONCEPT: return "CodeableConcept"; 1191 case CODING: return "Coding"; 1192 case CONTACTPOINT: return "ContactPoint"; 1193 case COUNT: return "Count"; 1194 case DISTANCE: return "Distance"; 1195 case DURATION: return "Duration"; 1196 case ELEMENT: return "Element"; 1197 case ELEMENTDEFINITION: return "ElementDefinition"; 1198 case EXTENSION: return "Extension"; 1199 case HUMANNAME: return "HumanName"; 1200 case IDENTIFIER: return "Identifier"; 1201 case META: return "Meta"; 1202 case MONEY: return "Money"; 1203 case NARRATIVE: return "Narrative"; 1204 case PERIOD: return "Period"; 1205 case QUANTITY: return "Quantity"; 1206 case RANGE: return "Range"; 1207 case RATIO: return "Ratio"; 1208 case REFERENCE: return "Reference"; 1209 case SAMPLEDDATA: return "SampledData"; 1210 case SIGNATURE: return "Signature"; 1211 case SIMPLEQUANTITY: return "SimpleQuantity"; 1212 case TIMING: return "Timing"; 1213 case BASE64BINARY: return "base64Binary"; 1214 case BOOLEAN: return "boolean"; 1215 case CODE: return "code"; 1216 case DATE: return "date"; 1217 case DATETIME: return "dateTime"; 1218 case DECIMAL: return "decimal"; 1219 case ID: return "id"; 1220 case INSTANT: return "instant"; 1221 case INTEGER: return "integer"; 1222 case MARKDOWN: return "markdown"; 1223 case OID: return "oid"; 1224 case POSITIVEINT: return "positiveInt"; 1225 case STRING: return "string"; 1226 case TIME: return "time"; 1227 case UNSIGNEDINT: return "unsignedInt"; 1228 case URI: return "uri"; 1229 case UUID: return "uuid"; 1230 case XHTML: return "xhtml"; 1231 default: return "?"; 1232 } 1233 } 1234 public String getSystem() { 1235 switch (this) { 1236 case ADDRESS: return "http://hl7.org/fhir/data-types"; 1237 case AGE: return "http://hl7.org/fhir/data-types"; 1238 case ANNOTATION: return "http://hl7.org/fhir/data-types"; 1239 case ATTACHMENT: return "http://hl7.org/fhir/data-types"; 1240 case BACKBONEELEMENT: return "http://hl7.org/fhir/data-types"; 1241 case CODEABLECONCEPT: return "http://hl7.org/fhir/data-types"; 1242 case CODING: return "http://hl7.org/fhir/data-types"; 1243 case CONTACTPOINT: return "http://hl7.org/fhir/data-types"; 1244 case COUNT: return "http://hl7.org/fhir/data-types"; 1245 case DISTANCE: return "http://hl7.org/fhir/data-types"; 1246 case DURATION: return "http://hl7.org/fhir/data-types"; 1247 case ELEMENT: return "http://hl7.org/fhir/data-types"; 1248 case ELEMENTDEFINITION: return "http://hl7.org/fhir/data-types"; 1249 case EXTENSION: return "http://hl7.org/fhir/data-types"; 1250 case HUMANNAME: return "http://hl7.org/fhir/data-types"; 1251 case IDENTIFIER: return "http://hl7.org/fhir/data-types"; 1252 case META: return "http://hl7.org/fhir/data-types"; 1253 case MONEY: return "http://hl7.org/fhir/data-types"; 1254 case NARRATIVE: return "http://hl7.org/fhir/data-types"; 1255 case PERIOD: return "http://hl7.org/fhir/data-types"; 1256 case QUANTITY: return "http://hl7.org/fhir/data-types"; 1257 case RANGE: return "http://hl7.org/fhir/data-types"; 1258 case RATIO: return "http://hl7.org/fhir/data-types"; 1259 case REFERENCE: return "http://hl7.org/fhir/data-types"; 1260 case SAMPLEDDATA: return "http://hl7.org/fhir/data-types"; 1261 case SIGNATURE: return "http://hl7.org/fhir/data-types"; 1262 case SIMPLEQUANTITY: return "http://hl7.org/fhir/data-types"; 1263 case TIMING: return "http://hl7.org/fhir/data-types"; 1264 case BASE64BINARY: return "http://hl7.org/fhir/data-types"; 1265 case BOOLEAN: return "http://hl7.org/fhir/data-types"; 1266 case CODE: return "http://hl7.org/fhir/data-types"; 1267 case DATE: return "http://hl7.org/fhir/data-types"; 1268 case DATETIME: return "http://hl7.org/fhir/data-types"; 1269 case DECIMAL: return "http://hl7.org/fhir/data-types"; 1270 case ID: return "http://hl7.org/fhir/data-types"; 1271 case INSTANT: return "http://hl7.org/fhir/data-types"; 1272 case INTEGER: return "http://hl7.org/fhir/data-types"; 1273 case MARKDOWN: return "http://hl7.org/fhir/data-types"; 1274 case OID: return "http://hl7.org/fhir/data-types"; 1275 case POSITIVEINT: return "http://hl7.org/fhir/data-types"; 1276 case STRING: return "http://hl7.org/fhir/data-types"; 1277 case TIME: return "http://hl7.org/fhir/data-types"; 1278 case UNSIGNEDINT: return "http://hl7.org/fhir/data-types"; 1279 case URI: return "http://hl7.org/fhir/data-types"; 1280 case UUID: return "http://hl7.org/fhir/data-types"; 1281 case XHTML: return "http://hl7.org/fhir/data-types"; 1282 default: return "?"; 1283 } 1284 } 1285 public String getDefinition() { 1286 switch (this) { 1287 case ADDRESS: return "There is a variety of postal address formats defined around the world. This format defines a superset that is the basis for all addresses around the world."; 1288 case AGE: return ""; 1289 case ANNOTATION: return "A text note which also contains information about who made the statement and when."; 1290 case ATTACHMENT: return "For referring to data content defined in other formats."; 1291 case BACKBONEELEMENT: return "Base definition for all elements that are defined inside a resource - but not those in a data type."; 1292 case CODEABLECONCEPT: return "A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text."; 1293 case CODING: return "A reference to a code defined by a terminology system."; 1294 case CONTACTPOINT: return "Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc."; 1295 case COUNT: return ""; 1296 case DISTANCE: return ""; 1297 case DURATION: return ""; 1298 case ELEMENT: return "Base definition for all elements in a resource."; 1299 case ELEMENTDEFINITION: return "Captures constraints on each element within the resource, profile, or extension."; 1300 case EXTENSION: return "Optional Extensions Element - found in all resources."; 1301 case HUMANNAME: return "A human's name with the ability to identify parts and usage."; 1302 case IDENTIFIER: return "A technical identifier - identifies some entity uniquely and unambiguously."; 1303 case META: return "The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource."; 1304 case MONEY: return ""; 1305 case NARRATIVE: return "A human-readable formatted text, including images."; 1306 case PERIOD: return "A time period defined by a start and end date and optionally time."; 1307 case QUANTITY: return "A measured amount (or an amount that can potentially be measured). Note that measured amounts include amounts that are not precisely quantified, including amounts involving arbitrary units and floating currencies."; 1308 case RANGE: return "A set of ordered Quantities defined by a low and high limit."; 1309 case RATIO: return "A relationship of two Quantity values - expressed as a numerator and a denominator."; 1310 case REFERENCE: return "A reference from one resource to another."; 1311 case SAMPLEDDATA: return "A series of measurements taken by a device, with upper and lower limits. There may be more than one dimension in the data."; 1312 case SIGNATURE: return "A digital signature along with supporting context. The signature may be electronic/cryptographic in nature, or a graphical image representing a hand-written signature, or a signature process. Different Signature approaches have different utilities."; 1313 case SIMPLEQUANTITY: return ""; 1314 case TIMING: return "Specifies an event that may occur multiple times. Timing schedules are used to record when things are expected or requested to occur. The most common usage is in dosage instructions for medications. They are also used when planning care of various kinds."; 1315 case BASE64BINARY: return "A stream of bytes"; 1316 case BOOLEAN: return "Value of \"true\" or \"false\""; 1317 case CODE: return "A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents"; 1318 case DATE: return "A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates."; 1319 case DATETIME: return "A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates."; 1320 case DECIMAL: return "A rational number with implicit precision"; 1321 case ID: return "Any combination of letters, numerals, \"-\" and \".\", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive."; 1322 case INSTANT: return "An instant in time - known at least to the second"; 1323 case INTEGER: return "A whole number"; 1324 case MARKDOWN: return "A string that may contain markdown syntax for optional processing by a mark down presentation engine"; 1325 case OID: return "An oid represented as a URI"; 1326 case POSITIVEINT: return "An integer with a value that is positive (e.g. >0)"; 1327 case STRING: return "A sequence of Unicode characters"; 1328 case TIME: return "A time during the day, with no date specified"; 1329 case UNSIGNEDINT: return "An integer with a value that is not negative (e.g. >= 0)"; 1330 case URI: return "String of characters used to identify a name or a resource"; 1331 case UUID: return "A UUID, represented as a URI"; 1332 case XHTML: return "XHTML format, as defined by W3C, but restricted usage (mainly, no active content)"; 1333 default: return "?"; 1334 } 1335 } 1336 public String getDisplay() { 1337 switch (this) { 1338 case ADDRESS: return "Address"; 1339 case AGE: return "Age"; 1340 case ANNOTATION: return "Annotation"; 1341 case ATTACHMENT: return "Attachment"; 1342 case BACKBONEELEMENT: return "BackboneElement"; 1343 case CODEABLECONCEPT: return "CodeableConcept"; 1344 case CODING: return "Coding"; 1345 case CONTACTPOINT: return "ContactPoint"; 1346 case COUNT: return "Count"; 1347 case DISTANCE: return "Distance"; 1348 case DURATION: return "Duration"; 1349 case ELEMENT: return "Element"; 1350 case ELEMENTDEFINITION: return "ElementDefinition"; 1351 case EXTENSION: return "Extension"; 1352 case HUMANNAME: return "HumanName"; 1353 case IDENTIFIER: return "Identifier"; 1354 case META: return "Meta"; 1355 case MONEY: return "Money"; 1356 case NARRATIVE: return "Narrative"; 1357 case PERIOD: return "Period"; 1358 case QUANTITY: return "Quantity"; 1359 case RANGE: return "Range"; 1360 case RATIO: return "Ratio"; 1361 case REFERENCE: return "Reference"; 1362 case SAMPLEDDATA: return "SampledData"; 1363 case SIGNATURE: return "Signature"; 1364 case SIMPLEQUANTITY: return "SimpleQuantity"; 1365 case TIMING: return "Timing"; 1366 case BASE64BINARY: return "base64Binary"; 1367 case BOOLEAN: return "boolean"; 1368 case CODE: return "code"; 1369 case DATE: return "date"; 1370 case DATETIME: return "dateTime"; 1371 case DECIMAL: return "decimal"; 1372 case ID: return "id"; 1373 case INSTANT: return "instant"; 1374 case INTEGER: return "integer"; 1375 case MARKDOWN: return "markdown"; 1376 case OID: return "oid"; 1377 case POSITIVEINT: return "positiveInt"; 1378 case STRING: return "string"; 1379 case TIME: return "time"; 1380 case UNSIGNEDINT: return "unsignedInt"; 1381 case URI: return "uri"; 1382 case UUID: return "uuid"; 1383 case XHTML: return "XHTML"; 1384 default: return "?"; 1385 } 1386 } 1387 } 1388 1389 public static class DataTypeEnumFactory implements EnumFactory<DataType> { 1390 public DataType fromCode(String codeString) throws IllegalArgumentException { 1391 if (codeString == null || "".equals(codeString)) 1392 if (codeString == null || "".equals(codeString)) 1393 return null; 1394 if ("Address".equals(codeString)) 1395 return DataType.ADDRESS; 1396 if ("Age".equals(codeString)) 1397 return DataType.AGE; 1398 if ("Annotation".equals(codeString)) 1399 return DataType.ANNOTATION; 1400 if ("Attachment".equals(codeString)) 1401 return DataType.ATTACHMENT; 1402 if ("BackboneElement".equals(codeString)) 1403 return DataType.BACKBONEELEMENT; 1404 if ("CodeableConcept".equals(codeString)) 1405 return DataType.CODEABLECONCEPT; 1406 if ("Coding".equals(codeString)) 1407 return DataType.CODING; 1408 if ("ContactPoint".equals(codeString)) 1409 return DataType.CONTACTPOINT; 1410 if ("Count".equals(codeString)) 1411 return DataType.COUNT; 1412 if ("Distance".equals(codeString)) 1413 return DataType.DISTANCE; 1414 if ("Duration".equals(codeString)) 1415 return DataType.DURATION; 1416 if ("Element".equals(codeString)) 1417 return DataType.ELEMENT; 1418 if ("ElementDefinition".equals(codeString)) 1419 return DataType.ELEMENTDEFINITION; 1420 if ("Extension".equals(codeString)) 1421 return DataType.EXTENSION; 1422 if ("HumanName".equals(codeString)) 1423 return DataType.HUMANNAME; 1424 if ("Identifier".equals(codeString)) 1425 return DataType.IDENTIFIER; 1426 if ("Meta".equals(codeString)) 1427 return DataType.META; 1428 if ("Money".equals(codeString)) 1429 return DataType.MONEY; 1430 if ("Narrative".equals(codeString)) 1431 return DataType.NARRATIVE; 1432 if ("Period".equals(codeString)) 1433 return DataType.PERIOD; 1434 if ("Quantity".equals(codeString)) 1435 return DataType.QUANTITY; 1436 if ("Range".equals(codeString)) 1437 return DataType.RANGE; 1438 if ("Ratio".equals(codeString)) 1439 return DataType.RATIO; 1440 if ("Reference".equals(codeString)) 1441 return DataType.REFERENCE; 1442 if ("SampledData".equals(codeString)) 1443 return DataType.SAMPLEDDATA; 1444 if ("Signature".equals(codeString)) 1445 return DataType.SIGNATURE; 1446 if ("SimpleQuantity".equals(codeString)) 1447 return DataType.SIMPLEQUANTITY; 1448 if ("Timing".equals(codeString)) 1449 return DataType.TIMING; 1450 if ("base64Binary".equals(codeString)) 1451 return DataType.BASE64BINARY; 1452 if ("boolean".equals(codeString)) 1453 return DataType.BOOLEAN; 1454 if ("code".equals(codeString)) 1455 return DataType.CODE; 1456 if ("date".equals(codeString)) 1457 return DataType.DATE; 1458 if ("dateTime".equals(codeString)) 1459 return DataType.DATETIME; 1460 if ("decimal".equals(codeString)) 1461 return DataType.DECIMAL; 1462 if ("id".equals(codeString)) 1463 return DataType.ID; 1464 if ("instant".equals(codeString)) 1465 return DataType.INSTANT; 1466 if ("integer".equals(codeString)) 1467 return DataType.INTEGER; 1468 if ("markdown".equals(codeString)) 1469 return DataType.MARKDOWN; 1470 if ("oid".equals(codeString)) 1471 return DataType.OID; 1472 if ("positiveInt".equals(codeString)) 1473 return DataType.POSITIVEINT; 1474 if ("string".equals(codeString)) 1475 return DataType.STRING; 1476 if ("time".equals(codeString)) 1477 return DataType.TIME; 1478 if ("unsignedInt".equals(codeString)) 1479 return DataType.UNSIGNEDINT; 1480 if ("uri".equals(codeString)) 1481 return DataType.URI; 1482 if ("uuid".equals(codeString)) 1483 return DataType.UUID; 1484 if ("xhtml".equals(codeString)) 1485 return DataType.XHTML; 1486 throw new IllegalArgumentException("Unknown DataType code '"+codeString+"'"); 1487 } 1488 public Enumeration<DataType> fromType(Base code) throws FHIRException { 1489 if (code == null || code.isEmpty()) 1490 return null; 1491 String codeString = ((PrimitiveType) code).asStringValue(); 1492 if (codeString == null || "".equals(codeString)) 1493 return null; 1494 if ("Address".equals(codeString)) 1495 return new Enumeration<DataType>(this, DataType.ADDRESS); 1496 if ("Age".equals(codeString)) 1497 return new Enumeration<DataType>(this, DataType.AGE); 1498 if ("Annotation".equals(codeString)) 1499 return new Enumeration<DataType>(this, DataType.ANNOTATION); 1500 if ("Attachment".equals(codeString)) 1501 return new Enumeration<DataType>(this, DataType.ATTACHMENT); 1502 if ("BackboneElement".equals(codeString)) 1503 return new Enumeration<DataType>(this, DataType.BACKBONEELEMENT); 1504 if ("CodeableConcept".equals(codeString)) 1505 return new Enumeration<DataType>(this, DataType.CODEABLECONCEPT); 1506 if ("Coding".equals(codeString)) 1507 return new Enumeration<DataType>(this, DataType.CODING); 1508 if ("ContactPoint".equals(codeString)) 1509 return new Enumeration<DataType>(this, DataType.CONTACTPOINT); 1510 if ("Count".equals(codeString)) 1511 return new Enumeration<DataType>(this, DataType.COUNT); 1512 if ("Distance".equals(codeString)) 1513 return new Enumeration<DataType>(this, DataType.DISTANCE); 1514 if ("Duration".equals(codeString)) 1515 return new Enumeration<DataType>(this, DataType.DURATION); 1516 if ("Element".equals(codeString)) 1517 return new Enumeration<DataType>(this, DataType.ELEMENT); 1518 if ("ElementDefinition".equals(codeString)) 1519 return new Enumeration<DataType>(this, DataType.ELEMENTDEFINITION); 1520 if ("Extension".equals(codeString)) 1521 return new Enumeration<DataType>(this, DataType.EXTENSION); 1522 if ("HumanName".equals(codeString)) 1523 return new Enumeration<DataType>(this, DataType.HUMANNAME); 1524 if ("Identifier".equals(codeString)) 1525 return new Enumeration<DataType>(this, DataType.IDENTIFIER); 1526 if ("Meta".equals(codeString)) 1527 return new Enumeration<DataType>(this, DataType.META); 1528 if ("Money".equals(codeString)) 1529 return new Enumeration<DataType>(this, DataType.MONEY); 1530 if ("Narrative".equals(codeString)) 1531 return new Enumeration<DataType>(this, DataType.NARRATIVE); 1532 if ("Period".equals(codeString)) 1533 return new Enumeration<DataType>(this, DataType.PERIOD); 1534 if ("Quantity".equals(codeString)) 1535 return new Enumeration<DataType>(this, DataType.QUANTITY); 1536 if ("Range".equals(codeString)) 1537 return new Enumeration<DataType>(this, DataType.RANGE); 1538 if ("Ratio".equals(codeString)) 1539 return new Enumeration<DataType>(this, DataType.RATIO); 1540 if ("Reference".equals(codeString)) 1541 return new Enumeration<DataType>(this, DataType.REFERENCE); 1542 if ("SampledData".equals(codeString)) 1543 return new Enumeration<DataType>(this, DataType.SAMPLEDDATA); 1544 if ("Signature".equals(codeString)) 1545 return new Enumeration<DataType>(this, DataType.SIGNATURE); 1546 if ("SimpleQuantity".equals(codeString)) 1547 return new Enumeration<DataType>(this, DataType.SIMPLEQUANTITY); 1548 if ("Timing".equals(codeString)) 1549 return new Enumeration<DataType>(this, DataType.TIMING); 1550 if ("base64Binary".equals(codeString)) 1551 return new Enumeration<DataType>(this, DataType.BASE64BINARY); 1552 if ("boolean".equals(codeString)) 1553 return new Enumeration<DataType>(this, DataType.BOOLEAN); 1554 if ("code".equals(codeString)) 1555 return new Enumeration<DataType>(this, DataType.CODE); 1556 if ("date".equals(codeString)) 1557 return new Enumeration<DataType>(this, DataType.DATE); 1558 if ("dateTime".equals(codeString)) 1559 return new Enumeration<DataType>(this, DataType.DATETIME); 1560 if ("decimal".equals(codeString)) 1561 return new Enumeration<DataType>(this, DataType.DECIMAL); 1562 if ("id".equals(codeString)) 1563 return new Enumeration<DataType>(this, DataType.ID); 1564 if ("instant".equals(codeString)) 1565 return new Enumeration<DataType>(this, DataType.INSTANT); 1566 if ("integer".equals(codeString)) 1567 return new Enumeration<DataType>(this, DataType.INTEGER); 1568 if ("markdown".equals(codeString)) 1569 return new Enumeration<DataType>(this, DataType.MARKDOWN); 1570 if ("oid".equals(codeString)) 1571 return new Enumeration<DataType>(this, DataType.OID); 1572 if ("positiveInt".equals(codeString)) 1573 return new Enumeration<DataType>(this, DataType.POSITIVEINT); 1574 if ("string".equals(codeString)) 1575 return new Enumeration<DataType>(this, DataType.STRING); 1576 if ("time".equals(codeString)) 1577 return new Enumeration<DataType>(this, DataType.TIME); 1578 if ("unsignedInt".equals(codeString)) 1579 return new Enumeration<DataType>(this, DataType.UNSIGNEDINT); 1580 if ("uri".equals(codeString)) 1581 return new Enumeration<DataType>(this, DataType.URI); 1582 if ("uuid".equals(codeString)) 1583 return new Enumeration<DataType>(this, DataType.UUID); 1584 if ("xhtml".equals(codeString)) 1585 return new Enumeration<DataType>(this, DataType.XHTML); 1586 throw new FHIRException("Unknown DataType code '"+codeString+"'"); 1587 } 1588 public String toCode(DataType code) { 1589 if (code == DataType.ADDRESS) 1590 return "Address"; 1591 if (code == DataType.AGE) 1592 return "Age"; 1593 if (code == DataType.ANNOTATION) 1594 return "Annotation"; 1595 if (code == DataType.ATTACHMENT) 1596 return "Attachment"; 1597 if (code == DataType.BACKBONEELEMENT) 1598 return "BackboneElement"; 1599 if (code == DataType.CODEABLECONCEPT) 1600 return "CodeableConcept"; 1601 if (code == DataType.CODING) 1602 return "Coding"; 1603 if (code == DataType.CONTACTPOINT) 1604 return "ContactPoint"; 1605 if (code == DataType.COUNT) 1606 return "Count"; 1607 if (code == DataType.DISTANCE) 1608 return "Distance"; 1609 if (code == DataType.DURATION) 1610 return "Duration"; 1611 if (code == DataType.ELEMENT) 1612 return "Element"; 1613 if (code == DataType.ELEMENTDEFINITION) 1614 return "ElementDefinition"; 1615 if (code == DataType.EXTENSION) 1616 return "Extension"; 1617 if (code == DataType.HUMANNAME) 1618 return "HumanName"; 1619 if (code == DataType.IDENTIFIER) 1620 return "Identifier"; 1621 if (code == DataType.META) 1622 return "Meta"; 1623 if (code == DataType.MONEY) 1624 return "Money"; 1625 if (code == DataType.NARRATIVE) 1626 return "Narrative"; 1627 if (code == DataType.PERIOD) 1628 return "Period"; 1629 if (code == DataType.QUANTITY) 1630 return "Quantity"; 1631 if (code == DataType.RANGE) 1632 return "Range"; 1633 if (code == DataType.RATIO) 1634 return "Ratio"; 1635 if (code == DataType.REFERENCE) 1636 return "Reference"; 1637 if (code == DataType.SAMPLEDDATA) 1638 return "SampledData"; 1639 if (code == DataType.SIGNATURE) 1640 return "Signature"; 1641 if (code == DataType.SIMPLEQUANTITY) 1642 return "SimpleQuantity"; 1643 if (code == DataType.TIMING) 1644 return "Timing"; 1645 if (code == DataType.BASE64BINARY) 1646 return "base64Binary"; 1647 if (code == DataType.BOOLEAN) 1648 return "boolean"; 1649 if (code == DataType.CODE) 1650 return "code"; 1651 if (code == DataType.DATE) 1652 return "date"; 1653 if (code == DataType.DATETIME) 1654 return "dateTime"; 1655 if (code == DataType.DECIMAL) 1656 return "decimal"; 1657 if (code == DataType.ID) 1658 return "id"; 1659 if (code == DataType.INSTANT) 1660 return "instant"; 1661 if (code == DataType.INTEGER) 1662 return "integer"; 1663 if (code == DataType.MARKDOWN) 1664 return "markdown"; 1665 if (code == DataType.OID) 1666 return "oid"; 1667 if (code == DataType.POSITIVEINT) 1668 return "positiveInt"; 1669 if (code == DataType.STRING) 1670 return "string"; 1671 if (code == DataType.TIME) 1672 return "time"; 1673 if (code == DataType.UNSIGNEDINT) 1674 return "unsignedInt"; 1675 if (code == DataType.URI) 1676 return "uri"; 1677 if (code == DataType.UUID) 1678 return "uuid"; 1679 if (code == DataType.XHTML) 1680 return "xhtml"; 1681 return "?"; 1682 } 1683 } 1684 1685 public enum DocumentReferenceStatus { 1686 /** 1687 * This is the current reference for this document. 1688 */ 1689 CURRENT, 1690 /** 1691 * This reference has been superseded by another reference. 1692 */ 1693 SUPERSEDED, 1694 /** 1695 * This reference was created in error. 1696 */ 1697 ENTEREDINERROR, 1698 /** 1699 * added to help the parsers 1700 */ 1701 NULL; 1702 public static DocumentReferenceStatus fromCode(String codeString) throws FHIRException { 1703 if (codeString == null || "".equals(codeString)) 1704 return null; 1705 if ("current".equals(codeString)) 1706 return CURRENT; 1707 if ("superseded".equals(codeString)) 1708 return SUPERSEDED; 1709 if ("entered-in-error".equals(codeString)) 1710 return ENTEREDINERROR; 1711 throw new FHIRException("Unknown DocumentReferenceStatus code '"+codeString+"'"); 1712 } 1713 public String toCode() { 1714 switch (this) { 1715 case CURRENT: return "current"; 1716 case SUPERSEDED: return "superseded"; 1717 case ENTEREDINERROR: return "entered-in-error"; 1718 default: return "?"; 1719 } 1720 } 1721 public String getSystem() { 1722 switch (this) { 1723 case CURRENT: return "http://hl7.org/fhir/document-reference-status"; 1724 case SUPERSEDED: return "http://hl7.org/fhir/document-reference-status"; 1725 case ENTEREDINERROR: return "http://hl7.org/fhir/document-reference-status"; 1726 default: return "?"; 1727 } 1728 } 1729 public String getDefinition() { 1730 switch (this) { 1731 case CURRENT: return "This is the current reference for this document."; 1732 case SUPERSEDED: return "This reference has been superseded by another reference."; 1733 case ENTEREDINERROR: return "This reference was created in error."; 1734 default: return "?"; 1735 } 1736 } 1737 public String getDisplay() { 1738 switch (this) { 1739 case CURRENT: return "Current"; 1740 case SUPERSEDED: return "Superseded"; 1741 case ENTEREDINERROR: return "Entered in Error"; 1742 default: return "?"; 1743 } 1744 } 1745 } 1746 1747 public static class DocumentReferenceStatusEnumFactory implements EnumFactory<DocumentReferenceStatus> { 1748 public DocumentReferenceStatus fromCode(String codeString) throws IllegalArgumentException { 1749 if (codeString == null || "".equals(codeString)) 1750 if (codeString == null || "".equals(codeString)) 1751 return null; 1752 if ("current".equals(codeString)) 1753 return DocumentReferenceStatus.CURRENT; 1754 if ("superseded".equals(codeString)) 1755 return DocumentReferenceStatus.SUPERSEDED; 1756 if ("entered-in-error".equals(codeString)) 1757 return DocumentReferenceStatus.ENTEREDINERROR; 1758 throw new IllegalArgumentException("Unknown DocumentReferenceStatus code '"+codeString+"'"); 1759 } 1760 public Enumeration<DocumentReferenceStatus> fromType(Base code) throws FHIRException { 1761 if (code == null || code.isEmpty()) 1762 return null; 1763 String codeString = ((PrimitiveType) code).asStringValue(); 1764 if (codeString == null || "".equals(codeString)) 1765 return null; 1766 if ("current".equals(codeString)) 1767 return new Enumeration<DocumentReferenceStatus>(this, DocumentReferenceStatus.CURRENT); 1768 if ("superseded".equals(codeString)) 1769 return new Enumeration<DocumentReferenceStatus>(this, DocumentReferenceStatus.SUPERSEDED); 1770 if ("entered-in-error".equals(codeString)) 1771 return new Enumeration<DocumentReferenceStatus>(this, DocumentReferenceStatus.ENTEREDINERROR); 1772 throw new FHIRException("Unknown DocumentReferenceStatus code '"+codeString+"'"); 1773 } 1774 public String toCode(DocumentReferenceStatus code) { 1775 if (code == DocumentReferenceStatus.CURRENT) 1776 return "current"; 1777 if (code == DocumentReferenceStatus.SUPERSEDED) 1778 return "superseded"; 1779 if (code == DocumentReferenceStatus.ENTEREDINERROR) 1780 return "entered-in-error"; 1781 return "?"; 1782 } 1783 } 1784 1785 public enum FHIRDefinedType { 1786 /** 1787 * There is a variety of postal address formats defined around the world. This format defines a superset that is the basis for all addresses around the world. 1788 */ 1789 ADDRESS, 1790 /** 1791 * null 1792 */ 1793 AGE, 1794 /** 1795 * A text note which also contains information about who made the statement and when. 1796 */ 1797 ANNOTATION, 1798 /** 1799 * For referring to data content defined in other formats. 1800 */ 1801 ATTACHMENT, 1802 /** 1803 * Base definition for all elements that are defined inside a resource - but not those in a data type. 1804 */ 1805 BACKBONEELEMENT, 1806 /** 1807 * A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text. 1808 */ 1809 CODEABLECONCEPT, 1810 /** 1811 * A reference to a code defined by a terminology system. 1812 */ 1813 CODING, 1814 /** 1815 * Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc. 1816 */ 1817 CONTACTPOINT, 1818 /** 1819 * null 1820 */ 1821 COUNT, 1822 /** 1823 * null 1824 */ 1825 DISTANCE, 1826 /** 1827 * null 1828 */ 1829 DURATION, 1830 /** 1831 * Base definition for all elements in a resource. 1832 */ 1833 ELEMENT, 1834 /** 1835 * Captures constraints on each element within the resource, profile, or extension. 1836 */ 1837 ELEMENTDEFINITION, 1838 /** 1839 * Optional Extensions Element - found in all resources. 1840 */ 1841 EXTENSION, 1842 /** 1843 * A human's name with the ability to identify parts and usage. 1844 */ 1845 HUMANNAME, 1846 /** 1847 * A technical identifier - identifies some entity uniquely and unambiguously. 1848 */ 1849 IDENTIFIER, 1850 /** 1851 * The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource. 1852 */ 1853 META, 1854 /** 1855 * null 1856 */ 1857 MONEY, 1858 /** 1859 * A human-readable formatted text, including images. 1860 */ 1861 NARRATIVE, 1862 /** 1863 * A time period defined by a start and end date and optionally time. 1864 */ 1865 PERIOD, 1866 /** 1867 * A measured amount (or an amount that can potentially be measured). Note that measured amounts include amounts that are not precisely quantified, including amounts involving arbitrary units and floating currencies. 1868 */ 1869 QUANTITY, 1870 /** 1871 * A set of ordered Quantities defined by a low and high limit. 1872 */ 1873 RANGE, 1874 /** 1875 * A relationship of two Quantity values - expressed as a numerator and a denominator. 1876 */ 1877 RATIO, 1878 /** 1879 * A reference from one resource to another. 1880 */ 1881 REFERENCE, 1882 /** 1883 * A series of measurements taken by a device, with upper and lower limits. There may be more than one dimension in the data. 1884 */ 1885 SAMPLEDDATA, 1886 /** 1887 * A digital signature along with supporting context. The signature may be electronic/cryptographic in nature, or a graphical image representing a hand-written signature, or a signature process. Different Signature approaches have different utilities. 1888 */ 1889 SIGNATURE, 1890 /** 1891 * null 1892 */ 1893 SIMPLEQUANTITY, 1894 /** 1895 * Specifies an event that may occur multiple times. Timing schedules are used to record when things are expected or requested to occur. The most common usage is in dosage instructions for medications. They are also used when planning care of various kinds. 1896 */ 1897 TIMING, 1898 /** 1899 * A stream of bytes 1900 */ 1901 BASE64BINARY, 1902 /** 1903 * Value of "true" or "false" 1904 */ 1905 BOOLEAN, 1906 /** 1907 * A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents 1908 */ 1909 CODE, 1910 /** 1911 * A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates. 1912 */ 1913 DATE, 1914 /** 1915 * A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates. 1916 */ 1917 DATETIME, 1918 /** 1919 * A rational number with implicit precision 1920 */ 1921 DECIMAL, 1922 /** 1923 * Any combination of letters, numerals, "-" and ".", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive. 1924 */ 1925 ID, 1926 /** 1927 * An instant in time - known at least to the second 1928 */ 1929 INSTANT, 1930 /** 1931 * A whole number 1932 */ 1933 INTEGER, 1934 /** 1935 * A string that may contain markdown syntax for optional processing by a mark down presentation engine 1936 */ 1937 MARKDOWN, 1938 /** 1939 * An oid represented as a URI 1940 */ 1941 OID, 1942 /** 1943 * An integer with a value that is positive (e.g. >0) 1944 */ 1945 POSITIVEINT, 1946 /** 1947 * A sequence of Unicode characters 1948 */ 1949 STRING, 1950 /** 1951 * A time during the day, with no date specified 1952 */ 1953 TIME, 1954 /** 1955 * An integer with a value that is not negative (e.g. >= 0) 1956 */ 1957 UNSIGNEDINT, 1958 /** 1959 * String of characters used to identify a name or a resource 1960 */ 1961 URI, 1962 /** 1963 * A UUID, represented as a URI 1964 */ 1965 UUID, 1966 /** 1967 * XHTML format, as defined by W3C, but restricted usage (mainly, no active content) 1968 */ 1969 XHTML, 1970 /** 1971 * A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centres, etc. 1972 */ 1973 ACCOUNT, 1974 /** 1975 * Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance. 1976 */ 1977 ALLERGYINTOLERANCE, 1978 /** 1979 * A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s). 1980 */ 1981 APPOINTMENT, 1982 /** 1983 * A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection. 1984 */ 1985 APPOINTMENTRESPONSE, 1986 /** 1987 * A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage. 1988 */ 1989 AUDITEVENT, 1990 /** 1991 * Basic is used for handling concepts not yet defined in FHIR, narrative-only resources that don't map to an existing resource, and custom resources not appropriate for inclusion in the FHIR specification. 1992 */ 1993 BASIC, 1994 /** 1995 * A binary resource can contain any content, whether text, image, pdf, zip archive, etc. 1996 */ 1997 BINARY, 1998 /** 1999 * Record details about the anatomical location of a specimen or body part. This resource may be used when a coded concept does not provide the necessary detail needed for the use case. 2000 */ 2001 BODYSITE, 2002 /** 2003 * A container for a collection of resources. 2004 */ 2005 BUNDLE, 2006 /** 2007 * Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions. 2008 */ 2009 CAREPLAN, 2010 /** 2011 * A provider issued list of services and products provided, or to be provided, to a patient which is provided to an insurer for payment recovery. 2012 */ 2013 CLAIM, 2014 /** 2015 * This resource provides the adjudication details from the processing of a Claim resource. 2016 */ 2017 CLAIMRESPONSE, 2018 /** 2019 * A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called "ClinicalImpression" rather than "ClinicalAssessment" to avoid confusion with the recording of assessment tools such as Apgar score. 2020 */ 2021 CLINICALIMPRESSION, 2022 /** 2023 * An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency was notified about a reportable condition. 2024 */ 2025 COMMUNICATION, 2026 /** 2027 * A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition. 2028 */ 2029 COMMUNICATIONREQUEST, 2030 /** 2031 * A set of healthcare-related information that is assembled together into a single logical document that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. While a Composition defines the structure, it does not actually contain the content: rather the full content of a document is contained in a Bundle, of which the Composition is the first resource contained. 2032 */ 2033 COMPOSITION, 2034 /** 2035 * A statement of relationships from one set of concepts to one or more other concepts - either code systems or data elements, or classes in class models. 2036 */ 2037 CONCEPTMAP, 2038 /** 2039 * Use to record detailed information about conditions, problems or diagnoses recognized by a clinician. There are many uses including: recording a diagnosis during an encounter; populating a problem list or a summary statement, such as a discharge summary. 2040 */ 2041 CONDITION, 2042 /** 2043 * A conformance statement is a set of capabilities of a FHIR Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation. 2044 */ 2045 CONFORMANCE, 2046 /** 2047 * A formal agreement between parties regarding the conduct of business, exchange of information or other matters. 2048 */ 2049 CONTRACT, 2050 /** 2051 * Financial instrument which may be used to pay for or reimburse health care products and services. 2052 */ 2053 COVERAGE, 2054 /** 2055 * The formal description of a single piece of information that can be gathered and reported. 2056 */ 2057 DATAELEMENT, 2058 /** 2059 * Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc. 2060 */ 2061 DETECTEDISSUE, 2062 /** 2063 * This resource identifies an instance of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device. Medical devices includes durable (reusable) medical equipment, implantable devices, as well as disposable equipment used for diagnostic, treatment, and research for healthcare and public health. Non-medical devices may include items such as a machine, cellphone, computer, application, etc. 2064 */ 2065 DEVICE, 2066 /** 2067 * Describes the characteristics, operational status and capabilities of a medical-related component of a medical device. 2068 */ 2069 DEVICECOMPONENT, 2070 /** 2071 * Describes a measurement, calculation or setting capability of a medical device. 2072 */ 2073 DEVICEMETRIC, 2074 /** 2075 * Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker. 2076 */ 2077 DEVICEUSEREQUEST, 2078 /** 2079 * A record of a device being used by a patient where the record is the result of a report from the patient or another clinician. 2080 */ 2081 DEVICEUSESTATEMENT, 2082 /** 2083 * A record of a request for a diagnostic investigation service to be performed. 2084 */ 2085 DIAGNOSTICORDER, 2086 /** 2087 * The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports. 2088 */ 2089 DIAGNOSTICREPORT, 2090 /** 2091 * A manifest that defines a set of documents. 2092 */ 2093 DOCUMENTMANIFEST, 2094 /** 2095 * A reference to a document . 2096 */ 2097 DOCUMENTREFERENCE, 2098 /** 2099 * --- Abstract Type! ---A resource that includes narrative, extensions, and contained resources. 2100 */ 2101 DOMAINRESOURCE, 2102 /** 2103 * This resource provides the insurance eligibility details from the insurer regarding a specified coverage and optionally some class of service. 2104 */ 2105 ELIGIBILITYREQUEST, 2106 /** 2107 * This resource provides eligibility and plan details from the processing of an Eligibility resource. 2108 */ 2109 ELIGIBILITYRESPONSE, 2110 /** 2111 * An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient. 2112 */ 2113 ENCOUNTER, 2114 /** 2115 * This resource provides the insurance enrollment details to the insurer regarding a specified coverage. 2116 */ 2117 ENROLLMENTREQUEST, 2118 /** 2119 * This resource provides enrollment and plan details from the processing of an Enrollment resource. 2120 */ 2121 ENROLLMENTRESPONSE, 2122 /** 2123 * An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time. 2124 */ 2125 EPISODEOFCARE, 2126 /** 2127 * This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided. 2128 */ 2129 EXPLANATIONOFBENEFIT, 2130 /** 2131 * Significant health events and conditions for a person related to the patient relevant in the context of care for the patient. 2132 */ 2133 FAMILYMEMBERHISTORY, 2134 /** 2135 * Prospective warnings of potential issues when providing care to the patient. 2136 */ 2137 FLAG, 2138 /** 2139 * Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc. 2140 */ 2141 GOAL, 2142 /** 2143 * Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization. 2144 */ 2145 GROUP, 2146 /** 2147 * The details of a healthcare service available at a location. 2148 */ 2149 HEALTHCARESERVICE, 2150 /** 2151 * A manifest of a set of DICOM Service-Object Pair Instances (SOP Instances). The referenced SOP Instances (images or other content) are for a single patient, and may be from one or more studies. The referenced SOP Instances have been selected for a purpose, such as quality assurance, conference, or consult. Reflecting that range of purposes, typical ImagingObjectSelection resources may include all SOP Instances in a study (perhaps for sharing through a Health Information Exchange); key images from multiple studies (for reference by a referring or treating physician); a multi-frame ultrasound instance ("cine" video clip) and a set of measurements taken from that instance (for inclusion in a teaching file); and so on. 2152 */ 2153 IMAGINGOBJECTSELECTION, 2154 /** 2155 * Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities. 2156 */ 2157 IMAGINGSTUDY, 2158 /** 2159 * Describes the event of a patient being administered a vaccination or a record of a vaccination as reported by a patient, a clinician or another party and may include vaccine reaction information and what vaccination protocol was followed. 2160 */ 2161 IMMUNIZATION, 2162 /** 2163 * A patient's point-in-time immunization and recommendation (i.e. forecasting a patient's immunization eligibility according to a published schedule) with optional supporting justification. 2164 */ 2165 IMMUNIZATIONRECOMMENDATION, 2166 /** 2167 * A set of rules or how FHIR is used to solve a particular problem. This resource is used to gather all the parts of an implementation guide into a logical whole, and to publish a computable definition of all the parts. 2168 */ 2169 IMPLEMENTATIONGUIDE, 2170 /** 2171 * A set of information summarized from a list of other resources. 2172 */ 2173 LIST, 2174 /** 2175 * Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained or accommodated. 2176 */ 2177 LOCATION, 2178 /** 2179 * A photo, video, or audio recording acquired or used in healthcare. The actual content may be inline or provided by direct reference. 2180 */ 2181 MEDIA, 2182 /** 2183 * This resource is primarily used for the identification and definition of a medication. It covers the ingredients and the packaging for a medication. 2184 */ 2185 MEDICATION, 2186 /** 2187 * Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner. 2188 */ 2189 MEDICATIONADMINISTRATION, 2190 /** 2191 * Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order. 2192 */ 2193 MEDICATIONDISPENSE, 2194 /** 2195 * An order for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called "MedicationOrder" rather than "MedicationPrescription" to generalize the use across inpatient and outpatient settings as well as for care plans, etc. 2196 */ 2197 MEDICATIONORDER, 2198 /** 2199 * A record of a medication that is being consumed by a patient. A MedicationStatement may indicate that the patient may be taking the medication now, or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from e.g. the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains 2200 2201The primary difference between a medication statement and a medication administration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medication statement is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the medication statement information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information. 2202 */ 2203 MEDICATIONSTATEMENT, 2204 /** 2205 * The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle. 2206 */ 2207 MESSAGEHEADER, 2208 /** 2209 * A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a "System" used within the Identifier and Coding data types. 2210 */ 2211 NAMINGSYSTEM, 2212 /** 2213 * A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident. 2214 */ 2215 NUTRITIONORDER, 2216 /** 2217 * Measurements and simple assertions made about a patient, device or other subject. 2218 */ 2219 OBSERVATION, 2220 /** 2221 * A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction). 2222 */ 2223 OPERATIONDEFINITION, 2224 /** 2225 * A collection of error, warning or information messages that result from a system action. 2226 */ 2227 OPERATIONOUTCOME, 2228 /** 2229 * A request to perform an action. 2230 */ 2231 ORDER, 2232 /** 2233 * A response to an order. 2234 */ 2235 ORDERRESPONSE, 2236 /** 2237 * A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, etc. 2238 */ 2239 ORGANIZATION, 2240 /** 2241 * This special resource type is used to represent an operation request and response (operations.html). It has no other use, and there is no RESTful endpoint associated with it. 2242 */ 2243 PARAMETERS, 2244 /** 2245 * Demographics and other administrative information about an individual or animal receiving care or other health-related services. 2246 */ 2247 PATIENT, 2248 /** 2249 * This resource provides the status of the payment for goods and services rendered, and the request and response resource references. 2250 */ 2251 PAYMENTNOTICE, 2252 /** 2253 * This resource provides payment details and claim references supporting a bulk payment. 2254 */ 2255 PAYMENTRECONCILIATION, 2256 /** 2257 * Demographics and administrative information about a person independent of a specific health-related context. 2258 */ 2259 PERSON, 2260 /** 2261 * A person who is directly or indirectly involved in the provisioning of healthcare. 2262 */ 2263 PRACTITIONER, 2264 /** 2265 * An action that is or was performed on a patient. This can be a physical intervention like an operation, or less invasive like counseling or hypnotherapy. 2266 */ 2267 PROCEDURE, 2268 /** 2269 * A request for a procedure to be performed. May be a proposal or an order. 2270 */ 2271 PROCEDUREREQUEST, 2272 /** 2273 * This resource provides the target, request and response, and action details for an action to be performed by the target on or about existing resources. 2274 */ 2275 PROCESSREQUEST, 2276 /** 2277 * This resource provides processing status, errors and notes from the processing of a resource. 2278 */ 2279 PROCESSRESPONSE, 2280 /** 2281 * Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies. 2282 */ 2283 PROVENANCE, 2284 /** 2285 * A structured set of questions intended to guide the collection of answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions. 2286 */ 2287 QUESTIONNAIRE, 2288 /** 2289 * A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions. 2290 */ 2291 QUESTIONNAIRERESPONSE, 2292 /** 2293 * Used to record and send details about a request for referral service or transfer of a patient to the care of another provider or provider organization. 2294 */ 2295 REFERRALREQUEST, 2296 /** 2297 * Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process. 2298 */ 2299 RELATEDPERSON, 2300 /** 2301 * --- Abstract Type! ---This is the base resource type for everything. 2302 */ 2303 RESOURCE, 2304 /** 2305 * An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome. 2306 */ 2307 RISKASSESSMENT, 2308 /** 2309 * A container for slot(s) of time that may be available for booking appointments. 2310 */ 2311 SCHEDULE, 2312 /** 2313 * A search parameter that defines a named search item that can be used to search/filter on a resource. 2314 */ 2315 SEARCHPARAMETER, 2316 /** 2317 * A slot of time on a schedule that may be available for booking appointments. 2318 */ 2319 SLOT, 2320 /** 2321 * A sample to be used for analysis. 2322 */ 2323 SPECIMEN, 2324 /** 2325 * A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions, and constraints on resources and data types. 2326 */ 2327 STRUCTUREDEFINITION, 2328 /** 2329 * The subscription resource is used to define a push based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined "channel" so that another system is able to take an appropriate action. 2330 */ 2331 SUBSCRIPTION, 2332 /** 2333 * A homogeneous material with a definite composition. 2334 */ 2335 SUBSTANCE, 2336 /** 2337 * Record of delivery of what is supplied. 2338 */ 2339 SUPPLYDELIVERY, 2340 /** 2341 * A record of a request for a medication, substance or device used in the healthcare setting. 2342 */ 2343 SUPPLYREQUEST, 2344 /** 2345 * TestScript is a resource that specifies a suite of tests against a FHIR server implementation to determine compliance against the FHIR specification. 2346 */ 2347 TESTSCRIPT, 2348 /** 2349 * A value set specifies a set of codes drawn from one or more code systems. 2350 */ 2351 VALUESET, 2352 /** 2353 * An authorization for the supply of glasses and/or contact lenses to a patient. 2354 */ 2355 VISIONPRESCRIPTION, 2356 /** 2357 * added to help the parsers 2358 */ 2359 NULL; 2360 public static FHIRDefinedType fromCode(String codeString) throws FHIRException { 2361 if (codeString == null || "".equals(codeString)) 2362 return null; 2363 if ("Address".equals(codeString)) 2364 return ADDRESS; 2365 if ("Age".equals(codeString)) 2366 return AGE; 2367 if ("Annotation".equals(codeString)) 2368 return ANNOTATION; 2369 if ("Attachment".equals(codeString)) 2370 return ATTACHMENT; 2371 if ("BackboneElement".equals(codeString)) 2372 return BACKBONEELEMENT; 2373 if ("CodeableConcept".equals(codeString)) 2374 return CODEABLECONCEPT; 2375 if ("Coding".equals(codeString)) 2376 return CODING; 2377 if ("ContactPoint".equals(codeString)) 2378 return CONTACTPOINT; 2379 if ("Count".equals(codeString)) 2380 return COUNT; 2381 if ("Distance".equals(codeString)) 2382 return DISTANCE; 2383 if ("Duration".equals(codeString)) 2384 return DURATION; 2385 if ("Element".equals(codeString)) 2386 return ELEMENT; 2387 if ("ElementDefinition".equals(codeString)) 2388 return ELEMENTDEFINITION; 2389 if ("Extension".equals(codeString)) 2390 return EXTENSION; 2391 if ("HumanName".equals(codeString)) 2392 return HUMANNAME; 2393 if ("Identifier".equals(codeString)) 2394 return IDENTIFIER; 2395 if ("Meta".equals(codeString)) 2396 return META; 2397 if ("Money".equals(codeString)) 2398 return MONEY; 2399 if ("Narrative".equals(codeString)) 2400 return NARRATIVE; 2401 if ("Period".equals(codeString)) 2402 return PERIOD; 2403 if ("Quantity".equals(codeString)) 2404 return QUANTITY; 2405 if ("Range".equals(codeString)) 2406 return RANGE; 2407 if ("Ratio".equals(codeString)) 2408 return RATIO; 2409 if ("Reference".equals(codeString)) 2410 return REFERENCE; 2411 if ("SampledData".equals(codeString)) 2412 return SAMPLEDDATA; 2413 if ("Signature".equals(codeString)) 2414 return SIGNATURE; 2415 if ("SimpleQuantity".equals(codeString)) 2416 return SIMPLEQUANTITY; 2417 if ("Timing".equals(codeString)) 2418 return TIMING; 2419 if ("base64Binary".equals(codeString)) 2420 return BASE64BINARY; 2421 if ("boolean".equals(codeString)) 2422 return BOOLEAN; 2423 if ("code".equals(codeString)) 2424 return CODE; 2425 if ("date".equals(codeString)) 2426 return DATE; 2427 if ("dateTime".equals(codeString)) 2428 return DATETIME; 2429 if ("decimal".equals(codeString)) 2430 return DECIMAL; 2431 if ("id".equals(codeString)) 2432 return ID; 2433 if ("instant".equals(codeString)) 2434 return INSTANT; 2435 if ("integer".equals(codeString)) 2436 return INTEGER; 2437 if ("markdown".equals(codeString)) 2438 return MARKDOWN; 2439 if ("oid".equals(codeString)) 2440 return OID; 2441 if ("positiveInt".equals(codeString)) 2442 return POSITIVEINT; 2443 if ("string".equals(codeString)) 2444 return STRING; 2445 if ("time".equals(codeString)) 2446 return TIME; 2447 if ("unsignedInt".equals(codeString)) 2448 return UNSIGNEDINT; 2449 if ("uri".equals(codeString)) 2450 return URI; 2451 if ("uuid".equals(codeString)) 2452 return UUID; 2453 if ("xhtml".equals(codeString)) 2454 return XHTML; 2455 if ("Account".equals(codeString)) 2456 return ACCOUNT; 2457 if ("AllergyIntolerance".equals(codeString)) 2458 return ALLERGYINTOLERANCE; 2459 if ("Appointment".equals(codeString)) 2460 return APPOINTMENT; 2461 if ("AppointmentResponse".equals(codeString)) 2462 return APPOINTMENTRESPONSE; 2463 if ("AuditEvent".equals(codeString)) 2464 return AUDITEVENT; 2465 if ("Basic".equals(codeString)) 2466 return BASIC; 2467 if ("Binary".equals(codeString)) 2468 return BINARY; 2469 if ("BodySite".equals(codeString)) 2470 return BODYSITE; 2471 if ("Bundle".equals(codeString)) 2472 return BUNDLE; 2473 if ("CarePlan".equals(codeString)) 2474 return CAREPLAN; 2475 if ("Claim".equals(codeString)) 2476 return CLAIM; 2477 if ("ClaimResponse".equals(codeString)) 2478 return CLAIMRESPONSE; 2479 if ("ClinicalImpression".equals(codeString)) 2480 return CLINICALIMPRESSION; 2481 if ("Communication".equals(codeString)) 2482 return COMMUNICATION; 2483 if ("CommunicationRequest".equals(codeString)) 2484 return COMMUNICATIONREQUEST; 2485 if ("Composition".equals(codeString)) 2486 return COMPOSITION; 2487 if ("ConceptMap".equals(codeString)) 2488 return CONCEPTMAP; 2489 if ("Condition".equals(codeString)) 2490 return CONDITION; 2491 if ("Conformance".equals(codeString)) 2492 return CONFORMANCE; 2493 if ("Contract".equals(codeString)) 2494 return CONTRACT; 2495 if ("Coverage".equals(codeString)) 2496 return COVERAGE; 2497 if ("DataElement".equals(codeString)) 2498 return DATAELEMENT; 2499 if ("DetectedIssue".equals(codeString)) 2500 return DETECTEDISSUE; 2501 if ("Device".equals(codeString)) 2502 return DEVICE; 2503 if ("DeviceComponent".equals(codeString)) 2504 return DEVICECOMPONENT; 2505 if ("DeviceMetric".equals(codeString)) 2506 return DEVICEMETRIC; 2507 if ("DeviceUseRequest".equals(codeString)) 2508 return DEVICEUSEREQUEST; 2509 if ("DeviceUseStatement".equals(codeString)) 2510 return DEVICEUSESTATEMENT; 2511 if ("DiagnosticOrder".equals(codeString)) 2512 return DIAGNOSTICORDER; 2513 if ("DiagnosticReport".equals(codeString)) 2514 return DIAGNOSTICREPORT; 2515 if ("DocumentManifest".equals(codeString)) 2516 return DOCUMENTMANIFEST; 2517 if ("DocumentReference".equals(codeString)) 2518 return DOCUMENTREFERENCE; 2519 if ("DomainResource".equals(codeString)) 2520 return DOMAINRESOURCE; 2521 if ("EligibilityRequest".equals(codeString)) 2522 return ELIGIBILITYREQUEST; 2523 if ("EligibilityResponse".equals(codeString)) 2524 return ELIGIBILITYRESPONSE; 2525 if ("Encounter".equals(codeString)) 2526 return ENCOUNTER; 2527 if ("EnrollmentRequest".equals(codeString)) 2528 return ENROLLMENTREQUEST; 2529 if ("EnrollmentResponse".equals(codeString)) 2530 return ENROLLMENTRESPONSE; 2531 if ("EpisodeOfCare".equals(codeString)) 2532 return EPISODEOFCARE; 2533 if ("ExplanationOfBenefit".equals(codeString)) 2534 return EXPLANATIONOFBENEFIT; 2535 if ("FamilyMemberHistory".equals(codeString)) 2536 return FAMILYMEMBERHISTORY; 2537 if ("Flag".equals(codeString)) 2538 return FLAG; 2539 if ("Goal".equals(codeString)) 2540 return GOAL; 2541 if ("Group".equals(codeString)) 2542 return GROUP; 2543 if ("HealthcareService".equals(codeString)) 2544 return HEALTHCARESERVICE; 2545 if ("ImagingObjectSelection".equals(codeString)) 2546 return IMAGINGOBJECTSELECTION; 2547 if ("ImagingStudy".equals(codeString)) 2548 return IMAGINGSTUDY; 2549 if ("Immunization".equals(codeString)) 2550 return IMMUNIZATION; 2551 if ("ImmunizationRecommendation".equals(codeString)) 2552 return IMMUNIZATIONRECOMMENDATION; 2553 if ("ImplementationGuide".equals(codeString)) 2554 return IMPLEMENTATIONGUIDE; 2555 if ("List".equals(codeString)) 2556 return LIST; 2557 if ("Location".equals(codeString)) 2558 return LOCATION; 2559 if ("Media".equals(codeString)) 2560 return MEDIA; 2561 if ("Medication".equals(codeString)) 2562 return MEDICATION; 2563 if ("MedicationAdministration".equals(codeString)) 2564 return MEDICATIONADMINISTRATION; 2565 if ("MedicationDispense".equals(codeString)) 2566 return MEDICATIONDISPENSE; 2567 if ("MedicationOrder".equals(codeString)) 2568 return MEDICATIONORDER; 2569 if ("MedicationStatement".equals(codeString)) 2570 return MEDICATIONSTATEMENT; 2571 if ("MessageHeader".equals(codeString)) 2572 return MESSAGEHEADER; 2573 if ("NamingSystem".equals(codeString)) 2574 return NAMINGSYSTEM; 2575 if ("NutritionOrder".equals(codeString)) 2576 return NUTRITIONORDER; 2577 if ("Observation".equals(codeString)) 2578 return OBSERVATION; 2579 if ("OperationDefinition".equals(codeString)) 2580 return OPERATIONDEFINITION; 2581 if ("OperationOutcome".equals(codeString)) 2582 return OPERATIONOUTCOME; 2583 if ("Order".equals(codeString)) 2584 return ORDER; 2585 if ("OrderResponse".equals(codeString)) 2586 return ORDERRESPONSE; 2587 if ("Organization".equals(codeString)) 2588 return ORGANIZATION; 2589 if ("Parameters".equals(codeString)) 2590 return PARAMETERS; 2591 if ("Patient".equals(codeString)) 2592 return PATIENT; 2593 if ("PaymentNotice".equals(codeString)) 2594 return PAYMENTNOTICE; 2595 if ("PaymentReconciliation".equals(codeString)) 2596 return PAYMENTRECONCILIATION; 2597 if ("Person".equals(codeString)) 2598 return PERSON; 2599 if ("Practitioner".equals(codeString)) 2600 return PRACTITIONER; 2601 if ("Procedure".equals(codeString)) 2602 return PROCEDURE; 2603 if ("ProcedureRequest".equals(codeString)) 2604 return PROCEDUREREQUEST; 2605 if ("ProcessRequest".equals(codeString)) 2606 return PROCESSREQUEST; 2607 if ("ProcessResponse".equals(codeString)) 2608 return PROCESSRESPONSE; 2609 if ("Provenance".equals(codeString)) 2610 return PROVENANCE; 2611 if ("Questionnaire".equals(codeString)) 2612 return QUESTIONNAIRE; 2613 if ("QuestionnaireResponse".equals(codeString)) 2614 return QUESTIONNAIRERESPONSE; 2615 if ("ReferralRequest".equals(codeString)) 2616 return REFERRALREQUEST; 2617 if ("RelatedPerson".equals(codeString)) 2618 return RELATEDPERSON; 2619 if ("Resource".equals(codeString)) 2620 return RESOURCE; 2621 if ("RiskAssessment".equals(codeString)) 2622 return RISKASSESSMENT; 2623 if ("Schedule".equals(codeString)) 2624 return SCHEDULE; 2625 if ("SearchParameter".equals(codeString)) 2626 return SEARCHPARAMETER; 2627 if ("Slot".equals(codeString)) 2628 return SLOT; 2629 if ("Specimen".equals(codeString)) 2630 return SPECIMEN; 2631 if ("StructureDefinition".equals(codeString)) 2632 return STRUCTUREDEFINITION; 2633 if ("Subscription".equals(codeString)) 2634 return SUBSCRIPTION; 2635 if ("Substance".equals(codeString)) 2636 return SUBSTANCE; 2637 if ("SupplyDelivery".equals(codeString)) 2638 return SUPPLYDELIVERY; 2639 if ("SupplyRequest".equals(codeString)) 2640 return SUPPLYREQUEST; 2641 if ("TestScript".equals(codeString)) 2642 return TESTSCRIPT; 2643 if ("ValueSet".equals(codeString)) 2644 return VALUESET; 2645 if ("VisionPrescription".equals(codeString)) 2646 return VISIONPRESCRIPTION; 2647 throw new FHIRException("Unknown FHIRDefinedType code '"+codeString+"'"); 2648 } 2649 public String toCode() { 2650 switch (this) { 2651 case ADDRESS: return "Address"; 2652 case AGE: return "Age"; 2653 case ANNOTATION: return "Annotation"; 2654 case ATTACHMENT: return "Attachment"; 2655 case BACKBONEELEMENT: return "BackboneElement"; 2656 case CODEABLECONCEPT: return "CodeableConcept"; 2657 case CODING: return "Coding"; 2658 case CONTACTPOINT: return "ContactPoint"; 2659 case COUNT: return "Count"; 2660 case DISTANCE: return "Distance"; 2661 case DURATION: return "Duration"; 2662 case ELEMENT: return "Element"; 2663 case ELEMENTDEFINITION: return "ElementDefinition"; 2664 case EXTENSION: return "Extension"; 2665 case HUMANNAME: return "HumanName"; 2666 case IDENTIFIER: return "Identifier"; 2667 case META: return "Meta"; 2668 case MONEY: return "Money"; 2669 case NARRATIVE: return "Narrative"; 2670 case PERIOD: return "Period"; 2671 case QUANTITY: return "Quantity"; 2672 case RANGE: return "Range"; 2673 case RATIO: return "Ratio"; 2674 case REFERENCE: return "Reference"; 2675 case SAMPLEDDATA: return "SampledData"; 2676 case SIGNATURE: return "Signature"; 2677 case SIMPLEQUANTITY: return "SimpleQuantity"; 2678 case TIMING: return "Timing"; 2679 case BASE64BINARY: return "base64Binary"; 2680 case BOOLEAN: return "boolean"; 2681 case CODE: return "code"; 2682 case DATE: return "date"; 2683 case DATETIME: return "dateTime"; 2684 case DECIMAL: return "decimal"; 2685 case ID: return "id"; 2686 case INSTANT: return "instant"; 2687 case INTEGER: return "integer"; 2688 case MARKDOWN: return "markdown"; 2689 case OID: return "oid"; 2690 case POSITIVEINT: return "positiveInt"; 2691 case STRING: return "string"; 2692 case TIME: return "time"; 2693 case UNSIGNEDINT: return "unsignedInt"; 2694 case URI: return "uri"; 2695 case UUID: return "uuid"; 2696 case XHTML: return "xhtml"; 2697 case ACCOUNT: return "Account"; 2698 case ALLERGYINTOLERANCE: return "AllergyIntolerance"; 2699 case APPOINTMENT: return "Appointment"; 2700 case APPOINTMENTRESPONSE: return "AppointmentResponse"; 2701 case AUDITEVENT: return "AuditEvent"; 2702 case BASIC: return "Basic"; 2703 case BINARY: return "Binary"; 2704 case BODYSITE: return "BodySite"; 2705 case BUNDLE: return "Bundle"; 2706 case CAREPLAN: return "CarePlan"; 2707 case CLAIM: return "Claim"; 2708 case CLAIMRESPONSE: return "ClaimResponse"; 2709 case CLINICALIMPRESSION: return "ClinicalImpression"; 2710 case COMMUNICATION: return "Communication"; 2711 case COMMUNICATIONREQUEST: return "CommunicationRequest"; 2712 case COMPOSITION: return "Composition"; 2713 case CONCEPTMAP: return "ConceptMap"; 2714 case CONDITION: return "Condition"; 2715 case CONFORMANCE: return "Conformance"; 2716 case CONTRACT: return "Contract"; 2717 case COVERAGE: return "Coverage"; 2718 case DATAELEMENT: return "DataElement"; 2719 case DETECTEDISSUE: return "DetectedIssue"; 2720 case DEVICE: return "Device"; 2721 case DEVICECOMPONENT: return "DeviceComponent"; 2722 case DEVICEMETRIC: return "DeviceMetric"; 2723 case DEVICEUSEREQUEST: return "DeviceUseRequest"; 2724 case DEVICEUSESTATEMENT: return "DeviceUseStatement"; 2725 case DIAGNOSTICORDER: return "DiagnosticOrder"; 2726 case DIAGNOSTICREPORT: return "DiagnosticReport"; 2727 case DOCUMENTMANIFEST: return "DocumentManifest"; 2728 case DOCUMENTREFERENCE: return "DocumentReference"; 2729 case DOMAINRESOURCE: return "DomainResource"; 2730 case ELIGIBILITYREQUEST: return "EligibilityRequest"; 2731 case ELIGIBILITYRESPONSE: return "EligibilityResponse"; 2732 case ENCOUNTER: return "Encounter"; 2733 case ENROLLMENTREQUEST: return "EnrollmentRequest"; 2734 case ENROLLMENTRESPONSE: return "EnrollmentResponse"; 2735 case EPISODEOFCARE: return "EpisodeOfCare"; 2736 case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; 2737 case FAMILYMEMBERHISTORY: return "FamilyMemberHistory"; 2738 case FLAG: return "Flag"; 2739 case GOAL: return "Goal"; 2740 case GROUP: return "Group"; 2741 case HEALTHCARESERVICE: return "HealthcareService"; 2742 case IMAGINGOBJECTSELECTION: return "ImagingObjectSelection"; 2743 case IMAGINGSTUDY: return "ImagingStudy"; 2744 case IMMUNIZATION: return "Immunization"; 2745 case IMMUNIZATIONRECOMMENDATION: return "ImmunizationRecommendation"; 2746 case IMPLEMENTATIONGUIDE: return "ImplementationGuide"; 2747 case LIST: return "List"; 2748 case LOCATION: return "Location"; 2749 case MEDIA: return "Media"; 2750 case MEDICATION: return "Medication"; 2751 case MEDICATIONADMINISTRATION: return "MedicationAdministration"; 2752 case MEDICATIONDISPENSE: return "MedicationDispense"; 2753 case MEDICATIONORDER: return "MedicationOrder"; 2754 case MEDICATIONSTATEMENT: return "MedicationStatement"; 2755 case MESSAGEHEADER: return "MessageHeader"; 2756 case NAMINGSYSTEM: return "NamingSystem"; 2757 case NUTRITIONORDER: return "NutritionOrder"; 2758 case OBSERVATION: return "Observation"; 2759 case OPERATIONDEFINITION: return "OperationDefinition"; 2760 case OPERATIONOUTCOME: return "OperationOutcome"; 2761 case ORDER: return "Order"; 2762 case ORDERRESPONSE: return "OrderResponse"; 2763 case ORGANIZATION: return "Organization"; 2764 case PARAMETERS: return "Parameters"; 2765 case PATIENT: return "Patient"; 2766 case PAYMENTNOTICE: return "PaymentNotice"; 2767 case PAYMENTRECONCILIATION: return "PaymentReconciliation"; 2768 case PERSON: return "Person"; 2769 case PRACTITIONER: return "Practitioner"; 2770 case PROCEDURE: return "Procedure"; 2771 case PROCEDUREREQUEST: return "ProcedureRequest"; 2772 case PROCESSREQUEST: return "ProcessRequest"; 2773 case PROCESSRESPONSE: return "ProcessResponse"; 2774 case PROVENANCE: return "Provenance"; 2775 case QUESTIONNAIRE: return "Questionnaire"; 2776 case QUESTIONNAIRERESPONSE: return "QuestionnaireResponse"; 2777 case REFERRALREQUEST: return "ReferralRequest"; 2778 case RELATEDPERSON: return "RelatedPerson"; 2779 case RESOURCE: return "Resource"; 2780 case RISKASSESSMENT: return "RiskAssessment"; 2781 case SCHEDULE: return "Schedule"; 2782 case SEARCHPARAMETER: return "SearchParameter"; 2783 case SLOT: return "Slot"; 2784 case SPECIMEN: return "Specimen"; 2785 case STRUCTUREDEFINITION: return "StructureDefinition"; 2786 case SUBSCRIPTION: return "Subscription"; 2787 case SUBSTANCE: return "Substance"; 2788 case SUPPLYDELIVERY: return "SupplyDelivery"; 2789 case SUPPLYREQUEST: return "SupplyRequest"; 2790 case TESTSCRIPT: return "TestScript"; 2791 case VALUESET: return "ValueSet"; 2792 case VISIONPRESCRIPTION: return "VisionPrescription"; 2793 default: return "?"; 2794 } 2795 } 2796 public String getSystem() { 2797 switch (this) { 2798 case ADDRESS: return "http://hl7.org/fhir/data-types"; 2799 case AGE: return "http://hl7.org/fhir/data-types"; 2800 case ANNOTATION: return "http://hl7.org/fhir/data-types"; 2801 case ATTACHMENT: return "http://hl7.org/fhir/data-types"; 2802 case BACKBONEELEMENT: return "http://hl7.org/fhir/data-types"; 2803 case CODEABLECONCEPT: return "http://hl7.org/fhir/data-types"; 2804 case CODING: return "http://hl7.org/fhir/data-types"; 2805 case CONTACTPOINT: return "http://hl7.org/fhir/data-types"; 2806 case COUNT: return "http://hl7.org/fhir/data-types"; 2807 case DISTANCE: return "http://hl7.org/fhir/data-types"; 2808 case DURATION: return "http://hl7.org/fhir/data-types"; 2809 case ELEMENT: return "http://hl7.org/fhir/data-types"; 2810 case ELEMENTDEFINITION: return "http://hl7.org/fhir/data-types"; 2811 case EXTENSION: return "http://hl7.org/fhir/data-types"; 2812 case HUMANNAME: return "http://hl7.org/fhir/data-types"; 2813 case IDENTIFIER: return "http://hl7.org/fhir/data-types"; 2814 case META: return "http://hl7.org/fhir/data-types"; 2815 case MONEY: return "http://hl7.org/fhir/data-types"; 2816 case NARRATIVE: return "http://hl7.org/fhir/data-types"; 2817 case PERIOD: return "http://hl7.org/fhir/data-types"; 2818 case QUANTITY: return "http://hl7.org/fhir/data-types"; 2819 case RANGE: return "http://hl7.org/fhir/data-types"; 2820 case RATIO: return "http://hl7.org/fhir/data-types"; 2821 case REFERENCE: return "http://hl7.org/fhir/data-types"; 2822 case SAMPLEDDATA: return "http://hl7.org/fhir/data-types"; 2823 case SIGNATURE: return "http://hl7.org/fhir/data-types"; 2824 case SIMPLEQUANTITY: return "http://hl7.org/fhir/data-types"; 2825 case TIMING: return "http://hl7.org/fhir/data-types"; 2826 case BASE64BINARY: return "http://hl7.org/fhir/data-types"; 2827 case BOOLEAN: return "http://hl7.org/fhir/data-types"; 2828 case CODE: return "http://hl7.org/fhir/data-types"; 2829 case DATE: return "http://hl7.org/fhir/data-types"; 2830 case DATETIME: return "http://hl7.org/fhir/data-types"; 2831 case DECIMAL: return "http://hl7.org/fhir/data-types"; 2832 case ID: return "http://hl7.org/fhir/data-types"; 2833 case INSTANT: return "http://hl7.org/fhir/data-types"; 2834 case INTEGER: return "http://hl7.org/fhir/data-types"; 2835 case MARKDOWN: return "http://hl7.org/fhir/data-types"; 2836 case OID: return "http://hl7.org/fhir/data-types"; 2837 case POSITIVEINT: return "http://hl7.org/fhir/data-types"; 2838 case STRING: return "http://hl7.org/fhir/data-types"; 2839 case TIME: return "http://hl7.org/fhir/data-types"; 2840 case UNSIGNEDINT: return "http://hl7.org/fhir/data-types"; 2841 case URI: return "http://hl7.org/fhir/data-types"; 2842 case UUID: return "http://hl7.org/fhir/data-types"; 2843 case XHTML: return "http://hl7.org/fhir/data-types"; 2844 case ACCOUNT: return "http://hl7.org/fhir/resource-types"; 2845 case ALLERGYINTOLERANCE: return "http://hl7.org/fhir/resource-types"; 2846 case APPOINTMENT: return "http://hl7.org/fhir/resource-types"; 2847 case APPOINTMENTRESPONSE: return "http://hl7.org/fhir/resource-types"; 2848 case AUDITEVENT: return "http://hl7.org/fhir/resource-types"; 2849 case BASIC: return "http://hl7.org/fhir/resource-types"; 2850 case BINARY: return "http://hl7.org/fhir/resource-types"; 2851 case BODYSITE: return "http://hl7.org/fhir/resource-types"; 2852 case BUNDLE: return "http://hl7.org/fhir/resource-types"; 2853 case CAREPLAN: return "http://hl7.org/fhir/resource-types"; 2854 case CLAIM: return "http://hl7.org/fhir/resource-types"; 2855 case CLAIMRESPONSE: return "http://hl7.org/fhir/resource-types"; 2856 case CLINICALIMPRESSION: return "http://hl7.org/fhir/resource-types"; 2857 case COMMUNICATION: return "http://hl7.org/fhir/resource-types"; 2858 case COMMUNICATIONREQUEST: return "http://hl7.org/fhir/resource-types"; 2859 case COMPOSITION: return "http://hl7.org/fhir/resource-types"; 2860 case CONCEPTMAP: return "http://hl7.org/fhir/resource-types"; 2861 case CONDITION: return "http://hl7.org/fhir/resource-types"; 2862 case CONFORMANCE: return "http://hl7.org/fhir/resource-types"; 2863 case CONTRACT: return "http://hl7.org/fhir/resource-types"; 2864 case COVERAGE: return "http://hl7.org/fhir/resource-types"; 2865 case DATAELEMENT: return "http://hl7.org/fhir/resource-types"; 2866 case DETECTEDISSUE: return "http://hl7.org/fhir/resource-types"; 2867 case DEVICE: return "http://hl7.org/fhir/resource-types"; 2868 case DEVICECOMPONENT: return "http://hl7.org/fhir/resource-types"; 2869 case DEVICEMETRIC: return "http://hl7.org/fhir/resource-types"; 2870 case DEVICEUSEREQUEST: return "http://hl7.org/fhir/resource-types"; 2871 case DEVICEUSESTATEMENT: return "http://hl7.org/fhir/resource-types"; 2872 case DIAGNOSTICORDER: return "http://hl7.org/fhir/resource-types"; 2873 case DIAGNOSTICREPORT: return "http://hl7.org/fhir/resource-types"; 2874 case DOCUMENTMANIFEST: return "http://hl7.org/fhir/resource-types"; 2875 case DOCUMENTREFERENCE: return "http://hl7.org/fhir/resource-types"; 2876 case DOMAINRESOURCE: return "http://hl7.org/fhir/resource-types"; 2877 case ELIGIBILITYREQUEST: return "http://hl7.org/fhir/resource-types"; 2878 case ELIGIBILITYRESPONSE: return "http://hl7.org/fhir/resource-types"; 2879 case ENCOUNTER: return "http://hl7.org/fhir/resource-types"; 2880 case ENROLLMENTREQUEST: return "http://hl7.org/fhir/resource-types"; 2881 case ENROLLMENTRESPONSE: return "http://hl7.org/fhir/resource-types"; 2882 case EPISODEOFCARE: return "http://hl7.org/fhir/resource-types"; 2883 case EXPLANATIONOFBENEFIT: return "http://hl7.org/fhir/resource-types"; 2884 case FAMILYMEMBERHISTORY: return "http://hl7.org/fhir/resource-types"; 2885 case FLAG: return "http://hl7.org/fhir/resource-types"; 2886 case GOAL: return "http://hl7.org/fhir/resource-types"; 2887 case GROUP: return "http://hl7.org/fhir/resource-types"; 2888 case HEALTHCARESERVICE: return "http://hl7.org/fhir/resource-types"; 2889 case IMAGINGOBJECTSELECTION: return "http://hl7.org/fhir/resource-types"; 2890 case IMAGINGSTUDY: return "http://hl7.org/fhir/resource-types"; 2891 case IMMUNIZATION: return "http://hl7.org/fhir/resource-types"; 2892 case IMMUNIZATIONRECOMMENDATION: return "http://hl7.org/fhir/resource-types"; 2893 case IMPLEMENTATIONGUIDE: return "http://hl7.org/fhir/resource-types"; 2894 case LIST: return "http://hl7.org/fhir/resource-types"; 2895 case LOCATION: return "http://hl7.org/fhir/resource-types"; 2896 case MEDIA: return "http://hl7.org/fhir/resource-types"; 2897 case MEDICATION: return "http://hl7.org/fhir/resource-types"; 2898 case MEDICATIONADMINISTRATION: return "http://hl7.org/fhir/resource-types"; 2899 case MEDICATIONDISPENSE: return "http://hl7.org/fhir/resource-types"; 2900 case MEDICATIONORDER: return "http://hl7.org/fhir/resource-types"; 2901 case MEDICATIONSTATEMENT: return "http://hl7.org/fhir/resource-types"; 2902 case MESSAGEHEADER: return "http://hl7.org/fhir/resource-types"; 2903 case NAMINGSYSTEM: return "http://hl7.org/fhir/resource-types"; 2904 case NUTRITIONORDER: return "http://hl7.org/fhir/resource-types"; 2905 case OBSERVATION: return "http://hl7.org/fhir/resource-types"; 2906 case OPERATIONDEFINITION: return "http://hl7.org/fhir/resource-types"; 2907 case OPERATIONOUTCOME: return "http://hl7.org/fhir/resource-types"; 2908 case ORDER: return "http://hl7.org/fhir/resource-types"; 2909 case ORDERRESPONSE: return "http://hl7.org/fhir/resource-types"; 2910 case ORGANIZATION: return "http://hl7.org/fhir/resource-types"; 2911 case PARAMETERS: return "http://hl7.org/fhir/resource-types"; 2912 case PATIENT: return "http://hl7.org/fhir/resource-types"; 2913 case PAYMENTNOTICE: return "http://hl7.org/fhir/resource-types"; 2914 case PAYMENTRECONCILIATION: return "http://hl7.org/fhir/resource-types"; 2915 case PERSON: return "http://hl7.org/fhir/resource-types"; 2916 case PRACTITIONER: return "http://hl7.org/fhir/resource-types"; 2917 case PROCEDURE: return "http://hl7.org/fhir/resource-types"; 2918 case PROCEDUREREQUEST: return "http://hl7.org/fhir/resource-types"; 2919 case PROCESSREQUEST: return "http://hl7.org/fhir/resource-types"; 2920 case PROCESSRESPONSE: return "http://hl7.org/fhir/resource-types"; 2921 case PROVENANCE: return "http://hl7.org/fhir/resource-types"; 2922 case QUESTIONNAIRE: return "http://hl7.org/fhir/resource-types"; 2923 case QUESTIONNAIRERESPONSE: return "http://hl7.org/fhir/resource-types"; 2924 case REFERRALREQUEST: return "http://hl7.org/fhir/resource-types"; 2925 case RELATEDPERSON: return "http://hl7.org/fhir/resource-types"; 2926 case RESOURCE: return "http://hl7.org/fhir/resource-types"; 2927 case RISKASSESSMENT: return "http://hl7.org/fhir/resource-types"; 2928 case SCHEDULE: return "http://hl7.org/fhir/resource-types"; 2929 case SEARCHPARAMETER: return "http://hl7.org/fhir/resource-types"; 2930 case SLOT: return "http://hl7.org/fhir/resource-types"; 2931 case SPECIMEN: return "http://hl7.org/fhir/resource-types"; 2932 case STRUCTUREDEFINITION: return "http://hl7.org/fhir/resource-types"; 2933 case SUBSCRIPTION: return "http://hl7.org/fhir/resource-types"; 2934 case SUBSTANCE: return "http://hl7.org/fhir/resource-types"; 2935 case SUPPLYDELIVERY: return "http://hl7.org/fhir/resource-types"; 2936 case SUPPLYREQUEST: return "http://hl7.org/fhir/resource-types"; 2937 case TESTSCRIPT: return "http://hl7.org/fhir/resource-types"; 2938 case VALUESET: return "http://hl7.org/fhir/resource-types"; 2939 case VISIONPRESCRIPTION: return "http://hl7.org/fhir/resource-types"; 2940 default: return "?"; 2941 } 2942 } 2943 public String getDefinition() { 2944 switch (this) { 2945 case ADDRESS: return "There is a variety of postal address formats defined around the world. This format defines a superset that is the basis for all addresses around the world."; 2946 case AGE: return ""; 2947 case ANNOTATION: return "A text note which also contains information about who made the statement and when."; 2948 case ATTACHMENT: return "For referring to data content defined in other formats."; 2949 case BACKBONEELEMENT: return "Base definition for all elements that are defined inside a resource - but not those in a data type."; 2950 case CODEABLECONCEPT: return "A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text."; 2951 case CODING: return "A reference to a code defined by a terminology system."; 2952 case CONTACTPOINT: return "Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc."; 2953 case COUNT: return ""; 2954 case DISTANCE: return ""; 2955 case DURATION: return ""; 2956 case ELEMENT: return "Base definition for all elements in a resource."; 2957 case ELEMENTDEFINITION: return "Captures constraints on each element within the resource, profile, or extension."; 2958 case EXTENSION: return "Optional Extensions Element - found in all resources."; 2959 case HUMANNAME: return "A human's name with the ability to identify parts and usage."; 2960 case IDENTIFIER: return "A technical identifier - identifies some entity uniquely and unambiguously."; 2961 case META: return "The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource."; 2962 case MONEY: return ""; 2963 case NARRATIVE: return "A human-readable formatted text, including images."; 2964 case PERIOD: return "A time period defined by a start and end date and optionally time."; 2965 case QUANTITY: return "A measured amount (or an amount that can potentially be measured). Note that measured amounts include amounts that are not precisely quantified, including amounts involving arbitrary units and floating currencies."; 2966 case RANGE: return "A set of ordered Quantities defined by a low and high limit."; 2967 case RATIO: return "A relationship of two Quantity values - expressed as a numerator and a denominator."; 2968 case REFERENCE: return "A reference from one resource to another."; 2969 case SAMPLEDDATA: return "A series of measurements taken by a device, with upper and lower limits. There may be more than one dimension in the data."; 2970 case SIGNATURE: return "A digital signature along with supporting context. The signature may be electronic/cryptographic in nature, or a graphical image representing a hand-written signature, or a signature process. Different Signature approaches have different utilities."; 2971 case SIMPLEQUANTITY: return ""; 2972 case TIMING: return "Specifies an event that may occur multiple times. Timing schedules are used to record when things are expected or requested to occur. The most common usage is in dosage instructions for medications. They are also used when planning care of various kinds."; 2973 case BASE64BINARY: return "A stream of bytes"; 2974 case BOOLEAN: return "Value of \"true\" or \"false\""; 2975 case CODE: return "A string which has at least one character and no leading or trailing whitespace and where there is no whitespace other than single spaces in the contents"; 2976 case DATE: return "A date or partial date (e.g. just year or year + month). There is no time zone. The format is a union of the schema types gYear, gYearMonth and date. Dates SHALL be valid dates."; 2977 case DATETIME: return "A date, date-time or partial date (e.g. just year or year + month). If hours and minutes are specified, a time zone SHALL be populated. The format is a union of the schema types gYear, gYearMonth, date and dateTime. Seconds must be provided due to schema type constraints but may be zero-filled and may be ignored. Dates SHALL be valid dates."; 2978 case DECIMAL: return "A rational number with implicit precision"; 2979 case ID: return "Any combination of letters, numerals, \"-\" and \".\", with a length limit of 64 characters. (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.) Ids are case-insensitive."; 2980 case INSTANT: return "An instant in time - known at least to the second"; 2981 case INTEGER: return "A whole number"; 2982 case MARKDOWN: return "A string that may contain markdown syntax for optional processing by a mark down presentation engine"; 2983 case OID: return "An oid represented as a URI"; 2984 case POSITIVEINT: return "An integer with a value that is positive (e.g. >0)"; 2985 case STRING: return "A sequence of Unicode characters"; 2986 case TIME: return "A time during the day, with no date specified"; 2987 case UNSIGNEDINT: return "An integer with a value that is not negative (e.g. >= 0)"; 2988 case URI: return "String of characters used to identify a name or a resource"; 2989 case UUID: return "A UUID, represented as a URI"; 2990 case XHTML: return "XHTML format, as defined by W3C, but restricted usage (mainly, no active content)"; 2991 case ACCOUNT: return "A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centres, etc."; 2992 case ALLERGYINTOLERANCE: return "Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance."; 2993 case APPOINTMENT: return "A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)."; 2994 case APPOINTMENTRESPONSE: return "A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection."; 2995 case AUDITEVENT: return "A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage."; 2996 case BASIC: return "Basic is used for handling concepts not yet defined in FHIR, narrative-only resources that don't map to an existing resource, and custom resources not appropriate for inclusion in the FHIR specification."; 2997 case BINARY: return "A binary resource can contain any content, whether text, image, pdf, zip archive, etc."; 2998 case BODYSITE: return "Record details about the anatomical location of a specimen or body part. This resource may be used when a coded concept does not provide the necessary detail needed for the use case."; 2999 case BUNDLE: return "A container for a collection of resources."; 3000 case CAREPLAN: return "Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions."; 3001 case CLAIM: return "A provider issued list of services and products provided, or to be provided, to a patient which is provided to an insurer for payment recovery."; 3002 case CLAIMRESPONSE: return "This resource provides the adjudication details from the processing of a Claim resource."; 3003 case CLINICALIMPRESSION: return "A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called \"ClinicalImpression\" rather than \"ClinicalAssessment\" to avoid confusion with the recording of assessment tools such as Apgar score."; 3004 case COMMUNICATION: return "An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency was notified about a reportable condition."; 3005 case COMMUNICATIONREQUEST: return "A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition."; 3006 case COMPOSITION: return "A set of healthcare-related information that is assembled together into a single logical document that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. While a Composition defines the structure, it does not actually contain the content: rather the full content of a document is contained in a Bundle, of which the Composition is the first resource contained."; 3007 case CONCEPTMAP: return "A statement of relationships from one set of concepts to one or more other concepts - either code systems or data elements, or classes in class models."; 3008 case CONDITION: return "Use to record detailed information about conditions, problems or diagnoses recognized by a clinician. There are many uses including: recording a diagnosis during an encounter; populating a problem list or a summary statement, such as a discharge summary."; 3009 case CONFORMANCE: return "A conformance statement is a set of capabilities of a FHIR Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation."; 3010 case CONTRACT: return "A formal agreement between parties regarding the conduct of business, exchange of information or other matters."; 3011 case COVERAGE: return "Financial instrument which may be used to pay for or reimburse health care products and services."; 3012 case DATAELEMENT: return "The formal description of a single piece of information that can be gathered and reported."; 3013 case DETECTEDISSUE: return "Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc."; 3014 case DEVICE: return "This resource identifies an instance of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device. Medical devices includes durable (reusable) medical equipment, implantable devices, as well as disposable equipment used for diagnostic, treatment, and research for healthcare and public health. Non-medical devices may include items such as a machine, cellphone, computer, application, etc."; 3015 case DEVICECOMPONENT: return "Describes the characteristics, operational status and capabilities of a medical-related component of a medical device."; 3016 case DEVICEMETRIC: return "Describes a measurement, calculation or setting capability of a medical device."; 3017 case DEVICEUSEREQUEST: return "Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker."; 3018 case DEVICEUSESTATEMENT: return "A record of a device being used by a patient where the record is the result of a report from the patient or another clinician."; 3019 case DIAGNOSTICORDER: return "A record of a request for a diagnostic investigation service to be performed."; 3020 case DIAGNOSTICREPORT: return "The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports."; 3021 case DOCUMENTMANIFEST: return "A manifest that defines a set of documents."; 3022 case DOCUMENTREFERENCE: return "A reference to a document ."; 3023 case DOMAINRESOURCE: return "--- Abstract Type! ---A resource that includes narrative, extensions, and contained resources."; 3024 case ELIGIBILITYREQUEST: return "This resource provides the insurance eligibility details from the insurer regarding a specified coverage and optionally some class of service."; 3025 case ELIGIBILITYRESPONSE: return "This resource provides eligibility and plan details from the processing of an Eligibility resource."; 3026 case ENCOUNTER: return "An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient."; 3027 case ENROLLMENTREQUEST: return "This resource provides the insurance enrollment details to the insurer regarding a specified coverage."; 3028 case ENROLLMENTRESPONSE: return "This resource provides enrollment and plan details from the processing of an Enrollment resource."; 3029 case EPISODEOFCARE: return "An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time."; 3030 case EXPLANATIONOFBENEFIT: return "This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided."; 3031 case FAMILYMEMBERHISTORY: return "Significant health events and conditions for a person related to the patient relevant in the context of care for the patient."; 3032 case FLAG: return "Prospective warnings of potential issues when providing care to the patient."; 3033 case GOAL: return "Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc."; 3034 case GROUP: return "Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization."; 3035 case HEALTHCARESERVICE: return "The details of a healthcare service available at a location."; 3036 case IMAGINGOBJECTSELECTION: return "A manifest of a set of DICOM Service-Object Pair Instances (SOP Instances). The referenced SOP Instances (images or other content) are for a single patient, and may be from one or more studies. The referenced SOP Instances have been selected for a purpose, such as quality assurance, conference, or consult. Reflecting that range of purposes, typical ImagingObjectSelection resources may include all SOP Instances in a study (perhaps for sharing through a Health Information Exchange); key images from multiple studies (for reference by a referring or treating physician); a multi-frame ultrasound instance (\"cine\" video clip) and a set of measurements taken from that instance (for inclusion in a teaching file); and so on."; 3037 case IMAGINGSTUDY: return "Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities."; 3038 case IMMUNIZATION: return "Describes the event of a patient being administered a vaccination or a record of a vaccination as reported by a patient, a clinician or another party and may include vaccine reaction information and what vaccination protocol was followed."; 3039 case IMMUNIZATIONRECOMMENDATION: return "A patient's point-in-time immunization and recommendation (i.e. forecasting a patient's immunization eligibility according to a published schedule) with optional supporting justification."; 3040 case IMPLEMENTATIONGUIDE: return "A set of rules or how FHIR is used to solve a particular problem. This resource is used to gather all the parts of an implementation guide into a logical whole, and to publish a computable definition of all the parts."; 3041 case LIST: return "A set of information summarized from a list of other resources."; 3042 case LOCATION: return "Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained or accommodated."; 3043 case MEDIA: return "A photo, video, or audio recording acquired or used in healthcare. The actual content may be inline or provided by direct reference."; 3044 case MEDICATION: return "This resource is primarily used for the identification and definition of a medication. It covers the ingredients and the packaging for a medication."; 3045 case MEDICATIONADMINISTRATION: return "Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner."; 3046 case MEDICATIONDISPENSE: return "Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order."; 3047 case MEDICATIONORDER: return "An order for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called \"MedicationOrder\" rather than \"MedicationPrescription\" to generalize the use across inpatient and outpatient settings as well as for care plans, etc."; 3048 case MEDICATIONSTATEMENT: return "A record of a medication that is being consumed by a patient. A MedicationStatement may indicate that the patient may be taking the medication now, or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from e.g. the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains \r\rThe primary difference between a medication statement and a medication administration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medication statement is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the medication statement information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information."; 3049 case MESSAGEHEADER: return "The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle."; 3050 case NAMINGSYSTEM: return "A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a \"System\" used within the Identifier and Coding data types."; 3051 case NUTRITIONORDER: return "A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident."; 3052 case OBSERVATION: return "Measurements and simple assertions made about a patient, device or other subject."; 3053 case OPERATIONDEFINITION: return "A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction)."; 3054 case OPERATIONOUTCOME: return "A collection of error, warning or information messages that result from a system action."; 3055 case ORDER: return "A request to perform an action."; 3056 case ORDERRESPONSE: return "A response to an order."; 3057 case ORGANIZATION: return "A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, etc."; 3058 case PARAMETERS: return "This special resource type is used to represent an operation request and response (operations.html). It has no other use, and there is no RESTful endpoint associated with it."; 3059 case PATIENT: return "Demographics and other administrative information about an individual or animal receiving care or other health-related services."; 3060 case PAYMENTNOTICE: return "This resource provides the status of the payment for goods and services rendered, and the request and response resource references."; 3061 case PAYMENTRECONCILIATION: return "This resource provides payment details and claim references supporting a bulk payment."; 3062 case PERSON: return "Demographics and administrative information about a person independent of a specific health-related context."; 3063 case PRACTITIONER: return "A person who is directly or indirectly involved in the provisioning of healthcare."; 3064 case PROCEDURE: return "An action that is or was performed on a patient. This can be a physical intervention like an operation, or less invasive like counseling or hypnotherapy."; 3065 case PROCEDUREREQUEST: return "A request for a procedure to be performed. May be a proposal or an order."; 3066 case PROCESSREQUEST: return "This resource provides the target, request and response, and action details for an action to be performed by the target on or about existing resources."; 3067 case PROCESSRESPONSE: return "This resource provides processing status, errors and notes from the processing of a resource."; 3068 case PROVENANCE: return "Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies."; 3069 case QUESTIONNAIRE: return "A structured set of questions intended to guide the collection of answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions."; 3070 case QUESTIONNAIRERESPONSE: return "A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions."; 3071 case REFERRALREQUEST: return "Used to record and send details about a request for referral service or transfer of a patient to the care of another provider or provider organization."; 3072 case RELATEDPERSON: return "Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process."; 3073 case RESOURCE: return "--- Abstract Type! ---This is the base resource type for everything."; 3074 case RISKASSESSMENT: return "An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome."; 3075 case SCHEDULE: return "A container for slot(s) of time that may be available for booking appointments."; 3076 case SEARCHPARAMETER: return "A search parameter that defines a named search item that can be used to search/filter on a resource."; 3077 case SLOT: return "A slot of time on a schedule that may be available for booking appointments."; 3078 case SPECIMEN: return "A sample to be used for analysis."; 3079 case STRUCTUREDEFINITION: return "A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions, and constraints on resources and data types."; 3080 case SUBSCRIPTION: return "The subscription resource is used to define a push based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined \"channel\" so that another system is able to take an appropriate action."; 3081 case SUBSTANCE: return "A homogeneous material with a definite composition."; 3082 case SUPPLYDELIVERY: return "Record of delivery of what is supplied."; 3083 case SUPPLYREQUEST: return "A record of a request for a medication, substance or device used in the healthcare setting."; 3084 case TESTSCRIPT: return "TestScript is a resource that specifies a suite of tests against a FHIR server implementation to determine compliance against the FHIR specification."; 3085 case VALUESET: return "A value set specifies a set of codes drawn from one or more code systems."; 3086 case VISIONPRESCRIPTION: return "An authorization for the supply of glasses and/or contact lenses to a patient."; 3087 default: return "?"; 3088 } 3089 } 3090 public String getDisplay() { 3091 switch (this) { 3092 case ADDRESS: return "Address"; 3093 case AGE: return "Age"; 3094 case ANNOTATION: return "Annotation"; 3095 case ATTACHMENT: return "Attachment"; 3096 case BACKBONEELEMENT: return "BackboneElement"; 3097 case CODEABLECONCEPT: return "CodeableConcept"; 3098 case CODING: return "Coding"; 3099 case CONTACTPOINT: return "ContactPoint"; 3100 case COUNT: return "Count"; 3101 case DISTANCE: return "Distance"; 3102 case DURATION: return "Duration"; 3103 case ELEMENT: return "Element"; 3104 case ELEMENTDEFINITION: return "ElementDefinition"; 3105 case EXTENSION: return "Extension"; 3106 case HUMANNAME: return "HumanName"; 3107 case IDENTIFIER: return "Identifier"; 3108 case META: return "Meta"; 3109 case MONEY: return "Money"; 3110 case NARRATIVE: return "Narrative"; 3111 case PERIOD: return "Period"; 3112 case QUANTITY: return "Quantity"; 3113 case RANGE: return "Range"; 3114 case RATIO: return "Ratio"; 3115 case REFERENCE: return "Reference"; 3116 case SAMPLEDDATA: return "SampledData"; 3117 case SIGNATURE: return "Signature"; 3118 case SIMPLEQUANTITY: return "SimpleQuantity"; 3119 case TIMING: return "Timing"; 3120 case BASE64BINARY: return "base64Binary"; 3121 case BOOLEAN: return "boolean"; 3122 case CODE: return "code"; 3123 case DATE: return "date"; 3124 case DATETIME: return "dateTime"; 3125 case DECIMAL: return "decimal"; 3126 case ID: return "id"; 3127 case INSTANT: return "instant"; 3128 case INTEGER: return "integer"; 3129 case MARKDOWN: return "markdown"; 3130 case OID: return "oid"; 3131 case POSITIVEINT: return "positiveInt"; 3132 case STRING: return "string"; 3133 case TIME: return "time"; 3134 case UNSIGNEDINT: return "unsignedInt"; 3135 case URI: return "uri"; 3136 case UUID: return "uuid"; 3137 case XHTML: return "XHTML"; 3138 case ACCOUNT: return "Account"; 3139 case ALLERGYINTOLERANCE: return "AllergyIntolerance"; 3140 case APPOINTMENT: return "Appointment"; 3141 case APPOINTMENTRESPONSE: return "AppointmentResponse"; 3142 case AUDITEVENT: return "AuditEvent"; 3143 case BASIC: return "Basic"; 3144 case BINARY: return "Binary"; 3145 case BODYSITE: return "BodySite"; 3146 case BUNDLE: return "Bundle"; 3147 case CAREPLAN: return "CarePlan"; 3148 case CLAIM: return "Claim"; 3149 case CLAIMRESPONSE: return "ClaimResponse"; 3150 case CLINICALIMPRESSION: return "ClinicalImpression"; 3151 case COMMUNICATION: return "Communication"; 3152 case COMMUNICATIONREQUEST: return "CommunicationRequest"; 3153 case COMPOSITION: return "Composition"; 3154 case CONCEPTMAP: return "ConceptMap"; 3155 case CONDITION: return "Condition"; 3156 case CONFORMANCE: return "Conformance"; 3157 case CONTRACT: return "Contract"; 3158 case COVERAGE: return "Coverage"; 3159 case DATAELEMENT: return "DataElement"; 3160 case DETECTEDISSUE: return "DetectedIssue"; 3161 case DEVICE: return "Device"; 3162 case DEVICECOMPONENT: return "DeviceComponent"; 3163 case DEVICEMETRIC: return "DeviceMetric"; 3164 case DEVICEUSEREQUEST: return "DeviceUseRequest"; 3165 case DEVICEUSESTATEMENT: return "DeviceUseStatement"; 3166 case DIAGNOSTICORDER: return "DiagnosticOrder"; 3167 case DIAGNOSTICREPORT: return "DiagnosticReport"; 3168 case DOCUMENTMANIFEST: return "DocumentManifest"; 3169 case DOCUMENTREFERENCE: return "DocumentReference"; 3170 case DOMAINRESOURCE: return "DomainResource"; 3171 case ELIGIBILITYREQUEST: return "EligibilityRequest"; 3172 case ELIGIBILITYRESPONSE: return "EligibilityResponse"; 3173 case ENCOUNTER: return "Encounter"; 3174 case ENROLLMENTREQUEST: return "EnrollmentRequest"; 3175 case ENROLLMENTRESPONSE: return "EnrollmentResponse"; 3176 case EPISODEOFCARE: return "EpisodeOfCare"; 3177 case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; 3178 case FAMILYMEMBERHISTORY: return "FamilyMemberHistory"; 3179 case FLAG: return "Flag"; 3180 case GOAL: return "Goal"; 3181 case GROUP: return "Group"; 3182 case HEALTHCARESERVICE: return "HealthcareService"; 3183 case IMAGINGOBJECTSELECTION: return "ImagingObjectSelection"; 3184 case IMAGINGSTUDY: return "ImagingStudy"; 3185 case IMMUNIZATION: return "Immunization"; 3186 case IMMUNIZATIONRECOMMENDATION: return "ImmunizationRecommendation"; 3187 case IMPLEMENTATIONGUIDE: return "ImplementationGuide"; 3188 case LIST: return "List"; 3189 case LOCATION: return "Location"; 3190 case MEDIA: return "Media"; 3191 case MEDICATION: return "Medication"; 3192 case MEDICATIONADMINISTRATION: return "MedicationAdministration"; 3193 case MEDICATIONDISPENSE: return "MedicationDispense"; 3194 case MEDICATIONORDER: return "MedicationOrder"; 3195 case MEDICATIONSTATEMENT: return "MedicationStatement"; 3196 case MESSAGEHEADER: return "MessageHeader"; 3197 case NAMINGSYSTEM: return "NamingSystem"; 3198 case NUTRITIONORDER: return "NutritionOrder"; 3199 case OBSERVATION: return "Observation"; 3200 case OPERATIONDEFINITION: return "OperationDefinition"; 3201 case OPERATIONOUTCOME: return "OperationOutcome"; 3202 case ORDER: return "Order"; 3203 case ORDERRESPONSE: return "OrderResponse"; 3204 case ORGANIZATION: return "Organization"; 3205 case PARAMETERS: return "Parameters"; 3206 case PATIENT: return "Patient"; 3207 case PAYMENTNOTICE: return "PaymentNotice"; 3208 case PAYMENTRECONCILIATION: return "PaymentReconciliation"; 3209 case PERSON: return "Person"; 3210 case PRACTITIONER: return "Practitioner"; 3211 case PROCEDURE: return "Procedure"; 3212 case PROCEDUREREQUEST: return "ProcedureRequest"; 3213 case PROCESSREQUEST: return "ProcessRequest"; 3214 case PROCESSRESPONSE: return "ProcessResponse"; 3215 case PROVENANCE: return "Provenance"; 3216 case QUESTIONNAIRE: return "Questionnaire"; 3217 case QUESTIONNAIRERESPONSE: return "QuestionnaireResponse"; 3218 case REFERRALREQUEST: return "ReferralRequest"; 3219 case RELATEDPERSON: return "RelatedPerson"; 3220 case RESOURCE: return "Resource"; 3221 case RISKASSESSMENT: return "RiskAssessment"; 3222 case SCHEDULE: return "Schedule"; 3223 case SEARCHPARAMETER: return "SearchParameter"; 3224 case SLOT: return "Slot"; 3225 case SPECIMEN: return "Specimen"; 3226 case STRUCTUREDEFINITION: return "StructureDefinition"; 3227 case SUBSCRIPTION: return "Subscription"; 3228 case SUBSTANCE: return "Substance"; 3229 case SUPPLYDELIVERY: return "SupplyDelivery"; 3230 case SUPPLYREQUEST: return "SupplyRequest"; 3231 case TESTSCRIPT: return "TestScript"; 3232 case VALUESET: return "ValueSet"; 3233 case VISIONPRESCRIPTION: return "VisionPrescription"; 3234 default: return "?"; 3235 } 3236 } 3237 } 3238 3239 public static class FHIRDefinedTypeEnumFactory implements EnumFactory<FHIRDefinedType> { 3240 public FHIRDefinedType fromCode(String codeString) throws IllegalArgumentException { 3241 if (codeString == null || "".equals(codeString)) 3242 if (codeString == null || "".equals(codeString)) 3243 return null; 3244 if ("Address".equals(codeString)) 3245 return FHIRDefinedType.ADDRESS; 3246 if ("Age".equals(codeString)) 3247 return FHIRDefinedType.AGE; 3248 if ("Annotation".equals(codeString)) 3249 return FHIRDefinedType.ANNOTATION; 3250 if ("Attachment".equals(codeString)) 3251 return FHIRDefinedType.ATTACHMENT; 3252 if ("BackboneElement".equals(codeString)) 3253 return FHIRDefinedType.BACKBONEELEMENT; 3254 if ("CodeableConcept".equals(codeString)) 3255 return FHIRDefinedType.CODEABLECONCEPT; 3256 if ("Coding".equals(codeString)) 3257 return FHIRDefinedType.CODING; 3258 if ("ContactPoint".equals(codeString)) 3259 return FHIRDefinedType.CONTACTPOINT; 3260 if ("Count".equals(codeString)) 3261 return FHIRDefinedType.COUNT; 3262 if ("Distance".equals(codeString)) 3263 return FHIRDefinedType.DISTANCE; 3264 if ("Duration".equals(codeString)) 3265 return FHIRDefinedType.DURATION; 3266 if ("Element".equals(codeString)) 3267 return FHIRDefinedType.ELEMENT; 3268 if ("ElementDefinition".equals(codeString)) 3269 return FHIRDefinedType.ELEMENTDEFINITION; 3270 if ("Extension".equals(codeString)) 3271 return FHIRDefinedType.EXTENSION; 3272 if ("HumanName".equals(codeString)) 3273 return FHIRDefinedType.HUMANNAME; 3274 if ("Identifier".equals(codeString)) 3275 return FHIRDefinedType.IDENTIFIER; 3276 if ("Meta".equals(codeString)) 3277 return FHIRDefinedType.META; 3278 if ("Money".equals(codeString)) 3279 return FHIRDefinedType.MONEY; 3280 if ("Narrative".equals(codeString)) 3281 return FHIRDefinedType.NARRATIVE; 3282 if ("Period".equals(codeString)) 3283 return FHIRDefinedType.PERIOD; 3284 if ("Quantity".equals(codeString)) 3285 return FHIRDefinedType.QUANTITY; 3286 if ("Range".equals(codeString)) 3287 return FHIRDefinedType.RANGE; 3288 if ("Ratio".equals(codeString)) 3289 return FHIRDefinedType.RATIO; 3290 if ("Reference".equals(codeString)) 3291 return FHIRDefinedType.REFERENCE; 3292 if ("SampledData".equals(codeString)) 3293 return FHIRDefinedType.SAMPLEDDATA; 3294 if ("Signature".equals(codeString)) 3295 return FHIRDefinedType.SIGNATURE; 3296 if ("SimpleQuantity".equals(codeString)) 3297 return FHIRDefinedType.SIMPLEQUANTITY; 3298 if ("Timing".equals(codeString)) 3299 return FHIRDefinedType.TIMING; 3300 if ("base64Binary".equals(codeString)) 3301 return FHIRDefinedType.BASE64BINARY; 3302 if ("boolean".equals(codeString)) 3303 return FHIRDefinedType.BOOLEAN; 3304 if ("code".equals(codeString)) 3305 return FHIRDefinedType.CODE; 3306 if ("date".equals(codeString)) 3307 return FHIRDefinedType.DATE; 3308 if ("dateTime".equals(codeString)) 3309 return FHIRDefinedType.DATETIME; 3310 if ("decimal".equals(codeString)) 3311 return FHIRDefinedType.DECIMAL; 3312 if ("id".equals(codeString)) 3313 return FHIRDefinedType.ID; 3314 if ("instant".equals(codeString)) 3315 return FHIRDefinedType.INSTANT; 3316 if ("integer".equals(codeString)) 3317 return FHIRDefinedType.INTEGER; 3318 if ("markdown".equals(codeString)) 3319 return FHIRDefinedType.MARKDOWN; 3320 if ("oid".equals(codeString)) 3321 return FHIRDefinedType.OID; 3322 if ("positiveInt".equals(codeString)) 3323 return FHIRDefinedType.POSITIVEINT; 3324 if ("string".equals(codeString)) 3325 return FHIRDefinedType.STRING; 3326 if ("time".equals(codeString)) 3327 return FHIRDefinedType.TIME; 3328 if ("unsignedInt".equals(codeString)) 3329 return FHIRDefinedType.UNSIGNEDINT; 3330 if ("uri".equals(codeString)) 3331 return FHIRDefinedType.URI; 3332 if ("uuid".equals(codeString)) 3333 return FHIRDefinedType.UUID; 3334 if ("xhtml".equals(codeString)) 3335 return FHIRDefinedType.XHTML; 3336 if ("Account".equals(codeString)) 3337 return FHIRDefinedType.ACCOUNT; 3338 if ("AllergyIntolerance".equals(codeString)) 3339 return FHIRDefinedType.ALLERGYINTOLERANCE; 3340 if ("Appointment".equals(codeString)) 3341 return FHIRDefinedType.APPOINTMENT; 3342 if ("AppointmentResponse".equals(codeString)) 3343 return FHIRDefinedType.APPOINTMENTRESPONSE; 3344 if ("AuditEvent".equals(codeString)) 3345 return FHIRDefinedType.AUDITEVENT; 3346 if ("Basic".equals(codeString)) 3347 return FHIRDefinedType.BASIC; 3348 if ("Binary".equals(codeString)) 3349 return FHIRDefinedType.BINARY; 3350 if ("BodySite".equals(codeString)) 3351 return FHIRDefinedType.BODYSITE; 3352 if ("Bundle".equals(codeString)) 3353 return FHIRDefinedType.BUNDLE; 3354 if ("CarePlan".equals(codeString)) 3355 return FHIRDefinedType.CAREPLAN; 3356 if ("Claim".equals(codeString)) 3357 return FHIRDefinedType.CLAIM; 3358 if ("ClaimResponse".equals(codeString)) 3359 return FHIRDefinedType.CLAIMRESPONSE; 3360 if ("ClinicalImpression".equals(codeString)) 3361 return FHIRDefinedType.CLINICALIMPRESSION; 3362 if ("Communication".equals(codeString)) 3363 return FHIRDefinedType.COMMUNICATION; 3364 if ("CommunicationRequest".equals(codeString)) 3365 return FHIRDefinedType.COMMUNICATIONREQUEST; 3366 if ("Composition".equals(codeString)) 3367 return FHIRDefinedType.COMPOSITION; 3368 if ("ConceptMap".equals(codeString)) 3369 return FHIRDefinedType.CONCEPTMAP; 3370 if ("Condition".equals(codeString)) 3371 return FHIRDefinedType.CONDITION; 3372 if ("Conformance".equals(codeString)) 3373 return FHIRDefinedType.CONFORMANCE; 3374 if ("Contract".equals(codeString)) 3375 return FHIRDefinedType.CONTRACT; 3376 if ("Coverage".equals(codeString)) 3377 return FHIRDefinedType.COVERAGE; 3378 if ("DataElement".equals(codeString)) 3379 return FHIRDefinedType.DATAELEMENT; 3380 if ("DetectedIssue".equals(codeString)) 3381 return FHIRDefinedType.DETECTEDISSUE; 3382 if ("Device".equals(codeString)) 3383 return FHIRDefinedType.DEVICE; 3384 if ("DeviceComponent".equals(codeString)) 3385 return FHIRDefinedType.DEVICECOMPONENT; 3386 if ("DeviceMetric".equals(codeString)) 3387 return FHIRDefinedType.DEVICEMETRIC; 3388 if ("DeviceUseRequest".equals(codeString)) 3389 return FHIRDefinedType.DEVICEUSEREQUEST; 3390 if ("DeviceUseStatement".equals(codeString)) 3391 return FHIRDefinedType.DEVICEUSESTATEMENT; 3392 if ("DiagnosticOrder".equals(codeString)) 3393 return FHIRDefinedType.DIAGNOSTICORDER; 3394 if ("DiagnosticReport".equals(codeString)) 3395 return FHIRDefinedType.DIAGNOSTICREPORT; 3396 if ("DocumentManifest".equals(codeString)) 3397 return FHIRDefinedType.DOCUMENTMANIFEST; 3398 if ("DocumentReference".equals(codeString)) 3399 return FHIRDefinedType.DOCUMENTREFERENCE; 3400 if ("DomainResource".equals(codeString)) 3401 return FHIRDefinedType.DOMAINRESOURCE; 3402 if ("EligibilityRequest".equals(codeString)) 3403 return FHIRDefinedType.ELIGIBILITYREQUEST; 3404 if ("EligibilityResponse".equals(codeString)) 3405 return FHIRDefinedType.ELIGIBILITYRESPONSE; 3406 if ("Encounter".equals(codeString)) 3407 return FHIRDefinedType.ENCOUNTER; 3408 if ("EnrollmentRequest".equals(codeString)) 3409 return FHIRDefinedType.ENROLLMENTREQUEST; 3410 if ("EnrollmentResponse".equals(codeString)) 3411 return FHIRDefinedType.ENROLLMENTRESPONSE; 3412 if ("EpisodeOfCare".equals(codeString)) 3413 return FHIRDefinedType.EPISODEOFCARE; 3414 if ("ExplanationOfBenefit".equals(codeString)) 3415 return FHIRDefinedType.EXPLANATIONOFBENEFIT; 3416 if ("FamilyMemberHistory".equals(codeString)) 3417 return FHIRDefinedType.FAMILYMEMBERHISTORY; 3418 if ("Flag".equals(codeString)) 3419 return FHIRDefinedType.FLAG; 3420 if ("Goal".equals(codeString)) 3421 return FHIRDefinedType.GOAL; 3422 if ("Group".equals(codeString)) 3423 return FHIRDefinedType.GROUP; 3424 if ("HealthcareService".equals(codeString)) 3425 return FHIRDefinedType.HEALTHCARESERVICE; 3426 if ("ImagingObjectSelection".equals(codeString)) 3427 return FHIRDefinedType.IMAGINGOBJECTSELECTION; 3428 if ("ImagingStudy".equals(codeString)) 3429 return FHIRDefinedType.IMAGINGSTUDY; 3430 if ("Immunization".equals(codeString)) 3431 return FHIRDefinedType.IMMUNIZATION; 3432 if ("ImmunizationRecommendation".equals(codeString)) 3433 return FHIRDefinedType.IMMUNIZATIONRECOMMENDATION; 3434 if ("ImplementationGuide".equals(codeString)) 3435 return FHIRDefinedType.IMPLEMENTATIONGUIDE; 3436 if ("List".equals(codeString)) 3437 return FHIRDefinedType.LIST; 3438 if ("Location".equals(codeString)) 3439 return FHIRDefinedType.LOCATION; 3440 if ("Media".equals(codeString)) 3441 return FHIRDefinedType.MEDIA; 3442 if ("Medication".equals(codeString)) 3443 return FHIRDefinedType.MEDICATION; 3444 if ("MedicationAdministration".equals(codeString)) 3445 return FHIRDefinedType.MEDICATIONADMINISTRATION; 3446 if ("MedicationDispense".equals(codeString)) 3447 return FHIRDefinedType.MEDICATIONDISPENSE; 3448 if ("MedicationOrder".equals(codeString)) 3449 return FHIRDefinedType.MEDICATIONORDER; 3450 if ("MedicationStatement".equals(codeString)) 3451 return FHIRDefinedType.MEDICATIONSTATEMENT; 3452 if ("MessageHeader".equals(codeString)) 3453 return FHIRDefinedType.MESSAGEHEADER; 3454 if ("NamingSystem".equals(codeString)) 3455 return FHIRDefinedType.NAMINGSYSTEM; 3456 if ("NutritionOrder".equals(codeString)) 3457 return FHIRDefinedType.NUTRITIONORDER; 3458 if ("Observation".equals(codeString)) 3459 return FHIRDefinedType.OBSERVATION; 3460 if ("OperationDefinition".equals(codeString)) 3461 return FHIRDefinedType.OPERATIONDEFINITION; 3462 if ("OperationOutcome".equals(codeString)) 3463 return FHIRDefinedType.OPERATIONOUTCOME; 3464 if ("Order".equals(codeString)) 3465 return FHIRDefinedType.ORDER; 3466 if ("OrderResponse".equals(codeString)) 3467 return FHIRDefinedType.ORDERRESPONSE; 3468 if ("Organization".equals(codeString)) 3469 return FHIRDefinedType.ORGANIZATION; 3470 if ("Parameters".equals(codeString)) 3471 return FHIRDefinedType.PARAMETERS; 3472 if ("Patient".equals(codeString)) 3473 return FHIRDefinedType.PATIENT; 3474 if ("PaymentNotice".equals(codeString)) 3475 return FHIRDefinedType.PAYMENTNOTICE; 3476 if ("PaymentReconciliation".equals(codeString)) 3477 return FHIRDefinedType.PAYMENTRECONCILIATION; 3478 if ("Person".equals(codeString)) 3479 return FHIRDefinedType.PERSON; 3480 if ("Practitioner".equals(codeString)) 3481 return FHIRDefinedType.PRACTITIONER; 3482 if ("Procedure".equals(codeString)) 3483 return FHIRDefinedType.PROCEDURE; 3484 if ("ProcedureRequest".equals(codeString)) 3485 return FHIRDefinedType.PROCEDUREREQUEST; 3486 if ("ProcessRequest".equals(codeString)) 3487 return FHIRDefinedType.PROCESSREQUEST; 3488 if ("ProcessResponse".equals(codeString)) 3489 return FHIRDefinedType.PROCESSRESPONSE; 3490 if ("Provenance".equals(codeString)) 3491 return FHIRDefinedType.PROVENANCE; 3492 if ("Questionnaire".equals(codeString)) 3493 return FHIRDefinedType.QUESTIONNAIRE; 3494 if ("QuestionnaireResponse".equals(codeString)) 3495 return FHIRDefinedType.QUESTIONNAIRERESPONSE; 3496 if ("ReferralRequest".equals(codeString)) 3497 return FHIRDefinedType.REFERRALREQUEST; 3498 if ("RelatedPerson".equals(codeString)) 3499 return FHIRDefinedType.RELATEDPERSON; 3500 if ("Resource".equals(codeString)) 3501 return FHIRDefinedType.RESOURCE; 3502 if ("RiskAssessment".equals(codeString)) 3503 return FHIRDefinedType.RISKASSESSMENT; 3504 if ("Schedule".equals(codeString)) 3505 return FHIRDefinedType.SCHEDULE; 3506 if ("SearchParameter".equals(codeString)) 3507 return FHIRDefinedType.SEARCHPARAMETER; 3508 if ("Slot".equals(codeString)) 3509 return FHIRDefinedType.SLOT; 3510 if ("Specimen".equals(codeString)) 3511 return FHIRDefinedType.SPECIMEN; 3512 if ("StructureDefinition".equals(codeString)) 3513 return FHIRDefinedType.STRUCTUREDEFINITION; 3514 if ("Subscription".equals(codeString)) 3515 return FHIRDefinedType.SUBSCRIPTION; 3516 if ("Substance".equals(codeString)) 3517 return FHIRDefinedType.SUBSTANCE; 3518 if ("SupplyDelivery".equals(codeString)) 3519 return FHIRDefinedType.SUPPLYDELIVERY; 3520 if ("SupplyRequest".equals(codeString)) 3521 return FHIRDefinedType.SUPPLYREQUEST; 3522 if ("TestScript".equals(codeString)) 3523 return FHIRDefinedType.TESTSCRIPT; 3524 if ("ValueSet".equals(codeString)) 3525 return FHIRDefinedType.VALUESET; 3526 if ("VisionPrescription".equals(codeString)) 3527 return FHIRDefinedType.VISIONPRESCRIPTION; 3528 throw new IllegalArgumentException("Unknown FHIRDefinedType code '"+codeString+"'"); 3529 } 3530 public Enumeration<FHIRDefinedType> fromType(Base code) throws FHIRException { 3531 if (code == null || code.isEmpty()) 3532 return null; 3533 String codeString = ((PrimitiveType) code).asStringValue(); 3534 if (codeString == null || "".equals(codeString)) 3535 return null; 3536 if ("Address".equals(codeString)) 3537 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ADDRESS); 3538 if ("Age".equals(codeString)) 3539 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.AGE); 3540 if ("Annotation".equals(codeString)) 3541 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ANNOTATION); 3542 if ("Attachment".equals(codeString)) 3543 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ATTACHMENT); 3544 if ("BackboneElement".equals(codeString)) 3545 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.BACKBONEELEMENT); 3546 if ("CodeableConcept".equals(codeString)) 3547 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CODEABLECONCEPT); 3548 if ("Coding".equals(codeString)) 3549 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CODING); 3550 if ("ContactPoint".equals(codeString)) 3551 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CONTACTPOINT); 3552 if ("Count".equals(codeString)) 3553 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.COUNT); 3554 if ("Distance".equals(codeString)) 3555 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DISTANCE); 3556 if ("Duration".equals(codeString)) 3557 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DURATION); 3558 if ("Element".equals(codeString)) 3559 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ELEMENT); 3560 if ("ElementDefinition".equals(codeString)) 3561 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ELEMENTDEFINITION); 3562 if ("Extension".equals(codeString)) 3563 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.EXTENSION); 3564 if ("HumanName".equals(codeString)) 3565 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.HUMANNAME); 3566 if ("Identifier".equals(codeString)) 3567 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.IDENTIFIER); 3568 if ("Meta".equals(codeString)) 3569 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.META); 3570 if ("Money".equals(codeString)) 3571 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MONEY); 3572 if ("Narrative".equals(codeString)) 3573 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.NARRATIVE); 3574 if ("Period".equals(codeString)) 3575 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PERIOD); 3576 if ("Quantity".equals(codeString)) 3577 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.QUANTITY); 3578 if ("Range".equals(codeString)) 3579 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.RANGE); 3580 if ("Ratio".equals(codeString)) 3581 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.RATIO); 3582 if ("Reference".equals(codeString)) 3583 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.REFERENCE); 3584 if ("SampledData".equals(codeString)) 3585 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SAMPLEDDATA); 3586 if ("Signature".equals(codeString)) 3587 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SIGNATURE); 3588 if ("SimpleQuantity".equals(codeString)) 3589 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SIMPLEQUANTITY); 3590 if ("Timing".equals(codeString)) 3591 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.TIMING); 3592 if ("base64Binary".equals(codeString)) 3593 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.BASE64BINARY); 3594 if ("boolean".equals(codeString)) 3595 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.BOOLEAN); 3596 if ("code".equals(codeString)) 3597 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CODE); 3598 if ("date".equals(codeString)) 3599 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DATE); 3600 if ("dateTime".equals(codeString)) 3601 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DATETIME); 3602 if ("decimal".equals(codeString)) 3603 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DECIMAL); 3604 if ("id".equals(codeString)) 3605 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ID); 3606 if ("instant".equals(codeString)) 3607 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.INSTANT); 3608 if ("integer".equals(codeString)) 3609 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.INTEGER); 3610 if ("markdown".equals(codeString)) 3611 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MARKDOWN); 3612 if ("oid".equals(codeString)) 3613 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.OID); 3614 if ("positiveInt".equals(codeString)) 3615 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.POSITIVEINT); 3616 if ("string".equals(codeString)) 3617 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.STRING); 3618 if ("time".equals(codeString)) 3619 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.TIME); 3620 if ("unsignedInt".equals(codeString)) 3621 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.UNSIGNEDINT); 3622 if ("uri".equals(codeString)) 3623 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.URI); 3624 if ("uuid".equals(codeString)) 3625 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.UUID); 3626 if ("xhtml".equals(codeString)) 3627 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.XHTML); 3628 if ("Account".equals(codeString)) 3629 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ACCOUNT); 3630 if ("AllergyIntolerance".equals(codeString)) 3631 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ALLERGYINTOLERANCE); 3632 if ("Appointment".equals(codeString)) 3633 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.APPOINTMENT); 3634 if ("AppointmentResponse".equals(codeString)) 3635 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.APPOINTMENTRESPONSE); 3636 if ("AuditEvent".equals(codeString)) 3637 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.AUDITEVENT); 3638 if ("Basic".equals(codeString)) 3639 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.BASIC); 3640 if ("Binary".equals(codeString)) 3641 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.BINARY); 3642 if ("BodySite".equals(codeString)) 3643 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.BODYSITE); 3644 if ("Bundle".equals(codeString)) 3645 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.BUNDLE); 3646 if ("CarePlan".equals(codeString)) 3647 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CAREPLAN); 3648 if ("Claim".equals(codeString)) 3649 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CLAIM); 3650 if ("ClaimResponse".equals(codeString)) 3651 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CLAIMRESPONSE); 3652 if ("ClinicalImpression".equals(codeString)) 3653 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CLINICALIMPRESSION); 3654 if ("Communication".equals(codeString)) 3655 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.COMMUNICATION); 3656 if ("CommunicationRequest".equals(codeString)) 3657 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.COMMUNICATIONREQUEST); 3658 if ("Composition".equals(codeString)) 3659 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.COMPOSITION); 3660 if ("ConceptMap".equals(codeString)) 3661 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CONCEPTMAP); 3662 if ("Condition".equals(codeString)) 3663 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CONDITION); 3664 if ("Conformance".equals(codeString)) 3665 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CONFORMANCE); 3666 if ("Contract".equals(codeString)) 3667 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.CONTRACT); 3668 if ("Coverage".equals(codeString)) 3669 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.COVERAGE); 3670 if ("DataElement".equals(codeString)) 3671 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DATAELEMENT); 3672 if ("DetectedIssue".equals(codeString)) 3673 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DETECTEDISSUE); 3674 if ("Device".equals(codeString)) 3675 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DEVICE); 3676 if ("DeviceComponent".equals(codeString)) 3677 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DEVICECOMPONENT); 3678 if ("DeviceMetric".equals(codeString)) 3679 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DEVICEMETRIC); 3680 if ("DeviceUseRequest".equals(codeString)) 3681 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DEVICEUSEREQUEST); 3682 if ("DeviceUseStatement".equals(codeString)) 3683 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DEVICEUSESTATEMENT); 3684 if ("DiagnosticOrder".equals(codeString)) 3685 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DIAGNOSTICORDER); 3686 if ("DiagnosticReport".equals(codeString)) 3687 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DIAGNOSTICREPORT); 3688 if ("DocumentManifest".equals(codeString)) 3689 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DOCUMENTMANIFEST); 3690 if ("DocumentReference".equals(codeString)) 3691 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DOCUMENTREFERENCE); 3692 if ("DomainResource".equals(codeString)) 3693 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.DOMAINRESOURCE); 3694 if ("EligibilityRequest".equals(codeString)) 3695 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ELIGIBILITYREQUEST); 3696 if ("EligibilityResponse".equals(codeString)) 3697 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ELIGIBILITYRESPONSE); 3698 if ("Encounter".equals(codeString)) 3699 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ENCOUNTER); 3700 if ("EnrollmentRequest".equals(codeString)) 3701 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ENROLLMENTREQUEST); 3702 if ("EnrollmentResponse".equals(codeString)) 3703 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ENROLLMENTRESPONSE); 3704 if ("EpisodeOfCare".equals(codeString)) 3705 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.EPISODEOFCARE); 3706 if ("ExplanationOfBenefit".equals(codeString)) 3707 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.EXPLANATIONOFBENEFIT); 3708 if ("FamilyMemberHistory".equals(codeString)) 3709 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.FAMILYMEMBERHISTORY); 3710 if ("Flag".equals(codeString)) 3711 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.FLAG); 3712 if ("Goal".equals(codeString)) 3713 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.GOAL); 3714 if ("Group".equals(codeString)) 3715 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.GROUP); 3716 if ("HealthcareService".equals(codeString)) 3717 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.HEALTHCARESERVICE); 3718 if ("ImagingObjectSelection".equals(codeString)) 3719 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.IMAGINGOBJECTSELECTION); 3720 if ("ImagingStudy".equals(codeString)) 3721 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.IMAGINGSTUDY); 3722 if ("Immunization".equals(codeString)) 3723 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.IMMUNIZATION); 3724 if ("ImmunizationRecommendation".equals(codeString)) 3725 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.IMMUNIZATIONRECOMMENDATION); 3726 if ("ImplementationGuide".equals(codeString)) 3727 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.IMPLEMENTATIONGUIDE); 3728 if ("List".equals(codeString)) 3729 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.LIST); 3730 if ("Location".equals(codeString)) 3731 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.LOCATION); 3732 if ("Media".equals(codeString)) 3733 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MEDIA); 3734 if ("Medication".equals(codeString)) 3735 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MEDICATION); 3736 if ("MedicationAdministration".equals(codeString)) 3737 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MEDICATIONADMINISTRATION); 3738 if ("MedicationDispense".equals(codeString)) 3739 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MEDICATIONDISPENSE); 3740 if ("MedicationOrder".equals(codeString)) 3741 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MEDICATIONORDER); 3742 if ("MedicationStatement".equals(codeString)) 3743 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MEDICATIONSTATEMENT); 3744 if ("MessageHeader".equals(codeString)) 3745 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.MESSAGEHEADER); 3746 if ("NamingSystem".equals(codeString)) 3747 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.NAMINGSYSTEM); 3748 if ("NutritionOrder".equals(codeString)) 3749 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.NUTRITIONORDER); 3750 if ("Observation".equals(codeString)) 3751 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.OBSERVATION); 3752 if ("OperationDefinition".equals(codeString)) 3753 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.OPERATIONDEFINITION); 3754 if ("OperationOutcome".equals(codeString)) 3755 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.OPERATIONOUTCOME); 3756 if ("Order".equals(codeString)) 3757 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ORDER); 3758 if ("OrderResponse".equals(codeString)) 3759 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ORDERRESPONSE); 3760 if ("Organization".equals(codeString)) 3761 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.ORGANIZATION); 3762 if ("Parameters".equals(codeString)) 3763 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PARAMETERS); 3764 if ("Patient".equals(codeString)) 3765 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PATIENT); 3766 if ("PaymentNotice".equals(codeString)) 3767 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PAYMENTNOTICE); 3768 if ("PaymentReconciliation".equals(codeString)) 3769 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PAYMENTRECONCILIATION); 3770 if ("Person".equals(codeString)) 3771 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PERSON); 3772 if ("Practitioner".equals(codeString)) 3773 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PRACTITIONER); 3774 if ("Procedure".equals(codeString)) 3775 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PROCEDURE); 3776 if ("ProcedureRequest".equals(codeString)) 3777 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PROCEDUREREQUEST); 3778 if ("ProcessRequest".equals(codeString)) 3779 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PROCESSREQUEST); 3780 if ("ProcessResponse".equals(codeString)) 3781 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PROCESSRESPONSE); 3782 if ("Provenance".equals(codeString)) 3783 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.PROVENANCE); 3784 if ("Questionnaire".equals(codeString)) 3785 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.QUESTIONNAIRE); 3786 if ("QuestionnaireResponse".equals(codeString)) 3787 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.QUESTIONNAIRERESPONSE); 3788 if ("ReferralRequest".equals(codeString)) 3789 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.REFERRALREQUEST); 3790 if ("RelatedPerson".equals(codeString)) 3791 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.RELATEDPERSON); 3792 if ("Resource".equals(codeString)) 3793 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.RESOURCE); 3794 if ("RiskAssessment".equals(codeString)) 3795 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.RISKASSESSMENT); 3796 if ("Schedule".equals(codeString)) 3797 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SCHEDULE); 3798 if ("SearchParameter".equals(codeString)) 3799 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SEARCHPARAMETER); 3800 if ("Slot".equals(codeString)) 3801 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SLOT); 3802 if ("Specimen".equals(codeString)) 3803 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SPECIMEN); 3804 if ("StructureDefinition".equals(codeString)) 3805 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.STRUCTUREDEFINITION); 3806 if ("Subscription".equals(codeString)) 3807 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SUBSCRIPTION); 3808 if ("Substance".equals(codeString)) 3809 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SUBSTANCE); 3810 if ("SupplyDelivery".equals(codeString)) 3811 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SUPPLYDELIVERY); 3812 if ("SupplyRequest".equals(codeString)) 3813 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.SUPPLYREQUEST); 3814 if ("TestScript".equals(codeString)) 3815 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.TESTSCRIPT); 3816 if ("ValueSet".equals(codeString)) 3817 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.VALUESET); 3818 if ("VisionPrescription".equals(codeString)) 3819 return new Enumeration<FHIRDefinedType>(this, FHIRDefinedType.VISIONPRESCRIPTION); 3820 throw new FHIRException("Unknown FHIRDefinedType code '"+codeString+"'"); 3821 } 3822 public String toCode(FHIRDefinedType code) { 3823 if (code == FHIRDefinedType.ADDRESS) 3824 return "Address"; 3825 if (code == FHIRDefinedType.AGE) 3826 return "Age"; 3827 if (code == FHIRDefinedType.ANNOTATION) 3828 return "Annotation"; 3829 if (code == FHIRDefinedType.ATTACHMENT) 3830 return "Attachment"; 3831 if (code == FHIRDefinedType.BACKBONEELEMENT) 3832 return "BackboneElement"; 3833 if (code == FHIRDefinedType.CODEABLECONCEPT) 3834 return "CodeableConcept"; 3835 if (code == FHIRDefinedType.CODING) 3836 return "Coding"; 3837 if (code == FHIRDefinedType.CONTACTPOINT) 3838 return "ContactPoint"; 3839 if (code == FHIRDefinedType.COUNT) 3840 return "Count"; 3841 if (code == FHIRDefinedType.DISTANCE) 3842 return "Distance"; 3843 if (code == FHIRDefinedType.DURATION) 3844 return "Duration"; 3845 if (code == FHIRDefinedType.ELEMENT) 3846 return "Element"; 3847 if (code == FHIRDefinedType.ELEMENTDEFINITION) 3848 return "ElementDefinition"; 3849 if (code == FHIRDefinedType.EXTENSION) 3850 return "Extension"; 3851 if (code == FHIRDefinedType.HUMANNAME) 3852 return "HumanName"; 3853 if (code == FHIRDefinedType.IDENTIFIER) 3854 return "Identifier"; 3855 if (code == FHIRDefinedType.META) 3856 return "Meta"; 3857 if (code == FHIRDefinedType.MONEY) 3858 return "Money"; 3859 if (code == FHIRDefinedType.NARRATIVE) 3860 return "Narrative"; 3861 if (code == FHIRDefinedType.PERIOD) 3862 return "Period"; 3863 if (code == FHIRDefinedType.QUANTITY) 3864 return "Quantity"; 3865 if (code == FHIRDefinedType.RANGE) 3866 return "Range"; 3867 if (code == FHIRDefinedType.RATIO) 3868 return "Ratio"; 3869 if (code == FHIRDefinedType.REFERENCE) 3870 return "Reference"; 3871 if (code == FHIRDefinedType.SAMPLEDDATA) 3872 return "SampledData"; 3873 if (code == FHIRDefinedType.SIGNATURE) 3874 return "Signature"; 3875 if (code == FHIRDefinedType.SIMPLEQUANTITY) 3876 return "SimpleQuantity"; 3877 if (code == FHIRDefinedType.TIMING) 3878 return "Timing"; 3879 if (code == FHIRDefinedType.BASE64BINARY) 3880 return "base64Binary"; 3881 if (code == FHIRDefinedType.BOOLEAN) 3882 return "boolean"; 3883 if (code == FHIRDefinedType.CODE) 3884 return "code"; 3885 if (code == FHIRDefinedType.DATE) 3886 return "date"; 3887 if (code == FHIRDefinedType.DATETIME) 3888 return "dateTime"; 3889 if (code == FHIRDefinedType.DECIMAL) 3890 return "decimal"; 3891 if (code == FHIRDefinedType.ID) 3892 return "id"; 3893 if (code == FHIRDefinedType.INSTANT) 3894 return "instant"; 3895 if (code == FHIRDefinedType.INTEGER) 3896 return "integer"; 3897 if (code == FHIRDefinedType.MARKDOWN) 3898 return "markdown"; 3899 if (code == FHIRDefinedType.OID) 3900 return "oid"; 3901 if (code == FHIRDefinedType.POSITIVEINT) 3902 return "positiveInt"; 3903 if (code == FHIRDefinedType.STRING) 3904 return "string"; 3905 if (code == FHIRDefinedType.TIME) 3906 return "time"; 3907 if (code == FHIRDefinedType.UNSIGNEDINT) 3908 return "unsignedInt"; 3909 if (code == FHIRDefinedType.URI) 3910 return "uri"; 3911 if (code == FHIRDefinedType.UUID) 3912 return "uuid"; 3913 if (code == FHIRDefinedType.XHTML) 3914 return "xhtml"; 3915 if (code == FHIRDefinedType.ACCOUNT) 3916 return "Account"; 3917 if (code == FHIRDefinedType.ALLERGYINTOLERANCE) 3918 return "AllergyIntolerance"; 3919 if (code == FHIRDefinedType.APPOINTMENT) 3920 return "Appointment"; 3921 if (code == FHIRDefinedType.APPOINTMENTRESPONSE) 3922 return "AppointmentResponse"; 3923 if (code == FHIRDefinedType.AUDITEVENT) 3924 return "AuditEvent"; 3925 if (code == FHIRDefinedType.BASIC) 3926 return "Basic"; 3927 if (code == FHIRDefinedType.BINARY) 3928 return "Binary"; 3929 if (code == FHIRDefinedType.BODYSITE) 3930 return "BodySite"; 3931 if (code == FHIRDefinedType.BUNDLE) 3932 return "Bundle"; 3933 if (code == FHIRDefinedType.CAREPLAN) 3934 return "CarePlan"; 3935 if (code == FHIRDefinedType.CLAIM) 3936 return "Claim"; 3937 if (code == FHIRDefinedType.CLAIMRESPONSE) 3938 return "ClaimResponse"; 3939 if (code == FHIRDefinedType.CLINICALIMPRESSION) 3940 return "ClinicalImpression"; 3941 if (code == FHIRDefinedType.COMMUNICATION) 3942 return "Communication"; 3943 if (code == FHIRDefinedType.COMMUNICATIONREQUEST) 3944 return "CommunicationRequest"; 3945 if (code == FHIRDefinedType.COMPOSITION) 3946 return "Composition"; 3947 if (code == FHIRDefinedType.CONCEPTMAP) 3948 return "ConceptMap"; 3949 if (code == FHIRDefinedType.CONDITION) 3950 return "Condition"; 3951 if (code == FHIRDefinedType.CONFORMANCE) 3952 return "Conformance"; 3953 if (code == FHIRDefinedType.CONTRACT) 3954 return "Contract"; 3955 if (code == FHIRDefinedType.COVERAGE) 3956 return "Coverage"; 3957 if (code == FHIRDefinedType.DATAELEMENT) 3958 return "DataElement"; 3959 if (code == FHIRDefinedType.DETECTEDISSUE) 3960 return "DetectedIssue"; 3961 if (code == FHIRDefinedType.DEVICE) 3962 return "Device"; 3963 if (code == FHIRDefinedType.DEVICECOMPONENT) 3964 return "DeviceComponent"; 3965 if (code == FHIRDefinedType.DEVICEMETRIC) 3966 return "DeviceMetric"; 3967 if (code == FHIRDefinedType.DEVICEUSEREQUEST) 3968 return "DeviceUseRequest"; 3969 if (code == FHIRDefinedType.DEVICEUSESTATEMENT) 3970 return "DeviceUseStatement"; 3971 if (code == FHIRDefinedType.DIAGNOSTICORDER) 3972 return "DiagnosticOrder"; 3973 if (code == FHIRDefinedType.DIAGNOSTICREPORT) 3974 return "DiagnosticReport"; 3975 if (code == FHIRDefinedType.DOCUMENTMANIFEST) 3976 return "DocumentManifest"; 3977 if (code == FHIRDefinedType.DOCUMENTREFERENCE) 3978 return "DocumentReference"; 3979 if (code == FHIRDefinedType.DOMAINRESOURCE) 3980 return "DomainResource"; 3981 if (code == FHIRDefinedType.ELIGIBILITYREQUEST) 3982 return "EligibilityRequest"; 3983 if (code == FHIRDefinedType.ELIGIBILITYRESPONSE) 3984 return "EligibilityResponse"; 3985 if (code == FHIRDefinedType.ENCOUNTER) 3986 return "Encounter"; 3987 if (code == FHIRDefinedType.ENROLLMENTREQUEST) 3988 return "EnrollmentRequest"; 3989 if (code == FHIRDefinedType.ENROLLMENTRESPONSE) 3990 return "EnrollmentResponse"; 3991 if (code == FHIRDefinedType.EPISODEOFCARE) 3992 return "EpisodeOfCare"; 3993 if (code == FHIRDefinedType.EXPLANATIONOFBENEFIT) 3994 return "ExplanationOfBenefit"; 3995 if (code == FHIRDefinedType.FAMILYMEMBERHISTORY) 3996 return "FamilyMemberHistory"; 3997 if (code == FHIRDefinedType.FLAG) 3998 return "Flag"; 3999 if (code == FHIRDefinedType.GOAL) 4000 return "Goal"; 4001 if (code == FHIRDefinedType.GROUP) 4002 return "Group"; 4003 if (code == FHIRDefinedType.HEALTHCARESERVICE) 4004 return "HealthcareService"; 4005 if (code == FHIRDefinedType.IMAGINGOBJECTSELECTION) 4006 return "ImagingObjectSelection"; 4007 if (code == FHIRDefinedType.IMAGINGSTUDY) 4008 return "ImagingStudy"; 4009 if (code == FHIRDefinedType.IMMUNIZATION) 4010 return "Immunization"; 4011 if (code == FHIRDefinedType.IMMUNIZATIONRECOMMENDATION) 4012 return "ImmunizationRecommendation"; 4013 if (code == FHIRDefinedType.IMPLEMENTATIONGUIDE) 4014 return "ImplementationGuide"; 4015 if (code == FHIRDefinedType.LIST) 4016 return "List"; 4017 if (code == FHIRDefinedType.LOCATION) 4018 return "Location"; 4019 if (code == FHIRDefinedType.MEDIA) 4020 return "Media"; 4021 if (code == FHIRDefinedType.MEDICATION) 4022 return "Medication"; 4023 if (code == FHIRDefinedType.MEDICATIONADMINISTRATION) 4024 return "MedicationAdministration"; 4025 if (code == FHIRDefinedType.MEDICATIONDISPENSE) 4026 return "MedicationDispense"; 4027 if (code == FHIRDefinedType.MEDICATIONORDER) 4028 return "MedicationOrder"; 4029 if (code == FHIRDefinedType.MEDICATIONSTATEMENT) 4030 return "MedicationStatement"; 4031 if (code == FHIRDefinedType.MESSAGEHEADER) 4032 return "MessageHeader"; 4033 if (code == FHIRDefinedType.NAMINGSYSTEM) 4034 return "NamingSystem"; 4035 if (code == FHIRDefinedType.NUTRITIONORDER) 4036 return "NutritionOrder"; 4037 if (code == FHIRDefinedType.OBSERVATION) 4038 return "Observation"; 4039 if (code == FHIRDefinedType.OPERATIONDEFINITION) 4040 return "OperationDefinition"; 4041 if (code == FHIRDefinedType.OPERATIONOUTCOME) 4042 return "OperationOutcome"; 4043 if (code == FHIRDefinedType.ORDER) 4044 return "Order"; 4045 if (code == FHIRDefinedType.ORDERRESPONSE) 4046 return "OrderResponse"; 4047 if (code == FHIRDefinedType.ORGANIZATION) 4048 return "Organization"; 4049 if (code == FHIRDefinedType.PARAMETERS) 4050 return "Parameters"; 4051 if (code == FHIRDefinedType.PATIENT) 4052 return "Patient"; 4053 if (code == FHIRDefinedType.PAYMENTNOTICE) 4054 return "PaymentNotice"; 4055 if (code == FHIRDefinedType.PAYMENTRECONCILIATION) 4056 return "PaymentReconciliation"; 4057 if (code == FHIRDefinedType.PERSON) 4058 return "Person"; 4059 if (code == FHIRDefinedType.PRACTITIONER) 4060 return "Practitioner"; 4061 if (code == FHIRDefinedType.PROCEDURE) 4062 return "Procedure"; 4063 if (code == FHIRDefinedType.PROCEDUREREQUEST) 4064 return "ProcedureRequest"; 4065 if (code == FHIRDefinedType.PROCESSREQUEST) 4066 return "ProcessRequest"; 4067 if (code == FHIRDefinedType.PROCESSRESPONSE) 4068 return "ProcessResponse"; 4069 if (code == FHIRDefinedType.PROVENANCE) 4070 return "Provenance"; 4071 if (code == FHIRDefinedType.QUESTIONNAIRE) 4072 return "Questionnaire"; 4073 if (code == FHIRDefinedType.QUESTIONNAIRERESPONSE) 4074 return "QuestionnaireResponse"; 4075 if (code == FHIRDefinedType.REFERRALREQUEST) 4076 return "ReferralRequest"; 4077 if (code == FHIRDefinedType.RELATEDPERSON) 4078 return "RelatedPerson"; 4079 if (code == FHIRDefinedType.RESOURCE) 4080 return "Resource"; 4081 if (code == FHIRDefinedType.RISKASSESSMENT) 4082 return "RiskAssessment"; 4083 if (code == FHIRDefinedType.SCHEDULE) 4084 return "Schedule"; 4085 if (code == FHIRDefinedType.SEARCHPARAMETER) 4086 return "SearchParameter"; 4087 if (code == FHIRDefinedType.SLOT) 4088 return "Slot"; 4089 if (code == FHIRDefinedType.SPECIMEN) 4090 return "Specimen"; 4091 if (code == FHIRDefinedType.STRUCTUREDEFINITION) 4092 return "StructureDefinition"; 4093 if (code == FHIRDefinedType.SUBSCRIPTION) 4094 return "Subscription"; 4095 if (code == FHIRDefinedType.SUBSTANCE) 4096 return "Substance"; 4097 if (code == FHIRDefinedType.SUPPLYDELIVERY) 4098 return "SupplyDelivery"; 4099 if (code == FHIRDefinedType.SUPPLYREQUEST) 4100 return "SupplyRequest"; 4101 if (code == FHIRDefinedType.TESTSCRIPT) 4102 return "TestScript"; 4103 if (code == FHIRDefinedType.VALUESET) 4104 return "ValueSet"; 4105 if (code == FHIRDefinedType.VISIONPRESCRIPTION) 4106 return "VisionPrescription"; 4107 return "?"; 4108 } 4109 } 4110 4111 public enum MessageEvent { 4112 /** 4113 * Change the status of a Medication Administration to show that it is complete. 4114 */ 4115 MEDICATIONADMINISTRATIONCOMPLETE, 4116 /** 4117 * Someone wishes to record that the record of administration of a medication is in error and should be ignored. 4118 */ 4119 MEDICATIONADMINISTRATIONNULLIFICATION, 4120 /** 4121 * Indicates that a medication has been recorded against the patient's record. 4122 */ 4123 MEDICATIONADMINISTRATIONRECORDING, 4124 /** 4125 * Update a Medication Administration record. 4126 */ 4127 MEDICATIONADMINISTRATIONUPDATE, 4128 /** 4129 * Notification of a change to an administrative resource (either create or update). Note that there is no delete, though some administrative resources have status or period elements for this use. 4130 */ 4131 ADMINNOTIFY, 4132 /** 4133 * Provide a diagnostic report, or update a previously provided diagnostic report. 4134 */ 4135 DIAGNOSTICREPORTPROVIDE, 4136 /** 4137 * Provide a simple observation or update a previously provided simple observation. 4138 */ 4139 OBSERVATIONPROVIDE, 4140 /** 4141 * Notification that two patient records actually identify the same patient. 4142 */ 4143 PATIENTLINK, 4144 /** 4145 * Notification that previous advice that two patient records concern the same patient is now considered incorrect. 4146 */ 4147 PATIENTUNLINK, 4148 /** 4149 * The definition of a value set is used to create a simple collection of codes suitable for use for data entry or validation. An expanded value set will be returned, or an error message. 4150 */ 4151 VALUESETEXPAND, 4152 /** 4153 * added to help the parsers 4154 */ 4155 NULL; 4156 public static MessageEvent fromCode(String codeString) throws FHIRException { 4157 if (codeString == null || "".equals(codeString)) 4158 return null; 4159 if ("MedicationAdministration-Complete".equals(codeString)) 4160 return MEDICATIONADMINISTRATIONCOMPLETE; 4161 if ("MedicationAdministration-Nullification".equals(codeString)) 4162 return MEDICATIONADMINISTRATIONNULLIFICATION; 4163 if ("MedicationAdministration-Recording".equals(codeString)) 4164 return MEDICATIONADMINISTRATIONRECORDING; 4165 if ("MedicationAdministration-Update".equals(codeString)) 4166 return MEDICATIONADMINISTRATIONUPDATE; 4167 if ("admin-notify".equals(codeString)) 4168 return ADMINNOTIFY; 4169 if ("diagnosticreport-provide".equals(codeString)) 4170 return DIAGNOSTICREPORTPROVIDE; 4171 if ("observation-provide".equals(codeString)) 4172 return OBSERVATIONPROVIDE; 4173 if ("patient-link".equals(codeString)) 4174 return PATIENTLINK; 4175 if ("patient-unlink".equals(codeString)) 4176 return PATIENTUNLINK; 4177 if ("valueset-expand".equals(codeString)) 4178 return VALUESETEXPAND; 4179 throw new FHIRException("Unknown MessageEvent code '"+codeString+"'"); 4180 } 4181 public String toCode() { 4182 switch (this) { 4183 case MEDICATIONADMINISTRATIONCOMPLETE: return "MedicationAdministration-Complete"; 4184 case MEDICATIONADMINISTRATIONNULLIFICATION: return "MedicationAdministration-Nullification"; 4185 case MEDICATIONADMINISTRATIONRECORDING: return "MedicationAdministration-Recording"; 4186 case MEDICATIONADMINISTRATIONUPDATE: return "MedicationAdministration-Update"; 4187 case ADMINNOTIFY: return "admin-notify"; 4188 case DIAGNOSTICREPORTPROVIDE: return "diagnosticreport-provide"; 4189 case OBSERVATIONPROVIDE: return "observation-provide"; 4190 case PATIENTLINK: return "patient-link"; 4191 case PATIENTUNLINK: return "patient-unlink"; 4192 case VALUESETEXPAND: return "valueset-expand"; 4193 default: return "?"; 4194 } 4195 } 4196 public String getSystem() { 4197 switch (this) { 4198 case MEDICATIONADMINISTRATIONCOMPLETE: return "http://hl7.org/fhir/message-events"; 4199 case MEDICATIONADMINISTRATIONNULLIFICATION: return "http://hl7.org/fhir/message-events"; 4200 case MEDICATIONADMINISTRATIONRECORDING: return "http://hl7.org/fhir/message-events"; 4201 case MEDICATIONADMINISTRATIONUPDATE: return "http://hl7.org/fhir/message-events"; 4202 case ADMINNOTIFY: return "http://hl7.org/fhir/message-events"; 4203 case DIAGNOSTICREPORTPROVIDE: return "http://hl7.org/fhir/message-events"; 4204 case OBSERVATIONPROVIDE: return "http://hl7.org/fhir/message-events"; 4205 case PATIENTLINK: return "http://hl7.org/fhir/message-events"; 4206 case PATIENTUNLINK: return "http://hl7.org/fhir/message-events"; 4207 case VALUESETEXPAND: return "http://hl7.org/fhir/message-events"; 4208 default: return "?"; 4209 } 4210 } 4211 public String getDefinition() { 4212 switch (this) { 4213 case MEDICATIONADMINISTRATIONCOMPLETE: return "Change the status of a Medication Administration to show that it is complete."; 4214 case MEDICATIONADMINISTRATIONNULLIFICATION: return "Someone wishes to record that the record of administration of a medication is in error and should be ignored."; 4215 case MEDICATIONADMINISTRATIONRECORDING: return "Indicates that a medication has been recorded against the patient's record."; 4216 case MEDICATIONADMINISTRATIONUPDATE: return "Update a Medication Administration record."; 4217 case ADMINNOTIFY: return "Notification of a change to an administrative resource (either create or update). Note that there is no delete, though some administrative resources have status or period elements for this use."; 4218 case DIAGNOSTICREPORTPROVIDE: return "Provide a diagnostic report, or update a previously provided diagnostic report."; 4219 case OBSERVATIONPROVIDE: return "Provide a simple observation or update a previously provided simple observation."; 4220 case PATIENTLINK: return "Notification that two patient records actually identify the same patient."; 4221 case PATIENTUNLINK: return "Notification that previous advice that two patient records concern the same patient is now considered incorrect."; 4222 case VALUESETEXPAND: return "The definition of a value set is used to create a simple collection of codes suitable for use for data entry or validation. An expanded value set will be returned, or an error message."; 4223 default: return "?"; 4224 } 4225 } 4226 public String getDisplay() { 4227 switch (this) { 4228 case MEDICATIONADMINISTRATIONCOMPLETE: return "MedicationAdministration-Complete"; 4229 case MEDICATIONADMINISTRATIONNULLIFICATION: return "MedicationAdministration-Nullification"; 4230 case MEDICATIONADMINISTRATIONRECORDING: return "MedicationAdministration-Recording"; 4231 case MEDICATIONADMINISTRATIONUPDATE: return "MedicationAdministration-Update"; 4232 case ADMINNOTIFY: return "admin-notify"; 4233 case DIAGNOSTICREPORTPROVIDE: return "diagnosticreport-provide"; 4234 case OBSERVATIONPROVIDE: return "observation-provide"; 4235 case PATIENTLINK: return "patient-link"; 4236 case PATIENTUNLINK: return "patient-unlink"; 4237 case VALUESETEXPAND: return "valueset-expand"; 4238 default: return "?"; 4239 } 4240 } 4241 } 4242 4243 public static class MessageEventEnumFactory implements EnumFactory<MessageEvent> { 4244 public MessageEvent fromCode(String codeString) throws IllegalArgumentException { 4245 if (codeString == null || "".equals(codeString)) 4246 if (codeString == null || "".equals(codeString)) 4247 return null; 4248 if ("MedicationAdministration-Complete".equals(codeString)) 4249 return MessageEvent.MEDICATIONADMINISTRATIONCOMPLETE; 4250 if ("MedicationAdministration-Nullification".equals(codeString)) 4251 return MessageEvent.MEDICATIONADMINISTRATIONNULLIFICATION; 4252 if ("MedicationAdministration-Recording".equals(codeString)) 4253 return MessageEvent.MEDICATIONADMINISTRATIONRECORDING; 4254 if ("MedicationAdministration-Update".equals(codeString)) 4255 return MessageEvent.MEDICATIONADMINISTRATIONUPDATE; 4256 if ("admin-notify".equals(codeString)) 4257 return MessageEvent.ADMINNOTIFY; 4258 if ("diagnosticreport-provide".equals(codeString)) 4259 return MessageEvent.DIAGNOSTICREPORTPROVIDE; 4260 if ("observation-provide".equals(codeString)) 4261 return MessageEvent.OBSERVATIONPROVIDE; 4262 if ("patient-link".equals(codeString)) 4263 return MessageEvent.PATIENTLINK; 4264 if ("patient-unlink".equals(codeString)) 4265 return MessageEvent.PATIENTUNLINK; 4266 if ("valueset-expand".equals(codeString)) 4267 return MessageEvent.VALUESETEXPAND; 4268 throw new IllegalArgumentException("Unknown MessageEvent code '"+codeString+"'"); 4269 } 4270 public Enumeration<MessageEvent> fromType(Base code) throws FHIRException { 4271 if (code == null || code.isEmpty()) 4272 return null; 4273 String codeString = ((PrimitiveType) code).asStringValue(); 4274 if (codeString == null || "".equals(codeString)) 4275 return null; 4276 if ("MedicationAdministration-Complete".equals(codeString)) 4277 return new Enumeration<MessageEvent>(this, MessageEvent.MEDICATIONADMINISTRATIONCOMPLETE); 4278 if ("MedicationAdministration-Nullification".equals(codeString)) 4279 return new Enumeration<MessageEvent>(this, MessageEvent.MEDICATIONADMINISTRATIONNULLIFICATION); 4280 if ("MedicationAdministration-Recording".equals(codeString)) 4281 return new Enumeration<MessageEvent>(this, MessageEvent.MEDICATIONADMINISTRATIONRECORDING); 4282 if ("MedicationAdministration-Update".equals(codeString)) 4283 return new Enumeration<MessageEvent>(this, MessageEvent.MEDICATIONADMINISTRATIONUPDATE); 4284 if ("admin-notify".equals(codeString)) 4285 return new Enumeration<MessageEvent>(this, MessageEvent.ADMINNOTIFY); 4286 if ("diagnosticreport-provide".equals(codeString)) 4287 return new Enumeration<MessageEvent>(this, MessageEvent.DIAGNOSTICREPORTPROVIDE); 4288 if ("observation-provide".equals(codeString)) 4289 return new Enumeration<MessageEvent>(this, MessageEvent.OBSERVATIONPROVIDE); 4290 if ("patient-link".equals(codeString)) 4291 return new Enumeration<MessageEvent>(this, MessageEvent.PATIENTLINK); 4292 if ("patient-unlink".equals(codeString)) 4293 return new Enumeration<MessageEvent>(this, MessageEvent.PATIENTUNLINK); 4294 if ("valueset-expand".equals(codeString)) 4295 return new Enumeration<MessageEvent>(this, MessageEvent.VALUESETEXPAND); 4296 throw new FHIRException("Unknown MessageEvent code '"+codeString+"'"); 4297 } 4298 public String toCode(MessageEvent code) { 4299 if (code == MessageEvent.MEDICATIONADMINISTRATIONCOMPLETE) 4300 return "MedicationAdministration-Complete"; 4301 if (code == MessageEvent.MEDICATIONADMINISTRATIONNULLIFICATION) 4302 return "MedicationAdministration-Nullification"; 4303 if (code == MessageEvent.MEDICATIONADMINISTRATIONRECORDING) 4304 return "MedicationAdministration-Recording"; 4305 if (code == MessageEvent.MEDICATIONADMINISTRATIONUPDATE) 4306 return "MedicationAdministration-Update"; 4307 if (code == MessageEvent.ADMINNOTIFY) 4308 return "admin-notify"; 4309 if (code == MessageEvent.DIAGNOSTICREPORTPROVIDE) 4310 return "diagnosticreport-provide"; 4311 if (code == MessageEvent.OBSERVATIONPROVIDE) 4312 return "observation-provide"; 4313 if (code == MessageEvent.PATIENTLINK) 4314 return "patient-link"; 4315 if (code == MessageEvent.PATIENTUNLINK) 4316 return "patient-unlink"; 4317 if (code == MessageEvent.VALUESETEXPAND) 4318 return "valueset-expand"; 4319 return "?"; 4320 } 4321 } 4322 4323 public enum NoteType { 4324 /** 4325 * Display the note. 4326 */ 4327 DISPLAY, 4328 /** 4329 * Print the note on the form. 4330 */ 4331 PRINT, 4332 /** 4333 * Print the note for the operator. 4334 */ 4335 PRINTOPER, 4336 /** 4337 * added to help the parsers 4338 */ 4339 NULL; 4340 public static NoteType fromCode(String codeString) throws FHIRException { 4341 if (codeString == null || "".equals(codeString)) 4342 return null; 4343 if ("display".equals(codeString)) 4344 return DISPLAY; 4345 if ("print".equals(codeString)) 4346 return PRINT; 4347 if ("printoper".equals(codeString)) 4348 return PRINTOPER; 4349 throw new FHIRException("Unknown NoteType code '"+codeString+"'"); 4350 } 4351 public String toCode() { 4352 switch (this) { 4353 case DISPLAY: return "display"; 4354 case PRINT: return "print"; 4355 case PRINTOPER: return "printoper"; 4356 default: return "?"; 4357 } 4358 } 4359 public String getSystem() { 4360 switch (this) { 4361 case DISPLAY: return "http://hl7.org/fhir/note-type"; 4362 case PRINT: return "http://hl7.org/fhir/note-type"; 4363 case PRINTOPER: return "http://hl7.org/fhir/note-type"; 4364 default: return "?"; 4365 } 4366 } 4367 public String getDefinition() { 4368 switch (this) { 4369 case DISPLAY: return "Display the note."; 4370 case PRINT: return "Print the note on the form."; 4371 case PRINTOPER: return "Print the note for the operator."; 4372 default: return "?"; 4373 } 4374 } 4375 public String getDisplay() { 4376 switch (this) { 4377 case DISPLAY: return "Display"; 4378 case PRINT: return "Print (Form)"; 4379 case PRINTOPER: return "Print (Operator)"; 4380 default: return "?"; 4381 } 4382 } 4383 } 4384 4385 public static class NoteTypeEnumFactory implements EnumFactory<NoteType> { 4386 public NoteType fromCode(String codeString) throws IllegalArgumentException { 4387 if (codeString == null || "".equals(codeString)) 4388 if (codeString == null || "".equals(codeString)) 4389 return null; 4390 if ("display".equals(codeString)) 4391 return NoteType.DISPLAY; 4392 if ("print".equals(codeString)) 4393 return NoteType.PRINT; 4394 if ("printoper".equals(codeString)) 4395 return NoteType.PRINTOPER; 4396 throw new IllegalArgumentException("Unknown NoteType code '"+codeString+"'"); 4397 } 4398 public Enumeration<NoteType> fromType(Base code) throws FHIRException { 4399 if (code == null || code.isEmpty()) 4400 return null; 4401 String codeString = ((PrimitiveType) code).asStringValue(); 4402 if (codeString == null || "".equals(codeString)) 4403 return null; 4404 if ("display".equals(codeString)) 4405 return new Enumeration<NoteType>(this, NoteType.DISPLAY); 4406 if ("print".equals(codeString)) 4407 return new Enumeration<NoteType>(this, NoteType.PRINT); 4408 if ("printoper".equals(codeString)) 4409 return new Enumeration<NoteType>(this, NoteType.PRINTOPER); 4410 throw new FHIRException("Unknown NoteType code '"+codeString+"'"); 4411 } 4412 public String toCode(NoteType code) { 4413 if (code == NoteType.DISPLAY) 4414 return "display"; 4415 if (code == NoteType.PRINT) 4416 return "print"; 4417 if (code == NoteType.PRINTOPER) 4418 return "printoper"; 4419 return "?"; 4420 } 4421 } 4422 4423 public enum RemittanceOutcome { 4424 /** 4425 * The processing completed without errors. 4426 */ 4427 COMPLETE, 4428 /** 4429 * The processing identified errors. 4430 */ 4431 ERROR, 4432 /** 4433 * added to help the parsers 4434 */ 4435 NULL; 4436 public static RemittanceOutcome fromCode(String codeString) throws FHIRException { 4437 if (codeString == null || "".equals(codeString)) 4438 return null; 4439 if ("complete".equals(codeString)) 4440 return COMPLETE; 4441 if ("error".equals(codeString)) 4442 return ERROR; 4443 throw new FHIRException("Unknown RemittanceOutcome code '"+codeString+"'"); 4444 } 4445 public String toCode() { 4446 switch (this) { 4447 case COMPLETE: return "complete"; 4448 case ERROR: return "error"; 4449 default: return "?"; 4450 } 4451 } 4452 public String getSystem() { 4453 switch (this) { 4454 case COMPLETE: return "http://hl7.org/fhir/remittance-outcome"; 4455 case ERROR: return "http://hl7.org/fhir/remittance-outcome"; 4456 default: return "?"; 4457 } 4458 } 4459 public String getDefinition() { 4460 switch (this) { 4461 case COMPLETE: return "The processing completed without errors."; 4462 case ERROR: return "The processing identified errors."; 4463 default: return "?"; 4464 } 4465 } 4466 public String getDisplay() { 4467 switch (this) { 4468 case COMPLETE: return "Complete"; 4469 case ERROR: return "Error"; 4470 default: return "?"; 4471 } 4472 } 4473 } 4474 4475 public static class RemittanceOutcomeEnumFactory implements EnumFactory<RemittanceOutcome> { 4476 public RemittanceOutcome fromCode(String codeString) throws IllegalArgumentException { 4477 if (codeString == null || "".equals(codeString)) 4478 if (codeString == null || "".equals(codeString)) 4479 return null; 4480 if ("complete".equals(codeString)) 4481 return RemittanceOutcome.COMPLETE; 4482 if ("error".equals(codeString)) 4483 return RemittanceOutcome.ERROR; 4484 throw new IllegalArgumentException("Unknown RemittanceOutcome code '"+codeString+"'"); 4485 } 4486 public Enumeration<RemittanceOutcome> fromType(Base code) throws FHIRException { 4487 if (code == null || code.isEmpty()) 4488 return null; 4489 String codeString = ((PrimitiveType) code).asStringValue(); 4490 if (codeString == null || "".equals(codeString)) 4491 return null; 4492 if ("complete".equals(codeString)) 4493 return new Enumeration<RemittanceOutcome>(this, RemittanceOutcome.COMPLETE); 4494 if ("error".equals(codeString)) 4495 return new Enumeration<RemittanceOutcome>(this, RemittanceOutcome.ERROR); 4496 throw new FHIRException("Unknown RemittanceOutcome code '"+codeString+"'"); 4497 } 4498 public String toCode(RemittanceOutcome code) { 4499 if (code == RemittanceOutcome.COMPLETE) 4500 return "complete"; 4501 if (code == RemittanceOutcome.ERROR) 4502 return "error"; 4503 return "?"; 4504 } 4505 } 4506 4507 public enum ResourceType { 4508 /** 4509 * A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centres, etc. 4510 */ 4511 ACCOUNT, 4512 /** 4513 * Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance. 4514 */ 4515 ALLERGYINTOLERANCE, 4516 /** 4517 * A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s). 4518 */ 4519 APPOINTMENT, 4520 /** 4521 * A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection. 4522 */ 4523 APPOINTMENTRESPONSE, 4524 /** 4525 * A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage. 4526 */ 4527 AUDITEVENT, 4528 /** 4529 * Basic is used for handling concepts not yet defined in FHIR, narrative-only resources that don't map to an existing resource, and custom resources not appropriate for inclusion in the FHIR specification. 4530 */ 4531 BASIC, 4532 /** 4533 * A binary resource can contain any content, whether text, image, pdf, zip archive, etc. 4534 */ 4535 BINARY, 4536 /** 4537 * Record details about the anatomical location of a specimen or body part. This resource may be used when a coded concept does not provide the necessary detail needed for the use case. 4538 */ 4539 BODYSITE, 4540 /** 4541 * A container for a collection of resources. 4542 */ 4543 BUNDLE, 4544 /** 4545 * Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions. 4546 */ 4547 CAREPLAN, 4548 /** 4549 * A provider issued list of services and products provided, or to be provided, to a patient which is provided to an insurer for payment recovery. 4550 */ 4551 CLAIM, 4552 /** 4553 * This resource provides the adjudication details from the processing of a Claim resource. 4554 */ 4555 CLAIMRESPONSE, 4556 /** 4557 * A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called "ClinicalImpression" rather than "ClinicalAssessment" to avoid confusion with the recording of assessment tools such as Apgar score. 4558 */ 4559 CLINICALIMPRESSION, 4560 /** 4561 * An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency was notified about a reportable condition. 4562 */ 4563 COMMUNICATION, 4564 /** 4565 * A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition. 4566 */ 4567 COMMUNICATIONREQUEST, 4568 /** 4569 * A set of healthcare-related information that is assembled together into a single logical document that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. While a Composition defines the structure, it does not actually contain the content: rather the full content of a document is contained in a Bundle, of which the Composition is the first resource contained. 4570 */ 4571 COMPOSITION, 4572 /** 4573 * A statement of relationships from one set of concepts to one or more other concepts - either code systems or data elements, or classes in class models. 4574 */ 4575 CONCEPTMAP, 4576 /** 4577 * Use to record detailed information about conditions, problems or diagnoses recognized by a clinician. There are many uses including: recording a diagnosis during an encounter; populating a problem list or a summary statement, such as a discharge summary. 4578 */ 4579 CONDITION, 4580 /** 4581 * A conformance statement is a set of capabilities of a FHIR Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation. 4582 */ 4583 CONFORMANCE, 4584 /** 4585 * A formal agreement between parties regarding the conduct of business, exchange of information or other matters. 4586 */ 4587 CONTRACT, 4588 /** 4589 * Financial instrument which may be used to pay for or reimburse health care products and services. 4590 */ 4591 COVERAGE, 4592 /** 4593 * The formal description of a single piece of information that can be gathered and reported. 4594 */ 4595 DATAELEMENT, 4596 /** 4597 * Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc. 4598 */ 4599 DETECTEDISSUE, 4600 /** 4601 * This resource identifies an instance of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device. Medical devices includes durable (reusable) medical equipment, implantable devices, as well as disposable equipment used for diagnostic, treatment, and research for healthcare and public health. Non-medical devices may include items such as a machine, cellphone, computer, application, etc. 4602 */ 4603 DEVICE, 4604 /** 4605 * Describes the characteristics, operational status and capabilities of a medical-related component of a medical device. 4606 */ 4607 DEVICECOMPONENT, 4608 /** 4609 * Describes a measurement, calculation or setting capability of a medical device. 4610 */ 4611 DEVICEMETRIC, 4612 /** 4613 * Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker. 4614 */ 4615 DEVICEUSEREQUEST, 4616 /** 4617 * A record of a device being used by a patient where the record is the result of a report from the patient or another clinician. 4618 */ 4619 DEVICEUSESTATEMENT, 4620 /** 4621 * A record of a request for a diagnostic investigation service to be performed. 4622 */ 4623 DIAGNOSTICORDER, 4624 /** 4625 * The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports. 4626 */ 4627 DIAGNOSTICREPORT, 4628 /** 4629 * A manifest that defines a set of documents. 4630 */ 4631 DOCUMENTMANIFEST, 4632 /** 4633 * A reference to a document . 4634 */ 4635 DOCUMENTREFERENCE, 4636 /** 4637 * --- Abstract Type! ---A resource that includes narrative, extensions, and contained resources. 4638 */ 4639 DOMAINRESOURCE, 4640 /** 4641 * This resource provides the insurance eligibility details from the insurer regarding a specified coverage and optionally some class of service. 4642 */ 4643 ELIGIBILITYREQUEST, 4644 /** 4645 * This resource provides eligibility and plan details from the processing of an Eligibility resource. 4646 */ 4647 ELIGIBILITYRESPONSE, 4648 /** 4649 * An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient. 4650 */ 4651 ENCOUNTER, 4652 /** 4653 * This resource provides the insurance enrollment details to the insurer regarding a specified coverage. 4654 */ 4655 ENROLLMENTREQUEST, 4656 /** 4657 * This resource provides enrollment and plan details from the processing of an Enrollment resource. 4658 */ 4659 ENROLLMENTRESPONSE, 4660 /** 4661 * An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time. 4662 */ 4663 EPISODEOFCARE, 4664 /** 4665 * This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided. 4666 */ 4667 EXPLANATIONOFBENEFIT, 4668 /** 4669 * Significant health events and conditions for a person related to the patient relevant in the context of care for the patient. 4670 */ 4671 FAMILYMEMBERHISTORY, 4672 /** 4673 * Prospective warnings of potential issues when providing care to the patient. 4674 */ 4675 FLAG, 4676 /** 4677 * Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc. 4678 */ 4679 GOAL, 4680 /** 4681 * Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization. 4682 */ 4683 GROUP, 4684 /** 4685 * The details of a healthcare service available at a location. 4686 */ 4687 HEALTHCARESERVICE, 4688 /** 4689 * A manifest of a set of DICOM Service-Object Pair Instances (SOP Instances). The referenced SOP Instances (images or other content) are for a single patient, and may be from one or more studies. The referenced SOP Instances have been selected for a purpose, such as quality assurance, conference, or consult. Reflecting that range of purposes, typical ImagingObjectSelection resources may include all SOP Instances in a study (perhaps for sharing through a Health Information Exchange); key images from multiple studies (for reference by a referring or treating physician); a multi-frame ultrasound instance ("cine" video clip) and a set of measurements taken from that instance (for inclusion in a teaching file); and so on. 4690 */ 4691 IMAGINGOBJECTSELECTION, 4692 /** 4693 * Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities. 4694 */ 4695 IMAGINGSTUDY, 4696 /** 4697 * Describes the event of a patient being administered a vaccination or a record of a vaccination as reported by a patient, a clinician or another party and may include vaccine reaction information and what vaccination protocol was followed. 4698 */ 4699 IMMUNIZATION, 4700 /** 4701 * A patient's point-in-time immunization and recommendation (i.e. forecasting a patient's immunization eligibility according to a published schedule) with optional supporting justification. 4702 */ 4703 IMMUNIZATIONRECOMMENDATION, 4704 /** 4705 * A set of rules or how FHIR is used to solve a particular problem. This resource is used to gather all the parts of an implementation guide into a logical whole, and to publish a computable definition of all the parts. 4706 */ 4707 IMPLEMENTATIONGUIDE, 4708 /** 4709 * A set of information summarized from a list of other resources. 4710 */ 4711 LIST, 4712 /** 4713 * Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained or accommodated. 4714 */ 4715 LOCATION, 4716 /** 4717 * A photo, video, or audio recording acquired or used in healthcare. The actual content may be inline or provided by direct reference. 4718 */ 4719 MEDIA, 4720 /** 4721 * This resource is primarily used for the identification and definition of a medication. It covers the ingredients and the packaging for a medication. 4722 */ 4723 MEDICATION, 4724 /** 4725 * Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner. 4726 */ 4727 MEDICATIONADMINISTRATION, 4728 /** 4729 * Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order. 4730 */ 4731 MEDICATIONDISPENSE, 4732 /** 4733 * An order for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called "MedicationOrder" rather than "MedicationPrescription" to generalize the use across inpatient and outpatient settings as well as for care plans, etc. 4734 */ 4735 MEDICATIONORDER, 4736 /** 4737 * A record of a medication that is being consumed by a patient. A MedicationStatement may indicate that the patient may be taking the medication now, or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from e.g. the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains 4738 4739The primary difference between a medication statement and a medication administration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medication statement is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the medication statement information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information. 4740 */ 4741 MEDICATIONSTATEMENT, 4742 /** 4743 * The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle. 4744 */ 4745 MESSAGEHEADER, 4746 /** 4747 * A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a "System" used within the Identifier and Coding data types. 4748 */ 4749 NAMINGSYSTEM, 4750 /** 4751 * A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident. 4752 */ 4753 NUTRITIONORDER, 4754 /** 4755 * Measurements and simple assertions made about a patient, device or other subject. 4756 */ 4757 OBSERVATION, 4758 /** 4759 * A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction). 4760 */ 4761 OPERATIONDEFINITION, 4762 /** 4763 * A collection of error, warning or information messages that result from a system action. 4764 */ 4765 OPERATIONOUTCOME, 4766 /** 4767 * A request to perform an action. 4768 */ 4769 ORDER, 4770 /** 4771 * A response to an order. 4772 */ 4773 ORDERRESPONSE, 4774 /** 4775 * A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, etc. 4776 */ 4777 ORGANIZATION, 4778 /** 4779 * This special resource type is used to represent an operation request and response (operations.html). It has no other use, and there is no RESTful endpoint associated with it. 4780 */ 4781 PARAMETERS, 4782 /** 4783 * Demographics and other administrative information about an individual or animal receiving care or other health-related services. 4784 */ 4785 PATIENT, 4786 /** 4787 * This resource provides the status of the payment for goods and services rendered, and the request and response resource references. 4788 */ 4789 PAYMENTNOTICE, 4790 /** 4791 * This resource provides payment details and claim references supporting a bulk payment. 4792 */ 4793 PAYMENTRECONCILIATION, 4794 /** 4795 * Demographics and administrative information about a person independent of a specific health-related context. 4796 */ 4797 PERSON, 4798 /** 4799 * A person who is directly or indirectly involved in the provisioning of healthcare. 4800 */ 4801 PRACTITIONER, 4802 /** 4803 * An action that is or was performed on a patient. This can be a physical intervention like an operation, or less invasive like counseling or hypnotherapy. 4804 */ 4805 PROCEDURE, 4806 /** 4807 * A request for a procedure to be performed. May be a proposal or an order. 4808 */ 4809 PROCEDUREREQUEST, 4810 /** 4811 * This resource provides the target, request and response, and action details for an action to be performed by the target on or about existing resources. 4812 */ 4813 PROCESSREQUEST, 4814 /** 4815 * This resource provides processing status, errors and notes from the processing of a resource. 4816 */ 4817 PROCESSRESPONSE, 4818 /** 4819 * Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies. 4820 */ 4821 PROVENANCE, 4822 /** 4823 * A structured set of questions intended to guide the collection of answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions. 4824 */ 4825 QUESTIONNAIRE, 4826 /** 4827 * A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions. 4828 */ 4829 QUESTIONNAIRERESPONSE, 4830 /** 4831 * Used to record and send details about a request for referral service or transfer of a patient to the care of another provider or provider organization. 4832 */ 4833 REFERRALREQUEST, 4834 /** 4835 * Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process. 4836 */ 4837 RELATEDPERSON, 4838 /** 4839 * --- Abstract Type! ---This is the base resource type for everything. 4840 */ 4841 RESOURCE, 4842 /** 4843 * An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome. 4844 */ 4845 RISKASSESSMENT, 4846 /** 4847 * A container for slot(s) of time that may be available for booking appointments. 4848 */ 4849 SCHEDULE, 4850 /** 4851 * A search parameter that defines a named search item that can be used to search/filter on a resource. 4852 */ 4853 SEARCHPARAMETER, 4854 /** 4855 * A slot of time on a schedule that may be available for booking appointments. 4856 */ 4857 SLOT, 4858 /** 4859 * A sample to be used for analysis. 4860 */ 4861 SPECIMEN, 4862 /** 4863 * A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions, and constraints on resources and data types. 4864 */ 4865 STRUCTUREDEFINITION, 4866 /** 4867 * The subscription resource is used to define a push based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined "channel" so that another system is able to take an appropriate action. 4868 */ 4869 SUBSCRIPTION, 4870 /** 4871 * A homogeneous material with a definite composition. 4872 */ 4873 SUBSTANCE, 4874 /** 4875 * Record of delivery of what is supplied. 4876 */ 4877 SUPPLYDELIVERY, 4878 /** 4879 * A record of a request for a medication, substance or device used in the healthcare setting. 4880 */ 4881 SUPPLYREQUEST, 4882 /** 4883 * TestScript is a resource that specifies a suite of tests against a FHIR server implementation to determine compliance against the FHIR specification. 4884 */ 4885 TESTSCRIPT, 4886 /** 4887 * A value set specifies a set of codes drawn from one or more code systems. 4888 */ 4889 VALUESET, 4890 /** 4891 * An authorization for the supply of glasses and/or contact lenses to a patient. 4892 */ 4893 VISIONPRESCRIPTION, 4894 /** 4895 * added to help the parsers 4896 */ 4897 NULL; 4898 public static ResourceType fromCode(String codeString) throws FHIRException { 4899 if (codeString == null || "".equals(codeString)) 4900 return null; 4901 if ("Account".equals(codeString)) 4902 return ACCOUNT; 4903 if ("AllergyIntolerance".equals(codeString)) 4904 return ALLERGYINTOLERANCE; 4905 if ("Appointment".equals(codeString)) 4906 return APPOINTMENT; 4907 if ("AppointmentResponse".equals(codeString)) 4908 return APPOINTMENTRESPONSE; 4909 if ("AuditEvent".equals(codeString)) 4910 return AUDITEVENT; 4911 if ("Basic".equals(codeString)) 4912 return BASIC; 4913 if ("Binary".equals(codeString)) 4914 return BINARY; 4915 if ("BodySite".equals(codeString)) 4916 return BODYSITE; 4917 if ("Bundle".equals(codeString)) 4918 return BUNDLE; 4919 if ("CarePlan".equals(codeString)) 4920 return CAREPLAN; 4921 if ("Claim".equals(codeString)) 4922 return CLAIM; 4923 if ("ClaimResponse".equals(codeString)) 4924 return CLAIMRESPONSE; 4925 if ("ClinicalImpression".equals(codeString)) 4926 return CLINICALIMPRESSION; 4927 if ("Communication".equals(codeString)) 4928 return COMMUNICATION; 4929 if ("CommunicationRequest".equals(codeString)) 4930 return COMMUNICATIONREQUEST; 4931 if ("Composition".equals(codeString)) 4932 return COMPOSITION; 4933 if ("ConceptMap".equals(codeString)) 4934 return CONCEPTMAP; 4935 if ("Condition".equals(codeString)) 4936 return CONDITION; 4937 if ("Conformance".equals(codeString)) 4938 return CONFORMANCE; 4939 if ("Contract".equals(codeString)) 4940 return CONTRACT; 4941 if ("Coverage".equals(codeString)) 4942 return COVERAGE; 4943 if ("DataElement".equals(codeString)) 4944 return DATAELEMENT; 4945 if ("DetectedIssue".equals(codeString)) 4946 return DETECTEDISSUE; 4947 if ("Device".equals(codeString)) 4948 return DEVICE; 4949 if ("DeviceComponent".equals(codeString)) 4950 return DEVICECOMPONENT; 4951 if ("DeviceMetric".equals(codeString)) 4952 return DEVICEMETRIC; 4953 if ("DeviceUseRequest".equals(codeString)) 4954 return DEVICEUSEREQUEST; 4955 if ("DeviceUseStatement".equals(codeString)) 4956 return DEVICEUSESTATEMENT; 4957 if ("DiagnosticOrder".equals(codeString)) 4958 return DIAGNOSTICORDER; 4959 if ("DiagnosticReport".equals(codeString)) 4960 return DIAGNOSTICREPORT; 4961 if ("DocumentManifest".equals(codeString)) 4962 return DOCUMENTMANIFEST; 4963 if ("DocumentReference".equals(codeString)) 4964 return DOCUMENTREFERENCE; 4965 if ("DomainResource".equals(codeString)) 4966 return DOMAINRESOURCE; 4967 if ("EligibilityRequest".equals(codeString)) 4968 return ELIGIBILITYREQUEST; 4969 if ("EligibilityResponse".equals(codeString)) 4970 return ELIGIBILITYRESPONSE; 4971 if ("Encounter".equals(codeString)) 4972 return ENCOUNTER; 4973 if ("EnrollmentRequest".equals(codeString)) 4974 return ENROLLMENTREQUEST; 4975 if ("EnrollmentResponse".equals(codeString)) 4976 return ENROLLMENTRESPONSE; 4977 if ("EpisodeOfCare".equals(codeString)) 4978 return EPISODEOFCARE; 4979 if ("ExplanationOfBenefit".equals(codeString)) 4980 return EXPLANATIONOFBENEFIT; 4981 if ("FamilyMemberHistory".equals(codeString)) 4982 return FAMILYMEMBERHISTORY; 4983 if ("Flag".equals(codeString)) 4984 return FLAG; 4985 if ("Goal".equals(codeString)) 4986 return GOAL; 4987 if ("Group".equals(codeString)) 4988 return GROUP; 4989 if ("HealthcareService".equals(codeString)) 4990 return HEALTHCARESERVICE; 4991 if ("ImagingObjectSelection".equals(codeString)) 4992 return IMAGINGOBJECTSELECTION; 4993 if ("ImagingStudy".equals(codeString)) 4994 return IMAGINGSTUDY; 4995 if ("Immunization".equals(codeString)) 4996 return IMMUNIZATION; 4997 if ("ImmunizationRecommendation".equals(codeString)) 4998 return IMMUNIZATIONRECOMMENDATION; 4999 if ("ImplementationGuide".equals(codeString)) 5000 return IMPLEMENTATIONGUIDE; 5001 if ("List".equals(codeString)) 5002 return LIST; 5003 if ("Location".equals(codeString)) 5004 return LOCATION; 5005 if ("Media".equals(codeString)) 5006 return MEDIA; 5007 if ("Medication".equals(codeString)) 5008 return MEDICATION; 5009 if ("MedicationAdministration".equals(codeString)) 5010 return MEDICATIONADMINISTRATION; 5011 if ("MedicationDispense".equals(codeString)) 5012 return MEDICATIONDISPENSE; 5013 if ("MedicationOrder".equals(codeString)) 5014 return MEDICATIONORDER; 5015 if ("MedicationStatement".equals(codeString)) 5016 return MEDICATIONSTATEMENT; 5017 if ("MessageHeader".equals(codeString)) 5018 return MESSAGEHEADER; 5019 if ("NamingSystem".equals(codeString)) 5020 return NAMINGSYSTEM; 5021 if ("NutritionOrder".equals(codeString)) 5022 return NUTRITIONORDER; 5023 if ("Observation".equals(codeString)) 5024 return OBSERVATION; 5025 if ("OperationDefinition".equals(codeString)) 5026 return OPERATIONDEFINITION; 5027 if ("OperationOutcome".equals(codeString)) 5028 return OPERATIONOUTCOME; 5029 if ("Order".equals(codeString)) 5030 return ORDER; 5031 if ("OrderResponse".equals(codeString)) 5032 return ORDERRESPONSE; 5033 if ("Organization".equals(codeString)) 5034 return ORGANIZATION; 5035 if ("Parameters".equals(codeString)) 5036 return PARAMETERS; 5037 if ("Patient".equals(codeString)) 5038 return PATIENT; 5039 if ("PaymentNotice".equals(codeString)) 5040 return PAYMENTNOTICE; 5041 if ("PaymentReconciliation".equals(codeString)) 5042 return PAYMENTRECONCILIATION; 5043 if ("Person".equals(codeString)) 5044 return PERSON; 5045 if ("Practitioner".equals(codeString)) 5046 return PRACTITIONER; 5047 if ("Procedure".equals(codeString)) 5048 return PROCEDURE; 5049 if ("ProcedureRequest".equals(codeString)) 5050 return PROCEDUREREQUEST; 5051 if ("ProcessRequest".equals(codeString)) 5052 return PROCESSREQUEST; 5053 if ("ProcessResponse".equals(codeString)) 5054 return PROCESSRESPONSE; 5055 if ("Provenance".equals(codeString)) 5056 return PROVENANCE; 5057 if ("Questionnaire".equals(codeString)) 5058 return QUESTIONNAIRE; 5059 if ("QuestionnaireResponse".equals(codeString)) 5060 return QUESTIONNAIRERESPONSE; 5061 if ("ReferralRequest".equals(codeString)) 5062 return REFERRALREQUEST; 5063 if ("RelatedPerson".equals(codeString)) 5064 return RELATEDPERSON; 5065 if ("Resource".equals(codeString)) 5066 return RESOURCE; 5067 if ("RiskAssessment".equals(codeString)) 5068 return RISKASSESSMENT; 5069 if ("Schedule".equals(codeString)) 5070 return SCHEDULE; 5071 if ("SearchParameter".equals(codeString)) 5072 return SEARCHPARAMETER; 5073 if ("Slot".equals(codeString)) 5074 return SLOT; 5075 if ("Specimen".equals(codeString)) 5076 return SPECIMEN; 5077 if ("StructureDefinition".equals(codeString)) 5078 return STRUCTUREDEFINITION; 5079 if ("Subscription".equals(codeString)) 5080 return SUBSCRIPTION; 5081 if ("Substance".equals(codeString)) 5082 return SUBSTANCE; 5083 if ("SupplyDelivery".equals(codeString)) 5084 return SUPPLYDELIVERY; 5085 if ("SupplyRequest".equals(codeString)) 5086 return SUPPLYREQUEST; 5087 if ("TestScript".equals(codeString)) 5088 return TESTSCRIPT; 5089 if ("ValueSet".equals(codeString)) 5090 return VALUESET; 5091 if ("VisionPrescription".equals(codeString)) 5092 return VISIONPRESCRIPTION; 5093 throw new FHIRException("Unknown ResourceType code '"+codeString+"'"); 5094 } 5095 public String toCode() { 5096 switch (this) { 5097 case ACCOUNT: return "Account"; 5098 case ALLERGYINTOLERANCE: return "AllergyIntolerance"; 5099 case APPOINTMENT: return "Appointment"; 5100 case APPOINTMENTRESPONSE: return "AppointmentResponse"; 5101 case AUDITEVENT: return "AuditEvent"; 5102 case BASIC: return "Basic"; 5103 case BINARY: return "Binary"; 5104 case BODYSITE: return "BodySite"; 5105 case BUNDLE: return "Bundle"; 5106 case CAREPLAN: return "CarePlan"; 5107 case CLAIM: return "Claim"; 5108 case CLAIMRESPONSE: return "ClaimResponse"; 5109 case CLINICALIMPRESSION: return "ClinicalImpression"; 5110 case COMMUNICATION: return "Communication"; 5111 case COMMUNICATIONREQUEST: return "CommunicationRequest"; 5112 case COMPOSITION: return "Composition"; 5113 case CONCEPTMAP: return "ConceptMap"; 5114 case CONDITION: return "Condition"; 5115 case CONFORMANCE: return "Conformance"; 5116 case CONTRACT: return "Contract"; 5117 case COVERAGE: return "Coverage"; 5118 case DATAELEMENT: return "DataElement"; 5119 case DETECTEDISSUE: return "DetectedIssue"; 5120 case DEVICE: return "Device"; 5121 case DEVICECOMPONENT: return "DeviceComponent"; 5122 case DEVICEMETRIC: return "DeviceMetric"; 5123 case DEVICEUSEREQUEST: return "DeviceUseRequest"; 5124 case DEVICEUSESTATEMENT: return "DeviceUseStatement"; 5125 case DIAGNOSTICORDER: return "DiagnosticOrder"; 5126 case DIAGNOSTICREPORT: return "DiagnosticReport"; 5127 case DOCUMENTMANIFEST: return "DocumentManifest"; 5128 case DOCUMENTREFERENCE: return "DocumentReference"; 5129 case DOMAINRESOURCE: return "DomainResource"; 5130 case ELIGIBILITYREQUEST: return "EligibilityRequest"; 5131 case ELIGIBILITYRESPONSE: return "EligibilityResponse"; 5132 case ENCOUNTER: return "Encounter"; 5133 case ENROLLMENTREQUEST: return "EnrollmentRequest"; 5134 case ENROLLMENTRESPONSE: return "EnrollmentResponse"; 5135 case EPISODEOFCARE: return "EpisodeOfCare"; 5136 case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; 5137 case FAMILYMEMBERHISTORY: return "FamilyMemberHistory"; 5138 case FLAG: return "Flag"; 5139 case GOAL: return "Goal"; 5140 case GROUP: return "Group"; 5141 case HEALTHCARESERVICE: return "HealthcareService"; 5142 case IMAGINGOBJECTSELECTION: return "ImagingObjectSelection"; 5143 case IMAGINGSTUDY: return "ImagingStudy"; 5144 case IMMUNIZATION: return "Immunization"; 5145 case IMMUNIZATIONRECOMMENDATION: return "ImmunizationRecommendation"; 5146 case IMPLEMENTATIONGUIDE: return "ImplementationGuide"; 5147 case LIST: return "List"; 5148 case LOCATION: return "Location"; 5149 case MEDIA: return "Media"; 5150 case MEDICATION: return "Medication"; 5151 case MEDICATIONADMINISTRATION: return "MedicationAdministration"; 5152 case MEDICATIONDISPENSE: return "MedicationDispense"; 5153 case MEDICATIONORDER: return "MedicationOrder"; 5154 case MEDICATIONSTATEMENT: return "MedicationStatement"; 5155 case MESSAGEHEADER: return "MessageHeader"; 5156 case NAMINGSYSTEM: return "NamingSystem"; 5157 case NUTRITIONORDER: return "NutritionOrder"; 5158 case OBSERVATION: return "Observation"; 5159 case OPERATIONDEFINITION: return "OperationDefinition"; 5160 case OPERATIONOUTCOME: return "OperationOutcome"; 5161 case ORDER: return "Order"; 5162 case ORDERRESPONSE: return "OrderResponse"; 5163 case ORGANIZATION: return "Organization"; 5164 case PARAMETERS: return "Parameters"; 5165 case PATIENT: return "Patient"; 5166 case PAYMENTNOTICE: return "PaymentNotice"; 5167 case PAYMENTRECONCILIATION: return "PaymentReconciliation"; 5168 case PERSON: return "Person"; 5169 case PRACTITIONER: return "Practitioner"; 5170 case PROCEDURE: return "Procedure"; 5171 case PROCEDUREREQUEST: return "ProcedureRequest"; 5172 case PROCESSREQUEST: return "ProcessRequest"; 5173 case PROCESSRESPONSE: return "ProcessResponse"; 5174 case PROVENANCE: return "Provenance"; 5175 case QUESTIONNAIRE: return "Questionnaire"; 5176 case QUESTIONNAIRERESPONSE: return "QuestionnaireResponse"; 5177 case REFERRALREQUEST: return "ReferralRequest"; 5178 case RELATEDPERSON: return "RelatedPerson"; 5179 case RESOURCE: return "Resource"; 5180 case RISKASSESSMENT: return "RiskAssessment"; 5181 case SCHEDULE: return "Schedule"; 5182 case SEARCHPARAMETER: return "SearchParameter"; 5183 case SLOT: return "Slot"; 5184 case SPECIMEN: return "Specimen"; 5185 case STRUCTUREDEFINITION: return "StructureDefinition"; 5186 case SUBSCRIPTION: return "Subscription"; 5187 case SUBSTANCE: return "Substance"; 5188 case SUPPLYDELIVERY: return "SupplyDelivery"; 5189 case SUPPLYREQUEST: return "SupplyRequest"; 5190 case TESTSCRIPT: return "TestScript"; 5191 case VALUESET: return "ValueSet"; 5192 case VISIONPRESCRIPTION: return "VisionPrescription"; 5193 default: return "?"; 5194 } 5195 } 5196 public String getSystem() { 5197 switch (this) { 5198 case ACCOUNT: return "http://hl7.org/fhir/resource-types"; 5199 case ALLERGYINTOLERANCE: return "http://hl7.org/fhir/resource-types"; 5200 case APPOINTMENT: return "http://hl7.org/fhir/resource-types"; 5201 case APPOINTMENTRESPONSE: return "http://hl7.org/fhir/resource-types"; 5202 case AUDITEVENT: return "http://hl7.org/fhir/resource-types"; 5203 case BASIC: return "http://hl7.org/fhir/resource-types"; 5204 case BINARY: return "http://hl7.org/fhir/resource-types"; 5205 case BODYSITE: return "http://hl7.org/fhir/resource-types"; 5206 case BUNDLE: return "http://hl7.org/fhir/resource-types"; 5207 case CAREPLAN: return "http://hl7.org/fhir/resource-types"; 5208 case CLAIM: return "http://hl7.org/fhir/resource-types"; 5209 case CLAIMRESPONSE: return "http://hl7.org/fhir/resource-types"; 5210 case CLINICALIMPRESSION: return "http://hl7.org/fhir/resource-types"; 5211 case COMMUNICATION: return "http://hl7.org/fhir/resource-types"; 5212 case COMMUNICATIONREQUEST: return "http://hl7.org/fhir/resource-types"; 5213 case COMPOSITION: return "http://hl7.org/fhir/resource-types"; 5214 case CONCEPTMAP: return "http://hl7.org/fhir/resource-types"; 5215 case CONDITION: return "http://hl7.org/fhir/resource-types"; 5216 case CONFORMANCE: return "http://hl7.org/fhir/resource-types"; 5217 case CONTRACT: return "http://hl7.org/fhir/resource-types"; 5218 case COVERAGE: return "http://hl7.org/fhir/resource-types"; 5219 case DATAELEMENT: return "http://hl7.org/fhir/resource-types"; 5220 case DETECTEDISSUE: return "http://hl7.org/fhir/resource-types"; 5221 case DEVICE: return "http://hl7.org/fhir/resource-types"; 5222 case DEVICECOMPONENT: return "http://hl7.org/fhir/resource-types"; 5223 case DEVICEMETRIC: return "http://hl7.org/fhir/resource-types"; 5224 case DEVICEUSEREQUEST: return "http://hl7.org/fhir/resource-types"; 5225 case DEVICEUSESTATEMENT: return "http://hl7.org/fhir/resource-types"; 5226 case DIAGNOSTICORDER: return "http://hl7.org/fhir/resource-types"; 5227 case DIAGNOSTICREPORT: return "http://hl7.org/fhir/resource-types"; 5228 case DOCUMENTMANIFEST: return "http://hl7.org/fhir/resource-types"; 5229 case DOCUMENTREFERENCE: return "http://hl7.org/fhir/resource-types"; 5230 case DOMAINRESOURCE: return "http://hl7.org/fhir/resource-types"; 5231 case ELIGIBILITYREQUEST: return "http://hl7.org/fhir/resource-types"; 5232 case ELIGIBILITYRESPONSE: return "http://hl7.org/fhir/resource-types"; 5233 case ENCOUNTER: return "http://hl7.org/fhir/resource-types"; 5234 case ENROLLMENTREQUEST: return "http://hl7.org/fhir/resource-types"; 5235 case ENROLLMENTRESPONSE: return "http://hl7.org/fhir/resource-types"; 5236 case EPISODEOFCARE: return "http://hl7.org/fhir/resource-types"; 5237 case EXPLANATIONOFBENEFIT: return "http://hl7.org/fhir/resource-types"; 5238 case FAMILYMEMBERHISTORY: return "http://hl7.org/fhir/resource-types"; 5239 case FLAG: return "http://hl7.org/fhir/resource-types"; 5240 case GOAL: return "http://hl7.org/fhir/resource-types"; 5241 case GROUP: return "http://hl7.org/fhir/resource-types"; 5242 case HEALTHCARESERVICE: return "http://hl7.org/fhir/resource-types"; 5243 case IMAGINGOBJECTSELECTION: return "http://hl7.org/fhir/resource-types"; 5244 case IMAGINGSTUDY: return "http://hl7.org/fhir/resource-types"; 5245 case IMMUNIZATION: return "http://hl7.org/fhir/resource-types"; 5246 case IMMUNIZATIONRECOMMENDATION: return "http://hl7.org/fhir/resource-types"; 5247 case IMPLEMENTATIONGUIDE: return "http://hl7.org/fhir/resource-types"; 5248 case LIST: return "http://hl7.org/fhir/resource-types"; 5249 case LOCATION: return "http://hl7.org/fhir/resource-types"; 5250 case MEDIA: return "http://hl7.org/fhir/resource-types"; 5251 case MEDICATION: return "http://hl7.org/fhir/resource-types"; 5252 case MEDICATIONADMINISTRATION: return "http://hl7.org/fhir/resource-types"; 5253 case MEDICATIONDISPENSE: return "http://hl7.org/fhir/resource-types"; 5254 case MEDICATIONORDER: return "http://hl7.org/fhir/resource-types"; 5255 case MEDICATIONSTATEMENT: return "http://hl7.org/fhir/resource-types"; 5256 case MESSAGEHEADER: return "http://hl7.org/fhir/resource-types"; 5257 case NAMINGSYSTEM: return "http://hl7.org/fhir/resource-types"; 5258 case NUTRITIONORDER: return "http://hl7.org/fhir/resource-types"; 5259 case OBSERVATION: return "http://hl7.org/fhir/resource-types"; 5260 case OPERATIONDEFINITION: return "http://hl7.org/fhir/resource-types"; 5261 case OPERATIONOUTCOME: return "http://hl7.org/fhir/resource-types"; 5262 case ORDER: return "http://hl7.org/fhir/resource-types"; 5263 case ORDERRESPONSE: return "http://hl7.org/fhir/resource-types"; 5264 case ORGANIZATION: return "http://hl7.org/fhir/resource-types"; 5265 case PARAMETERS: return "http://hl7.org/fhir/resource-types"; 5266 case PATIENT: return "http://hl7.org/fhir/resource-types"; 5267 case PAYMENTNOTICE: return "http://hl7.org/fhir/resource-types"; 5268 case PAYMENTRECONCILIATION: return "http://hl7.org/fhir/resource-types"; 5269 case PERSON: return "http://hl7.org/fhir/resource-types"; 5270 case PRACTITIONER: return "http://hl7.org/fhir/resource-types"; 5271 case PROCEDURE: return "http://hl7.org/fhir/resource-types"; 5272 case PROCEDUREREQUEST: return "http://hl7.org/fhir/resource-types"; 5273 case PROCESSREQUEST: return "http://hl7.org/fhir/resource-types"; 5274 case PROCESSRESPONSE: return "http://hl7.org/fhir/resource-types"; 5275 case PROVENANCE: return "http://hl7.org/fhir/resource-types"; 5276 case QUESTIONNAIRE: return "http://hl7.org/fhir/resource-types"; 5277 case QUESTIONNAIRERESPONSE: return "http://hl7.org/fhir/resource-types"; 5278 case REFERRALREQUEST: return "http://hl7.org/fhir/resource-types"; 5279 case RELATEDPERSON: return "http://hl7.org/fhir/resource-types"; 5280 case RESOURCE: return "http://hl7.org/fhir/resource-types"; 5281 case RISKASSESSMENT: return "http://hl7.org/fhir/resource-types"; 5282 case SCHEDULE: return "http://hl7.org/fhir/resource-types"; 5283 case SEARCHPARAMETER: return "http://hl7.org/fhir/resource-types"; 5284 case SLOT: return "http://hl7.org/fhir/resource-types"; 5285 case SPECIMEN: return "http://hl7.org/fhir/resource-types"; 5286 case STRUCTUREDEFINITION: return "http://hl7.org/fhir/resource-types"; 5287 case SUBSCRIPTION: return "http://hl7.org/fhir/resource-types"; 5288 case SUBSTANCE: return "http://hl7.org/fhir/resource-types"; 5289 case SUPPLYDELIVERY: return "http://hl7.org/fhir/resource-types"; 5290 case SUPPLYREQUEST: return "http://hl7.org/fhir/resource-types"; 5291 case TESTSCRIPT: return "http://hl7.org/fhir/resource-types"; 5292 case VALUESET: return "http://hl7.org/fhir/resource-types"; 5293 case VISIONPRESCRIPTION: return "http://hl7.org/fhir/resource-types"; 5294 default: return "?"; 5295 } 5296 } 5297 public String getDefinition() { 5298 switch (this) { 5299 case ACCOUNT: return "A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centres, etc."; 5300 case ALLERGYINTOLERANCE: return "Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance."; 5301 case APPOINTMENT: return "A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)."; 5302 case APPOINTMENTRESPONSE: return "A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection."; 5303 case AUDITEVENT: return "A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage."; 5304 case BASIC: return "Basic is used for handling concepts not yet defined in FHIR, narrative-only resources that don't map to an existing resource, and custom resources not appropriate for inclusion in the FHIR specification."; 5305 case BINARY: return "A binary resource can contain any content, whether text, image, pdf, zip archive, etc."; 5306 case BODYSITE: return "Record details about the anatomical location of a specimen or body part. This resource may be used when a coded concept does not provide the necessary detail needed for the use case."; 5307 case BUNDLE: return "A container for a collection of resources."; 5308 case CAREPLAN: return "Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions."; 5309 case CLAIM: return "A provider issued list of services and products provided, or to be provided, to a patient which is provided to an insurer for payment recovery."; 5310 case CLAIMRESPONSE: return "This resource provides the adjudication details from the processing of a Claim resource."; 5311 case CLINICALIMPRESSION: return "A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called \"ClinicalImpression\" rather than \"ClinicalAssessment\" to avoid confusion with the recording of assessment tools such as Apgar score."; 5312 case COMMUNICATION: return "An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency was notified about a reportable condition."; 5313 case COMMUNICATIONREQUEST: return "A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition."; 5314 case COMPOSITION: return "A set of healthcare-related information that is assembled together into a single logical document that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. While a Composition defines the structure, it does not actually contain the content: rather the full content of a document is contained in a Bundle, of which the Composition is the first resource contained."; 5315 case CONCEPTMAP: return "A statement of relationships from one set of concepts to one or more other concepts - either code systems or data elements, or classes in class models."; 5316 case CONDITION: return "Use to record detailed information about conditions, problems or diagnoses recognized by a clinician. There are many uses including: recording a diagnosis during an encounter; populating a problem list or a summary statement, such as a discharge summary."; 5317 case CONFORMANCE: return "A conformance statement is a set of capabilities of a FHIR Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation."; 5318 case CONTRACT: return "A formal agreement between parties regarding the conduct of business, exchange of information or other matters."; 5319 case COVERAGE: return "Financial instrument which may be used to pay for or reimburse health care products and services."; 5320 case DATAELEMENT: return "The formal description of a single piece of information that can be gathered and reported."; 5321 case DETECTEDISSUE: return "Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc."; 5322 case DEVICE: return "This resource identifies an instance of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device. Medical devices includes durable (reusable) medical equipment, implantable devices, as well as disposable equipment used for diagnostic, treatment, and research for healthcare and public health. Non-medical devices may include items such as a machine, cellphone, computer, application, etc."; 5323 case DEVICECOMPONENT: return "Describes the characteristics, operational status and capabilities of a medical-related component of a medical device."; 5324 case DEVICEMETRIC: return "Describes a measurement, calculation or setting capability of a medical device."; 5325 case DEVICEUSEREQUEST: return "Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker."; 5326 case DEVICEUSESTATEMENT: return "A record of a device being used by a patient where the record is the result of a report from the patient or another clinician."; 5327 case DIAGNOSTICORDER: return "A record of a request for a diagnostic investigation service to be performed."; 5328 case DIAGNOSTICREPORT: return "The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports."; 5329 case DOCUMENTMANIFEST: return "A manifest that defines a set of documents."; 5330 case DOCUMENTREFERENCE: return "A reference to a document ."; 5331 case DOMAINRESOURCE: return "--- Abstract Type! ---A resource that includes narrative, extensions, and contained resources."; 5332 case ELIGIBILITYREQUEST: return "This resource provides the insurance eligibility details from the insurer regarding a specified coverage and optionally some class of service."; 5333 case ELIGIBILITYRESPONSE: return "This resource provides eligibility and plan details from the processing of an Eligibility resource."; 5334 case ENCOUNTER: return "An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient."; 5335 case ENROLLMENTREQUEST: return "This resource provides the insurance enrollment details to the insurer regarding a specified coverage."; 5336 case ENROLLMENTRESPONSE: return "This resource provides enrollment and plan details from the processing of an Enrollment resource."; 5337 case EPISODEOFCARE: return "An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time."; 5338 case EXPLANATIONOFBENEFIT: return "This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided."; 5339 case FAMILYMEMBERHISTORY: return "Significant health events and conditions for a person related to the patient relevant in the context of care for the patient."; 5340 case FLAG: return "Prospective warnings of potential issues when providing care to the patient."; 5341 case GOAL: return "Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc."; 5342 case GROUP: return "Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization."; 5343 case HEALTHCARESERVICE: return "The details of a healthcare service available at a location."; 5344 case IMAGINGOBJECTSELECTION: return "A manifest of a set of DICOM Service-Object Pair Instances (SOP Instances). The referenced SOP Instances (images or other content) are for a single patient, and may be from one or more studies. The referenced SOP Instances have been selected for a purpose, such as quality assurance, conference, or consult. Reflecting that range of purposes, typical ImagingObjectSelection resources may include all SOP Instances in a study (perhaps for sharing through a Health Information Exchange); key images from multiple studies (for reference by a referring or treating physician); a multi-frame ultrasound instance (\"cine\" video clip) and a set of measurements taken from that instance (for inclusion in a teaching file); and so on."; 5345 case IMAGINGSTUDY: return "Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities."; 5346 case IMMUNIZATION: return "Describes the event of a patient being administered a vaccination or a record of a vaccination as reported by a patient, a clinician or another party and may include vaccine reaction information and what vaccination protocol was followed."; 5347 case IMMUNIZATIONRECOMMENDATION: return "A patient's point-in-time immunization and recommendation (i.e. forecasting a patient's immunization eligibility according to a published schedule) with optional supporting justification."; 5348 case IMPLEMENTATIONGUIDE: return "A set of rules or how FHIR is used to solve a particular problem. This resource is used to gather all the parts of an implementation guide into a logical whole, and to publish a computable definition of all the parts."; 5349 case LIST: return "A set of information summarized from a list of other resources."; 5350 case LOCATION: return "Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained or accommodated."; 5351 case MEDIA: return "A photo, video, or audio recording acquired or used in healthcare. The actual content may be inline or provided by direct reference."; 5352 case MEDICATION: return "This resource is primarily used for the identification and definition of a medication. It covers the ingredients and the packaging for a medication."; 5353 case MEDICATIONADMINISTRATION: return "Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner."; 5354 case MEDICATIONDISPENSE: return "Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order."; 5355 case MEDICATIONORDER: return "An order for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called \"MedicationOrder\" rather than \"MedicationPrescription\" to generalize the use across inpatient and outpatient settings as well as for care plans, etc."; 5356 case MEDICATIONSTATEMENT: return "A record of a medication that is being consumed by a patient. A MedicationStatement may indicate that the patient may be taking the medication now, or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from e.g. the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains \r\rThe primary difference between a medication statement and a medication administration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medication statement is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the medication statement information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information."; 5357 case MESSAGEHEADER: return "The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle."; 5358 case NAMINGSYSTEM: return "A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a \"System\" used within the Identifier and Coding data types."; 5359 case NUTRITIONORDER: return "A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident."; 5360 case OBSERVATION: return "Measurements and simple assertions made about a patient, device or other subject."; 5361 case OPERATIONDEFINITION: return "A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction)."; 5362 case OPERATIONOUTCOME: return "A collection of error, warning or information messages that result from a system action."; 5363 case ORDER: return "A request to perform an action."; 5364 case ORDERRESPONSE: return "A response to an order."; 5365 case ORGANIZATION: return "A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, etc."; 5366 case PARAMETERS: return "This special resource type is used to represent an operation request and response (operations.html). It has no other use, and there is no RESTful endpoint associated with it."; 5367 case PATIENT: return "Demographics and other administrative information about an individual or animal receiving care or other health-related services."; 5368 case PAYMENTNOTICE: return "This resource provides the status of the payment for goods and services rendered, and the request and response resource references."; 5369 case PAYMENTRECONCILIATION: return "This resource provides payment details and claim references supporting a bulk payment."; 5370 case PERSON: return "Demographics and administrative information about a person independent of a specific health-related context."; 5371 case PRACTITIONER: return "A person who is directly or indirectly involved in the provisioning of healthcare."; 5372 case PROCEDURE: return "An action that is or was performed on a patient. This can be a physical intervention like an operation, or less invasive like counseling or hypnotherapy."; 5373 case PROCEDUREREQUEST: return "A request for a procedure to be performed. May be a proposal or an order."; 5374 case PROCESSREQUEST: return "This resource provides the target, request and response, and action details for an action to be performed by the target on or about existing resources."; 5375 case PROCESSRESPONSE: return "This resource provides processing status, errors and notes from the processing of a resource."; 5376 case PROVENANCE: return "Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies."; 5377 case QUESTIONNAIRE: return "A structured set of questions intended to guide the collection of answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions."; 5378 case QUESTIONNAIRERESPONSE: return "A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions."; 5379 case REFERRALREQUEST: return "Used to record and send details about a request for referral service or transfer of a patient to the care of another provider or provider organization."; 5380 case RELATEDPERSON: return "Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process."; 5381 case RESOURCE: return "--- Abstract Type! ---This is the base resource type for everything."; 5382 case RISKASSESSMENT: return "An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome."; 5383 case SCHEDULE: return "A container for slot(s) of time that may be available for booking appointments."; 5384 case SEARCHPARAMETER: return "A search parameter that defines a named search item that can be used to search/filter on a resource."; 5385 case SLOT: return "A slot of time on a schedule that may be available for booking appointments."; 5386 case SPECIMEN: return "A sample to be used for analysis."; 5387 case STRUCTUREDEFINITION: return "A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions, and constraints on resources and data types."; 5388 case SUBSCRIPTION: return "The subscription resource is used to define a push based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined \"channel\" so that another system is able to take an appropriate action."; 5389 case SUBSTANCE: return "A homogeneous material with a definite composition."; 5390 case SUPPLYDELIVERY: return "Record of delivery of what is supplied."; 5391 case SUPPLYREQUEST: return "A record of a request for a medication, substance or device used in the healthcare setting."; 5392 case TESTSCRIPT: return "TestScript is a resource that specifies a suite of tests against a FHIR server implementation to determine compliance against the FHIR specification."; 5393 case VALUESET: return "A value set specifies a set of codes drawn from one or more code systems."; 5394 case VISIONPRESCRIPTION: return "An authorization for the supply of glasses and/or contact lenses to a patient."; 5395 default: return "?"; 5396 } 5397 } 5398 public String getDisplay() { 5399 switch (this) { 5400 case ACCOUNT: return "Account"; 5401 case ALLERGYINTOLERANCE: return "AllergyIntolerance"; 5402 case APPOINTMENT: return "Appointment"; 5403 case APPOINTMENTRESPONSE: return "AppointmentResponse"; 5404 case AUDITEVENT: return "AuditEvent"; 5405 case BASIC: return "Basic"; 5406 case BINARY: return "Binary"; 5407 case BODYSITE: return "BodySite"; 5408 case BUNDLE: return "Bundle"; 5409 case CAREPLAN: return "CarePlan"; 5410 case CLAIM: return "Claim"; 5411 case CLAIMRESPONSE: return "ClaimResponse"; 5412 case CLINICALIMPRESSION: return "ClinicalImpression"; 5413 case COMMUNICATION: return "Communication"; 5414 case COMMUNICATIONREQUEST: return "CommunicationRequest"; 5415 case COMPOSITION: return "Composition"; 5416 case CONCEPTMAP: return "ConceptMap"; 5417 case CONDITION: return "Condition"; 5418 case CONFORMANCE: return "Conformance"; 5419 case CONTRACT: return "Contract"; 5420 case COVERAGE: return "Coverage"; 5421 case DATAELEMENT: return "DataElement"; 5422 case DETECTEDISSUE: return "DetectedIssue"; 5423 case DEVICE: return "Device"; 5424 case DEVICECOMPONENT: return "DeviceComponent"; 5425 case DEVICEMETRIC: return "DeviceMetric"; 5426 case DEVICEUSEREQUEST: return "DeviceUseRequest"; 5427 case DEVICEUSESTATEMENT: return "DeviceUseStatement"; 5428 case DIAGNOSTICORDER: return "DiagnosticOrder"; 5429 case DIAGNOSTICREPORT: return "DiagnosticReport"; 5430 case DOCUMENTMANIFEST: return "DocumentManifest"; 5431 case DOCUMENTREFERENCE: return "DocumentReference"; 5432 case DOMAINRESOURCE: return "DomainResource"; 5433 case ELIGIBILITYREQUEST: return "EligibilityRequest"; 5434 case ELIGIBILITYRESPONSE: return "EligibilityResponse"; 5435 case ENCOUNTER: return "Encounter"; 5436 case ENROLLMENTREQUEST: return "EnrollmentRequest"; 5437 case ENROLLMENTRESPONSE: return "EnrollmentResponse"; 5438 case EPISODEOFCARE: return "EpisodeOfCare"; 5439 case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; 5440 case FAMILYMEMBERHISTORY: return "FamilyMemberHistory"; 5441 case FLAG: return "Flag"; 5442 case GOAL: return "Goal"; 5443 case GROUP: return "Group"; 5444 case HEALTHCARESERVICE: return "HealthcareService"; 5445 case IMAGINGOBJECTSELECTION: return "ImagingObjectSelection"; 5446 case IMAGINGSTUDY: return "ImagingStudy"; 5447 case IMMUNIZATION: return "Immunization"; 5448 case IMMUNIZATIONRECOMMENDATION: return "ImmunizationRecommendation"; 5449 case IMPLEMENTATIONGUIDE: return "ImplementationGuide"; 5450 case LIST: return "List"; 5451 case LOCATION: return "Location"; 5452 case MEDIA: return "Media"; 5453 case MEDICATION: return "Medication"; 5454 case MEDICATIONADMINISTRATION: return "MedicationAdministration"; 5455 case MEDICATIONDISPENSE: return "MedicationDispense"; 5456 case MEDICATIONORDER: return "MedicationOrder"; 5457 case MEDICATIONSTATEMENT: return "MedicationStatement"; 5458 case MESSAGEHEADER: return "MessageHeader"; 5459 case NAMINGSYSTEM: return "NamingSystem"; 5460 case NUTRITIONORDER: return "NutritionOrder"; 5461 case OBSERVATION: return "Observation"; 5462 case OPERATIONDEFINITION: return "OperationDefinition"; 5463 case OPERATIONOUTCOME: return "OperationOutcome"; 5464 case ORDER: return "Order"; 5465 case ORDERRESPONSE: return "OrderResponse"; 5466 case ORGANIZATION: return "Organization"; 5467 case PARAMETERS: return "Parameters"; 5468 case PATIENT: return "Patient"; 5469 case PAYMENTNOTICE: return "PaymentNotice"; 5470 case PAYMENTRECONCILIATION: return "PaymentReconciliation"; 5471 case PERSON: return "Person"; 5472 case PRACTITIONER: return "Practitioner"; 5473 case PROCEDURE: return "Procedure"; 5474 case PROCEDUREREQUEST: return "ProcedureRequest"; 5475 case PROCESSREQUEST: return "ProcessRequest"; 5476 case PROCESSRESPONSE: return "ProcessResponse"; 5477 case PROVENANCE: return "Provenance"; 5478 case QUESTIONNAIRE: return "Questionnaire"; 5479 case QUESTIONNAIRERESPONSE: return "QuestionnaireResponse"; 5480 case REFERRALREQUEST: return "ReferralRequest"; 5481 case RELATEDPERSON: return "RelatedPerson"; 5482 case RESOURCE: return "Resource"; 5483 case RISKASSESSMENT: return "RiskAssessment"; 5484 case SCHEDULE: return "Schedule"; 5485 case SEARCHPARAMETER: return "SearchParameter"; 5486 case SLOT: return "Slot"; 5487 case SPECIMEN: return "Specimen"; 5488 case STRUCTUREDEFINITION: return "StructureDefinition"; 5489 case SUBSCRIPTION: return "Subscription"; 5490 case SUBSTANCE: return "Substance"; 5491 case SUPPLYDELIVERY: return "SupplyDelivery"; 5492 case SUPPLYREQUEST: return "SupplyRequest"; 5493 case TESTSCRIPT: return "TestScript"; 5494 case VALUESET: return "ValueSet"; 5495 case VISIONPRESCRIPTION: return "VisionPrescription"; 5496 default: return "?"; 5497 } 5498 } 5499 } 5500 5501 public static class ResourceTypeEnumFactory implements EnumFactory<ResourceType> { 5502 public ResourceType fromCode(String codeString) throws IllegalArgumentException { 5503 if (codeString == null || "".equals(codeString)) 5504 if (codeString == null || "".equals(codeString)) 5505 return null; 5506 if ("Account".equals(codeString)) 5507 return ResourceType.ACCOUNT; 5508 if ("AllergyIntolerance".equals(codeString)) 5509 return ResourceType.ALLERGYINTOLERANCE; 5510 if ("Appointment".equals(codeString)) 5511 return ResourceType.APPOINTMENT; 5512 if ("AppointmentResponse".equals(codeString)) 5513 return ResourceType.APPOINTMENTRESPONSE; 5514 if ("AuditEvent".equals(codeString)) 5515 return ResourceType.AUDITEVENT; 5516 if ("Basic".equals(codeString)) 5517 return ResourceType.BASIC; 5518 if ("Binary".equals(codeString)) 5519 return ResourceType.BINARY; 5520 if ("BodySite".equals(codeString)) 5521 return ResourceType.BODYSITE; 5522 if ("Bundle".equals(codeString)) 5523 return ResourceType.BUNDLE; 5524 if ("CarePlan".equals(codeString)) 5525 return ResourceType.CAREPLAN; 5526 if ("Claim".equals(codeString)) 5527 return ResourceType.CLAIM; 5528 if ("ClaimResponse".equals(codeString)) 5529 return ResourceType.CLAIMRESPONSE; 5530 if ("ClinicalImpression".equals(codeString)) 5531 return ResourceType.CLINICALIMPRESSION; 5532 if ("Communication".equals(codeString)) 5533 return ResourceType.COMMUNICATION; 5534 if ("CommunicationRequest".equals(codeString)) 5535 return ResourceType.COMMUNICATIONREQUEST; 5536 if ("Composition".equals(codeString)) 5537 return ResourceType.COMPOSITION; 5538 if ("ConceptMap".equals(codeString)) 5539 return ResourceType.CONCEPTMAP; 5540 if ("Condition".equals(codeString)) 5541 return ResourceType.CONDITION; 5542 if ("Conformance".equals(codeString)) 5543 return ResourceType.CONFORMANCE; 5544 if ("Contract".equals(codeString)) 5545 return ResourceType.CONTRACT; 5546 if ("Coverage".equals(codeString)) 5547 return ResourceType.COVERAGE; 5548 if ("DataElement".equals(codeString)) 5549 return ResourceType.DATAELEMENT; 5550 if ("DetectedIssue".equals(codeString)) 5551 return ResourceType.DETECTEDISSUE; 5552 if ("Device".equals(codeString)) 5553 return ResourceType.DEVICE; 5554 if ("DeviceComponent".equals(codeString)) 5555 return ResourceType.DEVICECOMPONENT; 5556 if ("DeviceMetric".equals(codeString)) 5557 return ResourceType.DEVICEMETRIC; 5558 if ("DeviceUseRequest".equals(codeString)) 5559 return ResourceType.DEVICEUSEREQUEST; 5560 if ("DeviceUseStatement".equals(codeString)) 5561 return ResourceType.DEVICEUSESTATEMENT; 5562 if ("DiagnosticOrder".equals(codeString)) 5563 return ResourceType.DIAGNOSTICORDER; 5564 if ("DiagnosticReport".equals(codeString)) 5565 return ResourceType.DIAGNOSTICREPORT; 5566 if ("DocumentManifest".equals(codeString)) 5567 return ResourceType.DOCUMENTMANIFEST; 5568 if ("DocumentReference".equals(codeString)) 5569 return ResourceType.DOCUMENTREFERENCE; 5570 if ("DomainResource".equals(codeString)) 5571 return ResourceType.DOMAINRESOURCE; 5572 if ("EligibilityRequest".equals(codeString)) 5573 return ResourceType.ELIGIBILITYREQUEST; 5574 if ("EligibilityResponse".equals(codeString)) 5575 return ResourceType.ELIGIBILITYRESPONSE; 5576 if ("Encounter".equals(codeString)) 5577 return ResourceType.ENCOUNTER; 5578 if ("EnrollmentRequest".equals(codeString)) 5579 return ResourceType.ENROLLMENTREQUEST; 5580 if ("EnrollmentResponse".equals(codeString)) 5581 return ResourceType.ENROLLMENTRESPONSE; 5582 if ("EpisodeOfCare".equals(codeString)) 5583 return ResourceType.EPISODEOFCARE; 5584 if ("ExplanationOfBenefit".equals(codeString)) 5585 return ResourceType.EXPLANATIONOFBENEFIT; 5586 if ("FamilyMemberHistory".equals(codeString)) 5587 return ResourceType.FAMILYMEMBERHISTORY; 5588 if ("Flag".equals(codeString)) 5589 return ResourceType.FLAG; 5590 if ("Goal".equals(codeString)) 5591 return ResourceType.GOAL; 5592 if ("Group".equals(codeString)) 5593 return ResourceType.GROUP; 5594 if ("HealthcareService".equals(codeString)) 5595 return ResourceType.HEALTHCARESERVICE; 5596 if ("ImagingObjectSelection".equals(codeString)) 5597 return ResourceType.IMAGINGOBJECTSELECTION; 5598 if ("ImagingStudy".equals(codeString)) 5599 return ResourceType.IMAGINGSTUDY; 5600 if ("Immunization".equals(codeString)) 5601 return ResourceType.IMMUNIZATION; 5602 if ("ImmunizationRecommendation".equals(codeString)) 5603 return ResourceType.IMMUNIZATIONRECOMMENDATION; 5604 if ("ImplementationGuide".equals(codeString)) 5605 return ResourceType.IMPLEMENTATIONGUIDE; 5606 if ("List".equals(codeString)) 5607 return ResourceType.LIST; 5608 if ("Location".equals(codeString)) 5609 return ResourceType.LOCATION; 5610 if ("Media".equals(codeString)) 5611 return ResourceType.MEDIA; 5612 if ("Medication".equals(codeString)) 5613 return ResourceType.MEDICATION; 5614 if ("MedicationAdministration".equals(codeString)) 5615 return ResourceType.MEDICATIONADMINISTRATION; 5616 if ("MedicationDispense".equals(codeString)) 5617 return ResourceType.MEDICATIONDISPENSE; 5618 if ("MedicationOrder".equals(codeString)) 5619 return ResourceType.MEDICATIONORDER; 5620 if ("MedicationStatement".equals(codeString)) 5621 return ResourceType.MEDICATIONSTATEMENT; 5622 if ("MessageHeader".equals(codeString)) 5623 return ResourceType.MESSAGEHEADER; 5624 if ("NamingSystem".equals(codeString)) 5625 return ResourceType.NAMINGSYSTEM; 5626 if ("NutritionOrder".equals(codeString)) 5627 return ResourceType.NUTRITIONORDER; 5628 if ("Observation".equals(codeString)) 5629 return ResourceType.OBSERVATION; 5630 if ("OperationDefinition".equals(codeString)) 5631 return ResourceType.OPERATIONDEFINITION; 5632 if ("OperationOutcome".equals(codeString)) 5633 return ResourceType.OPERATIONOUTCOME; 5634 if ("Order".equals(codeString)) 5635 return ResourceType.ORDER; 5636 if ("OrderResponse".equals(codeString)) 5637 return ResourceType.ORDERRESPONSE; 5638 if ("Organization".equals(codeString)) 5639 return ResourceType.ORGANIZATION; 5640 if ("Parameters".equals(codeString)) 5641 return ResourceType.PARAMETERS; 5642 if ("Patient".equals(codeString)) 5643 return ResourceType.PATIENT; 5644 if ("PaymentNotice".equals(codeString)) 5645 return ResourceType.PAYMENTNOTICE; 5646 if ("PaymentReconciliation".equals(codeString)) 5647 return ResourceType.PAYMENTRECONCILIATION; 5648 if ("Person".equals(codeString)) 5649 return ResourceType.PERSON; 5650 if ("Practitioner".equals(codeString)) 5651 return ResourceType.PRACTITIONER; 5652 if ("Procedure".equals(codeString)) 5653 return ResourceType.PROCEDURE; 5654 if ("ProcedureRequest".equals(codeString)) 5655 return ResourceType.PROCEDUREREQUEST; 5656 if ("ProcessRequest".equals(codeString)) 5657 return ResourceType.PROCESSREQUEST; 5658 if ("ProcessResponse".equals(codeString)) 5659 return ResourceType.PROCESSRESPONSE; 5660 if ("Provenance".equals(codeString)) 5661 return ResourceType.PROVENANCE; 5662 if ("Questionnaire".equals(codeString)) 5663 return ResourceType.QUESTIONNAIRE; 5664 if ("QuestionnaireResponse".equals(codeString)) 5665 return ResourceType.QUESTIONNAIRERESPONSE; 5666 if ("ReferralRequest".equals(codeString)) 5667 return ResourceType.REFERRALREQUEST; 5668 if ("RelatedPerson".equals(codeString)) 5669 return ResourceType.RELATEDPERSON; 5670 if ("Resource".equals(codeString)) 5671 return ResourceType.RESOURCE; 5672 if ("RiskAssessment".equals(codeString)) 5673 return ResourceType.RISKASSESSMENT; 5674 if ("Schedule".equals(codeString)) 5675 return ResourceType.SCHEDULE; 5676 if ("SearchParameter".equals(codeString)) 5677 return ResourceType.SEARCHPARAMETER; 5678 if ("Slot".equals(codeString)) 5679 return ResourceType.SLOT; 5680 if ("Specimen".equals(codeString)) 5681 return ResourceType.SPECIMEN; 5682 if ("StructureDefinition".equals(codeString)) 5683 return ResourceType.STRUCTUREDEFINITION; 5684 if ("Subscription".equals(codeString)) 5685 return ResourceType.SUBSCRIPTION; 5686 if ("Substance".equals(codeString)) 5687 return ResourceType.SUBSTANCE; 5688 if ("SupplyDelivery".equals(codeString)) 5689 return ResourceType.SUPPLYDELIVERY; 5690 if ("SupplyRequest".equals(codeString)) 5691 return ResourceType.SUPPLYREQUEST; 5692 if ("TestScript".equals(codeString)) 5693 return ResourceType.TESTSCRIPT; 5694 if ("ValueSet".equals(codeString)) 5695 return ResourceType.VALUESET; 5696 if ("VisionPrescription".equals(codeString)) 5697 return ResourceType.VISIONPRESCRIPTION; 5698 throw new IllegalArgumentException("Unknown ResourceType code '"+codeString+"'"); 5699 } 5700 public Enumeration<ResourceType> fromType(Base code) throws FHIRException { 5701 if (code == null || code.isEmpty()) 5702 return null; 5703 String codeString = ((PrimitiveType) code).asStringValue(); 5704 if (codeString == null || "".equals(codeString)) 5705 return null; 5706 if ("Account".equals(codeString)) 5707 return new Enumeration<ResourceType>(this, ResourceType.ACCOUNT); 5708 if ("AllergyIntolerance".equals(codeString)) 5709 return new Enumeration<ResourceType>(this, ResourceType.ALLERGYINTOLERANCE); 5710 if ("Appointment".equals(codeString)) 5711 return new Enumeration<ResourceType>(this, ResourceType.APPOINTMENT); 5712 if ("AppointmentResponse".equals(codeString)) 5713 return new Enumeration<ResourceType>(this, ResourceType.APPOINTMENTRESPONSE); 5714 if ("AuditEvent".equals(codeString)) 5715 return new Enumeration<ResourceType>(this, ResourceType.AUDITEVENT); 5716 if ("Basic".equals(codeString)) 5717 return new Enumeration<ResourceType>(this, ResourceType.BASIC); 5718 if ("Binary".equals(codeString)) 5719 return new Enumeration<ResourceType>(this, ResourceType.BINARY); 5720 if ("BodySite".equals(codeString)) 5721 return new Enumeration<ResourceType>(this, ResourceType.BODYSITE); 5722 if ("Bundle".equals(codeString)) 5723 return new Enumeration<ResourceType>(this, ResourceType.BUNDLE); 5724 if ("CarePlan".equals(codeString)) 5725 return new Enumeration<ResourceType>(this, ResourceType.CAREPLAN); 5726 if ("Claim".equals(codeString)) 5727 return new Enumeration<ResourceType>(this, ResourceType.CLAIM); 5728 if ("ClaimResponse".equals(codeString)) 5729 return new Enumeration<ResourceType>(this, ResourceType.CLAIMRESPONSE); 5730 if ("ClinicalImpression".equals(codeString)) 5731 return new Enumeration<ResourceType>(this, ResourceType.CLINICALIMPRESSION); 5732 if ("Communication".equals(codeString)) 5733 return new Enumeration<ResourceType>(this, ResourceType.COMMUNICATION); 5734 if ("CommunicationRequest".equals(codeString)) 5735 return new Enumeration<ResourceType>(this, ResourceType.COMMUNICATIONREQUEST); 5736 if ("Composition".equals(codeString)) 5737 return new Enumeration<ResourceType>(this, ResourceType.COMPOSITION); 5738 if ("ConceptMap".equals(codeString)) 5739 return new Enumeration<ResourceType>(this, ResourceType.CONCEPTMAP); 5740 if ("Condition".equals(codeString)) 5741 return new Enumeration<ResourceType>(this, ResourceType.CONDITION); 5742 if ("Conformance".equals(codeString)) 5743 return new Enumeration<ResourceType>(this, ResourceType.CONFORMANCE); 5744 if ("Contract".equals(codeString)) 5745 return new Enumeration<ResourceType>(this, ResourceType.CONTRACT); 5746 if ("Coverage".equals(codeString)) 5747 return new Enumeration<ResourceType>(this, ResourceType.COVERAGE); 5748 if ("DataElement".equals(codeString)) 5749 return new Enumeration<ResourceType>(this, ResourceType.DATAELEMENT); 5750 if ("DetectedIssue".equals(codeString)) 5751 return new Enumeration<ResourceType>(this, ResourceType.DETECTEDISSUE); 5752 if ("Device".equals(codeString)) 5753 return new Enumeration<ResourceType>(this, ResourceType.DEVICE); 5754 if ("DeviceComponent".equals(codeString)) 5755 return new Enumeration<ResourceType>(this, ResourceType.DEVICECOMPONENT); 5756 if ("DeviceMetric".equals(codeString)) 5757 return new Enumeration<ResourceType>(this, ResourceType.DEVICEMETRIC); 5758 if ("DeviceUseRequest".equals(codeString)) 5759 return new Enumeration<ResourceType>(this, ResourceType.DEVICEUSEREQUEST); 5760 if ("DeviceUseStatement".equals(codeString)) 5761 return new Enumeration<ResourceType>(this, ResourceType.DEVICEUSESTATEMENT); 5762 if ("DiagnosticOrder".equals(codeString)) 5763 return new Enumeration<ResourceType>(this, ResourceType.DIAGNOSTICORDER); 5764 if ("DiagnosticReport".equals(codeString)) 5765 return new Enumeration<ResourceType>(this, ResourceType.DIAGNOSTICREPORT); 5766 if ("DocumentManifest".equals(codeString)) 5767 return new Enumeration<ResourceType>(this, ResourceType.DOCUMENTMANIFEST); 5768 if ("DocumentReference".equals(codeString)) 5769 return new Enumeration<ResourceType>(this, ResourceType.DOCUMENTREFERENCE); 5770 if ("DomainResource".equals(codeString)) 5771 return new Enumeration<ResourceType>(this, ResourceType.DOMAINRESOURCE); 5772 if ("EligibilityRequest".equals(codeString)) 5773 return new Enumeration<ResourceType>(this, ResourceType.ELIGIBILITYREQUEST); 5774 if ("EligibilityResponse".equals(codeString)) 5775 return new Enumeration<ResourceType>(this, ResourceType.ELIGIBILITYRESPONSE); 5776 if ("Encounter".equals(codeString)) 5777 return new Enumeration<ResourceType>(this, ResourceType.ENCOUNTER); 5778 if ("EnrollmentRequest".equals(codeString)) 5779 return new Enumeration<ResourceType>(this, ResourceType.ENROLLMENTREQUEST); 5780 if ("EnrollmentResponse".equals(codeString)) 5781 return new Enumeration<ResourceType>(this, ResourceType.ENROLLMENTRESPONSE); 5782 if ("EpisodeOfCare".equals(codeString)) 5783 return new Enumeration<ResourceType>(this, ResourceType.EPISODEOFCARE); 5784 if ("ExplanationOfBenefit".equals(codeString)) 5785 return new Enumeration<ResourceType>(this, ResourceType.EXPLANATIONOFBENEFIT); 5786 if ("FamilyMemberHistory".equals(codeString)) 5787 return new Enumeration<ResourceType>(this, ResourceType.FAMILYMEMBERHISTORY); 5788 if ("Flag".equals(codeString)) 5789 return new Enumeration<ResourceType>(this, ResourceType.FLAG); 5790 if ("Goal".equals(codeString)) 5791 return new Enumeration<ResourceType>(this, ResourceType.GOAL); 5792 if ("Group".equals(codeString)) 5793 return new Enumeration<ResourceType>(this, ResourceType.GROUP); 5794 if ("HealthcareService".equals(codeString)) 5795 return new Enumeration<ResourceType>(this, ResourceType.HEALTHCARESERVICE); 5796 if ("ImagingObjectSelection".equals(codeString)) 5797 return new Enumeration<ResourceType>(this, ResourceType.IMAGINGOBJECTSELECTION); 5798 if ("ImagingStudy".equals(codeString)) 5799 return new Enumeration<ResourceType>(this, ResourceType.IMAGINGSTUDY); 5800 if ("Immunization".equals(codeString)) 5801 return new Enumeration<ResourceType>(this, ResourceType.IMMUNIZATION); 5802 if ("ImmunizationRecommendation".equals(codeString)) 5803 return new Enumeration<ResourceType>(this, ResourceType.IMMUNIZATIONRECOMMENDATION); 5804 if ("ImplementationGuide".equals(codeString)) 5805 return new Enumeration<ResourceType>(this, ResourceType.IMPLEMENTATIONGUIDE); 5806 if ("List".equals(codeString)) 5807 return new Enumeration<ResourceType>(this, ResourceType.LIST); 5808 if ("Location".equals(codeString)) 5809 return new Enumeration<ResourceType>(this, ResourceType.LOCATION); 5810 if ("Media".equals(codeString)) 5811 return new Enumeration<ResourceType>(this, ResourceType.MEDIA); 5812 if ("Medication".equals(codeString)) 5813 return new Enumeration<ResourceType>(this, ResourceType.MEDICATION); 5814 if ("MedicationAdministration".equals(codeString)) 5815 return new Enumeration<ResourceType>(this, ResourceType.MEDICATIONADMINISTRATION); 5816 if ("MedicationDispense".equals(codeString)) 5817 return new Enumeration<ResourceType>(this, ResourceType.MEDICATIONDISPENSE); 5818 if ("MedicationOrder".equals(codeString)) 5819 return new Enumeration<ResourceType>(this, ResourceType.MEDICATIONORDER); 5820 if ("MedicationStatement".equals(codeString)) 5821 return new Enumeration<ResourceType>(this, ResourceType.MEDICATIONSTATEMENT); 5822 if ("MessageHeader".equals(codeString)) 5823 return new Enumeration<ResourceType>(this, ResourceType.MESSAGEHEADER); 5824 if ("NamingSystem".equals(codeString)) 5825 return new Enumeration<ResourceType>(this, ResourceType.NAMINGSYSTEM); 5826 if ("NutritionOrder".equals(codeString)) 5827 return new Enumeration<ResourceType>(this, ResourceType.NUTRITIONORDER); 5828 if ("Observation".equals(codeString)) 5829 return new Enumeration<ResourceType>(this, ResourceType.OBSERVATION); 5830 if ("OperationDefinition".equals(codeString)) 5831 return new Enumeration<ResourceType>(this, ResourceType.OPERATIONDEFINITION); 5832 if ("OperationOutcome".equals(codeString)) 5833 return new Enumeration<ResourceType>(this, ResourceType.OPERATIONOUTCOME); 5834 if ("Order".equals(codeString)) 5835 return new Enumeration<ResourceType>(this, ResourceType.ORDER); 5836 if ("OrderResponse".equals(codeString)) 5837 return new Enumeration<ResourceType>(this, ResourceType.ORDERRESPONSE); 5838 if ("Organization".equals(codeString)) 5839 return new Enumeration<ResourceType>(this, ResourceType.ORGANIZATION); 5840 if ("Parameters".equals(codeString)) 5841 return new Enumeration<ResourceType>(this, ResourceType.PARAMETERS); 5842 if ("Patient".equals(codeString)) 5843 return new Enumeration<ResourceType>(this, ResourceType.PATIENT); 5844 if ("PaymentNotice".equals(codeString)) 5845 return new Enumeration<ResourceType>(this, ResourceType.PAYMENTNOTICE); 5846 if ("PaymentReconciliation".equals(codeString)) 5847 return new Enumeration<ResourceType>(this, ResourceType.PAYMENTRECONCILIATION); 5848 if ("Person".equals(codeString)) 5849 return new Enumeration<ResourceType>(this, ResourceType.PERSON); 5850 if ("Practitioner".equals(codeString)) 5851 return new Enumeration<ResourceType>(this, ResourceType.PRACTITIONER); 5852 if ("Procedure".equals(codeString)) 5853 return new Enumeration<ResourceType>(this, ResourceType.PROCEDURE); 5854 if ("ProcedureRequest".equals(codeString)) 5855 return new Enumeration<ResourceType>(this, ResourceType.PROCEDUREREQUEST); 5856 if ("ProcessRequest".equals(codeString)) 5857 return new Enumeration<ResourceType>(this, ResourceType.PROCESSREQUEST); 5858 if ("ProcessResponse".equals(codeString)) 5859 return new Enumeration<ResourceType>(this, ResourceType.PROCESSRESPONSE); 5860 if ("Provenance".equals(codeString)) 5861 return new Enumeration<ResourceType>(this, ResourceType.PROVENANCE); 5862 if ("Questionnaire".equals(codeString)) 5863 return new Enumeration<ResourceType>(this, ResourceType.QUESTIONNAIRE); 5864 if ("QuestionnaireResponse".equals(codeString)) 5865 return new Enumeration<ResourceType>(this, ResourceType.QUESTIONNAIRERESPONSE); 5866 if ("ReferralRequest".equals(codeString)) 5867 return new Enumeration<ResourceType>(this, ResourceType.REFERRALREQUEST); 5868 if ("RelatedPerson".equals(codeString)) 5869 return new Enumeration<ResourceType>(this, ResourceType.RELATEDPERSON); 5870 if ("Resource".equals(codeString)) 5871 return new Enumeration<ResourceType>(this, ResourceType.RESOURCE); 5872 if ("RiskAssessment".equals(codeString)) 5873 return new Enumeration<ResourceType>(this, ResourceType.RISKASSESSMENT); 5874 if ("Schedule".equals(codeString)) 5875 return new Enumeration<ResourceType>(this, ResourceType.SCHEDULE); 5876 if ("SearchParameter".equals(codeString)) 5877 return new Enumeration<ResourceType>(this, ResourceType.SEARCHPARAMETER); 5878 if ("Slot".equals(codeString)) 5879 return new Enumeration<ResourceType>(this, ResourceType.SLOT); 5880 if ("Specimen".equals(codeString)) 5881 return new Enumeration<ResourceType>(this, ResourceType.SPECIMEN); 5882 if ("StructureDefinition".equals(codeString)) 5883 return new Enumeration<ResourceType>(this, ResourceType.STRUCTUREDEFINITION); 5884 if ("Subscription".equals(codeString)) 5885 return new Enumeration<ResourceType>(this, ResourceType.SUBSCRIPTION); 5886 if ("Substance".equals(codeString)) 5887 return new Enumeration<ResourceType>(this, ResourceType.SUBSTANCE); 5888 if ("SupplyDelivery".equals(codeString)) 5889 return new Enumeration<ResourceType>(this, ResourceType.SUPPLYDELIVERY); 5890 if ("SupplyRequest".equals(codeString)) 5891 return new Enumeration<ResourceType>(this, ResourceType.SUPPLYREQUEST); 5892 if ("TestScript".equals(codeString)) 5893 return new Enumeration<ResourceType>(this, ResourceType.TESTSCRIPT); 5894 if ("ValueSet".equals(codeString)) 5895 return new Enumeration<ResourceType>(this, ResourceType.VALUESET); 5896 if ("VisionPrescription".equals(codeString)) 5897 return new Enumeration<ResourceType>(this, ResourceType.VISIONPRESCRIPTION); 5898 throw new FHIRException("Unknown ResourceType code '"+codeString+"'"); 5899 } 5900 public String toCode(ResourceType code) { 5901 if (code == ResourceType.ACCOUNT) 5902 return "Account"; 5903 if (code == ResourceType.ALLERGYINTOLERANCE) 5904 return "AllergyIntolerance"; 5905 if (code == ResourceType.APPOINTMENT) 5906 return "Appointment"; 5907 if (code == ResourceType.APPOINTMENTRESPONSE) 5908 return "AppointmentResponse"; 5909 if (code == ResourceType.AUDITEVENT) 5910 return "AuditEvent"; 5911 if (code == ResourceType.BASIC) 5912 return "Basic"; 5913 if (code == ResourceType.BINARY) 5914 return "Binary"; 5915 if (code == ResourceType.BODYSITE) 5916 return "BodySite"; 5917 if (code == ResourceType.BUNDLE) 5918 return "Bundle"; 5919 if (code == ResourceType.CAREPLAN) 5920 return "CarePlan"; 5921 if (code == ResourceType.CLAIM) 5922 return "Claim"; 5923 if (code == ResourceType.CLAIMRESPONSE) 5924 return "ClaimResponse"; 5925 if (code == ResourceType.CLINICALIMPRESSION) 5926 return "ClinicalImpression"; 5927 if (code == ResourceType.COMMUNICATION) 5928 return "Communication"; 5929 if (code == ResourceType.COMMUNICATIONREQUEST) 5930 return "CommunicationRequest"; 5931 if (code == ResourceType.COMPOSITION) 5932 return "Composition"; 5933 if (code == ResourceType.CONCEPTMAP) 5934 return "ConceptMap"; 5935 if (code == ResourceType.CONDITION) 5936 return "Condition"; 5937 if (code == ResourceType.CONFORMANCE) 5938 return "Conformance"; 5939 if (code == ResourceType.CONTRACT) 5940 return "Contract"; 5941 if (code == ResourceType.COVERAGE) 5942 return "Coverage"; 5943 if (code == ResourceType.DATAELEMENT) 5944 return "DataElement"; 5945 if (code == ResourceType.DETECTEDISSUE) 5946 return "DetectedIssue"; 5947 if (code == ResourceType.DEVICE) 5948 return "Device"; 5949 if (code == ResourceType.DEVICECOMPONENT) 5950 return "DeviceComponent"; 5951 if (code == ResourceType.DEVICEMETRIC) 5952 return "DeviceMetric"; 5953 if (code == ResourceType.DEVICEUSEREQUEST) 5954 return "DeviceUseRequest"; 5955 if (code == ResourceType.DEVICEUSESTATEMENT) 5956 return "DeviceUseStatement"; 5957 if (code == ResourceType.DIAGNOSTICORDER) 5958 return "DiagnosticOrder"; 5959 if (code == ResourceType.DIAGNOSTICREPORT) 5960 return "DiagnosticReport"; 5961 if (code == ResourceType.DOCUMENTMANIFEST) 5962 return "DocumentManifest"; 5963 if (code == ResourceType.DOCUMENTREFERENCE) 5964 return "DocumentReference"; 5965 if (code == ResourceType.DOMAINRESOURCE) 5966 return "DomainResource"; 5967 if (code == ResourceType.ELIGIBILITYREQUEST) 5968 return "EligibilityRequest"; 5969 if (code == ResourceType.ELIGIBILITYRESPONSE) 5970 return "EligibilityResponse"; 5971 if (code == ResourceType.ENCOUNTER) 5972 return "Encounter"; 5973 if (code == ResourceType.ENROLLMENTREQUEST) 5974 return "EnrollmentRequest"; 5975 if (code == ResourceType.ENROLLMENTRESPONSE) 5976 return "EnrollmentResponse"; 5977 if (code == ResourceType.EPISODEOFCARE) 5978 return "EpisodeOfCare"; 5979 if (code == ResourceType.EXPLANATIONOFBENEFIT) 5980 return "ExplanationOfBenefit"; 5981 if (code == ResourceType.FAMILYMEMBERHISTORY) 5982 return "FamilyMemberHistory"; 5983 if (code == ResourceType.FLAG) 5984 return "Flag"; 5985 if (code == ResourceType.GOAL) 5986 return "Goal"; 5987 if (code == ResourceType.GROUP) 5988 return "Group"; 5989 if (code == ResourceType.HEALTHCARESERVICE) 5990 return "HealthcareService"; 5991 if (code == ResourceType.IMAGINGOBJECTSELECTION) 5992 return "ImagingObjectSelection"; 5993 if (code == ResourceType.IMAGINGSTUDY) 5994 return "ImagingStudy"; 5995 if (code == ResourceType.IMMUNIZATION) 5996 return "Immunization"; 5997 if (code == ResourceType.IMMUNIZATIONRECOMMENDATION) 5998 return "ImmunizationRecommendation"; 5999 if (code == ResourceType.IMPLEMENTATIONGUIDE) 6000 return "ImplementationGuide"; 6001 if (code == ResourceType.LIST) 6002 return "List"; 6003 if (code == ResourceType.LOCATION) 6004 return "Location"; 6005 if (code == ResourceType.MEDIA) 6006 return "Media"; 6007 if (code == ResourceType.MEDICATION) 6008 return "Medication"; 6009 if (code == ResourceType.MEDICATIONADMINISTRATION) 6010 return "MedicationAdministration"; 6011 if (code == ResourceType.MEDICATIONDISPENSE) 6012 return "MedicationDispense"; 6013 if (code == ResourceType.MEDICATIONORDER) 6014 return "MedicationOrder"; 6015 if (code == ResourceType.MEDICATIONSTATEMENT) 6016 return "MedicationStatement"; 6017 if (code == ResourceType.MESSAGEHEADER) 6018 return "MessageHeader"; 6019 if (code == ResourceType.NAMINGSYSTEM) 6020 return "NamingSystem"; 6021 if (code == ResourceType.NUTRITIONORDER) 6022 return "NutritionOrder"; 6023 if (code == ResourceType.OBSERVATION) 6024 return "Observation"; 6025 if (code == ResourceType.OPERATIONDEFINITION) 6026 return "OperationDefinition"; 6027 if (code == ResourceType.OPERATIONOUTCOME) 6028 return "OperationOutcome"; 6029 if (code == ResourceType.ORDER) 6030 return "Order"; 6031 if (code == ResourceType.ORDERRESPONSE) 6032 return "OrderResponse"; 6033 if (code == ResourceType.ORGANIZATION) 6034 return "Organization"; 6035 if (code == ResourceType.PARAMETERS) 6036 return "Parameters"; 6037 if (code == ResourceType.PATIENT) 6038 return "Patient"; 6039 if (code == ResourceType.PAYMENTNOTICE) 6040 return "PaymentNotice"; 6041 if (code == ResourceType.PAYMENTRECONCILIATION) 6042 return "PaymentReconciliation"; 6043 if (code == ResourceType.PERSON) 6044 return "Person"; 6045 if (code == ResourceType.PRACTITIONER) 6046 return "Practitioner"; 6047 if (code == ResourceType.PROCEDURE) 6048 return "Procedure"; 6049 if (code == ResourceType.PROCEDUREREQUEST) 6050 return "ProcedureRequest"; 6051 if (code == ResourceType.PROCESSREQUEST) 6052 return "ProcessRequest"; 6053 if (code == ResourceType.PROCESSRESPONSE) 6054 return "ProcessResponse"; 6055 if (code == ResourceType.PROVENANCE) 6056 return "Provenance"; 6057 if (code == ResourceType.QUESTIONNAIRE) 6058 return "Questionnaire"; 6059 if (code == ResourceType.QUESTIONNAIRERESPONSE) 6060 return "QuestionnaireResponse"; 6061 if (code == ResourceType.REFERRALREQUEST) 6062 return "ReferralRequest"; 6063 if (code == ResourceType.RELATEDPERSON) 6064 return "RelatedPerson"; 6065 if (code == ResourceType.RESOURCE) 6066 return "Resource"; 6067 if (code == ResourceType.RISKASSESSMENT) 6068 return "RiskAssessment"; 6069 if (code == ResourceType.SCHEDULE) 6070 return "Schedule"; 6071 if (code == ResourceType.SEARCHPARAMETER) 6072 return "SearchParameter"; 6073 if (code == ResourceType.SLOT) 6074 return "Slot"; 6075 if (code == ResourceType.SPECIMEN) 6076 return "Specimen"; 6077 if (code == ResourceType.STRUCTUREDEFINITION) 6078 return "StructureDefinition"; 6079 if (code == ResourceType.SUBSCRIPTION) 6080 return "Subscription"; 6081 if (code == ResourceType.SUBSTANCE) 6082 return "Substance"; 6083 if (code == ResourceType.SUPPLYDELIVERY) 6084 return "SupplyDelivery"; 6085 if (code == ResourceType.SUPPLYREQUEST) 6086 return "SupplyRequest"; 6087 if (code == ResourceType.TESTSCRIPT) 6088 return "TestScript"; 6089 if (code == ResourceType.VALUESET) 6090 return "ValueSet"; 6091 if (code == ResourceType.VISIONPRESCRIPTION) 6092 return "VisionPrescription"; 6093 return "?"; 6094 } 6095 } 6096 6097 public enum SearchParamType { 6098 /** 6099 * Search parameter SHALL be a number (a whole number, or a decimal). 6100 */ 6101 NUMBER, 6102 /** 6103 * Search parameter is on a date/time. The date format is the standard XML format, though other formats may be supported. 6104 */ 6105 DATE, 6106 /** 6107 * Search parameter is a simple string, like a name part. Search is case-insensitive and accent-insensitive. May match just the start of a string. String parameters may contain spaces. 6108 */ 6109 STRING, 6110 /** 6111 * Search parameter on a coded element or identifier. May be used to search through the text, displayname, code and code/codesystem (for codes) and label, system and key (for identifier). Its value is either a string or a pair of namespace and value, separated by a "|", depending on the modifier used. 6112 */ 6113 TOKEN, 6114 /** 6115 * A reference to another resource. 6116 */ 6117 REFERENCE, 6118 /** 6119 * A composite search parameter that combines a search on two values together. 6120 */ 6121 COMPOSITE, 6122 /** 6123 * A search parameter that searches on a quantity. 6124 */ 6125 QUANTITY, 6126 /** 6127 * A search parameter that searches on a URI (RFC 3986). 6128 */ 6129 URI, 6130 /** 6131 * added to help the parsers 6132 */ 6133 NULL; 6134 public static SearchParamType fromCode(String codeString) throws FHIRException { 6135 if (codeString == null || "".equals(codeString)) 6136 return null; 6137 if ("number".equals(codeString)) 6138 return NUMBER; 6139 if ("date".equals(codeString)) 6140 return DATE; 6141 if ("string".equals(codeString)) 6142 return STRING; 6143 if ("token".equals(codeString)) 6144 return TOKEN; 6145 if ("reference".equals(codeString)) 6146 return REFERENCE; 6147 if ("composite".equals(codeString)) 6148 return COMPOSITE; 6149 if ("quantity".equals(codeString)) 6150 return QUANTITY; 6151 if ("uri".equals(codeString)) 6152 return URI; 6153 throw new FHIRException("Unknown SearchParamType code '"+codeString+"'"); 6154 } 6155 public String toCode() { 6156 switch (this) { 6157 case NUMBER: return "number"; 6158 case DATE: return "date"; 6159 case STRING: return "string"; 6160 case TOKEN: return "token"; 6161 case REFERENCE: return "reference"; 6162 case COMPOSITE: return "composite"; 6163 case QUANTITY: return "quantity"; 6164 case URI: return "uri"; 6165 default: return "?"; 6166 } 6167 } 6168 public String getSystem() { 6169 switch (this) { 6170 case NUMBER: return "http://hl7.org/fhir/search-param-type"; 6171 case DATE: return "http://hl7.org/fhir/search-param-type"; 6172 case STRING: return "http://hl7.org/fhir/search-param-type"; 6173 case TOKEN: return "http://hl7.org/fhir/search-param-type"; 6174 case REFERENCE: return "http://hl7.org/fhir/search-param-type"; 6175 case COMPOSITE: return "http://hl7.org/fhir/search-param-type"; 6176 case QUANTITY: return "http://hl7.org/fhir/search-param-type"; 6177 case URI: return "http://hl7.org/fhir/search-param-type"; 6178 default: return "?"; 6179 } 6180 } 6181 public String getDefinition() { 6182 switch (this) { 6183 case NUMBER: return "Search parameter SHALL be a number (a whole number, or a decimal)."; 6184 case DATE: return "Search parameter is on a date/time. The date format is the standard XML format, though other formats may be supported."; 6185 case STRING: return "Search parameter is a simple string, like a name part. Search is case-insensitive and accent-insensitive. May match just the start of a string. String parameters may contain spaces."; 6186 case TOKEN: return "Search parameter on a coded element or identifier. May be used to search through the text, displayname, code and code/codesystem (for codes) and label, system and key (for identifier). Its value is either a string or a pair of namespace and value, separated by a \"|\", depending on the modifier used."; 6187 case REFERENCE: return "A reference to another resource."; 6188 case COMPOSITE: return "A composite search parameter that combines a search on two values together."; 6189 case QUANTITY: return "A search parameter that searches on a quantity."; 6190 case URI: return "A search parameter that searches on a URI (RFC 3986)."; 6191 default: return "?"; 6192 } 6193 } 6194 public String getDisplay() { 6195 switch (this) { 6196 case NUMBER: return "Number"; 6197 case DATE: return "Date/DateTime"; 6198 case STRING: return "String"; 6199 case TOKEN: return "Token"; 6200 case REFERENCE: return "Reference"; 6201 case COMPOSITE: return "Composite"; 6202 case QUANTITY: return "Quantity"; 6203 case URI: return "URI"; 6204 default: return "?"; 6205 } 6206 } 6207 } 6208 6209 public static class SearchParamTypeEnumFactory implements EnumFactory<SearchParamType> { 6210 public SearchParamType fromCode(String codeString) throws IllegalArgumentException { 6211 if (codeString == null || "".equals(codeString)) 6212 if (codeString == null || "".equals(codeString)) 6213 return null; 6214 if ("number".equals(codeString)) 6215 return SearchParamType.NUMBER; 6216 if ("date".equals(codeString)) 6217 return SearchParamType.DATE; 6218 if ("string".equals(codeString)) 6219 return SearchParamType.STRING; 6220 if ("token".equals(codeString)) 6221 return SearchParamType.TOKEN; 6222 if ("reference".equals(codeString)) 6223 return SearchParamType.REFERENCE; 6224 if ("composite".equals(codeString)) 6225 return SearchParamType.COMPOSITE; 6226 if ("quantity".equals(codeString)) 6227 return SearchParamType.QUANTITY; 6228 if ("uri".equals(codeString)) 6229 return SearchParamType.URI; 6230 throw new IllegalArgumentException("Unknown SearchParamType code '"+codeString+"'"); 6231 } 6232 public Enumeration<SearchParamType> fromType(Base code) throws FHIRException { 6233 if (code == null || code.isEmpty()) 6234 return null; 6235 String codeString = ((PrimitiveType) code).asStringValue(); 6236 if (codeString == null || "".equals(codeString)) 6237 return null; 6238 if ("number".equals(codeString)) 6239 return new Enumeration<SearchParamType>(this, SearchParamType.NUMBER); 6240 if ("date".equals(codeString)) 6241 return new Enumeration<SearchParamType>(this, SearchParamType.DATE); 6242 if ("string".equals(codeString)) 6243 return new Enumeration<SearchParamType>(this, SearchParamType.STRING); 6244 if ("token".equals(codeString)) 6245 return new Enumeration<SearchParamType>(this, SearchParamType.TOKEN); 6246 if ("reference".equals(codeString)) 6247 return new Enumeration<SearchParamType>(this, SearchParamType.REFERENCE); 6248 if ("composite".equals(codeString)) 6249 return new Enumeration<SearchParamType>(this, SearchParamType.COMPOSITE); 6250 if ("quantity".equals(codeString)) 6251 return new Enumeration<SearchParamType>(this, SearchParamType.QUANTITY); 6252 if ("uri".equals(codeString)) 6253 return new Enumeration<SearchParamType>(this, SearchParamType.URI); 6254 throw new FHIRException("Unknown SearchParamType code '"+codeString+"'"); 6255 } 6256 public String toCode(SearchParamType code) { 6257 if (code == SearchParamType.NUMBER) 6258 return "number"; 6259 if (code == SearchParamType.DATE) 6260 return "date"; 6261 if (code == SearchParamType.STRING) 6262 return "string"; 6263 if (code == SearchParamType.TOKEN) 6264 return "token"; 6265 if (code == SearchParamType.REFERENCE) 6266 return "reference"; 6267 if (code == SearchParamType.COMPOSITE) 6268 return "composite"; 6269 if (code == SearchParamType.QUANTITY) 6270 return "quantity"; 6271 if (code == SearchParamType.URI) 6272 return "uri"; 6273 return "?"; 6274 } 6275 } 6276 6277 public enum SpecialValues { 6278 /** 6279 * Boolean true. 6280 */ 6281 TRUE, 6282 /** 6283 * Boolean false. 6284 */ 6285 FALSE, 6286 /** 6287 * The content is greater than zero, but too small to be quantified. 6288 */ 6289 TRACE, 6290 /** 6291 * The specific quantity is not known, but is known to be non-zero and is not specified because it makes up the bulk of the material. 6292 */ 6293 SUFFICIENT, 6294 /** 6295 * The value is no longer available. 6296 */ 6297 WITHDRAWN, 6298 /** 6299 * The are no known applicable values in this context. 6300 */ 6301 NILKNOWN, 6302 /** 6303 * added to help the parsers 6304 */ 6305 NULL; 6306 public static SpecialValues fromCode(String codeString) throws FHIRException { 6307 if (codeString == null || "".equals(codeString)) 6308 return null; 6309 if ("true".equals(codeString)) 6310 return TRUE; 6311 if ("false".equals(codeString)) 6312 return FALSE; 6313 if ("trace".equals(codeString)) 6314 return TRACE; 6315 if ("sufficient".equals(codeString)) 6316 return SUFFICIENT; 6317 if ("withdrawn".equals(codeString)) 6318 return WITHDRAWN; 6319 if ("nil-known".equals(codeString)) 6320 return NILKNOWN; 6321 throw new FHIRException("Unknown SpecialValues code '"+codeString+"'"); 6322 } 6323 public String toCode() { 6324 switch (this) { 6325 case TRUE: return "true"; 6326 case FALSE: return "false"; 6327 case TRACE: return "trace"; 6328 case SUFFICIENT: return "sufficient"; 6329 case WITHDRAWN: return "withdrawn"; 6330 case NILKNOWN: return "nil-known"; 6331 default: return "?"; 6332 } 6333 } 6334 public String getSystem() { 6335 switch (this) { 6336 case TRUE: return "http://hl7.org/fhir/special-values"; 6337 case FALSE: return "http://hl7.org/fhir/special-values"; 6338 case TRACE: return "http://hl7.org/fhir/special-values"; 6339 case SUFFICIENT: return "http://hl7.org/fhir/special-values"; 6340 case WITHDRAWN: return "http://hl7.org/fhir/special-values"; 6341 case NILKNOWN: return "http://hl7.org/fhir/special-values"; 6342 default: return "?"; 6343 } 6344 } 6345 public String getDefinition() { 6346 switch (this) { 6347 case TRUE: return "Boolean true."; 6348 case FALSE: return "Boolean false."; 6349 case TRACE: return "The content is greater than zero, but too small to be quantified."; 6350 case SUFFICIENT: return "The specific quantity is not known, but is known to be non-zero and is not specified because it makes up the bulk of the material."; 6351 case WITHDRAWN: return "The value is no longer available."; 6352 case NILKNOWN: return "The are no known applicable values in this context."; 6353 default: return "?"; 6354 } 6355 } 6356 public String getDisplay() { 6357 switch (this) { 6358 case TRUE: return "true"; 6359 case FALSE: return "false"; 6360 case TRACE: return "Trace Amount Detected"; 6361 case SUFFICIENT: return "Sufficient Quantity"; 6362 case WITHDRAWN: return "Value Withdrawn"; 6363 case NILKNOWN: return "Nil Known"; 6364 default: return "?"; 6365 } 6366 } 6367 } 6368 6369 public static class SpecialValuesEnumFactory implements EnumFactory<SpecialValues> { 6370 public SpecialValues fromCode(String codeString) throws IllegalArgumentException { 6371 if (codeString == null || "".equals(codeString)) 6372 if (codeString == null || "".equals(codeString)) 6373 return null; 6374 if ("true".equals(codeString)) 6375 return SpecialValues.TRUE; 6376 if ("false".equals(codeString)) 6377 return SpecialValues.FALSE; 6378 if ("trace".equals(codeString)) 6379 return SpecialValues.TRACE; 6380 if ("sufficient".equals(codeString)) 6381 return SpecialValues.SUFFICIENT; 6382 if ("withdrawn".equals(codeString)) 6383 return SpecialValues.WITHDRAWN; 6384 if ("nil-known".equals(codeString)) 6385 return SpecialValues.NILKNOWN; 6386 throw new IllegalArgumentException("Unknown SpecialValues code '"+codeString+"'"); 6387 } 6388 public Enumeration<SpecialValues> fromType(Base code) throws FHIRException { 6389 if (code == null || code.isEmpty()) 6390 return null; 6391 String codeString = ((PrimitiveType) code).asStringValue(); 6392 if (codeString == null || "".equals(codeString)) 6393 return null; 6394 if ("true".equals(codeString)) 6395 return new Enumeration<SpecialValues>(this, SpecialValues.TRUE); 6396 if ("false".equals(codeString)) 6397 return new Enumeration<SpecialValues>(this, SpecialValues.FALSE); 6398 if ("trace".equals(codeString)) 6399 return new Enumeration<SpecialValues>(this, SpecialValues.TRACE); 6400 if ("sufficient".equals(codeString)) 6401 return new Enumeration<SpecialValues>(this, SpecialValues.SUFFICIENT); 6402 if ("withdrawn".equals(codeString)) 6403 return new Enumeration<SpecialValues>(this, SpecialValues.WITHDRAWN); 6404 if ("nil-known".equals(codeString)) 6405 return new Enumeration<SpecialValues>(this, SpecialValues.NILKNOWN); 6406 throw new FHIRException("Unknown SpecialValues code '"+codeString+"'"); 6407 } 6408 public String toCode(SpecialValues code) { 6409 if (code == SpecialValues.TRUE) 6410 return "true"; 6411 if (code == SpecialValues.FALSE) 6412 return "false"; 6413 if (code == SpecialValues.TRACE) 6414 return "trace"; 6415 if (code == SpecialValues.SUFFICIENT) 6416 return "sufficient"; 6417 if (code == SpecialValues.WITHDRAWN) 6418 return "withdrawn"; 6419 if (code == SpecialValues.NILKNOWN) 6420 return "nil-known"; 6421 return "?"; 6422 } 6423 } 6424 6425 6426} 6427