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 Thu, Dec 27, 2018 10:06-0500 for FHIR v4.0.0
033
034
035import org.hl7.fhir.exceptions.FHIRException;
036
037public enum ClaimInformationcategory {
038
039        /**
040         * Codes conveying additional situation and condition information.
041         */
042        INFO, 
043        /**
044         * Discharge status and discharge to locations.
045         */
046        DISCHARGE, 
047        /**
048         * Period, start or end dates of aspects of the Condition.
049         */
050        ONSET, 
051        /**
052         * Nature and date of the related event e.g. Last exam, service, X-ray etc.
053         */
054        RELATED, 
055        /**
056         * Insurance policy exceptions.
057         */
058        EXCEPTION, 
059        /**
060         * Materials being forwarded, e.g. Models, molds, images, documents.
061         */
062        MATERIAL, 
063        /**
064         * Materials attached such as images, documents and resources.
065         */
066        ATTACHMENT, 
067        /**
068         * Teeth which are missing for any reason, for example: prior extraction, never developed.
069         */
070        MISSINGTOOTH, 
071        /**
072         * The type of prosthesis and date of supply if a previously supplied prosthesis.
073         */
074        PROSTHESIS, 
075        /**
076         * Other information identified by the type.system.
077         */
078        OTHER, 
079        /**
080         * An indication that the patient was hospitalized, the period if known otherwise a Yes/No (boolean).
081         */
082        HOSPITALIZED, 
083        /**
084         * An indication that the patient was unable to work, the period if known otherwise a Yes/No (boolean).
085         */
086        EMPLOYMENTIMPACTED, 
087        /**
088         * The external cause of an illness or injury.
089         */
090        EXTERNALCAUSE, 
091        /**
092         * The reason for the patient visit.
093         */
094        PATIENTREASONFORVISIT, 
095        /**
096         * added to help the parsers
097         */
098        NULL;
099        public static ClaimInformationcategory fromCode(String codeString) throws FHIRException {
100            if (codeString == null || "".equals(codeString))
101                return null;
102        if ("info".equals(codeString))
103          return INFO;
104        if ("discharge".equals(codeString))
105          return DISCHARGE;
106        if ("onset".equals(codeString))
107          return ONSET;
108        if ("related".equals(codeString))
109          return RELATED;
110        if ("exception".equals(codeString))
111          return EXCEPTION;
112        if ("material".equals(codeString))
113          return MATERIAL;
114        if ("attachment".equals(codeString))
115          return ATTACHMENT;
116        if ("missingtooth".equals(codeString))
117          return MISSINGTOOTH;
118        if ("prosthesis".equals(codeString))
119          return PROSTHESIS;
120        if ("other".equals(codeString))
121          return OTHER;
122        if ("hospitalized".equals(codeString))
123          return HOSPITALIZED;
124        if ("employmentimpacted".equals(codeString))
125          return EMPLOYMENTIMPACTED;
126        if ("externalcause".equals(codeString))
127          return EXTERNALCAUSE;
128        if ("patientreasonforvisit".equals(codeString))
129          return PATIENTREASONFORVISIT;
130        throw new FHIRException("Unknown ClaimInformationcategory code '"+codeString+"'");
131        }
132        public String toCode() {
133          switch (this) {
134            case INFO: return "info";
135            case DISCHARGE: return "discharge";
136            case ONSET: return "onset";
137            case RELATED: return "related";
138            case EXCEPTION: return "exception";
139            case MATERIAL: return "material";
140            case ATTACHMENT: return "attachment";
141            case MISSINGTOOTH: return "missingtooth";
142            case PROSTHESIS: return "prosthesis";
143            case OTHER: return "other";
144            case HOSPITALIZED: return "hospitalized";
145            case EMPLOYMENTIMPACTED: return "employmentimpacted";
146            case EXTERNALCAUSE: return "externalcause";
147            case PATIENTREASONFORVISIT: return "patientreasonforvisit";
148            default: return "?";
149          }
150        }
151        public String getSystem() {
152          return "http://terminology.hl7.org/CodeSystem/claiminformationcategory";
153        }
154        public String getDefinition() {
155          switch (this) {
156            case INFO: return "Codes conveying additional situation and condition information.";
157            case DISCHARGE: return "Discharge status and discharge to locations.";
158            case ONSET: return "Period, start or end dates of aspects of the Condition.";
159            case RELATED: return "Nature and date of the related event e.g. Last exam, service, X-ray etc.";
160            case EXCEPTION: return "Insurance policy exceptions.";
161            case MATERIAL: return "Materials being forwarded, e.g. Models, molds, images, documents.";
162            case ATTACHMENT: return "Materials attached such as images, documents and resources.";
163            case MISSINGTOOTH: return "Teeth which are missing for any reason, for example: prior extraction, never developed.";
164            case PROSTHESIS: return "The type of prosthesis and date of supply if a previously supplied prosthesis.";
165            case OTHER: return "Other information identified by the type.system.";
166            case HOSPITALIZED: return "An indication that the patient was hospitalized, the period if known otherwise a Yes/No (boolean).";
167            case EMPLOYMENTIMPACTED: return "An indication that the patient was unable to work, the period if known otherwise a Yes/No (boolean).";
168            case EXTERNALCAUSE: return "The external cause of an illness or injury.";
169            case PATIENTREASONFORVISIT: return "The reason for the patient visit.";
170            default: return "?";
171          }
172        }
173        public String getDisplay() {
174          switch (this) {
175            case INFO: return "Information";
176            case DISCHARGE: return "Discharge";
177            case ONSET: return "Onset";
178            case RELATED: return "Related Services";
179            case EXCEPTION: return "Exception";
180            case MATERIAL: return "Materials Forwarded";
181            case ATTACHMENT: return "Attachment";
182            case MISSINGTOOTH: return "Missing Tooth";
183            case PROSTHESIS: return "Prosthesis";
184            case OTHER: return "Other";
185            case HOSPITALIZED: return "Hospitalized";
186            case EMPLOYMENTIMPACTED: return "EmploymentImpacted";
187            case EXTERNALCAUSE: return "External Caause";
188            case PATIENTREASONFORVISIT: return "Patient Reason for Visit";
189            default: return "?";
190          }
191    }
192
193
194}
195