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            case NULL: return null;
152            default: return "?";
153          }
154        }
155        public String getSystem() {
156          return "http://terminology.hl7.org/CodeSystem/claiminformationcategory";
157        }
158        public String getDefinition() {
159          switch (this) {
160            case INFO: return "Codes conveying additional situation and condition information.";
161            case DISCHARGE: return "Discharge status and discharge to locations.";
162            case ONSET: return "Period, start or end dates of aspects of the Condition.";
163            case RELATED: return "Nature and date of the related event e.g. Last exam, service, X-ray etc.";
164            case EXCEPTION: return "Insurance policy exceptions.";
165            case MATERIAL: return "Materials being forwarded, e.g. Models, molds, images, documents.";
166            case ATTACHMENT: return "Materials attached such as images, documents and resources.";
167            case MISSINGTOOTH: return "Teeth which are missing for any reason, for example: prior extraction, never developed.";
168            case PROSTHESIS: return "The type of prosthesis and date of supply if a previously supplied prosthesis.";
169            case OTHER: return "Other information identified by the type.system.";
170            case HOSPITALIZED: return "An indication that the patient was hospitalized, the period if known otherwise a Yes/No (boolean).";
171            case EMPLOYMENTIMPACTED: return "An indication that the patient was unable to work, the period if known otherwise a Yes/No (boolean).";
172            case EXTERNALCAUSE: return "The external cause of an illness or injury.";
173            case PATIENTREASONFORVISIT: return "The reason for the patient visit.";
174            case NULL: return null;
175            default: return "?";
176          }
177        }
178        public String getDisplay() {
179          switch (this) {
180            case INFO: return "Information";
181            case DISCHARGE: return "Discharge";
182            case ONSET: return "Onset";
183            case RELATED: return "Related Services";
184            case EXCEPTION: return "Exception";
185            case MATERIAL: return "Materials Forwarded";
186            case ATTACHMENT: return "Attachment";
187            case MISSINGTOOTH: return "Missing Tooth";
188            case PROSTHESIS: return "Prosthesis";
189            case OTHER: return "Other";
190            case HOSPITALIZED: return "Hospitalized";
191            case EMPLOYMENTIMPACTED: return "EmploymentImpacted";
192            case EXTERNALCAUSE: return "External Caause";
193            case PATIENTREASONFORVISIT: return "Patient Reason for Visit";
194            case NULL: return null;
195            default: return "?";
196          }
197    }
198
199
200}