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 V3Hl7CMETAttribution {
041
042        /**
043         * Description: Provides sufficient information to allow the object identified to be contacted. This is likely to have the content of identified and confirmable plus telephone number.
044         */
045        CONTACT, 
046        /**
047         * Description: This variant is a proper subset of universal and is intended to provide sufficient information to identify the object(s) modeled by the CMET. This variant is only suitable for use within TIGHTLY COUPLED SYSTEMS ONLY. This variant provides ONLY the ID (and code where applicable) and Name. Other variants may not be substituted at runtime.
048         */
049        IDENTIFIED, 
050        /**
051         * Description: This extends the identified variant by adding just sufficient additional information to allow the identity of object modeled to be confirmed by a number of corroborating items of data; for instance a patient's date of birth and current address. However, specific contact information, such as telephone number, are not viewed as confirming information.
052         */
053        IDENTIFIEDCONFIRMABLE, 
054        /**
055         * Description: Generally the same information content as "contactable" but using new "informational" CMETs as dependant CMETs. This flavor allows expression of the CMET when non-focal class information is not known.
056         */
057        IDENTIFIEDINFORMATIONAL, 
058        /**
059         * Description: Generally the same information content as "contactable", but with required (not mandatory) ids on entry point class. This flavor allows expression of the CMET even when mandatory information is not known.
060         */
061        INFORMATIONAL, 
062        /**
063         * Description: Provides more than identified, but not as much as universal. There are not expected to be many of these.
064         */
065        MINIMAL, 
066        /**
067         * Description: This variant includes all attributes and associations present in the R-MIM. Any of non-mandatory and non-required attributes and/or associations may be present or absent, as permitted in the cardinality constraints.
068         */
069        UNIVERSAL, 
070        /**
071         * added to help the parsers
072         */
073        NULL;
074        public static V3Hl7CMETAttribution fromCode(String codeString) throws FHIRException {
075            if (codeString == null || "".equals(codeString))
076                return null;
077        if ("contact".equals(codeString))
078          return CONTACT;
079        if ("identified".equals(codeString))
080          return IDENTIFIED;
081        if ("identified-confirmable".equals(codeString))
082          return IDENTIFIEDCONFIRMABLE;
083        if ("identified-informational".equals(codeString))
084          return IDENTIFIEDINFORMATIONAL;
085        if ("informational".equals(codeString))
086          return INFORMATIONAL;
087        if ("minimal".equals(codeString))
088          return MINIMAL;
089        if ("universal".equals(codeString))
090          return UNIVERSAL;
091        throw new FHIRException("Unknown V3Hl7CMETAttribution code '"+codeString+"'");
092        }
093        public String toCode() {
094          switch (this) {
095            case CONTACT: return "contact";
096            case IDENTIFIED: return "identified";
097            case IDENTIFIEDCONFIRMABLE: return "identified-confirmable";
098            case IDENTIFIEDINFORMATIONAL: return "identified-informational";
099            case INFORMATIONAL: return "informational";
100            case MINIMAL: return "minimal";
101            case UNIVERSAL: return "universal";
102            default: return "?";
103          }
104        }
105        public String getSystem() {
106          return "http://terminology.hl7.org/CodeSystem/v3-hl7CMETAttribution";
107        }
108        public String getDefinition() {
109          switch (this) {
110            case CONTACT: return "Description: Provides sufficient information to allow the object identified to be contacted. This is likely to have the content of identified and confirmable plus telephone number.";
111            case IDENTIFIED: return "Description: This variant is a proper subset of universal and is intended to provide sufficient information to identify the object(s) modeled by the CMET. This variant is only suitable for use within TIGHTLY COUPLED SYSTEMS ONLY. This variant provides ONLY the ID (and code where applicable) and Name. Other variants may not be substituted at runtime.";
112            case IDENTIFIEDCONFIRMABLE: return "Description: This extends the identified variant by adding just sufficient additional information to allow the identity of object modeled to be confirmed by a number of corroborating items of data; for instance a patient's date of birth and current address. However, specific contact information, such as telephone number, are not viewed as confirming information.";
113            case IDENTIFIEDINFORMATIONAL: return "Description: Generally the same information content as \"contactable\" but using new \"informational\" CMETs as dependant CMETs. This flavor allows expression of the CMET when non-focal class information is not known.";
114            case INFORMATIONAL: return "Description: Generally the same information content as \"contactable\", but with required (not mandatory) ids on entry point class. This flavor allows expression of the CMET even when mandatory information is not known.";
115            case MINIMAL: return "Description: Provides more than identified, but not as much as universal. There are not expected to be many of these.";
116            case UNIVERSAL: return "Description: This variant includes all attributes and associations present in the R-MIM. Any of non-mandatory and non-required attributes and/or associations may be present or absent, as permitted in the cardinality constraints.";
117            default: return "?";
118          }
119        }
120        public String getDisplay() {
121          switch (this) {
122            case CONTACT: return "contact";
123            case IDENTIFIED: return "identified";
124            case IDENTIFIEDCONFIRMABLE: return "identified-confirmable";
125            case IDENTIFIEDINFORMATIONAL: return "identified-informational";
126            case INFORMATIONAL: return "informational";
127            case MINIMAL: return "minimal";
128            case UNIVERSAL: return "universal";
129            default: return "?";
130          }
131    }
132
133
134}