View Javadoc
1   /*
2    * This class is an auto-generated source file for a HAPI
3    * HL7 v2.x standard structure class.
4    *
5    * For more information, visit: http://hl7api.sourceforge.net/
6    * 
7    * The contents of this file are subject to the Mozilla Public License Version 1.1 
8    * (the "License"); you may not use this file except in compliance with the License. 
9    * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
10   * Software distributed under the License is distributed on an "AS IS" basis, 
11   * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
12   * specific language governing rights and limitations under the License. 
13   * 
14   * The Original Code is "[file_name]".  Description: 
15   * "[one_line_description]" 
16   * 
17   * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
18   * 2012.  All Rights Reserved. 
19   * 
20   * Contributor(s): ______________________________________. 
21   * 
22   * Alternatively, the contents of this file may be used under the terms of the 
23   * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
24   * applicable instead of those above.  If you wish to allow use of your version of this 
25   * file only under the terms of the GPL and not to allow others to use your version 
26   * of this file under the MPL, indicate your decision by deleting  the provisions above 
27   * and replace  them with the notice and other provisions required by the GPL License.  
28   * If you do not delete the provisions above, a recipient may use your version of 
29   * this file under either the MPL or the GPL. 
30   * 
31   */
32  
33  
34  package ca.uhn.hl7v2.model.v27.segment;
35  
36  // import ca.uhn.hl7v2.model.v27.group.*;
37  import ca.uhn.hl7v2.model.v27.datatype.*;
38  import ca.uhn.hl7v2.HL7Exception;
39  import ca.uhn.hl7v2.parser.ModelClassFactory;
40  import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
41  import ca.uhn.hl7v2.model.AbstractMessage;
42  import ca.uhn.hl7v2.model.Group;
43  import ca.uhn.hl7v2.model.Type;
44  import ca.uhn.hl7v2.model.AbstractSegment;
45  import ca.uhn.hl7v2.model.Varies;
46  
47  
48  /**
49   *<p>Represents an HL7 PV2 message segment (Patient Visit - Additional Information). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>PV2-1: Prior Pending Location (PL) <b>optional </b>
53       * <li>PV2-2: Accommodation Code (CWE) <b>optional </b>
54       * <li>PV2-3: Admit Reason (CWE) <b>optional </b>
55       * <li>PV2-4: Transfer Reason (CWE) <b>optional </b>
56       * <li>PV2-5: Patient Valuables (ST) <b>optional repeating</b>
57       * <li>PV2-6: Patient Valuables Location (ST) <b>optional </b>
58       * <li>PV2-7: Visit User Code (CWE) <b>optional repeating</b>
59       * <li>PV2-8: Expected Admit Date/Time (DTM) <b>optional </b>
60       * <li>PV2-9: Expected Discharge Date/Time (DTM) <b>optional </b>
61       * <li>PV2-10: Estimated Length of Inpatient Stay (NM) <b>optional </b>
62       * <li>PV2-11: Actual Length of Inpatient Stay (NM) <b>optional </b>
63       * <li>PV2-12: Visit Description (ST) <b>optional </b>
64       * <li>PV2-13: Referral Source Code (XCN) <b>optional repeating</b>
65       * <li>PV2-14: Previous Service Date (DT) <b>optional </b>
66       * <li>PV2-15: Employment Illness Related Indicator (ID) <b>optional </b>
67       * <li>PV2-16: Purge Status Code (CWE) <b>optional </b>
68       * <li>PV2-17: Purge Status Date (DT) <b>optional </b>
69       * <li>PV2-18: Special Program Code (CWE) <b>optional </b>
70       * <li>PV2-19: Retention Indicator (ID) <b>optional </b>
71       * <li>PV2-20: Expected Number of Insurance Plans (NM) <b>optional </b>
72       * <li>PV2-21: Visit Publicity Code (CWE) <b>optional </b>
73       * <li>PV2-22: Visit Protection Indicator (ID) <b>optional </b>
74       * <li>PV2-23: Clinic Organization Name (XON) <b>optional repeating</b>
75       * <li>PV2-24: Patient Status Code (CWE) <b>optional </b>
76       * <li>PV2-25: Visit Priority Code (CWE) <b>optional </b>
77       * <li>PV2-26: Previous Treatment Date (DT) <b>optional </b>
78       * <li>PV2-27: Expected Discharge Disposition (CWE) <b>optional </b>
79       * <li>PV2-28: Signature on File Date (DT) <b>optional </b>
80       * <li>PV2-29: First Similar Illness Date (DT) <b>optional </b>
81       * <li>PV2-30: Patient Charge Adjustment Code (CWE) <b>optional </b>
82       * <li>PV2-31: Recurring Service Code (CWE) <b>optional </b>
83       * <li>PV2-32: Billing Media Code (ID) <b>optional </b>
84       * <li>PV2-33: Expected Surgery Date and Time (DTM) <b>optional </b>
85       * <li>PV2-34: Military Partnership Code (ID) <b>optional </b>
86       * <li>PV2-35: Military Non-Availability Code (ID) <b>optional </b>
87       * <li>PV2-36: Newborn Baby Indicator (ID) <b>optional </b>
88       * <li>PV2-37: Baby Detained Indicator (ID) <b>optional </b>
89       * <li>PV2-38: Mode of Arrival Code (CWE) <b>optional </b>
90       * <li>PV2-39: Recreational Drug Use Code (CWE) <b>optional repeating</b>
91       * <li>PV2-40: Admission Level of Care Code (CWE) <b>optional </b>
92       * <li>PV2-41: Precaution Code (CWE) <b>optional repeating</b>
93       * <li>PV2-42: Patient Condition Code (CWE) <b>optional </b>
94       * <li>PV2-43: Living Will Code (CWE) <b>optional </b>
95       * <li>PV2-44: Organ Donor Code (CWE) <b>optional </b>
96       * <li>PV2-45: Advance Directive Code (CWE) <b>optional repeating</b>
97       * <li>PV2-46: Patient Status Effective Date (DT) <b>optional </b>
98       * <li>PV2-47: Expected LOA Return Date/Time (DTM) <b>optional </b>
99       * <li>PV2-48: Expected Pre-admission Testing Date/Time (DTM) <b>optional </b>
100      * <li>PV2-49: Notify Clergy Code (CWE) <b>optional repeating</b>
101      * <li>PV2-50: Advance Directive Last Verified Date (DT) <b>optional </b>
102  * </ul>
103  */
104 @SuppressWarnings("unused")
105 public class PV2 extends AbstractSegment {
106 
107     /** 
108      * Creates a new PV2 segment
109      */
110     public PV2(Group parent, ModelClassFactory factory) {
111        super(parent, factory);
112        init(factory);
113     }
114 
115     private void init(ModelClassFactory factory) {
116        try {
117                                   this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Prior Pending Location");
118                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Accommodation Code");
119                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Admit Reason");
120                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Transfer Reason");
121                                   this.add(ST.class, false, 0, 0, new Object[]{ getMessage() }, "Patient Valuables");
122                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Patient Valuables Location");
123                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Visit User Code");
124                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Expected Admit Date/Time");
125                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Expected Discharge Date/Time");
126                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Estimated Length of Inpatient Stay");
127                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Actual Length of Inpatient Stay");
128                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Visit Description");
129                                   this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Referral Source Code");
130                                   this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "Previous Service Date");
131                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Employment Illness Related Indicator");
132                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Purge Status Code");
133                                   this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "Purge Status Date");
134                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Special Program Code");
135                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Retention Indicator");
136                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Expected Number of Insurance Plans");
137                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Visit Publicity Code");
138                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Visit Protection Indicator");
139                                   this.add(XON.class, false, 0, 0, new Object[]{ getMessage() }, "Clinic Organization Name");
140                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Patient Status Code");
141                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Visit Priority Code");
142                                   this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "Previous Treatment Date");
143                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Expected Discharge Disposition");
144                                   this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "Signature on File Date");
145                                   this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "First Similar Illness Date");
146                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Patient Charge Adjustment Code");
147                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Recurring Service Code");
148                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Billing Media Code");
149                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Expected Surgery Date and Time");
150                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Military Partnership Code");
151                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Military Non-Availability Code");
152                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Newborn Baby Indicator");
153                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Baby Detained Indicator");
154                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Mode of Arrival Code");
155                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Recreational Drug Use Code");
156                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Admission Level of Care Code");
157                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Precaution Code");
158                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Patient Condition Code");
159                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Living Will Code");
160                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Organ Donor Code");
161                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Advance Directive Code");
162                                   this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "Patient Status Effective Date");
163                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Expected LOA Return Date/Time");
164                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Expected Pre-admission Testing Date/Time");
165                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Notify Clergy Code");
166                                   this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "Advance Directive Last Verified Date");
167        } catch(HL7Exception e) {
168           log.error("Unexpected error creating PV2 - this is probably a bug in the source code generator.", e);
169        }
170     }
171 
172 
173 
174     /**
175      * Returns
176      * PV2-1: "Prior Pending Location" - creates it if necessary
177      */
178     public PL getPriorPendingLocation() { 
179 		PL retVal = this.getTypedField(1, 0);
180 		return retVal;
181     }
182     
183     /**
184      * Returns
185      * PV2-1: "Prior Pending Location" - creates it if necessary
186      */
187     public PL getPv21_PriorPendingLocation() { 
188 		PL retVal = this.getTypedField(1, 0);
189 		return retVal;
190     }
191 
192 
193 
194     /**
195      * Returns
196      * PV2-2: "Accommodation Code" - creates it if necessary
197      */
198     public CWE getAccommodationCode() { 
199 		CWE retVal = this.getTypedField(2, 0);
200 		return retVal;
201     }
202     
203     /**
204      * Returns
205      * PV2-2: "Accommodation Code" - creates it if necessary
206      */
207     public CWE getPv22_AccommodationCode() { 
208 		CWE retVal = this.getTypedField(2, 0);
209 		return retVal;
210     }
211 
212 
213 
214     /**
215      * Returns
216      * PV2-3: "Admit Reason" - creates it if necessary
217      */
218     public CWE getAdmitReason() { 
219 		CWE retVal = this.getTypedField(3, 0);
220 		return retVal;
221     }
222     
223     /**
224      * Returns
225      * PV2-3: "Admit Reason" - creates it if necessary
226      */
227     public CWE getPv23_AdmitReason() { 
228 		CWE retVal = this.getTypedField(3, 0);
229 		return retVal;
230     }
231 
232 
233 
234     /**
235      * Returns
236      * PV2-4: "Transfer Reason" - creates it if necessary
237      */
238     public CWE getTransferReason() { 
239 		CWE retVal = this.getTypedField(4, 0);
240 		return retVal;
241     }
242     
243     /**
244      * Returns
245      * PV2-4: "Transfer Reason" - creates it if necessary
246      */
247     public CWE getPv24_TransferReason() { 
248 		CWE retVal = this.getTypedField(4, 0);
249 		return retVal;
250     }
251 
252 
253     /**
254      * Returns all repetitions of Patient Valuables (PV2-5).
255      */
256     public ST[] getPatientValuables() {
257     	ST[] retVal = this.getTypedField(5, new ST[0]);
258     	return retVal;
259     }
260 
261 
262     /**
263      * Returns all repetitions of Patient Valuables (PV2-5).
264      */
265     public ST[] getPv25_PatientValuables() {
266     	ST[] retVal = this.getTypedField(5, new ST[0]);
267     	return retVal;
268     }
269 
270 
271     /**
272      * Returns a count of the current number of repetitions of Patient Valuables (PV2-5).
273      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
274      * it will return zero.
275      */
276     public int getPatientValuablesReps() {
277     	return this.getReps(5);
278     }
279 
280 
281     /**
282      * Returns a specific repetition of
283      * PV2-5: "Patient Valuables" - creates it if necessary
284      *
285      * @param rep The repetition index (0-indexed)
286      */
287     public ST getPatientValuables(int rep) { 
288 		ST retVal = this.getTypedField(5, rep);
289 		return retVal;
290     }
291 
292     /**
293      * Returns a specific repetition of
294      * PV2-5: "Patient Valuables" - creates it if necessary
295      *
296      * @param rep The repetition index (0-indexed)
297      */
298     public ST getPv25_PatientValuables(int rep) { 
299 		ST retVal = this.getTypedField(5, rep);
300 		return retVal;
301     }
302 
303     /**
304      * Returns a count of the current number of repetitions of Patient Valuables (PV2-5).
305      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
306      * it will return zero.
307      */
308     public int getPv25_PatientValuablesReps() {
309     	return this.getReps(5);
310     }
311 
312 
313     /**
314      * Inserts a repetition of
315      * PV2-5: "Patient Valuables" at a specific index
316      *
317      * @param rep The repetition index (0-indexed)
318      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
319      */
320     public ST insertPatientValuables(int rep) throws HL7Exception { 
321         return (ST) super.insertRepetition(5, rep);
322     }
323 
324 
325     /**
326      * Inserts a repetition of
327      * PV2-5: "Patient Valuables" at a specific index
328      *
329      * @param rep The repetition index (0-indexed)
330      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
331      */
332     public ST insertPv25_PatientValuables(int rep) throws HL7Exception { 
333         return (ST) super.insertRepetition(5, rep);
334     }
335 
336 
337     /**
338      * Removes a repetition of
339      * PV2-5: "Patient Valuables" at a specific index
340      *
341      * @param rep The repetition index (0-indexed)
342      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
343      */
344     public ST removePatientValuables(int rep) throws HL7Exception { 
345         return (ST) super.removeRepetition(5, rep);
346     }
347 
348 
349     /**
350      * Removes a repetition of
351      * PV2-5: "Patient Valuables" at a specific index
352      *
353      * @param rep The repetition index (0-indexed)
354      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
355      */
356     public ST removePv25_PatientValuables(int rep) throws HL7Exception { 
357         return (ST) super.removeRepetition(5, rep);
358     }
359 
360 
361 
362 
363     /**
364      * Returns
365      * PV2-6: "Patient Valuables Location" - creates it if necessary
366      */
367     public ST getPatientValuablesLocation() { 
368 		ST retVal = this.getTypedField(6, 0);
369 		return retVal;
370     }
371     
372     /**
373      * Returns
374      * PV2-6: "Patient Valuables Location" - creates it if necessary
375      */
376     public ST getPv26_PatientValuablesLocation() { 
377 		ST retVal = this.getTypedField(6, 0);
378 		return retVal;
379     }
380 
381 
382     /**
383      * Returns all repetitions of Visit User Code (PV2-7).
384      */
385     public CWE[] getVisitUserCode() {
386     	CWE[] retVal = this.getTypedField(7, new CWE[0]);
387     	return retVal;
388     }
389 
390 
391     /**
392      * Returns all repetitions of Visit User Code (PV2-7).
393      */
394     public CWE[] getPv27_VisitUserCode() {
395     	CWE[] retVal = this.getTypedField(7, new CWE[0]);
396     	return retVal;
397     }
398 
399 
400     /**
401      * Returns a count of the current number of repetitions of Visit User Code (PV2-7).
402      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
403      * it will return zero.
404      */
405     public int getVisitUserCodeReps() {
406     	return this.getReps(7);
407     }
408 
409 
410     /**
411      * Returns a specific repetition of
412      * PV2-7: "Visit User Code" - creates it if necessary
413      *
414      * @param rep The repetition index (0-indexed)
415      */
416     public CWE getVisitUserCode(int rep) { 
417 		CWE retVal = this.getTypedField(7, rep);
418 		return retVal;
419     }
420 
421     /**
422      * Returns a specific repetition of
423      * PV2-7: "Visit User Code" - creates it if necessary
424      *
425      * @param rep The repetition index (0-indexed)
426      */
427     public CWE getPv27_VisitUserCode(int rep) { 
428 		CWE retVal = this.getTypedField(7, rep);
429 		return retVal;
430     }
431 
432     /**
433      * Returns a count of the current number of repetitions of Visit User Code (PV2-7).
434      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
435      * it will return zero.
436      */
437     public int getPv27_VisitUserCodeReps() {
438     	return this.getReps(7);
439     }
440 
441 
442     /**
443      * Inserts a repetition of
444      * PV2-7: "Visit User Code" at a specific index
445      *
446      * @param rep The repetition index (0-indexed)
447      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
448      */
449     public CWE insertVisitUserCode(int rep) throws HL7Exception { 
450         return (CWE) super.insertRepetition(7, rep);
451     }
452 
453 
454     /**
455      * Inserts a repetition of
456      * PV2-7: "Visit User Code" at a specific index
457      *
458      * @param rep The repetition index (0-indexed)
459      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
460      */
461     public CWE insertPv27_VisitUserCode(int rep) throws HL7Exception { 
462         return (CWE) super.insertRepetition(7, rep);
463     }
464 
465 
466     /**
467      * Removes a repetition of
468      * PV2-7: "Visit User Code" at a specific index
469      *
470      * @param rep The repetition index (0-indexed)
471      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
472      */
473     public CWE removeVisitUserCode(int rep) throws HL7Exception { 
474         return (CWE) super.removeRepetition(7, rep);
475     }
476 
477 
478     /**
479      * Removes a repetition of
480      * PV2-7: "Visit User Code" at a specific index
481      *
482      * @param rep The repetition index (0-indexed)
483      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
484      */
485     public CWE removePv27_VisitUserCode(int rep) throws HL7Exception { 
486         return (CWE) super.removeRepetition(7, rep);
487     }
488 
489 
490 
491 
492     /**
493      * Returns
494      * PV2-8: "Expected Admit Date/Time" - creates it if necessary
495      */
496     public DTM getExpectedAdmitDateTime() { 
497 		DTM retVal = this.getTypedField(8, 0);
498 		return retVal;
499     }
500     
501     /**
502      * Returns
503      * PV2-8: "Expected Admit Date/Time" - creates it if necessary
504      */
505     public DTM getPv28_ExpectedAdmitDateTime() { 
506 		DTM retVal = this.getTypedField(8, 0);
507 		return retVal;
508     }
509 
510 
511 
512     /**
513      * Returns
514      * PV2-9: "Expected Discharge Date/Time" - creates it if necessary
515      */
516     public DTM getExpectedDischargeDateTime() { 
517 		DTM retVal = this.getTypedField(9, 0);
518 		return retVal;
519     }
520     
521     /**
522      * Returns
523      * PV2-9: "Expected Discharge Date/Time" - creates it if necessary
524      */
525     public DTM getPv29_ExpectedDischargeDateTime() { 
526 		DTM retVal = this.getTypedField(9, 0);
527 		return retVal;
528     }
529 
530 
531 
532     /**
533      * Returns
534      * PV2-10: "Estimated Length of Inpatient Stay" - creates it if necessary
535      */
536     public NM getEstimatedLengthOfInpatientStay() { 
537 		NM retVal = this.getTypedField(10, 0);
538 		return retVal;
539     }
540     
541     /**
542      * Returns
543      * PV2-10: "Estimated Length of Inpatient Stay" - creates it if necessary
544      */
545     public NM getPv210_EstimatedLengthOfInpatientStay() { 
546 		NM retVal = this.getTypedField(10, 0);
547 		return retVal;
548     }
549 
550 
551 
552     /**
553      * Returns
554      * PV2-11: "Actual Length of Inpatient Stay" - creates it if necessary
555      */
556     public NM getActualLengthOfInpatientStay() { 
557 		NM retVal = this.getTypedField(11, 0);
558 		return retVal;
559     }
560     
561     /**
562      * Returns
563      * PV2-11: "Actual Length of Inpatient Stay" - creates it if necessary
564      */
565     public NM getPv211_ActualLengthOfInpatientStay() { 
566 		NM retVal = this.getTypedField(11, 0);
567 		return retVal;
568     }
569 
570 
571 
572     /**
573      * Returns
574      * PV2-12: "Visit Description" - creates it if necessary
575      */
576     public ST getVisitDescription() { 
577 		ST retVal = this.getTypedField(12, 0);
578 		return retVal;
579     }
580     
581     /**
582      * Returns
583      * PV2-12: "Visit Description" - creates it if necessary
584      */
585     public ST getPv212_VisitDescription() { 
586 		ST retVal = this.getTypedField(12, 0);
587 		return retVal;
588     }
589 
590 
591     /**
592      * Returns all repetitions of Referral Source Code (PV2-13).
593      */
594     public XCN[] getReferralSourceCode() {
595     	XCN[] retVal = this.getTypedField(13, new XCN[0]);
596     	return retVal;
597     }
598 
599 
600     /**
601      * Returns all repetitions of Referral Source Code (PV2-13).
602      */
603     public XCN[] getPv213_ReferralSourceCode() {
604     	XCN[] retVal = this.getTypedField(13, new XCN[0]);
605     	return retVal;
606     }
607 
608 
609     /**
610      * Returns a count of the current number of repetitions of Referral Source Code (PV2-13).
611      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
612      * it will return zero.
613      */
614     public int getReferralSourceCodeReps() {
615     	return this.getReps(13);
616     }
617 
618 
619     /**
620      * Returns a specific repetition of
621      * PV2-13: "Referral Source Code" - creates it if necessary
622      *
623      * @param rep The repetition index (0-indexed)
624      */
625     public XCN getReferralSourceCode(int rep) { 
626 		XCN retVal = this.getTypedField(13, rep);
627 		return retVal;
628     }
629 
630     /**
631      * Returns a specific repetition of
632      * PV2-13: "Referral Source Code" - creates it if necessary
633      *
634      * @param rep The repetition index (0-indexed)
635      */
636     public XCN getPv213_ReferralSourceCode(int rep) { 
637 		XCN retVal = this.getTypedField(13, rep);
638 		return retVal;
639     }
640 
641     /**
642      * Returns a count of the current number of repetitions of Referral Source Code (PV2-13).
643      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
644      * it will return zero.
645      */
646     public int getPv213_ReferralSourceCodeReps() {
647     	return this.getReps(13);
648     }
649 
650 
651     /**
652      * Inserts a repetition of
653      * PV2-13: "Referral Source Code" at a specific index
654      *
655      * @param rep The repetition index (0-indexed)
656      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
657      */
658     public XCN insertReferralSourceCode(int rep) throws HL7Exception { 
659         return (XCN) super.insertRepetition(13, rep);
660     }
661 
662 
663     /**
664      * Inserts a repetition of
665      * PV2-13: "Referral Source Code" at a specific index
666      *
667      * @param rep The repetition index (0-indexed)
668      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
669      */
670     public XCN insertPv213_ReferralSourceCode(int rep) throws HL7Exception { 
671         return (XCN) super.insertRepetition(13, rep);
672     }
673 
674 
675     /**
676      * Removes a repetition of
677      * PV2-13: "Referral Source Code" at a specific index
678      *
679      * @param rep The repetition index (0-indexed)
680      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
681      */
682     public XCN removeReferralSourceCode(int rep) throws HL7Exception { 
683         return (XCN) super.removeRepetition(13, rep);
684     }
685 
686 
687     /**
688      * Removes a repetition of
689      * PV2-13: "Referral Source Code" at a specific index
690      *
691      * @param rep The repetition index (0-indexed)
692      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
693      */
694     public XCN removePv213_ReferralSourceCode(int rep) throws HL7Exception { 
695         return (XCN) super.removeRepetition(13, rep);
696     }
697 
698 
699 
700 
701     /**
702      * Returns
703      * PV2-14: "Previous Service Date" - creates it if necessary
704      */
705     public DT getPreviousServiceDate() { 
706 		DT retVal = this.getTypedField(14, 0);
707 		return retVal;
708     }
709     
710     /**
711      * Returns
712      * PV2-14: "Previous Service Date" - creates it if necessary
713      */
714     public DT getPv214_PreviousServiceDate() { 
715 		DT retVal = this.getTypedField(14, 0);
716 		return retVal;
717     }
718 
719 
720 
721     /**
722      * Returns
723      * PV2-15: "Employment Illness Related Indicator" - creates it if necessary
724      */
725     public ID getEmploymentIllnessRelatedIndicator() { 
726 		ID retVal = this.getTypedField(15, 0);
727 		return retVal;
728     }
729     
730     /**
731      * Returns
732      * PV2-15: "Employment Illness Related Indicator" - creates it if necessary
733      */
734     public ID getPv215_EmploymentIllnessRelatedIndicator() { 
735 		ID retVal = this.getTypedField(15, 0);
736 		return retVal;
737     }
738 
739 
740 
741     /**
742      * Returns
743      * PV2-16: "Purge Status Code" - creates it if necessary
744      */
745     public CWE getPurgeStatusCode() { 
746 		CWE retVal = this.getTypedField(16, 0);
747 		return retVal;
748     }
749     
750     /**
751      * Returns
752      * PV2-16: "Purge Status Code" - creates it if necessary
753      */
754     public CWE getPv216_PurgeStatusCode() { 
755 		CWE retVal = this.getTypedField(16, 0);
756 		return retVal;
757     }
758 
759 
760 
761     /**
762      * Returns
763      * PV2-17: "Purge Status Date" - creates it if necessary
764      */
765     public DT getPurgeStatusDate() { 
766 		DT retVal = this.getTypedField(17, 0);
767 		return retVal;
768     }
769     
770     /**
771      * Returns
772      * PV2-17: "Purge Status Date" - creates it if necessary
773      */
774     public DT getPv217_PurgeStatusDate() { 
775 		DT retVal = this.getTypedField(17, 0);
776 		return retVal;
777     }
778 
779 
780 
781     /**
782      * Returns
783      * PV2-18: "Special Program Code" - creates it if necessary
784      */
785     public CWE getSpecialProgramCode() { 
786 		CWE retVal = this.getTypedField(18, 0);
787 		return retVal;
788     }
789     
790     /**
791      * Returns
792      * PV2-18: "Special Program Code" - creates it if necessary
793      */
794     public CWE getPv218_SpecialProgramCode() { 
795 		CWE retVal = this.getTypedField(18, 0);
796 		return retVal;
797     }
798 
799 
800 
801     /**
802      * Returns
803      * PV2-19: "Retention Indicator" - creates it if necessary
804      */
805     public ID getRetentionIndicator() { 
806 		ID retVal = this.getTypedField(19, 0);
807 		return retVal;
808     }
809     
810     /**
811      * Returns
812      * PV2-19: "Retention Indicator" - creates it if necessary
813      */
814     public ID getPv219_RetentionIndicator() { 
815 		ID retVal = this.getTypedField(19, 0);
816 		return retVal;
817     }
818 
819 
820 
821     /**
822      * Returns
823      * PV2-20: "Expected Number of Insurance Plans" - creates it if necessary
824      */
825     public NM getExpectedNumberOfInsurancePlans() { 
826 		NM retVal = this.getTypedField(20, 0);
827 		return retVal;
828     }
829     
830     /**
831      * Returns
832      * PV2-20: "Expected Number of Insurance Plans" - creates it if necessary
833      */
834     public NM getPv220_ExpectedNumberOfInsurancePlans() { 
835 		NM retVal = this.getTypedField(20, 0);
836 		return retVal;
837     }
838 
839 
840 
841     /**
842      * Returns
843      * PV2-21: "Visit Publicity Code" - creates it if necessary
844      */
845     public CWE getVisitPublicityCode() { 
846 		CWE retVal = this.getTypedField(21, 0);
847 		return retVal;
848     }
849     
850     /**
851      * Returns
852      * PV2-21: "Visit Publicity Code" - creates it if necessary
853      */
854     public CWE getPv221_VisitPublicityCode() { 
855 		CWE retVal = this.getTypedField(21, 0);
856 		return retVal;
857     }
858 
859 
860 
861     /**
862      * Returns
863      * PV2-22: "Visit Protection Indicator" - creates it if necessary
864      */
865     public ID getVisitProtectionIndicator() { 
866 		ID retVal = this.getTypedField(22, 0);
867 		return retVal;
868     }
869     
870     /**
871      * Returns
872      * PV2-22: "Visit Protection Indicator" - creates it if necessary
873      */
874     public ID getPv222_VisitProtectionIndicator() { 
875 		ID retVal = this.getTypedField(22, 0);
876 		return retVal;
877     }
878 
879 
880     /**
881      * Returns all repetitions of Clinic Organization Name (PV2-23).
882      */
883     public XON[] getClinicOrganizationName() {
884     	XON[] retVal = this.getTypedField(23, new XON[0]);
885     	return retVal;
886     }
887 
888 
889     /**
890      * Returns all repetitions of Clinic Organization Name (PV2-23).
891      */
892     public XON[] getPv223_ClinicOrganizationName() {
893     	XON[] retVal = this.getTypedField(23, new XON[0]);
894     	return retVal;
895     }
896 
897 
898     /**
899      * Returns a count of the current number of repetitions of Clinic Organization Name (PV2-23).
900      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
901      * it will return zero.
902      */
903     public int getClinicOrganizationNameReps() {
904     	return this.getReps(23);
905     }
906 
907 
908     /**
909      * Returns a specific repetition of
910      * PV2-23: "Clinic Organization Name" - creates it if necessary
911      *
912      * @param rep The repetition index (0-indexed)
913      */
914     public XON getClinicOrganizationName(int rep) { 
915 		XON retVal = this.getTypedField(23, rep);
916 		return retVal;
917     }
918 
919     /**
920      * Returns a specific repetition of
921      * PV2-23: "Clinic Organization Name" - creates it if necessary
922      *
923      * @param rep The repetition index (0-indexed)
924      */
925     public XON getPv223_ClinicOrganizationName(int rep) { 
926 		XON retVal = this.getTypedField(23, rep);
927 		return retVal;
928     }
929 
930     /**
931      * Returns a count of the current number of repetitions of Clinic Organization Name (PV2-23).
932      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
933      * it will return zero.
934      */
935     public int getPv223_ClinicOrganizationNameReps() {
936     	return this.getReps(23);
937     }
938 
939 
940     /**
941      * Inserts a repetition of
942      * PV2-23: "Clinic Organization Name" at a specific index
943      *
944      * @param rep The repetition index (0-indexed)
945      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
946      */
947     public XON insertClinicOrganizationName(int rep) throws HL7Exception { 
948         return (XON) super.insertRepetition(23, rep);
949     }
950 
951 
952     /**
953      * Inserts a repetition of
954      * PV2-23: "Clinic Organization Name" at a specific index
955      *
956      * @param rep The repetition index (0-indexed)
957      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
958      */
959     public XON insertPv223_ClinicOrganizationName(int rep) throws HL7Exception { 
960         return (XON) super.insertRepetition(23, rep);
961     }
962 
963 
964     /**
965      * Removes a repetition of
966      * PV2-23: "Clinic Organization Name" at a specific index
967      *
968      * @param rep The repetition index (0-indexed)
969      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
970      */
971     public XON removeClinicOrganizationName(int rep) throws HL7Exception { 
972         return (XON) super.removeRepetition(23, rep);
973     }
974 
975 
976     /**
977      * Removes a repetition of
978      * PV2-23: "Clinic Organization Name" at a specific index
979      *
980      * @param rep The repetition index (0-indexed)
981      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
982      */
983     public XON removePv223_ClinicOrganizationName(int rep) throws HL7Exception { 
984         return (XON) super.removeRepetition(23, rep);
985     }
986 
987 
988 
989 
990     /**
991      * Returns
992      * PV2-24: "Patient Status Code" - creates it if necessary
993      */
994     public CWE getPatientStatusCode() { 
995 		CWE retVal = this.getTypedField(24, 0);
996 		return retVal;
997     }
998     
999     /**
1000      * Returns
1001      * PV2-24: "Patient Status Code" - creates it if necessary
1002      */
1003     public CWE getPv224_PatientStatusCode() { 
1004 		CWE retVal = this.getTypedField(24, 0);
1005 		return retVal;
1006     }
1007 
1008 
1009 
1010     /**
1011      * Returns
1012      * PV2-25: "Visit Priority Code" - creates it if necessary
1013      */
1014     public CWE getVisitPriorityCode() { 
1015 		CWE retVal = this.getTypedField(25, 0);
1016 		return retVal;
1017     }
1018     
1019     /**
1020      * Returns
1021      * PV2-25: "Visit Priority Code" - creates it if necessary
1022      */
1023     public CWE getPv225_VisitPriorityCode() { 
1024 		CWE retVal = this.getTypedField(25, 0);
1025 		return retVal;
1026     }
1027 
1028 
1029 
1030     /**
1031      * Returns
1032      * PV2-26: "Previous Treatment Date" - creates it if necessary
1033      */
1034     public DT getPreviousTreatmentDate() { 
1035 		DT retVal = this.getTypedField(26, 0);
1036 		return retVal;
1037     }
1038     
1039     /**
1040      * Returns
1041      * PV2-26: "Previous Treatment Date" - creates it if necessary
1042      */
1043     public DT getPv226_PreviousTreatmentDate() { 
1044 		DT retVal = this.getTypedField(26, 0);
1045 		return retVal;
1046     }
1047 
1048 
1049 
1050     /**
1051      * Returns
1052      * PV2-27: "Expected Discharge Disposition" - creates it if necessary
1053      */
1054     public CWE getExpectedDischargeDisposition() { 
1055 		CWE retVal = this.getTypedField(27, 0);
1056 		return retVal;
1057     }
1058     
1059     /**
1060      * Returns
1061      * PV2-27: "Expected Discharge Disposition" - creates it if necessary
1062      */
1063     public CWE getPv227_ExpectedDischargeDisposition() { 
1064 		CWE retVal = this.getTypedField(27, 0);
1065 		return retVal;
1066     }
1067 
1068 
1069 
1070     /**
1071      * Returns
1072      * PV2-28: "Signature on File Date" - creates it if necessary
1073      */
1074     public DT getSignatureOnFileDate() { 
1075 		DT retVal = this.getTypedField(28, 0);
1076 		return retVal;
1077     }
1078     
1079     /**
1080      * Returns
1081      * PV2-28: "Signature on File Date" - creates it if necessary
1082      */
1083     public DT getPv228_SignatureOnFileDate() { 
1084 		DT retVal = this.getTypedField(28, 0);
1085 		return retVal;
1086     }
1087 
1088 
1089 
1090     /**
1091      * Returns
1092      * PV2-29: "First Similar Illness Date" - creates it if necessary
1093      */
1094     public DT getFirstSimilarIllnessDate() { 
1095 		DT retVal = this.getTypedField(29, 0);
1096 		return retVal;
1097     }
1098     
1099     /**
1100      * Returns
1101      * PV2-29: "First Similar Illness Date" - creates it if necessary
1102      */
1103     public DT getPv229_FirstSimilarIllnessDate() { 
1104 		DT retVal = this.getTypedField(29, 0);
1105 		return retVal;
1106     }
1107 
1108 
1109 
1110     /**
1111      * Returns
1112      * PV2-30: "Patient Charge Adjustment Code" - creates it if necessary
1113      */
1114     public CWE getPatientChargeAdjustmentCode() { 
1115 		CWE retVal = this.getTypedField(30, 0);
1116 		return retVal;
1117     }
1118     
1119     /**
1120      * Returns
1121      * PV2-30: "Patient Charge Adjustment Code" - creates it if necessary
1122      */
1123     public CWE getPv230_PatientChargeAdjustmentCode() { 
1124 		CWE retVal = this.getTypedField(30, 0);
1125 		return retVal;
1126     }
1127 
1128 
1129 
1130     /**
1131      * Returns
1132      * PV2-31: "Recurring Service Code" - creates it if necessary
1133      */
1134     public CWE getRecurringServiceCode() { 
1135 		CWE retVal = this.getTypedField(31, 0);
1136 		return retVal;
1137     }
1138     
1139     /**
1140      * Returns
1141      * PV2-31: "Recurring Service Code" - creates it if necessary
1142      */
1143     public CWE getPv231_RecurringServiceCode() { 
1144 		CWE retVal = this.getTypedField(31, 0);
1145 		return retVal;
1146     }
1147 
1148 
1149 
1150     /**
1151      * Returns
1152      * PV2-32: "Billing Media Code" - creates it if necessary
1153      */
1154     public ID getBillingMediaCode() { 
1155 		ID retVal = this.getTypedField(32, 0);
1156 		return retVal;
1157     }
1158     
1159     /**
1160      * Returns
1161      * PV2-32: "Billing Media Code" - creates it if necessary
1162      */
1163     public ID getPv232_BillingMediaCode() { 
1164 		ID retVal = this.getTypedField(32, 0);
1165 		return retVal;
1166     }
1167 
1168 
1169 
1170     /**
1171      * Returns
1172      * PV2-33: "Expected Surgery Date and Time" - creates it if necessary
1173      */
1174     public DTM getExpectedSurgeryDateAndTime() { 
1175 		DTM retVal = this.getTypedField(33, 0);
1176 		return retVal;
1177     }
1178     
1179     /**
1180      * Returns
1181      * PV2-33: "Expected Surgery Date and Time" - creates it if necessary
1182      */
1183     public DTM getPv233_ExpectedSurgeryDateAndTime() { 
1184 		DTM retVal = this.getTypedField(33, 0);
1185 		return retVal;
1186     }
1187 
1188 
1189 
1190     /**
1191      * Returns
1192      * PV2-34: "Military Partnership Code" - creates it if necessary
1193      */
1194     public ID getMilitaryPartnershipCode() { 
1195 		ID retVal = this.getTypedField(34, 0);
1196 		return retVal;
1197     }
1198     
1199     /**
1200      * Returns
1201      * PV2-34: "Military Partnership Code" - creates it if necessary
1202      */
1203     public ID getPv234_MilitaryPartnershipCode() { 
1204 		ID retVal = this.getTypedField(34, 0);
1205 		return retVal;
1206     }
1207 
1208 
1209 
1210     /**
1211      * Returns
1212      * PV2-35: "Military Non-Availability Code" - creates it if necessary
1213      */
1214     public ID getMilitaryNonAvailabilityCode() { 
1215 		ID retVal = this.getTypedField(35, 0);
1216 		return retVal;
1217     }
1218     
1219     /**
1220      * Returns
1221      * PV2-35: "Military Non-Availability Code" - creates it if necessary
1222      */
1223     public ID getPv235_MilitaryNonAvailabilityCode() { 
1224 		ID retVal = this.getTypedField(35, 0);
1225 		return retVal;
1226     }
1227 
1228 
1229 
1230     /**
1231      * Returns
1232      * PV2-36: "Newborn Baby Indicator" - creates it if necessary
1233      */
1234     public ID getNewbornBabyIndicator() { 
1235 		ID retVal = this.getTypedField(36, 0);
1236 		return retVal;
1237     }
1238     
1239     /**
1240      * Returns
1241      * PV2-36: "Newborn Baby Indicator" - creates it if necessary
1242      */
1243     public ID getPv236_NewbornBabyIndicator() { 
1244 		ID retVal = this.getTypedField(36, 0);
1245 		return retVal;
1246     }
1247 
1248 
1249 
1250     /**
1251      * Returns
1252      * PV2-37: "Baby Detained Indicator" - creates it if necessary
1253      */
1254     public ID getBabyDetainedIndicator() { 
1255 		ID retVal = this.getTypedField(37, 0);
1256 		return retVal;
1257     }
1258     
1259     /**
1260      * Returns
1261      * PV2-37: "Baby Detained Indicator" - creates it if necessary
1262      */
1263     public ID getPv237_BabyDetainedIndicator() { 
1264 		ID retVal = this.getTypedField(37, 0);
1265 		return retVal;
1266     }
1267 
1268 
1269 
1270     /**
1271      * Returns
1272      * PV2-38: "Mode of Arrival Code" - creates it if necessary
1273      */
1274     public CWE getModeOfArrivalCode() { 
1275 		CWE retVal = this.getTypedField(38, 0);
1276 		return retVal;
1277     }
1278     
1279     /**
1280      * Returns
1281      * PV2-38: "Mode of Arrival Code" - creates it if necessary
1282      */
1283     public CWE getPv238_ModeOfArrivalCode() { 
1284 		CWE retVal = this.getTypedField(38, 0);
1285 		return retVal;
1286     }
1287 
1288 
1289     /**
1290      * Returns all repetitions of Recreational Drug Use Code (PV2-39).
1291      */
1292     public CWE[] getRecreationalDrugUseCode() {
1293     	CWE[] retVal = this.getTypedField(39, new CWE[0]);
1294     	return retVal;
1295     }
1296 
1297 
1298     /**
1299      * Returns all repetitions of Recreational Drug Use Code (PV2-39).
1300      */
1301     public CWE[] getPv239_RecreationalDrugUseCode() {
1302     	CWE[] retVal = this.getTypedField(39, new CWE[0]);
1303     	return retVal;
1304     }
1305 
1306 
1307     /**
1308      * Returns a count of the current number of repetitions of Recreational Drug Use Code (PV2-39).
1309      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1310      * it will return zero.
1311      */
1312     public int getRecreationalDrugUseCodeReps() {
1313     	return this.getReps(39);
1314     }
1315 
1316 
1317     /**
1318      * Returns a specific repetition of
1319      * PV2-39: "Recreational Drug Use Code" - creates it if necessary
1320      *
1321      * @param rep The repetition index (0-indexed)
1322      */
1323     public CWE getRecreationalDrugUseCode(int rep) { 
1324 		CWE retVal = this.getTypedField(39, rep);
1325 		return retVal;
1326     }
1327 
1328     /**
1329      * Returns a specific repetition of
1330      * PV2-39: "Recreational Drug Use Code" - creates it if necessary
1331      *
1332      * @param rep The repetition index (0-indexed)
1333      */
1334     public CWE getPv239_RecreationalDrugUseCode(int rep) { 
1335 		CWE retVal = this.getTypedField(39, rep);
1336 		return retVal;
1337     }
1338 
1339     /**
1340      * Returns a count of the current number of repetitions of Recreational Drug Use Code (PV2-39).
1341      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1342      * it will return zero.
1343      */
1344     public int getPv239_RecreationalDrugUseCodeReps() {
1345     	return this.getReps(39);
1346     }
1347 
1348 
1349     /**
1350      * Inserts a repetition of
1351      * PV2-39: "Recreational Drug Use Code" at a specific index
1352      *
1353      * @param rep The repetition index (0-indexed)
1354      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1355      */
1356     public CWE insertRecreationalDrugUseCode(int rep) throws HL7Exception { 
1357         return (CWE) super.insertRepetition(39, rep);
1358     }
1359 
1360 
1361     /**
1362      * Inserts a repetition of
1363      * PV2-39: "Recreational Drug Use Code" at a specific index
1364      *
1365      * @param rep The repetition index (0-indexed)
1366      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1367      */
1368     public CWE insertPv239_RecreationalDrugUseCode(int rep) throws HL7Exception { 
1369         return (CWE) super.insertRepetition(39, rep);
1370     }
1371 
1372 
1373     /**
1374      * Removes a repetition of
1375      * PV2-39: "Recreational Drug Use Code" at a specific index
1376      *
1377      * @param rep The repetition index (0-indexed)
1378      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1379      */
1380     public CWE removeRecreationalDrugUseCode(int rep) throws HL7Exception { 
1381         return (CWE) super.removeRepetition(39, rep);
1382     }
1383 
1384 
1385     /**
1386      * Removes a repetition of
1387      * PV2-39: "Recreational Drug Use Code" at a specific index
1388      *
1389      * @param rep The repetition index (0-indexed)
1390      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1391      */
1392     public CWE removePv239_RecreationalDrugUseCode(int rep) throws HL7Exception { 
1393         return (CWE) super.removeRepetition(39, rep);
1394     }
1395 
1396 
1397 
1398 
1399     /**
1400      * Returns
1401      * PV2-40: "Admission Level of Care Code" - creates it if necessary
1402      */
1403     public CWE getAdmissionLevelOfCareCode() { 
1404 		CWE retVal = this.getTypedField(40, 0);
1405 		return retVal;
1406     }
1407     
1408     /**
1409      * Returns
1410      * PV2-40: "Admission Level of Care Code" - creates it if necessary
1411      */
1412     public CWE getPv240_AdmissionLevelOfCareCode() { 
1413 		CWE retVal = this.getTypedField(40, 0);
1414 		return retVal;
1415     }
1416 
1417 
1418     /**
1419      * Returns all repetitions of Precaution Code (PV2-41).
1420      */
1421     public CWE[] getPrecautionCode() {
1422     	CWE[] retVal = this.getTypedField(41, new CWE[0]);
1423     	return retVal;
1424     }
1425 
1426 
1427     /**
1428      * Returns all repetitions of Precaution Code (PV2-41).
1429      */
1430     public CWE[] getPv241_PrecautionCode() {
1431     	CWE[] retVal = this.getTypedField(41, new CWE[0]);
1432     	return retVal;
1433     }
1434 
1435 
1436     /**
1437      * Returns a count of the current number of repetitions of Precaution Code (PV2-41).
1438      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1439      * it will return zero.
1440      */
1441     public int getPrecautionCodeReps() {
1442     	return this.getReps(41);
1443     }
1444 
1445 
1446     /**
1447      * Returns a specific repetition of
1448      * PV2-41: "Precaution Code" - creates it if necessary
1449      *
1450      * @param rep The repetition index (0-indexed)
1451      */
1452     public CWE getPrecautionCode(int rep) { 
1453 		CWE retVal = this.getTypedField(41, rep);
1454 		return retVal;
1455     }
1456 
1457     /**
1458      * Returns a specific repetition of
1459      * PV2-41: "Precaution Code" - creates it if necessary
1460      *
1461      * @param rep The repetition index (0-indexed)
1462      */
1463     public CWE getPv241_PrecautionCode(int rep) { 
1464 		CWE retVal = this.getTypedField(41, rep);
1465 		return retVal;
1466     }
1467 
1468     /**
1469      * Returns a count of the current number of repetitions of Precaution Code (PV2-41).
1470      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1471      * it will return zero.
1472      */
1473     public int getPv241_PrecautionCodeReps() {
1474     	return this.getReps(41);
1475     }
1476 
1477 
1478     /**
1479      * Inserts a repetition of
1480      * PV2-41: "Precaution Code" at a specific index
1481      *
1482      * @param rep The repetition index (0-indexed)
1483      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1484      */
1485     public CWE insertPrecautionCode(int rep) throws HL7Exception { 
1486         return (CWE) super.insertRepetition(41, rep);
1487     }
1488 
1489 
1490     /**
1491      * Inserts a repetition of
1492      * PV2-41: "Precaution Code" at a specific index
1493      *
1494      * @param rep The repetition index (0-indexed)
1495      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1496      */
1497     public CWE insertPv241_PrecautionCode(int rep) throws HL7Exception { 
1498         return (CWE) super.insertRepetition(41, rep);
1499     }
1500 
1501 
1502     /**
1503      * Removes a repetition of
1504      * PV2-41: "Precaution Code" at a specific index
1505      *
1506      * @param rep The repetition index (0-indexed)
1507      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1508      */
1509     public CWE removePrecautionCode(int rep) throws HL7Exception { 
1510         return (CWE) super.removeRepetition(41, rep);
1511     }
1512 
1513 
1514     /**
1515      * Removes a repetition of
1516      * PV2-41: "Precaution Code" at a specific index
1517      *
1518      * @param rep The repetition index (0-indexed)
1519      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1520      */
1521     public CWE removePv241_PrecautionCode(int rep) throws HL7Exception { 
1522         return (CWE) super.removeRepetition(41, rep);
1523     }
1524 
1525 
1526 
1527 
1528     /**
1529      * Returns
1530      * PV2-42: "Patient Condition Code" - creates it if necessary
1531      */
1532     public CWE getPatientConditionCode() { 
1533 		CWE retVal = this.getTypedField(42, 0);
1534 		return retVal;
1535     }
1536     
1537     /**
1538      * Returns
1539      * PV2-42: "Patient Condition Code" - creates it if necessary
1540      */
1541     public CWE getPv242_PatientConditionCode() { 
1542 		CWE retVal = this.getTypedField(42, 0);
1543 		return retVal;
1544     }
1545 
1546 
1547 
1548     /**
1549      * Returns
1550      * PV2-43: "Living Will Code" - creates it if necessary
1551      */
1552     public CWE getLivingWillCode() { 
1553 		CWE retVal = this.getTypedField(43, 0);
1554 		return retVal;
1555     }
1556     
1557     /**
1558      * Returns
1559      * PV2-43: "Living Will Code" - creates it if necessary
1560      */
1561     public CWE getPv243_LivingWillCode() { 
1562 		CWE retVal = this.getTypedField(43, 0);
1563 		return retVal;
1564     }
1565 
1566 
1567 
1568     /**
1569      * Returns
1570      * PV2-44: "Organ Donor Code" - creates it if necessary
1571      */
1572     public CWE getOrganDonorCode() { 
1573 		CWE retVal = this.getTypedField(44, 0);
1574 		return retVal;
1575     }
1576     
1577     /**
1578      * Returns
1579      * PV2-44: "Organ Donor Code" - creates it if necessary
1580      */
1581     public CWE getPv244_OrganDonorCode() { 
1582 		CWE retVal = this.getTypedField(44, 0);
1583 		return retVal;
1584     }
1585 
1586 
1587     /**
1588      * Returns all repetitions of Advance Directive Code (PV2-45).
1589      */
1590     public CWE[] getAdvanceDirectiveCode() {
1591     	CWE[] retVal = this.getTypedField(45, new CWE[0]);
1592     	return retVal;
1593     }
1594 
1595 
1596     /**
1597      * Returns all repetitions of Advance Directive Code (PV2-45).
1598      */
1599     public CWE[] getPv245_AdvanceDirectiveCode() {
1600     	CWE[] retVal = this.getTypedField(45, new CWE[0]);
1601     	return retVal;
1602     }
1603 
1604 
1605     /**
1606      * Returns a count of the current number of repetitions of Advance Directive Code (PV2-45).
1607      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1608      * it will return zero.
1609      */
1610     public int getAdvanceDirectiveCodeReps() {
1611     	return this.getReps(45);
1612     }
1613 
1614 
1615     /**
1616      * Returns a specific repetition of
1617      * PV2-45: "Advance Directive Code" - creates it if necessary
1618      *
1619      * @param rep The repetition index (0-indexed)
1620      */
1621     public CWE getAdvanceDirectiveCode(int rep) { 
1622 		CWE retVal = this.getTypedField(45, rep);
1623 		return retVal;
1624     }
1625 
1626     /**
1627      * Returns a specific repetition of
1628      * PV2-45: "Advance Directive Code" - creates it if necessary
1629      *
1630      * @param rep The repetition index (0-indexed)
1631      */
1632     public CWE getPv245_AdvanceDirectiveCode(int rep) { 
1633 		CWE retVal = this.getTypedField(45, rep);
1634 		return retVal;
1635     }
1636 
1637     /**
1638      * Returns a count of the current number of repetitions of Advance Directive Code (PV2-45).
1639      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1640      * it will return zero.
1641      */
1642     public int getPv245_AdvanceDirectiveCodeReps() {
1643     	return this.getReps(45);
1644     }
1645 
1646 
1647     /**
1648      * Inserts a repetition of
1649      * PV2-45: "Advance Directive Code" at a specific index
1650      *
1651      * @param rep The repetition index (0-indexed)
1652      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1653      */
1654     public CWE insertAdvanceDirectiveCode(int rep) throws HL7Exception { 
1655         return (CWE) super.insertRepetition(45, rep);
1656     }
1657 
1658 
1659     /**
1660      * Inserts a repetition of
1661      * PV2-45: "Advance Directive Code" at a specific index
1662      *
1663      * @param rep The repetition index (0-indexed)
1664      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1665      */
1666     public CWE insertPv245_AdvanceDirectiveCode(int rep) throws HL7Exception { 
1667         return (CWE) super.insertRepetition(45, rep);
1668     }
1669 
1670 
1671     /**
1672      * Removes a repetition of
1673      * PV2-45: "Advance Directive Code" at a specific index
1674      *
1675      * @param rep The repetition index (0-indexed)
1676      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1677      */
1678     public CWE removeAdvanceDirectiveCode(int rep) throws HL7Exception { 
1679         return (CWE) super.removeRepetition(45, rep);
1680     }
1681 
1682 
1683     /**
1684      * Removes a repetition of
1685      * PV2-45: "Advance Directive Code" at a specific index
1686      *
1687      * @param rep The repetition index (0-indexed)
1688      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1689      */
1690     public CWE removePv245_AdvanceDirectiveCode(int rep) throws HL7Exception { 
1691         return (CWE) super.removeRepetition(45, rep);
1692     }
1693 
1694 
1695 
1696 
1697     /**
1698      * Returns
1699      * PV2-46: "Patient Status Effective Date" - creates it if necessary
1700      */
1701     public DT getPatientStatusEffectiveDate() { 
1702 		DT retVal = this.getTypedField(46, 0);
1703 		return retVal;
1704     }
1705     
1706     /**
1707      * Returns
1708      * PV2-46: "Patient Status Effective Date" - creates it if necessary
1709      */
1710     public DT getPv246_PatientStatusEffectiveDate() { 
1711 		DT retVal = this.getTypedField(46, 0);
1712 		return retVal;
1713     }
1714 
1715 
1716 
1717     /**
1718      * Returns
1719      * PV2-47: "Expected LOA Return Date/Time" - creates it if necessary
1720      */
1721     public DTM getExpectedLOAReturnDateTime() { 
1722 		DTM retVal = this.getTypedField(47, 0);
1723 		return retVal;
1724     }
1725     
1726     /**
1727      * Returns
1728      * PV2-47: "Expected LOA Return Date/Time" - creates it if necessary
1729      */
1730     public DTM getPv247_ExpectedLOAReturnDateTime() { 
1731 		DTM retVal = this.getTypedField(47, 0);
1732 		return retVal;
1733     }
1734 
1735 
1736 
1737     /**
1738      * Returns
1739      * PV2-48: "Expected Pre-admission Testing Date/Time" - creates it if necessary
1740      */
1741     public DTM getExpectedPreAdmissionTestingDateTime() { 
1742 		DTM retVal = this.getTypedField(48, 0);
1743 		return retVal;
1744     }
1745     
1746     /**
1747      * Returns
1748      * PV2-48: "Expected Pre-admission Testing Date/Time" - creates it if necessary
1749      */
1750     public DTM getPv248_ExpectedPreAdmissionTestingDateTime() { 
1751 		DTM retVal = this.getTypedField(48, 0);
1752 		return retVal;
1753     }
1754 
1755 
1756     /**
1757      * Returns all repetitions of Notify Clergy Code (PV2-49).
1758      */
1759     public CWE[] getNotifyClergyCode() {
1760     	CWE[] retVal = this.getTypedField(49, new CWE[0]);
1761     	return retVal;
1762     }
1763 
1764 
1765     /**
1766      * Returns all repetitions of Notify Clergy Code (PV2-49).
1767      */
1768     public CWE[] getPv249_NotifyClergyCode() {
1769     	CWE[] retVal = this.getTypedField(49, new CWE[0]);
1770     	return retVal;
1771     }
1772 
1773 
1774     /**
1775      * Returns a count of the current number of repetitions of Notify Clergy Code (PV2-49).
1776      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1777      * it will return zero.
1778      */
1779     public int getNotifyClergyCodeReps() {
1780     	return this.getReps(49);
1781     }
1782 
1783 
1784     /**
1785      * Returns a specific repetition of
1786      * PV2-49: "Notify Clergy Code" - creates it if necessary
1787      *
1788      * @param rep The repetition index (0-indexed)
1789      */
1790     public CWE getNotifyClergyCode(int rep) { 
1791 		CWE retVal = this.getTypedField(49, rep);
1792 		return retVal;
1793     }
1794 
1795     /**
1796      * Returns a specific repetition of
1797      * PV2-49: "Notify Clergy Code" - creates it if necessary
1798      *
1799      * @param rep The repetition index (0-indexed)
1800      */
1801     public CWE getPv249_NotifyClergyCode(int rep) { 
1802 		CWE retVal = this.getTypedField(49, rep);
1803 		return retVal;
1804     }
1805 
1806     /**
1807      * Returns a count of the current number of repetitions of Notify Clergy Code (PV2-49).
1808      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1809      * it will return zero.
1810      */
1811     public int getPv249_NotifyClergyCodeReps() {
1812     	return this.getReps(49);
1813     }
1814 
1815 
1816     /**
1817      * Inserts a repetition of
1818      * PV2-49: "Notify Clergy Code" at a specific index
1819      *
1820      * @param rep The repetition index (0-indexed)
1821      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1822      */
1823     public CWE insertNotifyClergyCode(int rep) throws HL7Exception { 
1824         return (CWE) super.insertRepetition(49, rep);
1825     }
1826 
1827 
1828     /**
1829      * Inserts a repetition of
1830      * PV2-49: "Notify Clergy Code" at a specific index
1831      *
1832      * @param rep The repetition index (0-indexed)
1833      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1834      */
1835     public CWE insertPv249_NotifyClergyCode(int rep) throws HL7Exception { 
1836         return (CWE) super.insertRepetition(49, rep);
1837     }
1838 
1839 
1840     /**
1841      * Removes a repetition of
1842      * PV2-49: "Notify Clergy Code" at a specific index
1843      *
1844      * @param rep The repetition index (0-indexed)
1845      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1846      */
1847     public CWE removeNotifyClergyCode(int rep) throws HL7Exception { 
1848         return (CWE) super.removeRepetition(49, rep);
1849     }
1850 
1851 
1852     /**
1853      * Removes a repetition of
1854      * PV2-49: "Notify Clergy Code" at a specific index
1855      *
1856      * @param rep The repetition index (0-indexed)
1857      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1858      */
1859     public CWE removePv249_NotifyClergyCode(int rep) throws HL7Exception { 
1860         return (CWE) super.removeRepetition(49, rep);
1861     }
1862 
1863 
1864 
1865 
1866     /**
1867      * Returns
1868      * PV2-50: "Advance Directive Last Verified Date" - creates it if necessary
1869      */
1870     public DT getAdvanceDirectiveLastVerifiedDate() { 
1871 		DT retVal = this.getTypedField(50, 0);
1872 		return retVal;
1873     }
1874     
1875     /**
1876      * Returns
1877      * PV2-50: "Advance Directive Last Verified Date" - creates it if necessary
1878      */
1879     public DT getPv250_AdvanceDirectiveLastVerifiedDate() { 
1880 		DT retVal = this.getTypedField(50, 0);
1881 		return retVal;
1882     }
1883 
1884 
1885 
1886 
1887 
1888     /** {@inheritDoc} */   
1889     protected Type createNewTypeWithoutReflection(int field) {
1890        switch (field) {
1891           case 0: return new PL(getMessage());
1892           case 1: return new CWE(getMessage());
1893           case 2: return new CWE(getMessage());
1894           case 3: return new CWE(getMessage());
1895           case 4: return new ST(getMessage());
1896           case 5: return new ST(getMessage());
1897           case 6: return new CWE(getMessage());
1898           case 7: return new DTM(getMessage());
1899           case 8: return new DTM(getMessage());
1900           case 9: return new NM(getMessage());
1901           case 10: return new NM(getMessage());
1902           case 11: return new ST(getMessage());
1903           case 12: return new XCN(getMessage());
1904           case 13: return new DT(getMessage());
1905           case 14: return new ID(getMessage(), new Integer( 136 ));
1906           case 15: return new CWE(getMessage());
1907           case 16: return new DT(getMessage());
1908           case 17: return new CWE(getMessage());
1909           case 18: return new ID(getMessage(), new Integer( 136 ));
1910           case 19: return new NM(getMessage());
1911           case 20: return new CWE(getMessage());
1912           case 21: return new ID(getMessage(), new Integer( 136 ));
1913           case 22: return new XON(getMessage());
1914           case 23: return new CWE(getMessage());
1915           case 24: return new CWE(getMessage());
1916           case 25: return new DT(getMessage());
1917           case 26: return new CWE(getMessage());
1918           case 27: return new DT(getMessage());
1919           case 28: return new DT(getMessage());
1920           case 29: return new CWE(getMessage());
1921           case 30: return new CWE(getMessage());
1922           case 31: return new ID(getMessage(), new Integer( 136 ));
1923           case 32: return new DTM(getMessage());
1924           case 33: return new ID(getMessage(), new Integer( 136 ));
1925           case 34: return new ID(getMessage(), new Integer( 136 ));
1926           case 35: return new ID(getMessage(), new Integer( 136 ));
1927           case 36: return new ID(getMessage(), new Integer( 136 ));
1928           case 37: return new CWE(getMessage());
1929           case 38: return new CWE(getMessage());
1930           case 39: return new CWE(getMessage());
1931           case 40: return new CWE(getMessage());
1932           case 41: return new CWE(getMessage());
1933           case 42: return new CWE(getMessage());
1934           case 43: return new CWE(getMessage());
1935           case 44: return new CWE(getMessage());
1936           case 45: return new DT(getMessage());
1937           case 46: return new DTM(getMessage());
1938           case 47: return new DTM(getMessage());
1939           case 48: return new CWE(getMessage());
1940           case 49: return new DT(getMessage());
1941           default: return null;
1942        }
1943    }
1944 
1945 
1946 }
1947