001package org.hl7.fhir.r4.model.codesystems; 002 003/*- 004 * #%L 005 * org.hl7.fhir.r4 006 * %% 007 * Copyright (C) 2014 - 2019 Health Level 7 008 * %% 009 * Licensed under the Apache License, Version 2.0 (the "License"); 010 * you may not use this file except in compliance with the License. 011 * You may obtain a copy of the License at 012 * 013 * http://www.apache.org/licenses/LICENSE-2.0 014 * 015 * Unless required by applicable law or agreed to in writing, software 016 * distributed under the License is distributed on an "AS IS" BASIS, 017 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 018 * See the License for the specific language governing permissions and 019 * limitations under the License. 020 * #L% 021 */ 022 023 024/* 025 Copyright (c) 2011+, HL7, Inc. 026 All rights reserved. 027 028 Redistribution and use in source and binary forms, with or without modification, 029 are permitted provided that the following conditions are met: 030 031 * Redistributions of source code must retain the above copyright notice, this 032 list of conditions and the following disclaimer. 033 * Redistributions in binary form must reproduce the above copyright notice, 034 this list of conditions and the following disclaimer in the documentation 035 and/or other materials provided with the distribution. 036 * Neither the name of HL7 nor the names of its contributors may be used to 037 endorse or promote products derived from this software without specific 038 prior written permission. 039 040 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 041 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 042 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 043 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 044 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 045 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 046 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 047 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 048 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 049 POSSIBILITY OF SUCH DAMAGE. 050 051*/ 052 053// Generated on Wed, Jan 30, 2019 16:19-0500 for FHIR v4.0.0 054 055 056import org.hl7.fhir.exceptions.FHIRException; 057 058public enum PermittedDataType { 059 060 /** 061 * A measured amount. 062 */ 063 QUANTITY, 064 /** 065 * A coded concept from a reference terminology and/or text. 066 */ 067 CODEABLECONCEPT, 068 /** 069 * A sequence of Unicode characters. 070 */ 071 STRING, 072 /** 073 * true or false. 074 */ 075 BOOLEAN, 076 /** 077 * A signed integer. 078 */ 079 INTEGER, 080 /** 081 * A set of values bounded by low and high. 082 */ 083 RANGE, 084 /** 085 * A ratio of two Quantity values - a numerator and a denominator. 086 */ 087 RATIO, 088 /** 089 * A series of measurements taken by a device. 090 */ 091 SAMPLEDDATA, 092 /** 093 * A time during the day, in the format hh:mm:ss. 094 */ 095 TIME, 096 /** 097 * A date, date-time or partial date (e.g. just year or year + month) as used in human communication. 098 */ 099 DATETIME, 100 /** 101 * A time range defined by start and end date/time. 102 */ 103 PERIOD, 104 /** 105 * added to help the parsers 106 */ 107 NULL; 108 public static PermittedDataType fromCode(String codeString) throws FHIRException { 109 if (codeString == null || "".equals(codeString)) 110 return null; 111 if ("Quantity".equals(codeString)) 112 return QUANTITY; 113 if ("CodeableConcept".equals(codeString)) 114 return CODEABLECONCEPT; 115 if ("string".equals(codeString)) 116 return STRING; 117 if ("boolean".equals(codeString)) 118 return BOOLEAN; 119 if ("integer".equals(codeString)) 120 return INTEGER; 121 if ("Range".equals(codeString)) 122 return RANGE; 123 if ("Ratio".equals(codeString)) 124 return RATIO; 125 if ("SampledData".equals(codeString)) 126 return SAMPLEDDATA; 127 if ("time".equals(codeString)) 128 return TIME; 129 if ("dateTime".equals(codeString)) 130 return DATETIME; 131 if ("Period".equals(codeString)) 132 return PERIOD; 133 throw new FHIRException("Unknown PermittedDataType code '"+codeString+"'"); 134 } 135 public String toCode() { 136 switch (this) { 137 case QUANTITY: return "Quantity"; 138 case CODEABLECONCEPT: return "CodeableConcept"; 139 case STRING: return "string"; 140 case BOOLEAN: return "boolean"; 141 case INTEGER: return "integer"; 142 case RANGE: return "Range"; 143 case RATIO: return "Ratio"; 144 case SAMPLEDDATA: return "SampledData"; 145 case TIME: return "time"; 146 case DATETIME: return "dateTime"; 147 case PERIOD: return "Period"; 148 default: return "?"; 149 } 150 } 151 public String getSystem() { 152 return "http://hl7.org/fhir/permitted-data-type"; 153 } 154 public String getDefinition() { 155 switch (this) { 156 case QUANTITY: return "A measured amount."; 157 case CODEABLECONCEPT: return "A coded concept from a reference terminology and/or text."; 158 case STRING: return "A sequence of Unicode characters."; 159 case BOOLEAN: return "true or false."; 160 case INTEGER: return "A signed integer."; 161 case RANGE: return "A set of values bounded by low and high."; 162 case RATIO: return "A ratio of two Quantity values - a numerator and a denominator."; 163 case SAMPLEDDATA: return "A series of measurements taken by a device."; 164 case TIME: return "A time during the day, in the format hh:mm:ss."; 165 case DATETIME: return "A date, date-time or partial date (e.g. just year or year + month) as used in human communication."; 166 case PERIOD: return "A time range defined by start and end date/time."; 167 default: return "?"; 168 } 169 } 170 public String getDisplay() { 171 switch (this) { 172 case QUANTITY: return "Quantity"; 173 case CODEABLECONCEPT: return "CodeableConcept"; 174 case STRING: return "string"; 175 case BOOLEAN: return "boolean"; 176 case INTEGER: return "integer"; 177 case RANGE: return "Range"; 178 case RATIO: return "Ratio"; 179 case SAMPLEDDATA: return "SampledData"; 180 case TIME: return "time"; 181 case DATETIME: return "dateTime"; 182 case PERIOD: return "Period"; 183 default: return "?"; 184 } 185 } 186 187 188} 189