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 Wed, Jan 30, 2019 16:19-0500 for FHIR v4.0.0
033
034import org.hl7.fhir.exceptions.FHIRException;
035
036public enum V3EntityNamePartQualifier {
037
038  /**
039   * OrganizationNamePartQualifier
040   */
041  _ORGANIZATIONNAMEPARTQUALIFIER,
042  /**
043   * Indicates that a prefix like "Dr." or a suffix like "M.D." or "Ph.D." is an
044   * academic title.
045   */
046  AC,
047  /**
048   * The name the person was given at the time of adoption.
049   */
050  AD,
051  /**
052   * A name that a person had shortly after being born. Usually for family names
053   * but may be used to mark given names at birth that may have changed later.
054   */
055  BR,
056  /**
057   * A callme name is (usually a given name) that is preferred when a person is
058   * directly addressed.
059   */
060  CL,
061  /**
062   * Indicates that a name part is just an initial. Initials do not imply a
063   * trailing period since this would not work with non-Latin scripts. Initials
064   * may consist of more than one letter, e.g., "Ph." could stand for "Philippe"
065   * or "Th." for "Thomas".
066   */
067  IN,
068  /**
069   * For organizations a suffix indicating the legal status, e.g., "Inc.", "Co.",
070   * "AG", "GmbH", "B.V." "S.A.", "Ltd." etc.
071   */
072  LS,
073  /**
074   * In Europe and Asia, there are still people with nobility titles
075   * (aristocrats). German "von" is generally a nobility title, not a mere
076   * voorvoegsel. Others are "Earl of" or "His Majesty King of..." etc. Rarely
077   * used nowadays, but some systems do keep track of this.
078   */
079  NB,
080  /**
081   * Primarily in the British Imperial culture people tend to have an abbreviation
082   * of their professional organization as part of their credential suffices.
083   */
084  PR,
085  /**
086   * The name assumed from the partner in a marital relationship (hence the "SP").
087   * Usually the spouse's family name. Note that no inference about gender can be
088   * made from the existence of spouse names.
089   */
090  SP,
091  /**
092   * Indicates that a prefix or a suffix is a title that applies to the whole
093   * name, not just the adjacent name part.
094   */
095  TITLE,
096  /**
097   * A Dutch "voorvoegsel" is something like "van" or "de" that might have
098   * indicated nobility in the past but no longer so. Similar prefixes exist in
099   * other languages such as Spanish, French or Portugese.
100   */
101  VV,
102  /**
103   * Description: Medication Name Parts are a means of specifying a range of
104   * acceptable "official" forms of the name of a product. They are used as
105   * patterns against which input name strings may be matched for automatic
106   * identification of products from input text reports. While they cover the
107   * concepts held under "doseForm" or "route" or "strength" the name parts are
108   * not the same and do not fit into a controlled vocabulary in the same way. By
109   * specifying up to 8 name parts a much larger range of possible names can be
110   * generated.
111   */
112  PHARMACEUTICALENTITYNAMEPARTQUALIFIERS,
113  /**
114   * Description: This refers to the container if present in the medicinal product
115   * name.
116   * 
117   * EXAMPLES:
118   * 
119   * 
120   * 
121   * For Optaflu suspension for injection in pre-filled syringe Influenza vaccine
122   * (surface antigen, inactivated, prepared in cell culture) (2007/2008 season):
123   * pre-filled syringe
124   */
125  CON,
126  /**
127   * Description: This refers to the qualifiers in the name for devices and is at
128   * the moment mainly applicable to insulins and inhalation products.
129   * 
130   * EXAMPLES:
131   * 
132   * 
133   * 
134   * For the medicinal product Actrapid FlexPen 100 IU/ml Solution for injection
135   * Subcutaneous use: FlexPen.
136   */
137  DEV,
138  /**
139   * Description: This refers to a flavor of the medicinal product if present in
140   * the medicinal product name.
141   * 
142   * 
143   * Examples:
144   * 
145   * 
146   * 
147   * For 'CoughCure Linctus Orange Flavor', the flavor part is "Orange" For
148   * 'Wonderdrug Syrup Cherry Flavor', the flavor part is "Cherry"
149   */
150  FLAV,
151  /**
152   * Description: This refers to the formulation of the medicinal product if
153   * present in the medicinal product name.
154   * 
155   * 
156   * Examples:
157   * 
158   * 
159   * 
160   * For 'SpecialMed Sugar Free Cough Syrup', the formulation name part is "Sugar
161   * Free" For 'QuickCure Gluten-free Bulk Fibre', the formulation name part is
162   * "gluten-free"
163   */
164  FORMUL,
165  /**
166   * Description: This refers to the pharmaceutical form/ if present in the
167   * medicinal product name.
168   * 
169   * EXAMPLES:
170   * 
171   * 
172   * 
173   * For Agenerase 50 mg soft capsules: Soft Capsules
174   * 
175   * 
176   * 
177   * For Ludiomil 25mg-Filmtabletten: Filmtabletten
178   * 
179   * 
180   * 
181   * For Optaflu suspension for injection in pre-filled syringe Influenza vaccine
182   * (surface antigen, inactivated, prepared in cell culture) (2007/2008 season):
183   * suspension for injection
184   */
185  FRM,
186  /**
187   * Description: This refers to the product name without the trademark or the
188   * name of the marketing authorization holder or any other descriptor reflected
189   * in the product name and, if appropriate, whether it is intended e.g. for
190   * babies, children or adults.
191   * 
192   * EXAMPLES:
193   * 
194   * 
195   * 
196   * Agenerase
197   * 
198   * 
199   * 
200   * Optaflu
201   * 
202   * 
203   * 
204   * Ludiomil
205   */
206  INV,
207  /**
208   * Description: This refers to the target population for the medicinal product
209   * if present in the medicinal product name
210   * 
211   * 
212   * Examples:
213   * 
214   * 
215   * 
216   * For 'Broncho-Drug 3.5 mg-capsules for children', the target population part
217   * is "children" For 'Adult Chesty Cough Syrup', the target population part is
218   * "adult"
219   */
220  POPUL,
221  /**
222   * Description: This refers to the product common or scientific name without the
223   * trademark or the name of the marketing authorization holder or any other
224   * descriptor reflected in the product name.
225   * 
226   * EXAMPLES:
227   * 
228   * 
229   * 
230   * For Agenerase: N/A
231   * 
232   * 
233   * 
234   * For Optaflu: Influenza vaccine (surface antigen, inactivated, prepared in
235   * cell culture) (2007/2008 season)
236   * 
237   * 
238   * 
239   * For Ludiomil: N/A
240   */
241  SCI,
242  /**
243   * Description: This refers to the strength if present in the medicinal product
244   * name. The use of decimal points should be accommodated if required.
245   * 
246   * EXAMPLES:
247   * 
248   * 
249   * 
250   * For Agenerase 50 mg soft capsules: 50mg
251   * 
252   * 
253   * 
254   * For Ludiomil 25mg-Filmtabletten: 25 mg
255   * 
256   * 
257   * 
258   * For Optaflu suspension for injection in pre-filled syringe Influenza vaccine
259   * (surface antigen, inactivated, prepared in cell culture) (2007/2008 season):
260   * N/A
261   */
262  STR,
263  /**
264   * Description: This refers to a time or time period that may be specified in
265   * the text of the medicinal product name
266   * 
267   * 
268   * Example:
269   * 
270   * 
271   * 
272   * For an influenza vaccine 'Drug-FLU season 2008/2009', the time/period part is
273   * "2008/2009 season"
274   */
275  TIME,
276  /**
277   * Description: This refers to trademark/company element if present in the
278   * medicinal product name.
279   * 
280   * EXAMPLES:
281   * 
282   * 
283   * 
284   * for Insulin Human Winthrop Comb 15: Winthrop
285   */
286  TMK,
287  /**
288   * Description: This refers to the intended use if present in the medicinal
289   * product name without the trademark or the name of the marketing authorization
290   * holder or any other descriptor reflected in the product name.
291   * 
292   * 
293   * 
294   * Examples:
295   * 
296   * 
297   * 
298   * For 'Drug-BI Caplets - Heartburn Relief', the intended use part is:
299   * "Heartburn Relief" For 'Medicine Honey Syrup for Soothing Coughs' the
300   * intended use part is "Soothing Coughs"
301   */
302  USE,
303  /**
304   * PersonNamePartQualifier
305   */
306  _PERSONNAMEPARTQUALIFIER,
307  /**
308   * PersonNamePartAffixTypes
309   */
310  _PERSONNAMEPARTAFFIXTYPES,
311  /**
312   * PersonNamePartChangeQualifier
313   */
314  _PERSONNAMEPARTCHANGEQUALIFIER,
315  /**
316   * PersonNamePartMiscQualifier
317   */
318  _PERSONNAMEPARTMISCQUALIFIER,
319  /**
320   * added to help the parsers
321   */
322  NULL;
323
324  public static V3EntityNamePartQualifier fromCode(String codeString) throws FHIRException {
325    if (codeString == null || "".equals(codeString))
326      return null;
327    if ("_OrganizationNamePartQualifier".equals(codeString))
328      return _ORGANIZATIONNAMEPARTQUALIFIER;
329    if ("AC".equals(codeString))
330      return AC;
331    if ("AD".equals(codeString))
332      return AD;
333    if ("BR".equals(codeString))
334      return BR;
335    if ("CL".equals(codeString))
336      return CL;
337    if ("IN".equals(codeString))
338      return IN;
339    if ("LS".equals(codeString))
340      return LS;
341    if ("NB".equals(codeString))
342      return NB;
343    if ("PR".equals(codeString))
344      return PR;
345    if ("SP".equals(codeString))
346      return SP;
347    if ("TITLE".equals(codeString))
348      return TITLE;
349    if ("VV".equals(codeString))
350      return VV;
351    if ("PharmaceuticalEntityNamePartQualifiers".equals(codeString))
352      return PHARMACEUTICALENTITYNAMEPARTQUALIFIERS;
353    if ("CON".equals(codeString))
354      return CON;
355    if ("DEV".equals(codeString))
356      return DEV;
357    if ("FLAV".equals(codeString))
358      return FLAV;
359    if ("FORMUL".equals(codeString))
360      return FORMUL;
361    if ("FRM".equals(codeString))
362      return FRM;
363    if ("INV".equals(codeString))
364      return INV;
365    if ("POPUL".equals(codeString))
366      return POPUL;
367    if ("SCI".equals(codeString))
368      return SCI;
369    if ("STR".equals(codeString))
370      return STR;
371    if ("TIME".equals(codeString))
372      return TIME;
373    if ("TMK".equals(codeString))
374      return TMK;
375    if ("USE".equals(codeString))
376      return USE;
377    if ("_PersonNamePartQualifier".equals(codeString))
378      return _PERSONNAMEPARTQUALIFIER;
379    if ("_PersonNamePartAffixTypes".equals(codeString))
380      return _PERSONNAMEPARTAFFIXTYPES;
381    if ("_PersonNamePartChangeQualifier".equals(codeString))
382      return _PERSONNAMEPARTCHANGEQUALIFIER;
383    if ("_PersonNamePartMiscQualifier".equals(codeString))
384      return _PERSONNAMEPARTMISCQUALIFIER;
385    throw new FHIRException("Unknown V3EntityNamePartQualifier code '" + codeString + "'");
386  }
387
388  public String toCode() {
389    switch (this) {
390    case _ORGANIZATIONNAMEPARTQUALIFIER:
391      return "_OrganizationNamePartQualifier";
392    case AC:
393      return "AC";
394    case AD:
395      return "AD";
396    case BR:
397      return "BR";
398    case CL:
399      return "CL";
400    case IN:
401      return "IN";
402    case LS:
403      return "LS";
404    case NB:
405      return "NB";
406    case PR:
407      return "PR";
408    case SP:
409      return "SP";
410    case TITLE:
411      return "TITLE";
412    case VV:
413      return "VV";
414    case PHARMACEUTICALENTITYNAMEPARTQUALIFIERS:
415      return "PharmaceuticalEntityNamePartQualifiers";
416    case CON:
417      return "CON";
418    case DEV:
419      return "DEV";
420    case FLAV:
421      return "FLAV";
422    case FORMUL:
423      return "FORMUL";
424    case FRM:
425      return "FRM";
426    case INV:
427      return "INV";
428    case POPUL:
429      return "POPUL";
430    case SCI:
431      return "SCI";
432    case STR:
433      return "STR";
434    case TIME:
435      return "TIME";
436    case TMK:
437      return "TMK";
438    case USE:
439      return "USE";
440    case _PERSONNAMEPARTQUALIFIER:
441      return "_PersonNamePartQualifier";
442    case _PERSONNAMEPARTAFFIXTYPES:
443      return "_PersonNamePartAffixTypes";
444    case _PERSONNAMEPARTCHANGEQUALIFIER:
445      return "_PersonNamePartChangeQualifier";
446    case _PERSONNAMEPARTMISCQUALIFIER:
447      return "_PersonNamePartMiscQualifier";
448    case NULL:
449      return null;
450    default:
451      return "?";
452    }
453  }
454
455  public String getSystem() {
456    return "http://terminology.hl7.org/CodeSystem/v3-EntityNamePartQualifier";
457  }
458
459  public String getDefinition() {
460    switch (this) {
461    case _ORGANIZATIONNAMEPARTQUALIFIER:
462      return "OrganizationNamePartQualifier";
463    case AC:
464      return "Indicates that a prefix like \"Dr.\" or a suffix like \"M.D.\" or \"Ph.D.\" is an academic title.";
465    case AD:
466      return "The name the person was given at the time of adoption.";
467    case BR:
468      return "A name that a person had shortly after being born. Usually for family names but may be used to mark given names at birth that may have changed later.";
469    case CL:
470      return "A callme name is (usually a given name) that is preferred when a person is directly addressed.";
471    case IN:
472      return "Indicates that a name part is just an initial. Initials do not imply a trailing period since this would not work with non-Latin scripts.  Initials may consist of more than one letter, e.g., \"Ph.\" could stand for \"Philippe\" or \"Th.\" for \"Thomas\".";
473    case LS:
474      return "For organizations a suffix indicating the legal status, e.g., \"Inc.\", \"Co.\", \"AG\", \"GmbH\", \"B.V.\" \"S.A.\",  \"Ltd.\" etc.";
475    case NB:
476      return "In Europe and Asia, there are still people with nobility titles (aristocrats).  German \"von\" is generally a nobility title, not a mere voorvoegsel.  Others are \"Earl of\" or \"His Majesty King of...\" etc.  Rarely used nowadays, but some systems do keep track of this.";
477    case PR:
478      return "Primarily in the British Imperial culture people tend to have an abbreviation of their professional organization as part of their credential suffices.";
479    case SP:
480      return "The name assumed from the partner in a marital relationship (hence the \"SP\"). Usually the spouse's family name. Note that no inference about gender can be made from the existence of spouse names.";
481    case TITLE:
482      return "Indicates that a prefix or a suffix is a title that applies to the whole name, not just the adjacent name part.";
483    case VV:
484      return "A Dutch \"voorvoegsel\" is something like \"van\" or \"de\" that might have indicated nobility in the past but no longer so. Similar prefixes exist in other languages such as Spanish, French or Portugese.";
485    case PHARMACEUTICALENTITYNAMEPARTQUALIFIERS:
486      return "Description: Medication Name Parts are a means of specifying a range of acceptable \"official\" forms of the name of a product.  They are used as patterns against which input name strings may be matched for automatic identification of products from input text reports.   While they cover the concepts held under \"doseForm\" or \"route\" or \"strength\" the name parts are not the same and do not fit into a controlled vocabulary in the same way. By specifying up to 8 name parts a much larger range of possible names can be generated.";
487    case CON:
488      return "Description: This refers to the container if present in the medicinal product name.\r\n\n                        EXAMPLES: \r\n\n                        \n                           \n                              For Optaflu suspension for injection in pre-filled syringe Influenza vaccine (surface antigen, inactivated, prepared in cell culture) (2007/2008 season): pre-filled syringe";
489    case DEV:
490      return "Description: This refers to the qualifiers in the name for devices and is at the moment mainly applicable to insulins and inhalation products.\r\n\n                        EXAMPLES: \r\n\n                        \n                           \n                              For the medicinal product Actrapid FlexPen 100 IU/ml Solution for injection Subcutaneous use: FlexPen.";
491    case FLAV:
492      return "Description: This refers to a flavor of the medicinal product if present in the medicinal product name.\r\n\n                        \n                           Examples:\n                        \r\n\n                        \n                           For 'CoughCure Linctus Orange Flavor', the flavor part is \"Orange\"\n                           For 'Wonderdrug Syrup Cherry Flavor', the flavor part is \"Cherry\"";
493    case FORMUL:
494      return "Description: This refers to the formulation of the medicinal product if present in the medicinal product name.\r\n\n                        \n                           Examples:\n                        \r\n\n                        \n                           For 'SpecialMed Sugar Free Cough Syrup', the formulation name part is \"Sugar Free\"\n                           For 'QuickCure Gluten-free Bulk Fibre', the formulation name part is \"gluten-free\"";
495    case FRM:
496      return "Description: This refers to the pharmaceutical form/ if present in the medicinal product name.\r\n\n                        EXAMPLES: \r\n\n                        \n                           \n                              For Agenerase 50 mg soft capsules: Soft Capsules\r\n\n                           \n                           \n                              For Ludiomil 25mg-Filmtabletten: Filmtabletten\r\n\n                           \n                           \n                              For Optaflu suspension for injection in pre-filled syringe Influenza vaccine (surface antigen, inactivated, prepared in cell culture) (2007/2008 season): suspension for injection";
497    case INV:
498      return "Description: This refers to the product name without the trademark or the name of the marketing authorization holder or any other descriptor reflected in the product name and, if appropriate, whether it is intended e.g. for babies, children or adults. \r\n\n                        EXAMPLES: \r\n\n                        \n                           \n                              Agenerase\r\n\n                           \n                           \n                              Optaflu\r\n\n                           \n                           \n                              Ludiomil";
499    case POPUL:
500      return "Description: This refers to the target population for the medicinal product if present in the medicinal product name\r\n\n                        \n                           Examples:\n                        \r\n\n                        \n                           For 'Broncho-Drug 3.5 mg-capsules for children', the target population part is \"children\"\n                           For 'Adult Chesty Cough Syrup', the target population part is \"adult\"";
501    case SCI:
502      return "Description: This refers to the product common or scientific name without the trademark or the name of the marketing authorization holder or any other descriptor reflected in the product name.\r\n\n                        EXAMPLES: \r\n\n                        \n                           \n                              For Agenerase: N/A\r\n\n                           \n                           \n                              For Optaflu: Influenza vaccine (surface antigen, inactivated, prepared in cell culture) (2007/2008 season)\r\n\n                           \n                           \n                              For Ludiomil: N/A";
503    case STR:
504      return "Description: This refers to the strength if present in the medicinal product name. The use of decimal points should be accommodated if required.\r\n\n                        EXAMPLES:\r\n\n                        \n                           \n                              For Agenerase 50 mg soft capsules: 50mg\r\n\n                           \n                           \n                              For Ludiomil 25mg-Filmtabletten: 25 mg\r\n\n                           \n                           \n                              For Optaflu suspension for injection in pre-filled syringe Influenza vaccine (surface antigen, inactivated, prepared in cell culture) (2007/2008 season): N/A";
505    case TIME:
506      return "Description: This refers to a time or time period that may be specified in the text of the medicinal product name\r\n\n                        \n                           Example:\n                        \r\n\n                        \n                           For an influenza vaccine 'Drug-FLU season 2008/2009', the time/period part is \"2008/2009 season\"";
507    case TMK:
508      return "Description: This refers to trademark/company element if present in the medicinal product name.\r\n\n                        EXAMPLES: \r\n\n                        \n                           \n                              for Insulin Human Winthrop Comb 15: Winthrop";
509    case USE:
510      return "Description: This refers to the intended use if present in the medicinal product name without the trademark or the name of the marketing authorization holder or any other descriptor reflected in the product name.\n\r\n\n                        \n                           Examples:\n                        \r\n\n                        \n                           For 'Drug-BI Caplets - Heartburn Relief', the intended use part is: \"Heartburn Relief\"\n                           For 'Medicine Honey Syrup for Soothing Coughs' the intended use part is \"Soothing Coughs\"";
511    case _PERSONNAMEPARTQUALIFIER:
512      return "PersonNamePartQualifier";
513    case _PERSONNAMEPARTAFFIXTYPES:
514      return "PersonNamePartAffixTypes";
515    case _PERSONNAMEPARTCHANGEQUALIFIER:
516      return "PersonNamePartChangeQualifier";
517    case _PERSONNAMEPARTMISCQUALIFIER:
518      return "PersonNamePartMiscQualifier";
519    case NULL:
520      return null;
521    default:
522      return "?";
523    }
524  }
525
526  public String getDisplay() {
527    switch (this) {
528    case _ORGANIZATIONNAMEPARTQUALIFIER:
529      return "OrganizationNamePartQualifier";
530    case AC:
531      return "academic";
532    case AD:
533      return "adopted";
534    case BR:
535      return "birth";
536    case CL:
537      return "callme";
538    case IN:
539      return "initial";
540    case LS:
541      return "Legal status";
542    case NB:
543      return "nobility";
544    case PR:
545      return "professional";
546    case SP:
547      return "spouse";
548    case TITLE:
549      return "title";
550    case VV:
551      return "voorvoegsel";
552    case PHARMACEUTICALENTITYNAMEPARTQUALIFIERS:
553      return "PharmaceuticalEntityNamePartQualifiers";
554    case CON:
555      return "container name";
556    case DEV:
557      return "device name";
558    case FLAV:
559      return "FlavorName";
560    case FORMUL:
561      return "FormulationPartName";
562    case FRM:
563      return "form name";
564    case INV:
565      return "invented name";
566    case POPUL:
567      return "TargetPopulationName";
568    case SCI:
569      return "scientific name";
570    case STR:
571      return "strength name";
572    case TIME:
573      return "TimeOrPeriodName";
574    case TMK:
575      return "trademark name";
576    case USE:
577      return "intended use name";
578    case _PERSONNAMEPARTQUALIFIER:
579      return "PersonNamePartQualifier";
580    case _PERSONNAMEPARTAFFIXTYPES:
581      return "PersonNamePartAffixTypes";
582    case _PERSONNAMEPARTCHANGEQUALIFIER:
583      return "PersonNamePartChangeQualifier";
584    case _PERSONNAMEPARTMISCQUALIFIER:
585      return "PersonNamePartMiscQualifier";
586    case NULL:
587      return null;
588    default:
589      return "?";
590    }
591  }
592
593}