001package org.hl7.fhir.r4.model.codesystems; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Wed, Jan 30, 2019 16:19-0500 for FHIR v4.0.0 033 034import org.hl7.fhir.exceptions.FHIRException; 035 036public enum DataTypes { 037 038 /** 039 * An address expressed using postal conventions (as opposed to GPS or other 040 * location definition formats). This data type may be used to convey addresses 041 * for use in delivering mail as well as for visiting locations which might not 042 * be valid for mail delivery. There are a variety of postal address formats 043 * defined around the world. 044 */ 045 ADDRESS, 046 /** 047 * A duration of time during which an organism (or a process) has existed. 048 */ 049 AGE, 050 /** 051 * A text note which also contains information about who made the statement and 052 * when. 053 */ 054 ANNOTATION, 055 /** 056 * For referring to data content defined in other formats. 057 */ 058 ATTACHMENT, 059 /** 060 * Base definition for all elements that are defined inside a resource - but not 061 * those in a data type. 062 */ 063 BACKBONEELEMENT, 064 /** 065 * A concept that may be defined by a formal reference to a terminology or 066 * ontology or may be provided by text. 067 */ 068 CODEABLECONCEPT, 069 /** 070 * A reference to a code defined by a terminology system. 071 */ 072 CODING, 073 /** 074 * Specifies contact information for a person or organization. 075 */ 076 CONTACTDETAIL, 077 /** 078 * Details for all kinds of technology mediated contact points for a person or 079 * organization, including telephone, email, etc. 080 */ 081 CONTACTPOINT, 082 /** 083 * A contributor to the content of a knowledge asset, including authors, 084 * editors, reviewers, and endorsers. 085 */ 086 CONTRIBUTOR, 087 /** 088 * A measured amount (or an amount that can potentially be measured). Note that 089 * measured amounts include amounts that are not precisely quantified, including 090 * amounts involving arbitrary units and floating currencies. 091 */ 092 COUNT, 093 /** 094 * Describes a required data item for evaluation in terms of the type of data, 095 * and optional code or date-based filters of the data. 096 */ 097 DATAREQUIREMENT, 098 /** 099 * A length - a value with a unit that is a physical distance. 100 */ 101 DISTANCE, 102 /** 103 * Indicates how the medication is/was taken or should be taken by the patient. 104 */ 105 DOSAGE, 106 /** 107 * A length of time. 108 */ 109 DURATION, 110 /** 111 * Base definition for all elements in a resource. 112 */ 113 ELEMENT, 114 /** 115 * Captures constraints on each element within the resource, profile, or 116 * extension. 117 */ 118 ELEMENTDEFINITION, 119 /** 120 * A expression that is evaluated in a specified context and returns a value. 121 * The context of use of the expression must specify the context in which the 122 * expression is evaluated, and how the result of the expression is used. 123 */ 124 EXPRESSION, 125 /** 126 * Optional Extension Element - found in all resources. 127 */ 128 EXTENSION, 129 /** 130 * A human's name with the ability to identify parts and usage. 131 */ 132 HUMANNAME, 133 /** 134 * An identifier - identifies some entity uniquely and unambiguously. Typically 135 * this is used for business identifiers. 136 */ 137 IDENTIFIER, 138 /** 139 * The marketing status describes the date when a medicinal product is actually 140 * put on the market or the date as of which it is no longer available. 141 */ 142 MARKETINGSTATUS, 143 /** 144 * The metadata about a resource. This is content in the resource that is 145 * maintained by the infrastructure. Changes to the content might not always be 146 * associated with version changes to the resource. 147 */ 148 META, 149 /** 150 * An amount of economic utility in some recognized currency. 151 */ 152 MONEY, 153 /** 154 * null 155 */ 156 MONEYQUANTITY, 157 /** 158 * A human-readable summary of the resource conveying the essential clinical and 159 * business information for the resource. 160 */ 161 NARRATIVE, 162 /** 163 * The parameters to the module. This collection specifies both the input and 164 * output parameters. Input parameters are provided by the caller as part of the 165 * $evaluate operation. Output parameters are included in the GuidanceResponse. 166 */ 167 PARAMETERDEFINITION, 168 /** 169 * A time period defined by a start and end date and optionally time. 170 */ 171 PERIOD, 172 /** 173 * A populatioof people with some set of grouping criteria. 174 */ 175 POPULATION, 176 /** 177 * The marketing status describes the date when a medicinal product is actually 178 * put on the market or the date as of which it is no longer available. 179 */ 180 PRODCHARACTERISTIC, 181 /** 182 * The shelf-life and storage information for a medicinal product item or 183 * container can be described using this class. 184 */ 185 PRODUCTSHELFLIFE, 186 /** 187 * A measured amount (or an amount that can potentially be measured). Note that 188 * measured amounts include amounts that are not precisely quantified, including 189 * amounts involving arbitrary units and floating currencies. 190 */ 191 QUANTITY, 192 /** 193 * A set of ordered Quantities defined by a low and high limit. 194 */ 195 RANGE, 196 /** 197 * A relationship of two Quantity values - expressed as a numerator and a 198 * denominator. 199 */ 200 RATIO, 201 /** 202 * A reference from one resource to another. 203 */ 204 REFERENCE, 205 /** 206 * Related artifacts such as additional documentation, justification, or 207 * bibliographic references. 208 */ 209 RELATEDARTIFACT, 210 /** 211 * A series of measurements taken by a device, with upper and lower limits. 212 * There may be more than one dimension in the data. 213 */ 214 SAMPLEDDATA, 215 /** 216 * A signature along with supporting context. The signature may be a digital 217 * signature that is cryptographic in nature, or some other signature acceptable 218 * to the domain. This other signature may be as simple as a graphical image 219 * representing a hand-written signature, or a signature ceremony Different 220 * signature approaches have different utilities. 221 */ 222 SIGNATURE, 223 /** 224 * null 225 */ 226 SIMPLEQUANTITY, 227 /** 228 * Chemical substances are a single substance type whose primary defining 229 * element is the molecular structure. Chemical substances shall be defined on 230 * the basis of their complete covalent molecular structure; the presence of a 231 * salt (counter-ion) and/or solvates (water, alcohols) is also captured. 232 * Purity, grade, physical form or particle size are not taken into account in 233 * the definition of a chemical substance or in the assignment of a Substance 234 * ID. 235 */ 236 SUBSTANCEAMOUNT, 237 /** 238 * Specifies an event that may occur multiple times. Timing schedules are used 239 * to record when things are planned, expected or requested to occur. The most 240 * common usage is in dosage instructions for medications. They are also used 241 * when planning care of various kinds, and may be used for reporting the 242 * schedule to which past regular activities were carried out. 243 */ 244 TIMING, 245 /** 246 * A description of a triggering event. Triggering events can be named events, 247 * data events, or periodic, as determined by the type element. 248 */ 249 TRIGGERDEFINITION, 250 /** 251 * Specifies clinical/business/etc. metadata that can be used to retrieve, index 252 * and/or categorize an artifact. This metadata can either be specific to the 253 * applicable population (e.g., age category, DRG) or the specific context of 254 * care (e.g., venue, care setting, provider of care). 255 */ 256 USAGECONTEXT, 257 /** 258 * A stream of bytes 259 */ 260 BASE64BINARY, 261 /** 262 * Value of "true" or "false" 263 */ 264 BOOLEAN, 265 /** 266 * A URI that is a reference to a canonical URL on a FHIR resource 267 */ 268 CANONICAL, 269 /** 270 * A string which has at least one character and no leading or trailing 271 * whitespace and where there is no whitespace other than single spaces in the 272 * contents 273 */ 274 CODE, 275 /** 276 * A date or partial date (e.g. just year or year + month). There is no time 277 * zone. The format is a union of the schema types gYear, gYearMonth and date. 278 * Dates SHALL be valid dates. 279 */ 280 DATE, 281 /** 282 * A date, date-time or partial date (e.g. just year or year + month). If hours 283 * and minutes are specified, a time zone SHALL be populated. The format is a 284 * union of the schema types gYear, gYearMonth, date and dateTime. Seconds must 285 * be provided due to schema type constraints but may be zero-filled and may be 286 * ignored. Dates SHALL be valid dates. 287 */ 288 DATETIME, 289 /** 290 * A rational number with implicit precision 291 */ 292 DECIMAL, 293 /** 294 * Any combination of letters, numerals, "-" and ".", with a length limit of 64 295 * characters. (This might be an integer, an unprefixed OID, UUID or any other 296 * identifier pattern that meets these constraints.) Ids are case-insensitive. 297 */ 298 ID, 299 /** 300 * An instant in time - known at least to the second 301 */ 302 INSTANT, 303 /** 304 * A whole number 305 */ 306 INTEGER, 307 /** 308 * A string that may contain Github Flavored Markdown syntax for optional 309 * processing by a mark down presentation engine 310 */ 311 MARKDOWN, 312 /** 313 * An OID represented as a URI 314 */ 315 OID, 316 /** 317 * An integer with a value that is positive (e.g. >0) 318 */ 319 POSITIVEINT, 320 /** 321 * A sequence of Unicode characters 322 */ 323 STRING, 324 /** 325 * A time during the day, with no date specified 326 */ 327 TIME, 328 /** 329 * An integer with a value that is not negative (e.g. >= 0) 330 */ 331 UNSIGNEDINT, 332 /** 333 * String of characters used to identify a name or a resource 334 */ 335 URI, 336 /** 337 * A URI that is a literal reference 338 */ 339 URL, 340 /** 341 * A UUID, represented as a URI 342 */ 343 UUID, 344 /** 345 * XHTML format, as defined by W3C, but restricted usage (mainly, no active 346 * content) 347 */ 348 XHTML, 349 /** 350 * added to help the parsers 351 */ 352 NULL; 353 354 public static DataTypes fromCode(String codeString) throws FHIRException { 355 if (codeString == null || "".equals(codeString)) 356 return null; 357 if ("Address".equals(codeString)) 358 return ADDRESS; 359 if ("Age".equals(codeString)) 360 return AGE; 361 if ("Annotation".equals(codeString)) 362 return ANNOTATION; 363 if ("Attachment".equals(codeString)) 364 return ATTACHMENT; 365 if ("BackboneElement".equals(codeString)) 366 return BACKBONEELEMENT; 367 if ("CodeableConcept".equals(codeString)) 368 return CODEABLECONCEPT; 369 if ("Coding".equals(codeString)) 370 return CODING; 371 if ("ContactDetail".equals(codeString)) 372 return CONTACTDETAIL; 373 if ("ContactPoint".equals(codeString)) 374 return CONTACTPOINT; 375 if ("Contributor".equals(codeString)) 376 return CONTRIBUTOR; 377 if ("Count".equals(codeString)) 378 return COUNT; 379 if ("DataRequirement".equals(codeString)) 380 return DATAREQUIREMENT; 381 if ("Distance".equals(codeString)) 382 return DISTANCE; 383 if ("Dosage".equals(codeString)) 384 return DOSAGE; 385 if ("Duration".equals(codeString)) 386 return DURATION; 387 if ("Element".equals(codeString)) 388 return ELEMENT; 389 if ("ElementDefinition".equals(codeString)) 390 return ELEMENTDEFINITION; 391 if ("Expression".equals(codeString)) 392 return EXPRESSION; 393 if ("Extension".equals(codeString)) 394 return EXTENSION; 395 if ("HumanName".equals(codeString)) 396 return HUMANNAME; 397 if ("Identifier".equals(codeString)) 398 return IDENTIFIER; 399 if ("MarketingStatus".equals(codeString)) 400 return MARKETINGSTATUS; 401 if ("Meta".equals(codeString)) 402 return META; 403 if ("Money".equals(codeString)) 404 return MONEY; 405 if ("MoneyQuantity".equals(codeString)) 406 return MONEYQUANTITY; 407 if ("Narrative".equals(codeString)) 408 return NARRATIVE; 409 if ("ParameterDefinition".equals(codeString)) 410 return PARAMETERDEFINITION; 411 if ("Period".equals(codeString)) 412 return PERIOD; 413 if ("Population".equals(codeString)) 414 return POPULATION; 415 if ("ProdCharacteristic".equals(codeString)) 416 return PRODCHARACTERISTIC; 417 if ("ProductShelfLife".equals(codeString)) 418 return PRODUCTSHELFLIFE; 419 if ("Quantity".equals(codeString)) 420 return QUANTITY; 421 if ("Range".equals(codeString)) 422 return RANGE; 423 if ("Ratio".equals(codeString)) 424 return RATIO; 425 if ("Reference".equals(codeString)) 426 return REFERENCE; 427 if ("RelatedArtifact".equals(codeString)) 428 return RELATEDARTIFACT; 429 if ("SampledData".equals(codeString)) 430 return SAMPLEDDATA; 431 if ("Signature".equals(codeString)) 432 return SIGNATURE; 433 if ("SimpleQuantity".equals(codeString)) 434 return SIMPLEQUANTITY; 435 if ("SubstanceAmount".equals(codeString)) 436 return SUBSTANCEAMOUNT; 437 if ("Timing".equals(codeString)) 438 return TIMING; 439 if ("TriggerDefinition".equals(codeString)) 440 return TRIGGERDEFINITION; 441 if ("UsageContext".equals(codeString)) 442 return USAGECONTEXT; 443 if ("base64Binary".equals(codeString)) 444 return BASE64BINARY; 445 if ("boolean".equals(codeString)) 446 return BOOLEAN; 447 if ("canonical".equals(codeString)) 448 return CANONICAL; 449 if ("code".equals(codeString)) 450 return CODE; 451 if ("date".equals(codeString)) 452 return DATE; 453 if ("dateTime".equals(codeString)) 454 return DATETIME; 455 if ("decimal".equals(codeString)) 456 return DECIMAL; 457 if ("id".equals(codeString)) 458 return ID; 459 if ("instant".equals(codeString)) 460 return INSTANT; 461 if ("integer".equals(codeString)) 462 return INTEGER; 463 if ("markdown".equals(codeString)) 464 return MARKDOWN; 465 if ("oid".equals(codeString)) 466 return OID; 467 if ("positiveInt".equals(codeString)) 468 return POSITIVEINT; 469 if ("string".equals(codeString)) 470 return STRING; 471 if ("time".equals(codeString)) 472 return TIME; 473 if ("unsignedInt".equals(codeString)) 474 return UNSIGNEDINT; 475 if ("uri".equals(codeString)) 476 return URI; 477 if ("url".equals(codeString)) 478 return URL; 479 if ("uuid".equals(codeString)) 480 return UUID; 481 if ("xhtml".equals(codeString)) 482 return XHTML; 483 throw new FHIRException("Unknown DataTypes code '" + codeString + "'"); 484 } 485 486 public String toCode() { 487 switch (this) { 488 case ADDRESS: 489 return "Address"; 490 case AGE: 491 return "Age"; 492 case ANNOTATION: 493 return "Annotation"; 494 case ATTACHMENT: 495 return "Attachment"; 496 case BACKBONEELEMENT: 497 return "BackboneElement"; 498 case CODEABLECONCEPT: 499 return "CodeableConcept"; 500 case CODING: 501 return "Coding"; 502 case CONTACTDETAIL: 503 return "ContactDetail"; 504 case CONTACTPOINT: 505 return "ContactPoint"; 506 case CONTRIBUTOR: 507 return "Contributor"; 508 case COUNT: 509 return "Count"; 510 case DATAREQUIREMENT: 511 return "DataRequirement"; 512 case DISTANCE: 513 return "Distance"; 514 case DOSAGE: 515 return "Dosage"; 516 case DURATION: 517 return "Duration"; 518 case ELEMENT: 519 return "Element"; 520 case ELEMENTDEFINITION: 521 return "ElementDefinition"; 522 case EXPRESSION: 523 return "Expression"; 524 case EXTENSION: 525 return "Extension"; 526 case HUMANNAME: 527 return "HumanName"; 528 case IDENTIFIER: 529 return "Identifier"; 530 case MARKETINGSTATUS: 531 return "MarketingStatus"; 532 case META: 533 return "Meta"; 534 case MONEY: 535 return "Money"; 536 case MONEYQUANTITY: 537 return "MoneyQuantity"; 538 case NARRATIVE: 539 return "Narrative"; 540 case PARAMETERDEFINITION: 541 return "ParameterDefinition"; 542 case PERIOD: 543 return "Period"; 544 case POPULATION: 545 return "Population"; 546 case PRODCHARACTERISTIC: 547 return "ProdCharacteristic"; 548 case PRODUCTSHELFLIFE: 549 return "ProductShelfLife"; 550 case QUANTITY: 551 return "Quantity"; 552 case RANGE: 553 return "Range"; 554 case RATIO: 555 return "Ratio"; 556 case REFERENCE: 557 return "Reference"; 558 case RELATEDARTIFACT: 559 return "RelatedArtifact"; 560 case SAMPLEDDATA: 561 return "SampledData"; 562 case SIGNATURE: 563 return "Signature"; 564 case SIMPLEQUANTITY: 565 return "SimpleQuantity"; 566 case SUBSTANCEAMOUNT: 567 return "SubstanceAmount"; 568 case TIMING: 569 return "Timing"; 570 case TRIGGERDEFINITION: 571 return "TriggerDefinition"; 572 case USAGECONTEXT: 573 return "UsageContext"; 574 case BASE64BINARY: 575 return "base64Binary"; 576 case BOOLEAN: 577 return "boolean"; 578 case CANONICAL: 579 return "canonical"; 580 case CODE: 581 return "code"; 582 case DATE: 583 return "date"; 584 case DATETIME: 585 return "dateTime"; 586 case DECIMAL: 587 return "decimal"; 588 case ID: 589 return "id"; 590 case INSTANT: 591 return "instant"; 592 case INTEGER: 593 return "integer"; 594 case MARKDOWN: 595 return "markdown"; 596 case OID: 597 return "oid"; 598 case POSITIVEINT: 599 return "positiveInt"; 600 case STRING: 601 return "string"; 602 case TIME: 603 return "time"; 604 case UNSIGNEDINT: 605 return "unsignedInt"; 606 case URI: 607 return "uri"; 608 case URL: 609 return "url"; 610 case UUID: 611 return "uuid"; 612 case XHTML: 613 return "xhtml"; 614 case NULL: 615 return null; 616 default: 617 return "?"; 618 } 619 } 620 621 public String getSystem() { 622 return "http://hl7.org/fhir/data-types"; 623 } 624 625 public String getDefinition() { 626 switch (this) { 627 case ADDRESS: 628 return "An address expressed using postal conventions (as opposed to GPS or other location definition formats). This data type may be used to convey addresses for use in delivering mail as well as for visiting locations which might not be valid for mail delivery. There are a variety of postal address formats defined around the world."; 629 case AGE: 630 return "A duration of time during which an organism (or a process) has existed."; 631 case ANNOTATION: 632 return "A text note which also contains information about who made the statement and when."; 633 case ATTACHMENT: 634 return "For referring to data content defined in other formats."; 635 case BACKBONEELEMENT: 636 return "Base definition for all elements that are defined inside a resource - but not those in a data type."; 637 case CODEABLECONCEPT: 638 return "A concept that may be defined by a formal reference to a terminology or ontology or may be provided by text."; 639 case CODING: 640 return "A reference to a code defined by a terminology system."; 641 case CONTACTDETAIL: 642 return "Specifies contact information for a person or organization."; 643 case CONTACTPOINT: 644 return "Details for all kinds of technology mediated contact points for a person or organization, including telephone, email, etc."; 645 case CONTRIBUTOR: 646 return "A contributor to the content of a knowledge asset, including authors, editors, reviewers, and endorsers."; 647 case COUNT: 648 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."; 649 case DATAREQUIREMENT: 650 return "Describes a required data item for evaluation in terms of the type of data, and optional code or date-based filters of the data."; 651 case DISTANCE: 652 return "A length - a value with a unit that is a physical distance."; 653 case DOSAGE: 654 return "Indicates how the medication is/was taken or should be taken by the patient."; 655 case DURATION: 656 return "A length of time."; 657 case ELEMENT: 658 return "Base definition for all elements in a resource."; 659 case ELEMENTDEFINITION: 660 return "Captures constraints on each element within the resource, profile, or extension."; 661 case EXPRESSION: 662 return "A expression that is evaluated in a specified context and returns a value. The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used."; 663 case EXTENSION: 664 return "Optional Extension Element - found in all resources."; 665 case HUMANNAME: 666 return "A human's name with the ability to identify parts and usage."; 667 case IDENTIFIER: 668 return "An identifier - identifies some entity uniquely and unambiguously. Typically this is used for business identifiers."; 669 case MARKETINGSTATUS: 670 return "The marketing status describes the date when a medicinal product is actually put on the market or the date as of which it is no longer available."; 671 case META: 672 return "The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource."; 673 case MONEY: 674 return "An amount of economic utility in some recognized currency."; 675 case MONEYQUANTITY: 676 return ""; 677 case NARRATIVE: 678 return "A human-readable summary of the resource conveying the essential clinical and business information for the resource."; 679 case PARAMETERDEFINITION: 680 return "The parameters to the module. This collection specifies both the input and output parameters. Input parameters are provided by the caller as part of the $evaluate operation. Output parameters are included in the GuidanceResponse."; 681 case PERIOD: 682 return "A time period defined by a start and end date and optionally time."; 683 case POPULATION: 684 return "A populatioof people with some set of grouping criteria."; 685 case PRODCHARACTERISTIC: 686 return "The marketing status describes the date when a medicinal product is actually put on the market or the date as of which it is no longer available."; 687 case PRODUCTSHELFLIFE: 688 return "The shelf-life and storage information for a medicinal product item or container can be described using this class."; 689 case QUANTITY: 690 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."; 691 case RANGE: 692 return "A set of ordered Quantities defined by a low and high limit."; 693 case RATIO: 694 return "A relationship of two Quantity values - expressed as a numerator and a denominator."; 695 case REFERENCE: 696 return "A reference from one resource to another."; 697 case RELATEDARTIFACT: 698 return "Related artifacts such as additional documentation, justification, or bibliographic references."; 699 case SAMPLEDDATA: 700 return "A series of measurements taken by a device, with upper and lower limits. There may be more than one dimension in the data."; 701 case SIGNATURE: 702 return "A signature along with supporting context. The signature may be a digital signature that is cryptographic in nature, or some other signature acceptable to the domain. This other signature may be as simple as a graphical image representing a hand-written signature, or a signature ceremony Different signature approaches have different utilities."; 703 case SIMPLEQUANTITY: 704 return ""; 705 case SUBSTANCEAMOUNT: 706 return "Chemical substances are a single substance type whose primary defining element is the molecular structure. Chemical substances shall be defined on the basis of their complete covalent molecular structure; the presence of a salt (counter-ion) and/or solvates (water, alcohols) is also captured. Purity, grade, physical form or particle size are not taken into account in the definition of a chemical substance or in the assignment of a Substance ID."; 707 case TIMING: 708 return "Specifies an event that may occur multiple times. Timing schedules are used to record when things are planned, 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, and may be used for reporting the schedule to which past regular activities were carried out."; 709 case TRIGGERDEFINITION: 710 return "A description of a triggering event. Triggering events can be named events, data events, or periodic, as determined by the type element."; 711 case USAGECONTEXT: 712 return "Specifies clinical/business/etc. metadata that can be used to retrieve, index and/or categorize an artifact. This metadata can either be specific to the applicable population (e.g., age category, DRG) or the specific context of care (e.g., venue, care setting, provider of care)."; 713 case BASE64BINARY: 714 return "A stream of bytes"; 715 case BOOLEAN: 716 return "Value of \"true\" or \"false\""; 717 case CANONICAL: 718 return "A URI that is a reference to a canonical URL on a FHIR resource"; 719 case CODE: 720 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"; 721 case DATE: 722 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."; 723 case DATETIME: 724 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."; 725 case DECIMAL: 726 return "A rational number with implicit precision"; 727 case ID: 728 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."; 729 case INSTANT: 730 return "An instant in time - known at least to the second"; 731 case INTEGER: 732 return "A whole number"; 733 case MARKDOWN: 734 return "A string that may contain Github Flavored Markdown syntax for optional processing by a mark down presentation engine"; 735 case OID: 736 return "An OID represented as a URI"; 737 case POSITIVEINT: 738 return "An integer with a value that is positive (e.g. >0)"; 739 case STRING: 740 return "A sequence of Unicode characters"; 741 case TIME: 742 return "A time during the day, with no date specified"; 743 case UNSIGNEDINT: 744 return "An integer with a value that is not negative (e.g. >= 0)"; 745 case URI: 746 return "String of characters used to identify a name or a resource"; 747 case URL: 748 return "A URI that is a literal reference"; 749 case UUID: 750 return "A UUID, represented as a URI"; 751 case XHTML: 752 return "XHTML format, as defined by W3C, but restricted usage (mainly, no active content)"; 753 case NULL: 754 return null; 755 default: 756 return "?"; 757 } 758 } 759 760 public String getDisplay() { 761 switch (this) { 762 case ADDRESS: 763 return "Address"; 764 case AGE: 765 return "Age"; 766 case ANNOTATION: 767 return "Annotation"; 768 case ATTACHMENT: 769 return "Attachment"; 770 case BACKBONEELEMENT: 771 return "BackboneElement"; 772 case CODEABLECONCEPT: 773 return "CodeableConcept"; 774 case CODING: 775 return "Coding"; 776 case CONTACTDETAIL: 777 return "ContactDetail"; 778 case CONTACTPOINT: 779 return "ContactPoint"; 780 case CONTRIBUTOR: 781 return "Contributor"; 782 case COUNT: 783 return "Count"; 784 case DATAREQUIREMENT: 785 return "DataRequirement"; 786 case DISTANCE: 787 return "Distance"; 788 case DOSAGE: 789 return "Dosage"; 790 case DURATION: 791 return "Duration"; 792 case ELEMENT: 793 return "Element"; 794 case ELEMENTDEFINITION: 795 return "ElementDefinition"; 796 case EXPRESSION: 797 return "Expression"; 798 case EXTENSION: 799 return "Extension"; 800 case HUMANNAME: 801 return "HumanName"; 802 case IDENTIFIER: 803 return "Identifier"; 804 case MARKETINGSTATUS: 805 return "MarketingStatus"; 806 case META: 807 return "Meta"; 808 case MONEY: 809 return "Money"; 810 case MONEYQUANTITY: 811 return "MoneyQuantity"; 812 case NARRATIVE: 813 return "Narrative"; 814 case PARAMETERDEFINITION: 815 return "ParameterDefinition"; 816 case PERIOD: 817 return "Period"; 818 case POPULATION: 819 return "Population"; 820 case PRODCHARACTERISTIC: 821 return "ProdCharacteristic"; 822 case PRODUCTSHELFLIFE: 823 return "ProductShelfLife"; 824 case QUANTITY: 825 return "Quantity"; 826 case RANGE: 827 return "Range"; 828 case RATIO: 829 return "Ratio"; 830 case REFERENCE: 831 return "Reference"; 832 case RELATEDARTIFACT: 833 return "RelatedArtifact"; 834 case SAMPLEDDATA: 835 return "SampledData"; 836 case SIGNATURE: 837 return "Signature"; 838 case SIMPLEQUANTITY: 839 return "SimpleQuantity"; 840 case SUBSTANCEAMOUNT: 841 return "SubstanceAmount"; 842 case TIMING: 843 return "Timing"; 844 case TRIGGERDEFINITION: 845 return "TriggerDefinition"; 846 case USAGECONTEXT: 847 return "UsageContext"; 848 case BASE64BINARY: 849 return "base64Binary"; 850 case BOOLEAN: 851 return "boolean"; 852 case CANONICAL: 853 return "canonical"; 854 case CODE: 855 return "code"; 856 case DATE: 857 return "date"; 858 case DATETIME: 859 return "dateTime"; 860 case DECIMAL: 861 return "decimal"; 862 case ID: 863 return "id"; 864 case INSTANT: 865 return "instant"; 866 case INTEGER: 867 return "integer"; 868 case MARKDOWN: 869 return "markdown"; 870 case OID: 871 return "oid"; 872 case POSITIVEINT: 873 return "positiveInt"; 874 case STRING: 875 return "string"; 876 case TIME: 877 return "time"; 878 case UNSIGNEDINT: 879 return "unsignedInt"; 880 case URI: 881 return "uri"; 882 case URL: 883 return "url"; 884 case UUID: 885 return "uuid"; 886 case XHTML: 887 return "XHTML"; 888 case NULL: 889 return null; 890 default: 891 return "?"; 892 } 893 } 894 895}