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 Sun, May 6, 2018 17:51-0400 for FHIR v3.4.0 033 034 035import org.hl7.fhir.exceptions.FHIRException; 036 037public enum Iso21089Lifecycle { 038 039 /** 040 * Occurs when an agent causes the system to obtain and open a record entry for inspection or review. 041 */ 042 ACCESS, 043 /** 044 * Occurs when an agent causes the system to tag or otherwise indicate special access management and suspension of record entry deletion/destruction, if deemed relevant to a lawsuit or which are reasonably anticipated to be relevant or to fulfill organizational policy under the legal doctrine of “duty to preserve”. 045 */ 046 HOLD, 047 /** 048 * Occurs when an agent makes any change to record entry content currently residing in storage considered permanent (persistent). 049 */ 050 AMEND, 051 /** 052 * Occurs when an agent causes the system to create and move archive artifacts containing record entry content, typically to long-term offline storage. 053 */ 054 ARCHIVE, 055 /** 056 * Occurs when an agent causes the system to capture the agent’s digital signature (or equivalent indication) during formal validation of record entry content. 057 */ 058 ATTEST, 059 /** 060 * Occurs when an agent causes the system to decode record entry content from a cipher. 061 */ 062 DECRYPT, 063 /** 064 * 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 might or might not be reversible. 065 */ 066 DEIDENTIFY, 067 /** 068 * Occurs when an agent causes the system to tag record entry(ies) as obsolete, erroneous or untrustworthy, to warn against its future use. 069 */ 070 DEPRECATE, 071 /** 072 * Occurs when an agent causes the system to permanently erase record entry content from the system. 073 */ 074 DESTROY, 075 /** 076 * Occurs when an agent causes the system to release, transfer, provision access to, or otherwise divulge record entry content. 077 */ 078 DISCLOSE, 079 /** 080 * Occurs when an agent causes the system to encode record entry content in a cipher. 081 */ 082 ENCRYPT, 083 /** 084 * Occurs when an agent causes the system to selectively pull out a subset of record entry content, based on explicit criteria. 085 */ 086 EXTRACT, 087 /** 088 * Occurs when an agent causes the system to connect related record entries. 089 */ 090 LINK, 091 /** 092 * 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. 093 */ 094 MERGE, 095 /** 096 * 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. 097 */ 098 ORIGINATE, 099 /** 100 * 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. 101 */ 102 PSEUDONYMIZE, 103 /** 104 * Occurs when an agent causes the system to recreate or restore full status to record entries previously deleted or deprecated. 105 */ 106 REACTIVATE, 107 /** 108 * Occurs when an agent causes the system to a) initiate capture of data content from elsewhere, and b) incorporate that content into the storage considered a permanent part of the health record. 109 */ 110 RECEIVE, 111 /** 112 * Occurs when an agent causes the system to restore information to data that allows identification of information source and/or information subject. 113 */ 114 REIDENTIFY, 115 /** 116 * 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”. 117 */ 118 UNHOLD, 119 /** 120 * Occurs when an agent causes the system to produce and deliver record entry content in a particular form and manner. 121 */ 122 REPORT, 123 /** 124 * Occurs when an agent causes the system to recreate record entries and their content from a previous created archive artefact. 125 */ 126 RESTORE, 127 /** 128 * Occurs when an agent causes the system to change the form, language or code system used to represent record entry content. 129 */ 130 TRANSFORM, 131 /** 132 * Occurs when an agent causes the system to send record entry content from one (EHR/PHR/other) system to another. 133 */ 134 TRANSMIT, 135 /** 136 * Occurs when an agent causes the system to disconnect two or more record entries previously connected, rendering them separate (disconnected) again. 137 */ 138 UNLINK, 139 /** 140 * Occurs when an agent causes the system to reverse a previous record entry merge operation, rendering them separate again. 141 */ 142 UNMERGE, 143 /** 144 * 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. 145 */ 146 VERIFY, 147 /** 148 * added to help the parsers 149 */ 150 NULL; 151 public static Iso21089Lifecycle fromCode(String codeString) throws FHIRException { 152 if (codeString == null || "".equals(codeString)) 153 return null; 154 if ("access".equals(codeString)) 155 return ACCESS; 156 if ("hold".equals(codeString)) 157 return HOLD; 158 if ("amend".equals(codeString)) 159 return AMEND; 160 if ("archive".equals(codeString)) 161 return ARCHIVE; 162 if ("attest".equals(codeString)) 163 return ATTEST; 164 if ("decrypt".equals(codeString)) 165 return DECRYPT; 166 if ("deidentify".equals(codeString)) 167 return DEIDENTIFY; 168 if ("deprecate".equals(codeString)) 169 return DEPRECATE; 170 if ("destroy".equals(codeString)) 171 return DESTROY; 172 if ("disclose".equals(codeString)) 173 return DISCLOSE; 174 if ("encrypt".equals(codeString)) 175 return ENCRYPT; 176 if ("extract".equals(codeString)) 177 return EXTRACT; 178 if ("link".equals(codeString)) 179 return LINK; 180 if ("merge".equals(codeString)) 181 return MERGE; 182 if ("originate".equals(codeString)) 183 return ORIGINATE; 184 if ("pseudonymize".equals(codeString)) 185 return PSEUDONYMIZE; 186 if ("reactivate".equals(codeString)) 187 return REACTIVATE; 188 if ("receive".equals(codeString)) 189 return RECEIVE; 190 if ("reidentify".equals(codeString)) 191 return REIDENTIFY; 192 if ("unhold".equals(codeString)) 193 return UNHOLD; 194 if ("report".equals(codeString)) 195 return REPORT; 196 if ("restore".equals(codeString)) 197 return RESTORE; 198 if ("transform".equals(codeString)) 199 return TRANSFORM; 200 if ("transmit".equals(codeString)) 201 return TRANSMIT; 202 if ("unlink".equals(codeString)) 203 return UNLINK; 204 if ("unmerge".equals(codeString)) 205 return UNMERGE; 206 if ("verify".equals(codeString)) 207 return VERIFY; 208 throw new FHIRException("Unknown Iso21089Lifecycle code '"+codeString+"'"); 209 } 210 public String toCode() { 211 switch (this) { 212 case ACCESS: return "access"; 213 case HOLD: return "hold"; 214 case AMEND: return "amend"; 215 case ARCHIVE: return "archive"; 216 case ATTEST: return "attest"; 217 case DECRYPT: return "decrypt"; 218 case DEIDENTIFY: return "deidentify"; 219 case DEPRECATE: return "deprecate"; 220 case DESTROY: return "destroy"; 221 case DISCLOSE: return "disclose"; 222 case ENCRYPT: return "encrypt"; 223 case EXTRACT: return "extract"; 224 case LINK: return "link"; 225 case MERGE: return "merge"; 226 case ORIGINATE: return "originate"; 227 case PSEUDONYMIZE: return "pseudonymize"; 228 case REACTIVATE: return "reactivate"; 229 case RECEIVE: return "receive"; 230 case REIDENTIFY: return "reidentify"; 231 case UNHOLD: return "unhold"; 232 case REPORT: return "report"; 233 case RESTORE: return "restore"; 234 case TRANSFORM: return "transform"; 235 case TRANSMIT: return "transmit"; 236 case UNLINK: return "unlink"; 237 case UNMERGE: return "unmerge"; 238 case VERIFY: return "verify"; 239 default: return "?"; 240 } 241 } 242 public String getSystem() { 243 return "http://hl7.org/fhir/iso-21089-lifecycle"; 244 } 245 public String getDefinition() { 246 switch (this) { 247 case ACCESS: return "Occurs when an agent causes the system to obtain and open a record entry for inspection or review."; 248 case HOLD: return "Occurs when an agent causes the system to tag or otherwise indicate special access management and suspension of record entry deletion/destruction, if deemed relevant to a lawsuit or which are reasonably anticipated to be relevant or to fulfill organizational policy under the legal doctrine of “duty to preserve”."; 249 case AMEND: return "Occurs when an agent makes any change to record entry content currently residing in storage considered permanent (persistent)."; 250 case ARCHIVE: return "Occurs when an agent causes the system to create and move archive artifacts containing record entry content, typically to long-term offline storage."; 251 case ATTEST: 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."; 252 case DECRYPT: return "Occurs when an agent causes the system to decode record entry content from a cipher."; 253 case DEIDENTIFY: 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 might or might not be reversible."; 254 case DEPRECATE: return "Occurs when an agent causes the system to tag record entry(ies) as obsolete, erroneous or untrustworthy, to warn against its future use."; 255 case DESTROY: return "Occurs when an agent causes the system to permanently erase record entry content from the system."; 256 case DISCLOSE: return "Occurs when an agent causes the system to release, transfer, provision access to, or otherwise divulge record entry content."; 257 case ENCRYPT: return "Occurs when an agent causes the system to encode record entry content in a cipher."; 258 case EXTRACT: return "Occurs when an agent causes the system to selectively pull out a subset of record entry content, based on explicit criteria."; 259 case LINK: return "Occurs when an agent causes the system to connect related record entries."; 260 case MERGE: 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."; 261 case ORIGINATE: 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."; 262 case PSEUDONYMIZE: 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."; 263 case REACTIVATE: return "Occurs when an agent causes the system to recreate or restore full status to record entries previously deleted or deprecated."; 264 case RECEIVE: return "Occurs when an agent causes the system to a) initiate capture of data content from elsewhere, and b) incorporate that content into the storage considered a permanent part of the health record."; 265 case REIDENTIFY: return "Occurs when an agent causes the system to restore information to data that allows identification of information source and/or information subject."; 266 case UNHOLD: 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”."; 267 case REPORT: return "Occurs when an agent causes the system to produce and deliver record entry content in a particular form and manner."; 268 case RESTORE: return "Occurs when an agent causes the system to recreate record entries and their content from a previous created archive artefact."; 269 case TRANSFORM: return "Occurs when an agent causes the system to change the form, language or code system used to represent record entry content."; 270 case TRANSMIT: return "Occurs when an agent causes the system to send record entry content from one (EHR/PHR/other) system to another."; 271 case UNLINK: return "Occurs when an agent causes the system to disconnect two or more record entries previously connected, rendering them separate (disconnected) again."; 272 case UNMERGE: return "Occurs when an agent causes the system to reverse a previous record entry merge operation, rendering them separate again."; 273 case VERIFY: 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."; 274 default: return "?"; 275 } 276 } 277 public String getDisplay() { 278 switch (this) { 279 case ACCESS: return "Access/View Record Lifecycle Event"; 280 case HOLD: return "Add Legal Hold Record Lifecycle Event"; 281 case AMEND: return "Amend (Update) Record Lifecycle Event"; 282 case ARCHIVE: return "Archive Record Lifecycle Event"; 283 case ATTEST: return "Attest Record Lifecycle Event"; 284 case DECRYPT: return "Decrypt Record Lifecycle Event"; 285 case DEIDENTIFY: return "De-Identify (Anononymize) Record Lifecycle Event"; 286 case DEPRECATE: return "Deprecate Record Lifecycle Event"; 287 case DESTROY: return "Destroy/Delete Record Lifecycle Event"; 288 case DISCLOSE: return "Disclose Record Lifecycle Event"; 289 case ENCRYPT: return "Encrypt Record Lifecycle Event"; 290 case EXTRACT: return "Extract Record Lifecycle Event"; 291 case LINK: return "Link Record Lifecycle Event"; 292 case MERGE: return "Merge Record Lifecycle Event"; 293 case ORIGINATE: return "Originate/Retain Record Lifecycle Event"; 294 case PSEUDONYMIZE: return "Pseudonymize Record Lifecycle Event"; 295 case REACTIVATE: return "Re-activate Record Lifecycle Event"; 296 case RECEIVE: return "Receive/Retain Record Lifecycle Event"; 297 case REIDENTIFY: return "Re-identify Record Lifecycle Event"; 298 case UNHOLD: return "Remove Legal Hold Record Lifecycle Event"; 299 case REPORT: return "Report (Output) Record Lifecycle Event"; 300 case RESTORE: return "Restore Record Lifecycle Event"; 301 case TRANSFORM: return "Transform/Translate Record Lifecycle Event"; 302 case TRANSMIT: return "Transmit Record Lifecycle Event"; 303 case UNLINK: return "Unlink Record Lifecycle Event"; 304 case UNMERGE: return "Unmerge Record Lifecycle Event"; 305 case VERIFY: return "Verify Record Lifecycle Event"; 306 default: return "?"; 307 } 308 } 309 310 311} 312