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 V3GTSAbbreviation {
041
042        /**
043         * Every morning at institution specified times.
044         */
045        AM, 
046        /**
047         * At bedtime (institution specified time).
048         */
049        BED, 
050        /**
051         * Two times a day at institution specified time
052         */
053        BID, 
054        /**
055         * Regular business days (Monday to Friday excluding holidays)
056         */
057        JB, 
058        /**
059         * Regular weekends (Saturday and Sunday excluding holidays)
060         */
061        JE, 
062        /**
063         * Holidays
064         */
065        JH, 
066        /**
067         * Christian Holidays (Roman/Gregorian [Western] Tradition.)
068         */
069        _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN, 
070        /**
071         * Easter Sunday.  The Easter date is a rather complex calculation based on Astronomical tables describing full moon dates.  Details can be found at [http://www.assa.org.au/edm.html, and http://aa.usno.navy.mil/AA/faq/docs/easter.html].  Note that the Christian Orthodox Holidays are based on the Julian calendar.
072         */
073        JHCHREAS, 
074        /**
075         * Good Friday, is the Friday right before Easter Sunday.
076         */
077        JHCHRGFR, 
078        /**
079         * New Year's Day (January 1)
080         */
081        JHCHRNEW, 
082        /**
083         * Pentecost Sunday, is seven weeks after Easter (the 50th day of Easter).
084         */
085        JHCHRPEN, 
086        /**
087         * Christmas Eve (December 24)
088         */
089        JHCHRXME, 
090        /**
091         * Christmas Day (December 25)
092         */
093        JHCHRXMS, 
094        /**
095         * Description:The Netherlands National Holidays.
096         */
097        JHNNL, 
098        /**
099         * Description:Liberation day  (May 5 every five years)
100         */
101        JHNNLLD, 
102        /**
103         * Description:Queen's day (April 30)
104         */
105        JHNNLQD, 
106        /**
107         * Description:Sinterklaas (December 5)
108         */
109        JHNNLSK, 
110        /**
111         * United States National Holidays (public holidays for federal employees established by U.S. Federal law 5 U.S.C. 6103).
112         */
113        JHNUS, 
114        /**
115         * Columbus Day, the second Monday in October.
116         */
117        JHNUSCLM, 
118        /**
119         * Independence Day (4th of July)
120         */
121        JHNUSIND, 
122        /**
123         * Alternative Monday after 4th of July Weekend [5 U.S.C. 6103(b)].
124         */
125        JHNUSIND1, 
126        /**
127         * Alternative Friday before 4th of July Weekend [5 U.S.C. 6103(b)].
128         */
129        JHNUSIND5, 
130        /**
131         * Labor Day, the first Monday in September.
132         */
133        JHNUSLBR, 
134        /**
135         * Memorial Day, the last Monday in May.
136         */
137        JHNUSMEM, 
138        /**
139         * Friday before Memorial Day Weekend
140         */
141        JHNUSMEM5, 
142        /**
143         * Saturday of Memorial Day Weekend
144         */
145        JHNUSMEM6, 
146        /**
147         * Dr. Martin Luther King, Jr. Day, the third Monday in January.
148         */
149        JHNUSMLK, 
150        /**
151         * Washington's Birthday (Presidential Day) the third Monday in February.
152         */
153        JHNUSPRE, 
154        /**
155         * Thanksgiving Day, the fourth Thursday in November.
156         */
157        JHNUSTKS, 
158        /**
159         * Friday after Thanksgiving.
160         */
161        JHNUSTKS5, 
162        /**
163         * Veteran's Day, November 11.
164         */
165        JHNUSVET, 
166        /**
167         * Monthly at institution specified time.
168         */
169        MO, 
170        /**
171         * Every afternoon at institution specified times.
172         */
173        PM, 
174        /**
175         * Every hour at institution specified times.
176         */
177        Q1H, 
178        /**
179         * Every 2 hours at institution specified times.
180         */
181        Q2H, 
182        /**
183         * Every 3 hours at institution specified times.
184         */
185        Q3H, 
186        /**
187         * Every 4 hours at institution specified time
188         */
189        Q4H, 
190        /**
191         * Every 6 hours at institution specified time
192         */
193        Q6H, 
194        /**
195         * Every 8 hours at institution specified times.
196         */
197        Q8H, 
198        /**
199         * Every day at institution specified times.
200         */
201        QD, 
202        /**
203         * Four times a day at institution specified time
204         */
205        QID, 
206        /**
207         * Every other day at institution specified times.
208         */
209        QOD, 
210        /**
211         * Three times a day at institution specified time
212         */
213        TID, 
214        /**
215         * Weekly at institution specified time.
216         */
217        WK, 
218        /**
219         * added to help the parsers
220         */
221        NULL;
222        public static V3GTSAbbreviation fromCode(String codeString) throws FHIRException {
223            if (codeString == null || "".equals(codeString))
224                return null;
225        if ("AM".equals(codeString))
226          return AM;
227        if ("BED".equals(codeString))
228          return BED;
229        if ("BID".equals(codeString))
230          return BID;
231        if ("JB".equals(codeString))
232          return JB;
233        if ("JE".equals(codeString))
234          return JE;
235        if ("JH".equals(codeString))
236          return JH;
237        if ("_GTSAbbreviationHolidaysChristianRoman".equals(codeString))
238          return _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN;
239        if ("JHCHREAS".equals(codeString))
240          return JHCHREAS;
241        if ("JHCHRGFR".equals(codeString))
242          return JHCHRGFR;
243        if ("JHCHRNEW".equals(codeString))
244          return JHCHRNEW;
245        if ("JHCHRPEN".equals(codeString))
246          return JHCHRPEN;
247        if ("JHCHRXME".equals(codeString))
248          return JHCHRXME;
249        if ("JHCHRXMS".equals(codeString))
250          return JHCHRXMS;
251        if ("JHNNL".equals(codeString))
252          return JHNNL;
253        if ("JHNNLLD".equals(codeString))
254          return JHNNLLD;
255        if ("JHNNLQD".equals(codeString))
256          return JHNNLQD;
257        if ("JHNNLSK".equals(codeString))
258          return JHNNLSK;
259        if ("JHNUS".equals(codeString))
260          return JHNUS;
261        if ("JHNUSCLM".equals(codeString))
262          return JHNUSCLM;
263        if ("JHNUSIND".equals(codeString))
264          return JHNUSIND;
265        if ("JHNUSIND1".equals(codeString))
266          return JHNUSIND1;
267        if ("JHNUSIND5".equals(codeString))
268          return JHNUSIND5;
269        if ("JHNUSLBR".equals(codeString))
270          return JHNUSLBR;
271        if ("JHNUSMEM".equals(codeString))
272          return JHNUSMEM;
273        if ("JHNUSMEM5".equals(codeString))
274          return JHNUSMEM5;
275        if ("JHNUSMEM6".equals(codeString))
276          return JHNUSMEM6;
277        if ("JHNUSMLK".equals(codeString))
278          return JHNUSMLK;
279        if ("JHNUSPRE".equals(codeString))
280          return JHNUSPRE;
281        if ("JHNUSTKS".equals(codeString))
282          return JHNUSTKS;
283        if ("JHNUSTKS5".equals(codeString))
284          return JHNUSTKS5;
285        if ("JHNUSVET".equals(codeString))
286          return JHNUSVET;
287        if ("MO".equals(codeString))
288          return MO;
289        if ("PM".equals(codeString))
290          return PM;
291        if ("Q1H".equals(codeString))
292          return Q1H;
293        if ("Q2H".equals(codeString))
294          return Q2H;
295        if ("Q3H".equals(codeString))
296          return Q3H;
297        if ("Q4H".equals(codeString))
298          return Q4H;
299        if ("Q6H".equals(codeString))
300          return Q6H;
301        if ("Q8H".equals(codeString))
302          return Q8H;
303        if ("QD".equals(codeString))
304          return QD;
305        if ("QID".equals(codeString))
306          return QID;
307        if ("QOD".equals(codeString))
308          return QOD;
309        if ("TID".equals(codeString))
310          return TID;
311        if ("WK".equals(codeString))
312          return WK;
313        throw new FHIRException("Unknown V3GTSAbbreviation code '"+codeString+"'");
314        }
315        public String toCode() {
316          switch (this) {
317            case AM: return "AM";
318            case BED: return "BED";
319            case BID: return "BID";
320            case JB: return "JB";
321            case JE: return "JE";
322            case JH: return "JH";
323            case _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN: return "_GTSAbbreviationHolidaysChristianRoman";
324            case JHCHREAS: return "JHCHREAS";
325            case JHCHRGFR: return "JHCHRGFR";
326            case JHCHRNEW: return "JHCHRNEW";
327            case JHCHRPEN: return "JHCHRPEN";
328            case JHCHRXME: return "JHCHRXME";
329            case JHCHRXMS: return "JHCHRXMS";
330            case JHNNL: return "JHNNL";
331            case JHNNLLD: return "JHNNLLD";
332            case JHNNLQD: return "JHNNLQD";
333            case JHNNLSK: return "JHNNLSK";
334            case JHNUS: return "JHNUS";
335            case JHNUSCLM: return "JHNUSCLM";
336            case JHNUSIND: return "JHNUSIND";
337            case JHNUSIND1: return "JHNUSIND1";
338            case JHNUSIND5: return "JHNUSIND5";
339            case JHNUSLBR: return "JHNUSLBR";
340            case JHNUSMEM: return "JHNUSMEM";
341            case JHNUSMEM5: return "JHNUSMEM5";
342            case JHNUSMEM6: return "JHNUSMEM6";
343            case JHNUSMLK: return "JHNUSMLK";
344            case JHNUSPRE: return "JHNUSPRE";
345            case JHNUSTKS: return "JHNUSTKS";
346            case JHNUSTKS5: return "JHNUSTKS5";
347            case JHNUSVET: return "JHNUSVET";
348            case MO: return "MO";
349            case PM: return "PM";
350            case Q1H: return "Q1H";
351            case Q2H: return "Q2H";
352            case Q3H: return "Q3H";
353            case Q4H: return "Q4H";
354            case Q6H: return "Q6H";
355            case Q8H: return "Q8H";
356            case QD: return "QD";
357            case QID: return "QID";
358            case QOD: return "QOD";
359            case TID: return "TID";
360            case WK: return "WK";
361            default: return "?";
362          }
363        }
364        public String getSystem() {
365          return "http://terminology.hl7.org/CodeSystem/v3-GTSAbbreviation";
366        }
367        public String getDefinition() {
368          switch (this) {
369            case AM: return "Every morning at institution specified times.";
370            case BED: return "At bedtime (institution specified time).";
371            case BID: return "Two times a day at institution specified time";
372            case JB: return "Regular business days (Monday to Friday excluding holidays)";
373            case JE: return "Regular weekends (Saturday and Sunday excluding holidays)";
374            case JH: return "Holidays";
375            case _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN: return "Christian Holidays (Roman/Gregorian [Western] Tradition.)";
376            case JHCHREAS: return "Easter Sunday.  The Easter date is a rather complex calculation based on Astronomical tables describing full moon dates.  Details can be found at [http://www.assa.org.au/edm.html, and http://aa.usno.navy.mil/AA/faq/docs/easter.html].  Note that the Christian Orthodox Holidays are based on the Julian calendar.";
377            case JHCHRGFR: return "Good Friday, is the Friday right before Easter Sunday.";
378            case JHCHRNEW: return "New Year's Day (January 1)";
379            case JHCHRPEN: return "Pentecost Sunday, is seven weeks after Easter (the 50th day of Easter).";
380            case JHCHRXME: return "Christmas Eve (December 24)";
381            case JHCHRXMS: return "Christmas Day (December 25)";
382            case JHNNL: return "Description:The Netherlands National Holidays.";
383            case JHNNLLD: return "Description:Liberation day  (May 5 every five years)";
384            case JHNNLQD: return "Description:Queen's day (April 30)";
385            case JHNNLSK: return "Description:Sinterklaas (December 5)";
386            case JHNUS: return "United States National Holidays (public holidays for federal employees established by U.S. Federal law 5 U.S.C. 6103).";
387            case JHNUSCLM: return "Columbus Day, the second Monday in October.";
388            case JHNUSIND: return "Independence Day (4th of July)";
389            case JHNUSIND1: return "Alternative Monday after 4th of July Weekend [5 U.S.C. 6103(b)].";
390            case JHNUSIND5: return "Alternative Friday before 4th of July Weekend [5 U.S.C. 6103(b)].";
391            case JHNUSLBR: return "Labor Day, the first Monday in September.";
392            case JHNUSMEM: return "Memorial Day, the last Monday in May.";
393            case JHNUSMEM5: return "Friday before Memorial Day Weekend";
394            case JHNUSMEM6: return "Saturday of Memorial Day Weekend";
395            case JHNUSMLK: return "Dr. Martin Luther King, Jr. Day, the third Monday in January.";
396            case JHNUSPRE: return "Washington's Birthday (Presidential Day) the third Monday in February.";
397            case JHNUSTKS: return "Thanksgiving Day, the fourth Thursday in November.";
398            case JHNUSTKS5: return "Friday after Thanksgiving.";
399            case JHNUSVET: return "Veteran's Day, November 11.";
400            case MO: return "Monthly at institution specified time.";
401            case PM: return "Every afternoon at institution specified times.";
402            case Q1H: return "Every hour at institution specified times.";
403            case Q2H: return "Every 2 hours at institution specified times.";
404            case Q3H: return "Every 3 hours at institution specified times.";
405            case Q4H: return "Every 4 hours at institution specified time";
406            case Q6H: return "Every 6 hours at institution specified time";
407            case Q8H: return "Every 8 hours at institution specified times.";
408            case QD: return "Every day at institution specified times.";
409            case QID: return "Four times a day at institution specified time";
410            case QOD: return "Every other day at institution specified times.";
411            case TID: return "Three times a day at institution specified time";
412            case WK: return "Weekly at institution specified time.";
413            default: return "?";
414          }
415        }
416        public String getDisplay() {
417          switch (this) {
418            case AM: return "AM";
419            case BED: return "at bedtime";
420            case BID: return "BID";
421            case JB: return "JB";
422            case JE: return "JE";
423            case JH: return "GTSAbbreviationHolidays";
424            case _GTSABBREVIATIONHOLIDAYSCHRISTIANROMAN: return "GTSAbbreviationHolidaysChristianRoman";
425            case JHCHREAS: return "JHCHREAS";
426            case JHCHRGFR: return "JHCHRGFR";
427            case JHCHRNEW: return "JHCHRNEW";
428            case JHCHRPEN: return "JHCHRPEN";
429            case JHCHRXME: return "JHCHRXME";
430            case JHCHRXMS: return "JHCHRXMS";
431            case JHNNL: return "The Netherlands National Holidays";
432            case JHNNLLD: return "Liberation day (May 5 every five years)";
433            case JHNNLQD: return "Queen's day (April 30)";
434            case JHNNLSK: return "Sinterklaas (December 5)";
435            case JHNUS: return "GTSAbbreviationHolidaysUSNational";
436            case JHNUSCLM: return "JHNUSCLM";
437            case JHNUSIND: return "JHNUSIND";
438            case JHNUSIND1: return "JHNUSIND1";
439            case JHNUSIND5: return "JHNUSIND5";
440            case JHNUSLBR: return "JHNUSLBR";
441            case JHNUSMEM: return "JHNUSMEM";
442            case JHNUSMEM5: return "JHNUSMEM5";
443            case JHNUSMEM6: return "JHNUSMEM6";
444            case JHNUSMLK: return "JHNUSMLK";
445            case JHNUSPRE: return "JHNUSPRE";
446            case JHNUSTKS: return "JHNUSTKS";
447            case JHNUSTKS5: return "JHNUSTKS5";
448            case JHNUSVET: return "JHNUSVET";
449            case MO: return "monthly";
450            case PM: return "PM";
451            case Q1H: return "every hour";
452            case Q2H: return "every 2 hours";
453            case Q3H: return "every 3 hours";
454            case Q4H: return "Q4H";
455            case Q6H: return "Q6H";
456            case Q8H: return "every 8 hours";
457            case QD: return "QD";
458            case QID: return "QID";
459            case QOD: return "QOD";
460            case TID: return "TID";
461            case WK: return "weekly";
462            default: return "?";
463          }
464    }
465
466
467}