001package org.hl7.fhir.instance.model.valuesets;
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, Nov 11, 2015 10:54-0500 for FHIR v1.0.2
033
034
035public enum V3EntityNameUseR2 {
036
037        /**
038         * Description:A name that a person has assumed or has been assumed to them.
039         */
040        ASSUMED, 
041        /**
042         * Description:A name used in a Professional or Business context .  Examples: Continuing to use a maiden name in a professional context, or using a stage performing name (some of these names are also pseudonyms)
043         */
044        A, 
045        /**
046         * Description:Anonymous assigned name (used to protect a persons identity for privacy reasons)
047         */
048        ANON, 
049        /**
050         * Description:e.g. .  Chief Red Cloud
051         */
052        I, 
053        /**
054         * Description:A non-official name by which the person is sometimes known.  (This may also be used to record informal names such as a nickname)
055         */
056        P, 
057        /**
058         * Description:A name assumed as part of a religious vocation .  e.g. .  Sister Mary Francis, Brother John
059         */
060        R, 
061        /**
062         * Description:Known as/conventional/the one you normally use
063         */
064        C, 
065        /**
066         * Description:A name used prior to marriage.Note that marriage naming customs vary greatly around the world.  This name use is for use by applications that collect and store maiden names.  Though the concept of maiden name is often gender specific, the use of this term is not gender specific.  The use of this term does not imply any particular history for a person's name, nor should the maiden name be determined algorithmically
067         */
068        M, 
069        /**
070         * Description:Identifies the different representations of a name .  The representation may affect how the name is used .  (E.g. .  use of Ideographic for formal communications.)
071         */
072        NAMEREPRESENTATIONUSE, 
073        /**
074         * Description:Alphabetic transcription of name in latin alphabet (Japanese: romaji)
075         */
076        ABC, 
077        /**
078         * Description:Ideographic representation of name (e.g. Japanese kanji, Chinese characters)
079         */
080        IDE, 
081        /**
082         * Description:Syllabic transcription of name (e.g. Japanese kana, Korean hangul)
083         */
084        SYL, 
085        /**
086         * Description:This name is no longer in use (note: Names may also carry valid time ranges .  This code is used to cover the situations where it is known that the name is no longer valid, but no particular time range for its use is known)
087         */
088        OLD, 
089        /**
090         * Description:This name should no longer be used when interacting with the person (i.e .  in addition to no longer being used, the name should not be even mentioned when interacting with the person)Note: applications are not required to compare names labeled "Do Not Use" and other names in order to eliminate name parts that are common between the other name and a name labeled "Do Not Use".
091         */
092        DN, 
093        /**
094         * Description:The formal name as registered in an official (government) registry, but which name might not be commonly used .  May correspond to the concept of legal name
095         */
096        OR, 
097        /**
098         * Description:The name as understood by the data enterer, i.e. a close approximation of a phonetic spelling of the name, not based on a phonetic algorithm.
099         */
100        PHON, 
101        /**
102         * Description:A name intended for use in searching or matching.  This is used when the name is incomplete and contains enough details for search matching, but not enough for other uses.
103         */
104        SRCH, 
105        /**
106         * Description:A temporary name.  Note that a name valid time can provide more detailed information.  This may also be used for temporary names assigned at birth or in emergency situations.
107         */
108        T, 
109        /**
110         * added to help the parsers
111         */
112        NULL;
113        public static V3EntityNameUseR2 fromCode(String codeString) throws Exception {
114            if (codeString == null || "".equals(codeString))
115                return null;
116        if ("Assumed".equals(codeString))
117          return ASSUMED;
118        if ("A".equals(codeString))
119          return A;
120        if ("ANON".equals(codeString))
121          return ANON;
122        if ("I".equals(codeString))
123          return I;
124        if ("P".equals(codeString))
125          return P;
126        if ("R".equals(codeString))
127          return R;
128        if ("C".equals(codeString))
129          return C;
130        if ("M".equals(codeString))
131          return M;
132        if ("NameRepresentationUse".equals(codeString))
133          return NAMEREPRESENTATIONUSE;
134        if ("ABC".equals(codeString))
135          return ABC;
136        if ("IDE".equals(codeString))
137          return IDE;
138        if ("SYL".equals(codeString))
139          return SYL;
140        if ("OLD".equals(codeString))
141          return OLD;
142        if ("DN".equals(codeString))
143          return DN;
144        if ("OR".equals(codeString))
145          return OR;
146        if ("PHON".equals(codeString))
147          return PHON;
148        if ("SRCH".equals(codeString))
149          return SRCH;
150        if ("T".equals(codeString))
151          return T;
152        throw new Exception("Unknown V3EntityNameUseR2 code '"+codeString+"'");
153        }
154        public String toCode() {
155          switch (this) {
156            case ASSUMED: return "Assumed";
157            case A: return "A";
158            case ANON: return "ANON";
159            case I: return "I";
160            case P: return "P";
161            case R: return "R";
162            case C: return "C";
163            case M: return "M";
164            case NAMEREPRESENTATIONUSE: return "NameRepresentationUse";
165            case ABC: return "ABC";
166            case IDE: return "IDE";
167            case SYL: return "SYL";
168            case OLD: return "OLD";
169            case DN: return "DN";
170            case OR: return "OR";
171            case PHON: return "PHON";
172            case SRCH: return "SRCH";
173            case T: return "T";
174            default: return "?";
175          }
176        }
177        public String getSystem() {
178          return "http://hl7.org/fhir/v3/EntityNameUseR2";
179        }
180        public String getDefinition() {
181          switch (this) {
182            case ASSUMED: return "Description:A name that a person has assumed or has been assumed to them.";
183            case A: return "Description:A name used in a Professional or Business context .  Examples: Continuing to use a maiden name in a professional context, or using a stage performing name (some of these names are also pseudonyms)";
184            case ANON: return "Description:Anonymous assigned name (used to protect a persons identity for privacy reasons)";
185            case I: return "Description:e.g. .  Chief Red Cloud";
186            case P: return "Description:A non-official name by which the person is sometimes known.  (This may also be used to record informal names such as a nickname)";
187            case R: return "Description:A name assumed as part of a religious vocation .  e.g. .  Sister Mary Francis, Brother John";
188            case C: return "Description:Known as/conventional/the one you normally use";
189            case M: return "Description:A name used prior to marriage.Note that marriage naming customs vary greatly around the world.  This name use is for use by applications that collect and store maiden names.  Though the concept of maiden name is often gender specific, the use of this term is not gender specific.  The use of this term does not imply any particular history for a person's name, nor should the maiden name be determined algorithmically";
190            case NAMEREPRESENTATIONUSE: return "Description:Identifies the different representations of a name .  The representation may affect how the name is used .  (E.g. .  use of Ideographic for formal communications.)";
191            case ABC: return "Description:Alphabetic transcription of name in latin alphabet (Japanese: romaji)";
192            case IDE: return "Description:Ideographic representation of name (e.g. Japanese kanji, Chinese characters)";
193            case SYL: return "Description:Syllabic transcription of name (e.g. Japanese kana, Korean hangul)";
194            case OLD: return "Description:This name is no longer in use (note: Names may also carry valid time ranges .  This code is used to cover the situations where it is known that the name is no longer valid, but no particular time range for its use is known)";
195            case DN: return "Description:This name should no longer be used when interacting with the person (i.e .  in addition to no longer being used, the name should not be even mentioned when interacting with the person)Note: applications are not required to compare names labeled \"Do Not Use\" and other names in order to eliminate name parts that are common between the other name and a name labeled \"Do Not Use\".";
196            case OR: return "Description:The formal name as registered in an official (government) registry, but which name might not be commonly used .  May correspond to the concept of legal name";
197            case PHON: return "Description:The name as understood by the data enterer, i.e. a close approximation of a phonetic spelling of the name, not based on a phonetic algorithm.";
198            case SRCH: return "Description:A name intended for use in searching or matching.  This is used when the name is incomplete and contains enough details for search matching, but not enough for other uses.";
199            case T: return "Description:A temporary name.  Note that a name valid time can provide more detailed information.  This may also be used for temporary names assigned at birth or in emergency situations.";
200            default: return "?";
201          }
202        }
203        public String getDisplay() {
204          switch (this) {
205            case ASSUMED: return "Assumed";
206            case A: return "business name";
207            case ANON: return "Anonymous";
208            case I: return "Indigenous/Tribal";
209            case P: return "Other/Pseudonym/Alias";
210            case R: return "religious";
211            case C: return "customary";
212            case M: return "maiden name";
213            case NAMEREPRESENTATIONUSE: return "NameRepresentationUse";
214            case ABC: return "alphabetic";
215            case IDE: return "ideographic";
216            case SYL: return "syllabic";
217            case OLD: return "no longer in use";
218            case DN: return "do not use";
219            case OR: return "official registry name";
220            case PHON: return "phonetic";
221            case SRCH: return "search";
222            case T: return "temporary";
223            default: return "?";
224          }
225    }
226
227
228}
229