001package org.hl7.fhir.r4.model.codesystems;
002
003
004
005
006/*
007  Copyright (c) 2011+, HL7, Inc.
008  All rights reserved.
009  
010  Redistribution and use in source and binary forms, with or without modification, 
011  are permitted provided that the following conditions are met:
012  
013   * Redistributions of source code must retain the above copyright notice, this 
014     list of conditions and the following disclaimer.
015   * Redistributions in binary form must reproduce the above copyright notice, 
016     this list of conditions and the following disclaimer in the documentation 
017     and/or other materials provided with the distribution.
018   * Neither the name of HL7 nor the names of its contributors may be used to 
019     endorse or promote products derived from this software without specific 
020     prior written permission.
021  
022  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
023  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
024  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
025  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
026  INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
027  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
028  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
029  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
030  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
031  POSSIBILITY OF SUCH DAMAGE.
032  
033*/
034
035// Generated on Wed, Jan 30, 2019 16:19-0500 for FHIR v4.0.0
036
037
038import org.hl7.fhir.exceptions.FHIRException;
039
040public enum ClaimInformationcategory {
041
042        /**
043         * Codes conveying additional situation and condition information.
044         */
045        INFO, 
046        /**
047         * Discharge status and discharge to locations.
048         */
049        DISCHARGE, 
050        /**
051         * Period, start or end dates of aspects of the Condition.
052         */
053        ONSET, 
054        /**
055         * Nature and date of the related event e.g. Last exam, service, X-ray etc.
056         */
057        RELATED, 
058        /**
059         * Insurance policy exceptions.
060         */
061        EXCEPTION, 
062        /**
063         * Materials being forwarded, e.g. Models, molds, images, documents.
064         */
065        MATERIAL, 
066        /**
067         * Materials attached such as images, documents and resources.
068         */
069        ATTACHMENT, 
070        /**
071         * Teeth which are missing for any reason, for example: prior extraction, never developed.
072         */
073        MISSINGTOOTH, 
074        /**
075         * The type of prosthesis and date of supply if a previously supplied prosthesis.
076         */
077        PROSTHESIS, 
078        /**
079         * Other information identified by the type.system.
080         */
081        OTHER, 
082        /**
083         * An indication that the patient was hospitalized, the period if known otherwise a Yes/No (boolean).
084         */
085        HOSPITALIZED, 
086        /**
087         * An indication that the patient was unable to work, the period if known otherwise a Yes/No (boolean).
088         */
089        EMPLOYMENTIMPACTED, 
090        /**
091         * The external cause of an illness or injury.
092         */
093        EXTERNALCAUSE, 
094        /**
095         * The reason for the patient visit.
096         */
097        PATIENTREASONFORVISIT, 
098        /**
099         * added to help the parsers
100         */
101        NULL;
102        public static ClaimInformationcategory fromCode(String codeString) throws FHIRException {
103            if (codeString == null || "".equals(codeString))
104                return null;
105        if ("info".equals(codeString))
106          return INFO;
107        if ("discharge".equals(codeString))
108          return DISCHARGE;
109        if ("onset".equals(codeString))
110          return ONSET;
111        if ("related".equals(codeString))
112          return RELATED;
113        if ("exception".equals(codeString))
114          return EXCEPTION;
115        if ("material".equals(codeString))
116          return MATERIAL;
117        if ("attachment".equals(codeString))
118          return ATTACHMENT;
119        if ("missingtooth".equals(codeString))
120          return MISSINGTOOTH;
121        if ("prosthesis".equals(codeString))
122          return PROSTHESIS;
123        if ("other".equals(codeString))
124          return OTHER;
125        if ("hospitalized".equals(codeString))
126          return HOSPITALIZED;
127        if ("employmentimpacted".equals(codeString))
128          return EMPLOYMENTIMPACTED;
129        if ("externalcause".equals(codeString))
130          return EXTERNALCAUSE;
131        if ("patientreasonforvisit".equals(codeString))
132          return PATIENTREASONFORVISIT;
133        throw new FHIRException("Unknown ClaimInformationcategory code '"+codeString+"'");
134        }
135        public String toCode() {
136          switch (this) {
137            case INFO: return "info";
138            case DISCHARGE: return "discharge";
139            case ONSET: return "onset";
140            case RELATED: return "related";
141            case EXCEPTION: return "exception";
142            case MATERIAL: return "material";
143            case ATTACHMENT: return "attachment";
144            case MISSINGTOOTH: return "missingtooth";
145            case PROSTHESIS: return "prosthesis";
146            case OTHER: return "other";
147            case HOSPITALIZED: return "hospitalized";
148            case EMPLOYMENTIMPACTED: return "employmentimpacted";
149            case EXTERNALCAUSE: return "externalcause";
150            case PATIENTREASONFORVISIT: return "patientreasonforvisit";
151            default: return "?";
152          }
153        }
154        public String getSystem() {
155          return "http://terminology.hl7.org/CodeSystem/claiminformationcategory";
156        }
157        public String getDefinition() {
158          switch (this) {
159            case INFO: return "Codes conveying additional situation and condition information.";
160            case DISCHARGE: return "Discharge status and discharge to locations.";
161            case ONSET: return "Period, start or end dates of aspects of the Condition.";
162            case RELATED: return "Nature and date of the related event e.g. Last exam, service, X-ray etc.";
163            case EXCEPTION: return "Insurance policy exceptions.";
164            case MATERIAL: return "Materials being forwarded, e.g. Models, molds, images, documents.";
165            case ATTACHMENT: return "Materials attached such as images, documents and resources.";
166            case MISSINGTOOTH: return "Teeth which are missing for any reason, for example: prior extraction, never developed.";
167            case PROSTHESIS: return "The type of prosthesis and date of supply if a previously supplied prosthesis.";
168            case OTHER: return "Other information identified by the type.system.";
169            case HOSPITALIZED: return "An indication that the patient was hospitalized, the period if known otherwise a Yes/No (boolean).";
170            case EMPLOYMENTIMPACTED: return "An indication that the patient was unable to work, the period if known otherwise a Yes/No (boolean).";
171            case EXTERNALCAUSE: return "The external cause of an illness or injury.";
172            case PATIENTREASONFORVISIT: return "The reason for the patient visit.";
173            default: return "?";
174          }
175        }
176        public String getDisplay() {
177          switch (this) {
178            case INFO: return "Information";
179            case DISCHARGE: return "Discharge";
180            case ONSET: return "Onset";
181            case RELATED: return "Related Services";
182            case EXCEPTION: return "Exception";
183            case MATERIAL: return "Materials Forwarded";
184            case ATTACHMENT: return "Attachment";
185            case MISSINGTOOTH: return "Missing Tooth";
186            case PROSTHESIS: return "Prosthesis";
187            case OTHER: return "Other";
188            case HOSPITALIZED: return "Hospitalized";
189            case EMPLOYMENTIMPACTED: return "EmploymentImpacted";
190            case EXTERNALCAUSE: return "External Caause";
191            case PATIENTREASONFORVISIT: return "Patient Reason for Visit";
192            default: return "?";
193          }
194    }
195
196
197}