001package org.hl7.fhir.dstu3.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 Mon, Apr 17, 2017 17:38-0400 for FHIR v3.0.1
033
034
035import org.hl7.fhir.exceptions.FHIRException;
036
037public enum Iso21089Lifecycle {
038
039        /**
040         * occurs when an agent makes any change to record entry content currently residing in storage considered permanent (persistent)
041         */
042        _2, 
043        /**
044         * occurs when an agent causes the system to create and move archive artifacts containing record entry content, typically to long-term offline storage
045         */
046        _14, 
047        /**
048         * occurs when an agent causes the system to capture the agent’s digital signature (or equivalent indication) during formal validation of record entry content
049         */
050        _4, 
051        /**
052         * occurs when an agent causes the system to decode record entry content from a cipher
053         */
054        _27, 
055        /**
056         * occurs when an agent causes the system to scrub record entry content to reduce the association between a set of identifying data and the data subject in a way that may or may not be reversible
057         */
058        _10, 
059        /**
060         * occurs when an agent causes the system to tag record entry(ies) as obsolete, erroneous or untrustworthy, to warn against its future use
061         */
062        _17, 
063        /**
064         * occurs when an agent causes the system to permanently erase record entry content from the system
065         */
066        _16, 
067        /**
068         * occurs when an agent causes the system to release, transfer, provision access to, or otherwise divulge record entry content
069         */
070        _7, 
071        /**
072         * occurs when an agent causes the system to encode record entry content in a cipher
073         */
074        _26, 
075        /**
076         * occurs when an agent causes the system to selectively pull out a subset of record entry content, based on explicit criteria
077         */
078        _13, 
079        /**
080         * occurs when an agent causes the system to connect related record entries
081         */
082        _21, 
083        /**
084         * occurs when an agent causes the system to combine or join content from two or more record entries, resulting in a single logical record entry
085         */
086        _19, 
087        /**
088         * occurs when an agent causes the system to:  a) initiate capture of potential record content, and b) incorporate that content into the storage considered a permanent part of the health record
089         */
090        _1, 
091        /**
092         * occurs when an agent causes the system to remove record entry content to reduce the association between a set of identifying data and the data subject in a way that may be reversible
093         */
094        _11, 
095        /**
096         * occurs when an agent causes the system to recreate or restore full status to record entries previously deleted or deprecated
097         */
098        _18, 
099        /**
100         * occurs when an agent causes the system to:  a) initiate capture of data content from elseware, and b) incorporate that content into the storage considered a permanent part of the health record
101         */
102        _9, 
103        /**
104         * occurs when an agent causes the system to produce and deliver record entry content in a particular form and manner
105         */
106        _6, 
107        /**
108         * occurs when an agent causes the system to restore information to data that allows identification of information source and/or information subject
109         */
110        _12, 
111        /**
112         * occurs when an agent causes the system to remove a tag or other cues for special access management had required to fulfill organizational policy under the legal doctrine of “duty to preserve”
113         */
114        _24, 
115        /**
116         * occurs when an agent causes the system to recreate record entries and their content from a previous created archive artifact
117         */
118        _15, 
119        /**
120         * occurs when an agent causes the system to change the form, language or code system used to represent record entry content
121         */
122        _3, 
123        /**
124         * occurs when an agent causes the system to send record entry content from one (EHR/PHR/other) system to another
125         */
126        _8, 
127        /**
128         * occurs when an agent causes the system to disconnect two or more record entries previously connected, rendering them separate (disconnected) again
129         */
130        _22, 
131        /**
132         * occurs when an agent causes the system to reverse a previous record entry merge operation, rendering them separate again
133         */
134        _20, 
135        /**
136         * occurs when an agent causes the system to confirm compliance of data or data objects with regulations, requirements, specifications, or other imposed conditions based on organizational policy
137         */
138        _25, 
139        /**
140         * added to help the parsers
141         */
142        NULL;
143        public static Iso21089Lifecycle fromCode(String codeString) throws FHIRException {
144            if (codeString == null || "".equals(codeString))
145                return null;
146        if ("2".equals(codeString))
147          return _2;
148        if ("14".equals(codeString))
149          return _14;
150        if ("4".equals(codeString))
151          return _4;
152        if ("27".equals(codeString))
153          return _27;
154        if ("10".equals(codeString))
155          return _10;
156        if ("17".equals(codeString))
157          return _17;
158        if ("16".equals(codeString))
159          return _16;
160        if ("7".equals(codeString))
161          return _7;
162        if ("26".equals(codeString))
163          return _26;
164        if ("13".equals(codeString))
165          return _13;
166        if ("21".equals(codeString))
167          return _21;
168        if ("19".equals(codeString))
169          return _19;
170        if ("1".equals(codeString))
171          return _1;
172        if ("11".equals(codeString))
173          return _11;
174        if ("18".equals(codeString))
175          return _18;
176        if ("9".equals(codeString))
177          return _9;
178        if ("6".equals(codeString))
179          return _6;
180        if ("12".equals(codeString))
181          return _12;
182        if ("24".equals(codeString))
183          return _24;
184        if ("15".equals(codeString))
185          return _15;
186        if ("3".equals(codeString))
187          return _3;
188        if ("8".equals(codeString))
189          return _8;
190        if ("22".equals(codeString))
191          return _22;
192        if ("20".equals(codeString))
193          return _20;
194        if ("25".equals(codeString))
195          return _25;
196        throw new FHIRException("Unknown Iso21089Lifecycle code '"+codeString+"'");
197        }
198        public String toCode() {
199          switch (this) {
200            case _2: return "2";
201            case _14: return "14";
202            case _4: return "4";
203            case _27: return "27";
204            case _10: return "10";
205            case _17: return "17";
206            case _16: return "16";
207            case _7: return "7";
208            case _26: return "26";
209            case _13: return "13";
210            case _21: return "21";
211            case _19: return "19";
212            case _1: return "1";
213            case _11: return "11";
214            case _18: return "18";
215            case _9: return "9";
216            case _6: return "6";
217            case _12: return "12";
218            case _24: return "24";
219            case _15: return "15";
220            case _3: return "3";
221            case _8: return "8";
222            case _22: return "22";
223            case _20: return "20";
224            case _25: return "25";
225            default: return "?";
226          }
227        }
228        public String getSystem() {
229          return "http://hl7.org/fhir/iso-21089-lifecycle";
230        }
231        public String getDefinition() {
232          switch (this) {
233            case _2: return "occurs when an agent makes any change to record entry content currently residing in storage considered permanent (persistent)";
234            case _14: return "occurs when an agent causes the system to create and move archive artifacts containing record entry content, typically to long-term offline storage";
235            case _4: return "occurs when an agent causes the system to capture the agent’s digital signature (or equivalent indication) during formal validation of record entry content";
236            case _27: return "occurs when an agent causes the system to decode record entry content from a cipher";
237            case _10: return "occurs when an agent causes the system to scrub record entry content to reduce the association between a set of identifying data and the data subject in a way that may or may not be reversible";
238            case _17: return "occurs when an agent causes the system to tag record entry(ies) as obsolete, erroneous or untrustworthy, to warn against its future use";
239            case _16: return "occurs when an agent causes the system to permanently erase record entry content from the system";
240            case _7: return "occurs when an agent causes the system to release, transfer, provision access to, or otherwise divulge record entry content";
241            case _26: return "occurs when an agent causes the system to encode record entry content in a cipher";
242            case _13: return "occurs when an agent causes the system to selectively pull out a subset of record entry content, based on explicit criteria";
243            case _21: return "occurs when an agent causes the system to connect related record entries";
244            case _19: return "occurs when an agent causes the system to combine or join content from two or more record entries, resulting in a single logical record entry";
245            case _1: return "occurs when an agent causes the system to:  a) initiate capture of potential record content, and b) incorporate that content into the storage considered a permanent part of the health record";
246            case _11: return "occurs when an agent causes the system to remove record entry content to reduce the association between a set of identifying data and the data subject in a way that may be reversible";
247            case _18: return "occurs when an agent causes the system to recreate or restore full status to record entries previously deleted or deprecated";
248            case _9: return "occurs when an agent causes the system to:  a) initiate capture of data content from elseware, and b) incorporate that content into the storage considered a permanent part of the health record";
249            case _6: return "occurs when an agent causes the system to produce and deliver record entry content in a particular form and manner";
250            case _12: return "occurs when an agent causes the system to restore information to data that allows identification of information source and/or information subject";
251            case _24: return "occurs when an agent causes the system to remove a tag or other cues for special access management had required to fulfill organizational policy under the legal doctrine of “duty to preserve”";
252            case _15: return "occurs when an agent causes the system to recreate record entries and their content from a previous created archive artifact";
253            case _3: return "occurs when an agent causes the system to change the form, language or code system used to represent record entry content";
254            case _8: return "occurs when an agent causes the system to send record entry content from one (EHR/PHR/other) system to another";
255            case _22: return "occurs when an agent causes the system to disconnect two or more record entries previously connected, rendering them separate (disconnected) again";
256            case _20: return "occurs when an agent causes the system to reverse a previous record entry merge operation, rendering them separate again";
257            case _25: return "occurs when an agent causes the system to confirm compliance of data or data objects with regulations, requirements, specifications, or other imposed conditions based on organizational policy";
258            default: return "?";
259          }
260        }
261        public String getDisplay() {
262          switch (this) {
263            case _2: return "Amend (Update) - Lifeycle Event";
264            case _14: return "Archive - Lifeycle Event";
265            case _4: return "Attest - Lifecycle Event";
266            case _27: return "Decrypt - Lifecycle Event";
267            case _10: return "De-Identify (Anononymize) - Lifecycle Event";
268            case _17: return "Deprecate - Lifecycle Event";
269            case _16: return "Destroy/Delete - Lifecycle Event";
270            case _7: return "Disclose - Lifecycle Event";
271            case _26: return "Encrypt - Lifecycle Event";
272            case _13: return "Extract - Lifecycle Event";
273            case _21: return "Link - Lifecycle Event";
274            case _19: return "Merge - Lifecycle Event";
275            case _1: return "Originate/Retain - Record Lifecyle Event";
276            case _11: return "Pseudonymize - Lifecycle Event";
277            case _18: return "Re-activate - Lifecycle Event";
278            case _9: return "Receive/Retain - Lifecycle Event";
279            case _6: return "Report (Output) - Lifecycle Event";
280            case _12: return "Re-identify - Lifecycle Event";
281            case _24: return "Remove Legal Hold - Lifecycle Event";
282            case _15: return "Restore - Lifecycle Event";
283            case _3: return "Transform/Translate - Lifecycle Event";
284            case _8: return "Transmit - Lifecycle Event";
285            case _22: return "Unlink - Lifecycle Event";
286            case _20: return "Unmerge - Lifecycle Event";
287            case _25: return "Verify - Lifecycle Event";
288            default: return "?";
289          }
290    }
291
292
293}
294