001package org.hl7.fhir.dstu2016may.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 Sun, May 8, 2016 03:05+1000 for FHIR v1.4.0
036
037
038import org.hl7.fhir.exceptions.FHIRException;
039
040public enum ConceptMapEquivalence {
041
042        /**
043         * The definitions of the concepts mean the same thing (including when structural implications of meaning are considered) (i.e. extensionally identical).
044         */
045        EQUIVALENT, 
046        /**
047         * The definitions of the concepts are exactly the same (i.e. only grammatical differences) and structural implications of meaning are identical or irrelevant (i.e. intentionally identical).
048         */
049        EQUAL, 
050        /**
051         * The target mapping is wider in meaning than the source concept.
052         */
053        WIDER, 
054        /**
055         * The target mapping subsumes the meaning of the source concept (e.g. the source is-a target).
056         */
057        SUBSUMES, 
058        /**
059         * The target mapping is narrower in meaning that the source concept. The sense in which the mapping is narrower SHALL be described in the comments in this case, and applications should be careful when attempting to use these mappings operationally.
060         */
061        NARROWER, 
062        /**
063         * The target mapping specializes the meaning of the source concept (e.g. the target is-a source).
064         */
065        SPECIALIZES, 
066        /**
067         * The target mapping overlaps with the source concept, but both source and target cover additional meaning, or the definitions are imprecise and it is uncertain whether they have the same boundaries to their meaning. The sense in which the mapping is narrower SHALL be described in the comments in this case, and applications should be careful when attempting to use these mappings operationally.
068         */
069        INEXACT, 
070        /**
071         * There is no match for this concept in the destination concept system.
072         */
073        UNMATCHED, 
074        /**
075         * This is an explicit assertion that there is no mapping between the source and target concept.
076         */
077        DISJOINT, 
078        /**
079         * added to help the parsers
080         */
081        NULL;
082        public static ConceptMapEquivalence fromCode(String codeString) throws FHIRException {
083            if (codeString == null || "".equals(codeString))
084                return null;
085        if ("equivalent".equals(codeString))
086          return EQUIVALENT;
087        if ("equal".equals(codeString))
088          return EQUAL;
089        if ("wider".equals(codeString))
090          return WIDER;
091        if ("subsumes".equals(codeString))
092          return SUBSUMES;
093        if ("narrower".equals(codeString))
094          return NARROWER;
095        if ("specializes".equals(codeString))
096          return SPECIALIZES;
097        if ("inexact".equals(codeString))
098          return INEXACT;
099        if ("unmatched".equals(codeString))
100          return UNMATCHED;
101        if ("disjoint".equals(codeString))
102          return DISJOINT;
103        throw new FHIRException("Unknown ConceptMapEquivalence code '"+codeString+"'");
104        }
105        public String toCode() {
106          switch (this) {
107            case EQUIVALENT: return "equivalent";
108            case EQUAL: return "equal";
109            case WIDER: return "wider";
110            case SUBSUMES: return "subsumes";
111            case NARROWER: return "narrower";
112            case SPECIALIZES: return "specializes";
113            case INEXACT: return "inexact";
114            case UNMATCHED: return "unmatched";
115            case DISJOINT: return "disjoint";
116            case NULL: return null;
117            default: return "?";
118          }
119        }
120        public String getSystem() {
121          return "http://hl7.org/fhir/concept-map-equivalence";
122        }
123        public String getDefinition() {
124          switch (this) {
125            case EQUIVALENT: return "The definitions of the concepts mean the same thing (including when structural implications of meaning are considered) (i.e. extensionally identical).";
126            case EQUAL: return "The definitions of the concepts are exactly the same (i.e. only grammatical differences) and structural implications of meaning are identical or irrelevant (i.e. intentionally identical).";
127            case WIDER: return "The target mapping is wider in meaning than the source concept.";
128            case SUBSUMES: return "The target mapping subsumes the meaning of the source concept (e.g. the source is-a target).";
129            case NARROWER: return "The target mapping is narrower in meaning that the source concept. The sense in which the mapping is narrower SHALL be described in the comments in this case, and applications should be careful when attempting to use these mappings operationally.";
130            case SPECIALIZES: return "The target mapping specializes the meaning of the source concept (e.g. the target is-a source).";
131            case INEXACT: return "The target mapping overlaps with the source concept, but both source and target cover additional meaning, or the definitions are imprecise and it is uncertain whether they have the same boundaries to their meaning. The sense in which the mapping is narrower SHALL be described in the comments in this case, and applications should be careful when attempting to use these mappings operationally.";
132            case UNMATCHED: return "There is no match for this concept in the destination concept system.";
133            case DISJOINT: return "This is an explicit assertion that there is no mapping between the source and target concept.";
134            case NULL: return null;
135            default: return "?";
136          }
137        }
138        public String getDisplay() {
139          switch (this) {
140            case EQUIVALENT: return "Equivalent";
141            case EQUAL: return "Equal";
142            case WIDER: return "Wider";
143            case SUBSUMES: return "Subsumes";
144            case NARROWER: return "Narrower";
145            case SPECIALIZES: return "Specializes";
146            case INEXACT: return "Inexact";
147            case UNMATCHED: return "Unmatched";
148            case DISJOINT: return "Disjoint";
149            case NULL: return null;
150            default: return "?";
151          }
152    }
153
154
155}