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.v25.segment;
35  
36  // import ca.uhn.hl7v2.model.v25.group.*;
37  import ca.uhn.hl7v2.model.v25.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 PV1 message segment (Patient Visit). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>PV1-1: Set ID - PV1 (SI) <b>optional </b>
53       * <li>PV1-2: Patient Class (IS) <b> </b>
54       * <li>PV1-3: Assigned Patient Location (PL) <b>optional </b>
55       * <li>PV1-4: Admission Type (IS) <b>optional </b>
56       * <li>PV1-5: Preadmit Number (CX) <b>optional </b>
57       * <li>PV1-6: Prior Patient Location (PL) <b>optional </b>
58       * <li>PV1-7: Attending Doctor (XCN) <b>optional repeating</b>
59       * <li>PV1-8: Referring Doctor (XCN) <b>optional repeating</b>
60       * <li>PV1-9: Consulting Doctor (XCN) <b>optional repeating</b>
61       * <li>PV1-10: Hospital Service (IS) <b>optional </b>
62       * <li>PV1-11: Temporary Location (PL) <b>optional </b>
63       * <li>PV1-12: Preadmit Test Indicator (IS) <b>optional </b>
64       * <li>PV1-13: Re-admission Indicator (IS) <b>optional </b>
65       * <li>PV1-14: Admit Source (IS) <b>optional </b>
66       * <li>PV1-15: Ambulatory Status (IS) <b>optional repeating</b>
67       * <li>PV1-16: VIP Indicator (IS) <b>optional </b>
68       * <li>PV1-17: Admitting Doctor (XCN) <b>optional repeating</b>
69       * <li>PV1-18: Patient Type (IS) <b>optional </b>
70       * <li>PV1-19: Visit Number (CX) <b>optional </b>
71       * <li>PV1-20: Financial Class (FC) <b>optional repeating</b>
72       * <li>PV1-21: Charge Price Indicator (IS) <b>optional </b>
73       * <li>PV1-22: Courtesy Code (IS) <b>optional </b>
74       * <li>PV1-23: Credit Rating (IS) <b>optional </b>
75       * <li>PV1-24: Contract Code (IS) <b>optional repeating</b>
76       * <li>PV1-25: Contract Effective Date (DT) <b>optional repeating</b>
77       * <li>PV1-26: Contract Amount (NM) <b>optional repeating</b>
78       * <li>PV1-27: Contract Period (NM) <b>optional repeating</b>
79       * <li>PV1-28: Interest Code (IS) <b>optional </b>
80       * <li>PV1-29: Transfer to Bad Debt Code (IS) <b>optional </b>
81       * <li>PV1-30: Transfer to Bad Debt Date (DT) <b>optional </b>
82       * <li>PV1-31: Bad Debt Agency Code (IS) <b>optional </b>
83       * <li>PV1-32: Bad Debt Transfer Amount (NM) <b>optional </b>
84       * <li>PV1-33: Bad Debt Recovery Amount (NM) <b>optional </b>
85       * <li>PV1-34: Delete Account Indicator (IS) <b>optional </b>
86       * <li>PV1-35: Delete Account Date (DT) <b>optional </b>
87       * <li>PV1-36: Discharge Disposition (IS) <b>optional </b>
88       * <li>PV1-37: Discharged to Location (DLD) <b>optional </b>
89       * <li>PV1-38: Diet Type (CE) <b>optional </b>
90       * <li>PV1-39: Servicing Facility (IS) <b>optional </b>
91       * <li>PV1-40: Bed Status (IS) <b>optional </b>
92       * <li>PV1-41: Account Status (IS) <b>optional </b>
93       * <li>PV1-42: Pending Location (PL) <b>optional </b>
94       * <li>PV1-43: Prior Temporary Location (PL) <b>optional </b>
95       * <li>PV1-44: Admit Date/Time (TS) <b>optional </b>
96       * <li>PV1-45: Discharge Date/Time (TS) <b>optional repeating</b>
97       * <li>PV1-46: Current Patient Balance (NM) <b>optional </b>
98       * <li>PV1-47: Total Charges (NM) <b>optional </b>
99       * <li>PV1-48: Total Adjustments (NM) <b>optional </b>
100      * <li>PV1-49: Total Payments (NM) <b>optional </b>
101      * <li>PV1-50: Alternate Visit ID (CX) <b>optional </b>
102      * <li>PV1-51: Visit Indicator (IS) <b>optional </b>
103      * <li>PV1-52: Other Healthcare Provider (XCN) <b>optional repeating</b>
104  * </ul>
105  */
106 @SuppressWarnings("unused")
107 public class PV1 extends AbstractSegment {
108 
109     /** 
110      * Creates a new PV1 segment
111      */
112     public PV1(Group parent, ModelClassFactory factory) {
113        super(parent, factory);
114        init(factory);
115     }
116 
117     private void init(ModelClassFactory factory) {
118        try {
119                                   this.add(SI.class, false, 1, 4, new Object[]{ getMessage() }, "Set ID - PV1");
120                                               this.add(IS.class, true, 1, 1, new Object[]{ getMessage(), new Integer(4) }, "Patient Class");
121                                   this.add(PL.class, false, 1, 80, new Object[]{ getMessage() }, "Assigned Patient Location");
122                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(7) }, "Admission Type");
123                                   this.add(CX.class, false, 1, 250, new Object[]{ getMessage() }, "Preadmit Number");
124                                   this.add(PL.class, false, 1, 80, new Object[]{ getMessage() }, "Prior Patient Location");
125                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Attending Doctor");
126                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Referring Doctor");
127                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Consulting Doctor");
128                                               this.add(IS.class, false, 1, 3, new Object[]{ getMessage(), new Integer(69) }, "Hospital Service");
129                                   this.add(PL.class, false, 1, 80, new Object[]{ getMessage() }, "Temporary Location");
130                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(87) }, "Preadmit Test Indicator");
131                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(92) }, "Re-admission Indicator");
132                                               this.add(IS.class, false, 1, 6, new Object[]{ getMessage(), new Integer(23) }, "Admit Source");
133                                               this.add(IS.class, false, 0, 2, new Object[]{ getMessage(), new Integer(9) }, "Ambulatory Status");
134                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(99) }, "VIP Indicator");
135                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Admitting Doctor");
136                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(18) }, "Patient Type");
137                                   this.add(CX.class, false, 1, 250, new Object[]{ getMessage() }, "Visit Number");
138                                   this.add(FC.class, false, 0, 50, new Object[]{ getMessage() }, "Financial Class");
139                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(32) }, "Charge Price Indicator");
140                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(45) }, "Courtesy Code");
141                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(46) }, "Credit Rating");
142                                               this.add(IS.class, false, 0, 2, new Object[]{ getMessage(), new Integer(44) }, "Contract Code");
143                                   this.add(DT.class, false, 0, 8, new Object[]{ getMessage() }, "Contract Effective Date");
144                                   this.add(NM.class, false, 0, 12, new Object[]{ getMessage() }, "Contract Amount");
145                                   this.add(NM.class, false, 0, 3, new Object[]{ getMessage() }, "Contract Period");
146                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(73) }, "Interest Code");
147                                               this.add(IS.class, false, 1, 4, new Object[]{ getMessage(), new Integer(110) }, "Transfer to Bad Debt Code");
148                                   this.add(DT.class, false, 1, 8, new Object[]{ getMessage() }, "Transfer to Bad Debt Date");
149                                               this.add(IS.class, false, 1, 10, new Object[]{ getMessage(), new Integer(21) }, "Bad Debt Agency Code");
150                                   this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Bad Debt Transfer Amount");
151                                   this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Bad Debt Recovery Amount");
152                                               this.add(IS.class, false, 1, 1, new Object[]{ getMessage(), new Integer(111) }, "Delete Account Indicator");
153                                   this.add(DT.class, false, 1, 8, new Object[]{ getMessage() }, "Delete Account Date");
154                                               this.add(IS.class, false, 1, 3, new Object[]{ getMessage(), new Integer(112) }, "Discharge Disposition");
155                                   this.add(DLD.class, false, 1, 47, new Object[]{ getMessage() }, "Discharged to Location");
156                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Diet Type");
157                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(115) }, "Servicing Facility");
158                                               this.add(IS.class, false, 1, 1, new Object[]{ getMessage(), new Integer(116) }, "Bed Status");
159                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(117) }, "Account Status");
160                                   this.add(PL.class, false, 1, 80, new Object[]{ getMessage() }, "Pending Location");
161                                   this.add(PL.class, false, 1, 80, new Object[]{ getMessage() }, "Prior Temporary Location");
162                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Admit Date/Time");
163                                   this.add(TS.class, false, 0, 26, new Object[]{ getMessage() }, "Discharge Date/Time");
164                                   this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Current Patient Balance");
165                                   this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Total Charges");
166                                   this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Total Adjustments");
167                                   this.add(NM.class, false, 1, 12, new Object[]{ getMessage() }, "Total Payments");
168                                   this.add(CX.class, false, 1, 250, new Object[]{ getMessage() }, "Alternate Visit ID");
169                                               this.add(IS.class, false, 1, 1, new Object[]{ getMessage(), new Integer(326) }, "Visit Indicator");
170                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Other Healthcare Provider");
171        } catch(HL7Exception e) {
172           log.error("Unexpected error creating PV1 - this is probably a bug in the source code generator.", e);
173        }
174     }
175 
176 
177 
178     /**
179      * Returns
180      * PV1-1: "Set ID - PV1" - creates it if necessary
181      */
182     public SI getSetIDPV1() { 
183 		SI retVal = this.getTypedField(1, 0);
184 		return retVal;
185     }
186     
187     /**
188      * Returns
189      * PV1-1: "Set ID - PV1" - creates it if necessary
190      */
191     public SI getPv11_SetIDPV1() { 
192 		SI retVal = this.getTypedField(1, 0);
193 		return retVal;
194     }
195 
196 
197 
198     /**
199      * Returns
200      * PV1-2: "Patient Class" - creates it if necessary
201      */
202     public IS getPatientClass() { 
203 		IS retVal = this.getTypedField(2, 0);
204 		return retVal;
205     }
206     
207     /**
208      * Returns
209      * PV1-2: "Patient Class" - creates it if necessary
210      */
211     public IS getPv12_PatientClass() { 
212 		IS retVal = this.getTypedField(2, 0);
213 		return retVal;
214     }
215 
216 
217 
218     /**
219      * Returns
220      * PV1-3: "Assigned Patient Location" - creates it if necessary
221      */
222     public PL getAssignedPatientLocation() { 
223 		PL retVal = this.getTypedField(3, 0);
224 		return retVal;
225     }
226     
227     /**
228      * Returns
229      * PV1-3: "Assigned Patient Location" - creates it if necessary
230      */
231     public PL getPv13_AssignedPatientLocation() { 
232 		PL retVal = this.getTypedField(3, 0);
233 		return retVal;
234     }
235 
236 
237 
238     /**
239      * Returns
240      * PV1-4: "Admission Type" - creates it if necessary
241      */
242     public IS getAdmissionType() { 
243 		IS retVal = this.getTypedField(4, 0);
244 		return retVal;
245     }
246     
247     /**
248      * Returns
249      * PV1-4: "Admission Type" - creates it if necessary
250      */
251     public IS getPv14_AdmissionType() { 
252 		IS retVal = this.getTypedField(4, 0);
253 		return retVal;
254     }
255 
256 
257 
258     /**
259      * Returns
260      * PV1-5: "Preadmit Number" - creates it if necessary
261      */
262     public CX getPreadmitNumber() { 
263 		CX retVal = this.getTypedField(5, 0);
264 		return retVal;
265     }
266     
267     /**
268      * Returns
269      * PV1-5: "Preadmit Number" - creates it if necessary
270      */
271     public CX getPv15_PreadmitNumber() { 
272 		CX retVal = this.getTypedField(5, 0);
273 		return retVal;
274     }
275 
276 
277 
278     /**
279      * Returns
280      * PV1-6: "Prior Patient Location" - creates it if necessary
281      */
282     public PL getPriorPatientLocation() { 
283 		PL retVal = this.getTypedField(6, 0);
284 		return retVal;
285     }
286     
287     /**
288      * Returns
289      * PV1-6: "Prior Patient Location" - creates it if necessary
290      */
291     public PL getPv16_PriorPatientLocation() { 
292 		PL retVal = this.getTypedField(6, 0);
293 		return retVal;
294     }
295 
296 
297     /**
298      * Returns all repetitions of Attending Doctor (PV1-7).
299      */
300     public XCN[] getAttendingDoctor() {
301     	XCN[] retVal = this.getTypedField(7, new XCN[0]);
302     	return retVal;
303     }
304 
305 
306     /**
307      * Returns all repetitions of Attending Doctor (PV1-7).
308      */
309     public XCN[] getPv17_AttendingDoctor() {
310     	XCN[] retVal = this.getTypedField(7, new XCN[0]);
311     	return retVal;
312     }
313 
314 
315     /**
316      * Returns a count of the current number of repetitions of Attending Doctor (PV1-7).
317      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
318      * it will return zero.
319      */
320     public int getAttendingDoctorReps() {
321     	return this.getReps(7);
322     }
323 
324 
325     /**
326      * Returns a specific repetition of
327      * PV1-7: "Attending Doctor" - creates it if necessary
328      *
329      * @param rep The repetition index (0-indexed)
330      */
331     public XCN getAttendingDoctor(int rep) { 
332 		XCN retVal = this.getTypedField(7, rep);
333 		return retVal;
334     }
335 
336     /**
337      * Returns a specific repetition of
338      * PV1-7: "Attending Doctor" - creates it if necessary
339      *
340      * @param rep The repetition index (0-indexed)
341      */
342     public XCN getPv17_AttendingDoctor(int rep) { 
343 		XCN retVal = this.getTypedField(7, rep);
344 		return retVal;
345     }
346 
347     /**
348      * Returns a count of the current number of repetitions of Attending Doctor (PV1-7).
349      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
350      * it will return zero.
351      */
352     public int getPv17_AttendingDoctorReps() {
353     	return this.getReps(7);
354     }
355 
356 
357     /**
358      * Inserts a repetition of
359      * PV1-7: "Attending Doctor" at a specific index
360      *
361      * @param rep The repetition index (0-indexed)
362      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
363      */
364     public XCN insertAttendingDoctor(int rep) throws HL7Exception { 
365         return (XCN) super.insertRepetition(7, rep);
366     }
367 
368 
369     /**
370      * Inserts a repetition of
371      * PV1-7: "Attending Doctor" at a specific index
372      *
373      * @param rep The repetition index (0-indexed)
374      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
375      */
376     public XCN insertPv17_AttendingDoctor(int rep) throws HL7Exception { 
377         return (XCN) super.insertRepetition(7, rep);
378     }
379 
380 
381     /**
382      * Removes a repetition of
383      * PV1-7: "Attending Doctor" at a specific index
384      *
385      * @param rep The repetition index (0-indexed)
386      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
387      */
388     public XCN removeAttendingDoctor(int rep) throws HL7Exception { 
389         return (XCN) super.removeRepetition(7, rep);
390     }
391 
392 
393     /**
394      * Removes a repetition of
395      * PV1-7: "Attending Doctor" at a specific index
396      *
397      * @param rep The repetition index (0-indexed)
398      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
399      */
400     public XCN removePv17_AttendingDoctor(int rep) throws HL7Exception { 
401         return (XCN) super.removeRepetition(7, rep);
402     }
403 
404 
405 
406     /**
407      * Returns all repetitions of Referring Doctor (PV1-8).
408      */
409     public XCN[] getReferringDoctor() {
410     	XCN[] retVal = this.getTypedField(8, new XCN[0]);
411     	return retVal;
412     }
413 
414 
415     /**
416      * Returns all repetitions of Referring Doctor (PV1-8).
417      */
418     public XCN[] getPv18_ReferringDoctor() {
419     	XCN[] retVal = this.getTypedField(8, new XCN[0]);
420     	return retVal;
421     }
422 
423 
424     /**
425      * Returns a count of the current number of repetitions of Referring Doctor (PV1-8).
426      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
427      * it will return zero.
428      */
429     public int getReferringDoctorReps() {
430     	return this.getReps(8);
431     }
432 
433 
434     /**
435      * Returns a specific repetition of
436      * PV1-8: "Referring Doctor" - creates it if necessary
437      *
438      * @param rep The repetition index (0-indexed)
439      */
440     public XCN getReferringDoctor(int rep) { 
441 		XCN retVal = this.getTypedField(8, rep);
442 		return retVal;
443     }
444 
445     /**
446      * Returns a specific repetition of
447      * PV1-8: "Referring Doctor" - creates it if necessary
448      *
449      * @param rep The repetition index (0-indexed)
450      */
451     public XCN getPv18_ReferringDoctor(int rep) { 
452 		XCN retVal = this.getTypedField(8, rep);
453 		return retVal;
454     }
455 
456     /**
457      * Returns a count of the current number of repetitions of Referring Doctor (PV1-8).
458      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
459      * it will return zero.
460      */
461     public int getPv18_ReferringDoctorReps() {
462     	return this.getReps(8);
463     }
464 
465 
466     /**
467      * Inserts a repetition of
468      * PV1-8: "Referring Doctor" 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 XCN insertReferringDoctor(int rep) throws HL7Exception { 
474         return (XCN) super.insertRepetition(8, rep);
475     }
476 
477 
478     /**
479      * Inserts a repetition of
480      * PV1-8: "Referring Doctor" 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 XCN insertPv18_ReferringDoctor(int rep) throws HL7Exception { 
486         return (XCN) super.insertRepetition(8, rep);
487     }
488 
489 
490     /**
491      * Removes a repetition of
492      * PV1-8: "Referring Doctor" at a specific index
493      *
494      * @param rep The repetition index (0-indexed)
495      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
496      */
497     public XCN removeReferringDoctor(int rep) throws HL7Exception { 
498         return (XCN) super.removeRepetition(8, rep);
499     }
500 
501 
502     /**
503      * Removes a repetition of
504      * PV1-8: "Referring Doctor" at a specific index
505      *
506      * @param rep The repetition index (0-indexed)
507      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
508      */
509     public XCN removePv18_ReferringDoctor(int rep) throws HL7Exception { 
510         return (XCN) super.removeRepetition(8, rep);
511     }
512 
513 
514 
515     /**
516      * Returns all repetitions of Consulting Doctor (PV1-9).
517      */
518     public XCN[] getConsultingDoctor() {
519     	XCN[] retVal = this.getTypedField(9, new XCN[0]);
520     	return retVal;
521     }
522 
523 
524     /**
525      * Returns all repetitions of Consulting Doctor (PV1-9).
526      */
527     public XCN[] getPv19_ConsultingDoctor() {
528     	XCN[] retVal = this.getTypedField(9, new XCN[0]);
529     	return retVal;
530     }
531 
532 
533     /**
534      * Returns a count of the current number of repetitions of Consulting Doctor (PV1-9).
535      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
536      * it will return zero.
537      */
538     public int getConsultingDoctorReps() {
539     	return this.getReps(9);
540     }
541 
542 
543     /**
544      * Returns a specific repetition of
545      * PV1-9: "Consulting Doctor" - creates it if necessary
546      *
547      * @param rep The repetition index (0-indexed)
548      */
549     public XCN getConsultingDoctor(int rep) { 
550 		XCN retVal = this.getTypedField(9, rep);
551 		return retVal;
552     }
553 
554     /**
555      * Returns a specific repetition of
556      * PV1-9: "Consulting Doctor" - creates it if necessary
557      *
558      * @param rep The repetition index (0-indexed)
559      */
560     public XCN getPv19_ConsultingDoctor(int rep) { 
561 		XCN retVal = this.getTypedField(9, rep);
562 		return retVal;
563     }
564 
565     /**
566      * Returns a count of the current number of repetitions of Consulting Doctor (PV1-9).
567      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
568      * it will return zero.
569      */
570     public int getPv19_ConsultingDoctorReps() {
571     	return this.getReps(9);
572     }
573 
574 
575     /**
576      * Inserts a repetition of
577      * PV1-9: "Consulting Doctor" at a specific index
578      *
579      * @param rep The repetition index (0-indexed)
580      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
581      */
582     public XCN insertConsultingDoctor(int rep) throws HL7Exception { 
583         return (XCN) super.insertRepetition(9, rep);
584     }
585 
586 
587     /**
588      * Inserts a repetition of
589      * PV1-9: "Consulting Doctor" at a specific index
590      *
591      * @param rep The repetition index (0-indexed)
592      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
593      */
594     public XCN insertPv19_ConsultingDoctor(int rep) throws HL7Exception { 
595         return (XCN) super.insertRepetition(9, rep);
596     }
597 
598 
599     /**
600      * Removes a repetition of
601      * PV1-9: "Consulting Doctor" at a specific index
602      *
603      * @param rep The repetition index (0-indexed)
604      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
605      */
606     public XCN removeConsultingDoctor(int rep) throws HL7Exception { 
607         return (XCN) super.removeRepetition(9, rep);
608     }
609 
610 
611     /**
612      * Removes a repetition of
613      * PV1-9: "Consulting Doctor" at a specific index
614      *
615      * @param rep The repetition index (0-indexed)
616      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
617      */
618     public XCN removePv19_ConsultingDoctor(int rep) throws HL7Exception { 
619         return (XCN) super.removeRepetition(9, rep);
620     }
621 
622 
623 
624 
625     /**
626      * Returns
627      * PV1-10: "Hospital Service" - creates it if necessary
628      */
629     public IS getHospitalService() { 
630 		IS retVal = this.getTypedField(10, 0);
631 		return retVal;
632     }
633     
634     /**
635      * Returns
636      * PV1-10: "Hospital Service" - creates it if necessary
637      */
638     public IS getPv110_HospitalService() { 
639 		IS retVal = this.getTypedField(10, 0);
640 		return retVal;
641     }
642 
643 
644 
645     /**
646      * Returns
647      * PV1-11: "Temporary Location" - creates it if necessary
648      */
649     public PL getTemporaryLocation() { 
650 		PL retVal = this.getTypedField(11, 0);
651 		return retVal;
652     }
653     
654     /**
655      * Returns
656      * PV1-11: "Temporary Location" - creates it if necessary
657      */
658     public PL getPv111_TemporaryLocation() { 
659 		PL retVal = this.getTypedField(11, 0);
660 		return retVal;
661     }
662 
663 
664 
665     /**
666      * Returns
667      * PV1-12: "Preadmit Test Indicator" - creates it if necessary
668      */
669     public IS getPreadmitTestIndicator() { 
670 		IS retVal = this.getTypedField(12, 0);
671 		return retVal;
672     }
673     
674     /**
675      * Returns
676      * PV1-12: "Preadmit Test Indicator" - creates it if necessary
677      */
678     public IS getPv112_PreadmitTestIndicator() { 
679 		IS retVal = this.getTypedField(12, 0);
680 		return retVal;
681     }
682 
683 
684 
685     /**
686      * Returns
687      * PV1-13: "Re-admission Indicator" - creates it if necessary
688      */
689     public IS getReAdmissionIndicator() { 
690 		IS retVal = this.getTypedField(13, 0);
691 		return retVal;
692     }
693     
694     /**
695      * Returns
696      * PV1-13: "Re-admission Indicator" - creates it if necessary
697      */
698     public IS getPv113_ReAdmissionIndicator() { 
699 		IS retVal = this.getTypedField(13, 0);
700 		return retVal;
701     }
702 
703 
704 
705     /**
706      * Returns
707      * PV1-14: "Admit Source" - creates it if necessary
708      */
709     public IS getAdmitSource() { 
710 		IS retVal = this.getTypedField(14, 0);
711 		return retVal;
712     }
713     
714     /**
715      * Returns
716      * PV1-14: "Admit Source" - creates it if necessary
717      */
718     public IS getPv114_AdmitSource() { 
719 		IS retVal = this.getTypedField(14, 0);
720 		return retVal;
721     }
722 
723 
724     /**
725      * Returns all repetitions of Ambulatory Status (PV1-15).
726      */
727     public IS[] getAmbulatoryStatus() {
728     	IS[] retVal = this.getTypedField(15, new IS[0]);
729     	return retVal;
730     }
731 
732 
733     /**
734      * Returns all repetitions of Ambulatory Status (PV1-15).
735      */
736     public IS[] getPv115_AmbulatoryStatus() {
737     	IS[] retVal = this.getTypedField(15, new IS[0]);
738     	return retVal;
739     }
740 
741 
742     /**
743      * Returns a count of the current number of repetitions of Ambulatory Status (PV1-15).
744      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
745      * it will return zero.
746      */
747     public int getAmbulatoryStatusReps() {
748     	return this.getReps(15);
749     }
750 
751 
752     /**
753      * Returns a specific repetition of
754      * PV1-15: "Ambulatory Status" - creates it if necessary
755      *
756      * @param rep The repetition index (0-indexed)
757      */
758     public IS getAmbulatoryStatus(int rep) { 
759 		IS retVal = this.getTypedField(15, rep);
760 		return retVal;
761     }
762 
763     /**
764      * Returns a specific repetition of
765      * PV1-15: "Ambulatory Status" - creates it if necessary
766      *
767      * @param rep The repetition index (0-indexed)
768      */
769     public IS getPv115_AmbulatoryStatus(int rep) { 
770 		IS retVal = this.getTypedField(15, rep);
771 		return retVal;
772     }
773 
774     /**
775      * Returns a count of the current number of repetitions of Ambulatory Status (PV1-15).
776      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
777      * it will return zero.
778      */
779     public int getPv115_AmbulatoryStatusReps() {
780     	return this.getReps(15);
781     }
782 
783 
784     /**
785      * Inserts a repetition of
786      * PV1-15: "Ambulatory Status" at a specific index
787      *
788      * @param rep The repetition index (0-indexed)
789      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
790      */
791     public IS insertAmbulatoryStatus(int rep) throws HL7Exception { 
792         return (IS) super.insertRepetition(15, rep);
793     }
794 
795 
796     /**
797      * Inserts a repetition of
798      * PV1-15: "Ambulatory Status" at a specific index
799      *
800      * @param rep The repetition index (0-indexed)
801      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
802      */
803     public IS insertPv115_AmbulatoryStatus(int rep) throws HL7Exception { 
804         return (IS) super.insertRepetition(15, rep);
805     }
806 
807 
808     /**
809      * Removes a repetition of
810      * PV1-15: "Ambulatory Status" at a specific index
811      *
812      * @param rep The repetition index (0-indexed)
813      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
814      */
815     public IS removeAmbulatoryStatus(int rep) throws HL7Exception { 
816         return (IS) super.removeRepetition(15, rep);
817     }
818 
819 
820     /**
821      * Removes a repetition of
822      * PV1-15: "Ambulatory Status" at a specific index
823      *
824      * @param rep The repetition index (0-indexed)
825      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
826      */
827     public IS removePv115_AmbulatoryStatus(int rep) throws HL7Exception { 
828         return (IS) super.removeRepetition(15, rep);
829     }
830 
831 
832 
833 
834     /**
835      * Returns
836      * PV1-16: "VIP Indicator" - creates it if necessary
837      */
838     public IS getVIPIndicator() { 
839 		IS retVal = this.getTypedField(16, 0);
840 		return retVal;
841     }
842     
843     /**
844      * Returns
845      * PV1-16: "VIP Indicator" - creates it if necessary
846      */
847     public IS getPv116_VIPIndicator() { 
848 		IS retVal = this.getTypedField(16, 0);
849 		return retVal;
850     }
851 
852 
853     /**
854      * Returns all repetitions of Admitting Doctor (PV1-17).
855      */
856     public XCN[] getAdmittingDoctor() {
857     	XCN[] retVal = this.getTypedField(17, new XCN[0]);
858     	return retVal;
859     }
860 
861 
862     /**
863      * Returns all repetitions of Admitting Doctor (PV1-17).
864      */
865     public XCN[] getPv117_AdmittingDoctor() {
866     	XCN[] retVal = this.getTypedField(17, new XCN[0]);
867     	return retVal;
868     }
869 
870 
871     /**
872      * Returns a count of the current number of repetitions of Admitting Doctor (PV1-17).
873      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
874      * it will return zero.
875      */
876     public int getAdmittingDoctorReps() {
877     	return this.getReps(17);
878     }
879 
880 
881     /**
882      * Returns a specific repetition of
883      * PV1-17: "Admitting Doctor" - creates it if necessary
884      *
885      * @param rep The repetition index (0-indexed)
886      */
887     public XCN getAdmittingDoctor(int rep) { 
888 		XCN retVal = this.getTypedField(17, rep);
889 		return retVal;
890     }
891 
892     /**
893      * Returns a specific repetition of
894      * PV1-17: "Admitting Doctor" - creates it if necessary
895      *
896      * @param rep The repetition index (0-indexed)
897      */
898     public XCN getPv117_AdmittingDoctor(int rep) { 
899 		XCN retVal = this.getTypedField(17, rep);
900 		return retVal;
901     }
902 
903     /**
904      * Returns a count of the current number of repetitions of Admitting Doctor (PV1-17).
905      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
906      * it will return zero.
907      */
908     public int getPv117_AdmittingDoctorReps() {
909     	return this.getReps(17);
910     }
911 
912 
913     /**
914      * Inserts a repetition of
915      * PV1-17: "Admitting Doctor" at a specific index
916      *
917      * @param rep The repetition index (0-indexed)
918      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
919      */
920     public XCN insertAdmittingDoctor(int rep) throws HL7Exception { 
921         return (XCN) super.insertRepetition(17, rep);
922     }
923 
924 
925     /**
926      * Inserts a repetition of
927      * PV1-17: "Admitting Doctor" at a specific index
928      *
929      * @param rep The repetition index (0-indexed)
930      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
931      */
932     public XCN insertPv117_AdmittingDoctor(int rep) throws HL7Exception { 
933         return (XCN) super.insertRepetition(17, rep);
934     }
935 
936 
937     /**
938      * Removes a repetition of
939      * PV1-17: "Admitting Doctor" at a specific index
940      *
941      * @param rep The repetition index (0-indexed)
942      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
943      */
944     public XCN removeAdmittingDoctor(int rep) throws HL7Exception { 
945         return (XCN) super.removeRepetition(17, rep);
946     }
947 
948 
949     /**
950      * Removes a repetition of
951      * PV1-17: "Admitting Doctor" at a specific index
952      *
953      * @param rep The repetition index (0-indexed)
954      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
955      */
956     public XCN removePv117_AdmittingDoctor(int rep) throws HL7Exception { 
957         return (XCN) super.removeRepetition(17, rep);
958     }
959 
960 
961 
962 
963     /**
964      * Returns
965      * PV1-18: "Patient Type" - creates it if necessary
966      */
967     public IS getPatientType() { 
968 		IS retVal = this.getTypedField(18, 0);
969 		return retVal;
970     }
971     
972     /**
973      * Returns
974      * PV1-18: "Patient Type" - creates it if necessary
975      */
976     public IS getPv118_PatientType() { 
977 		IS retVal = this.getTypedField(18, 0);
978 		return retVal;
979     }
980 
981 
982 
983     /**
984      * Returns
985      * PV1-19: "Visit Number" - creates it if necessary
986      */
987     public CX getVisitNumber() { 
988 		CX retVal = this.getTypedField(19, 0);
989 		return retVal;
990     }
991     
992     /**
993      * Returns
994      * PV1-19: "Visit Number" - creates it if necessary
995      */
996     public CX getPv119_VisitNumber() { 
997 		CX retVal = this.getTypedField(19, 0);
998 		return retVal;
999     }
1000 
1001 
1002     /**
1003      * Returns all repetitions of Financial Class (PV1-20).
1004      */
1005     public FC[] getFinancialClass() {
1006     	FC[] retVal = this.getTypedField(20, new FC[0]);
1007     	return retVal;
1008     }
1009 
1010 
1011     /**
1012      * Returns all repetitions of Financial Class (PV1-20).
1013      */
1014     public FC[] getPv120_FinancialClass() {
1015     	FC[] retVal = this.getTypedField(20, new FC[0]);
1016     	return retVal;
1017     }
1018 
1019 
1020     /**
1021      * Returns a count of the current number of repetitions of Financial Class (PV1-20).
1022      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1023      * it will return zero.
1024      */
1025     public int getFinancialClassReps() {
1026     	return this.getReps(20);
1027     }
1028 
1029 
1030     /**
1031      * Returns a specific repetition of
1032      * PV1-20: "Financial Class" - creates it if necessary
1033      *
1034      * @param rep The repetition index (0-indexed)
1035      */
1036     public FC getFinancialClass(int rep) { 
1037 		FC retVal = this.getTypedField(20, rep);
1038 		return retVal;
1039     }
1040 
1041     /**
1042      * Returns a specific repetition of
1043      * PV1-20: "Financial Class" - creates it if necessary
1044      *
1045      * @param rep The repetition index (0-indexed)
1046      */
1047     public FC getPv120_FinancialClass(int rep) { 
1048 		FC retVal = this.getTypedField(20, rep);
1049 		return retVal;
1050     }
1051 
1052     /**
1053      * Returns a count of the current number of repetitions of Financial Class (PV1-20).
1054      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1055      * it will return zero.
1056      */
1057     public int getPv120_FinancialClassReps() {
1058     	return this.getReps(20);
1059     }
1060 
1061 
1062     /**
1063      * Inserts a repetition of
1064      * PV1-20: "Financial Class" at a specific index
1065      *
1066      * @param rep The repetition index (0-indexed)
1067      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1068      */
1069     public FC insertFinancialClass(int rep) throws HL7Exception { 
1070         return (FC) super.insertRepetition(20, rep);
1071     }
1072 
1073 
1074     /**
1075      * Inserts a repetition of
1076      * PV1-20: "Financial Class" at a specific index
1077      *
1078      * @param rep The repetition index (0-indexed)
1079      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1080      */
1081     public FC insertPv120_FinancialClass(int rep) throws HL7Exception { 
1082         return (FC) super.insertRepetition(20, rep);
1083     }
1084 
1085 
1086     /**
1087      * Removes a repetition of
1088      * PV1-20: "Financial Class" at a specific index
1089      *
1090      * @param rep The repetition index (0-indexed)
1091      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1092      */
1093     public FC removeFinancialClass(int rep) throws HL7Exception { 
1094         return (FC) super.removeRepetition(20, rep);
1095     }
1096 
1097 
1098     /**
1099      * Removes a repetition of
1100      * PV1-20: "Financial Class" at a specific index
1101      *
1102      * @param rep The repetition index (0-indexed)
1103      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1104      */
1105     public FC removePv120_FinancialClass(int rep) throws HL7Exception { 
1106         return (FC) super.removeRepetition(20, rep);
1107     }
1108 
1109 
1110 
1111 
1112     /**
1113      * Returns
1114      * PV1-21: "Charge Price Indicator" - creates it if necessary
1115      */
1116     public IS getChargePriceIndicator() { 
1117 		IS retVal = this.getTypedField(21, 0);
1118 		return retVal;
1119     }
1120     
1121     /**
1122      * Returns
1123      * PV1-21: "Charge Price Indicator" - creates it if necessary
1124      */
1125     public IS getPv121_ChargePriceIndicator() { 
1126 		IS retVal = this.getTypedField(21, 0);
1127 		return retVal;
1128     }
1129 
1130 
1131 
1132     /**
1133      * Returns
1134      * PV1-22: "Courtesy Code" - creates it if necessary
1135      */
1136     public IS getCourtesyCode() { 
1137 		IS retVal = this.getTypedField(22, 0);
1138 		return retVal;
1139     }
1140     
1141     /**
1142      * Returns
1143      * PV1-22: "Courtesy Code" - creates it if necessary
1144      */
1145     public IS getPv122_CourtesyCode() { 
1146 		IS retVal = this.getTypedField(22, 0);
1147 		return retVal;
1148     }
1149 
1150 
1151 
1152     /**
1153      * Returns
1154      * PV1-23: "Credit Rating" - creates it if necessary
1155      */
1156     public IS getCreditRating() { 
1157 		IS retVal = this.getTypedField(23, 0);
1158 		return retVal;
1159     }
1160     
1161     /**
1162      * Returns
1163      * PV1-23: "Credit Rating" - creates it if necessary
1164      */
1165     public IS getPv123_CreditRating() { 
1166 		IS retVal = this.getTypedField(23, 0);
1167 		return retVal;
1168     }
1169 
1170 
1171     /**
1172      * Returns all repetitions of Contract Code (PV1-24).
1173      */
1174     public IS[] getContractCode() {
1175     	IS[] retVal = this.getTypedField(24, new IS[0]);
1176     	return retVal;
1177     }
1178 
1179 
1180     /**
1181      * Returns all repetitions of Contract Code (PV1-24).
1182      */
1183     public IS[] getPv124_ContractCode() {
1184     	IS[] retVal = this.getTypedField(24, new IS[0]);
1185     	return retVal;
1186     }
1187 
1188 
1189     /**
1190      * Returns a count of the current number of repetitions of Contract Code (PV1-24).
1191      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1192      * it will return zero.
1193      */
1194     public int getContractCodeReps() {
1195     	return this.getReps(24);
1196     }
1197 
1198 
1199     /**
1200      * Returns a specific repetition of
1201      * PV1-24: "Contract Code" - creates it if necessary
1202      *
1203      * @param rep The repetition index (0-indexed)
1204      */
1205     public IS getContractCode(int rep) { 
1206 		IS retVal = this.getTypedField(24, rep);
1207 		return retVal;
1208     }
1209 
1210     /**
1211      * Returns a specific repetition of
1212      * PV1-24: "Contract Code" - creates it if necessary
1213      *
1214      * @param rep The repetition index (0-indexed)
1215      */
1216     public IS getPv124_ContractCode(int rep) { 
1217 		IS retVal = this.getTypedField(24, rep);
1218 		return retVal;
1219     }
1220 
1221     /**
1222      * Returns a count of the current number of repetitions of Contract Code (PV1-24).
1223      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1224      * it will return zero.
1225      */
1226     public int getPv124_ContractCodeReps() {
1227     	return this.getReps(24);
1228     }
1229 
1230 
1231     /**
1232      * Inserts a repetition of
1233      * PV1-24: "Contract Code" at a specific index
1234      *
1235      * @param rep The repetition index (0-indexed)
1236      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1237      */
1238     public IS insertContractCode(int rep) throws HL7Exception { 
1239         return (IS) super.insertRepetition(24, rep);
1240     }
1241 
1242 
1243     /**
1244      * Inserts a repetition of
1245      * PV1-24: "Contract Code" at a specific index
1246      *
1247      * @param rep The repetition index (0-indexed)
1248      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1249      */
1250     public IS insertPv124_ContractCode(int rep) throws HL7Exception { 
1251         return (IS) super.insertRepetition(24, rep);
1252     }
1253 
1254 
1255     /**
1256      * Removes a repetition of
1257      * PV1-24: "Contract Code" at a specific index
1258      *
1259      * @param rep The repetition index (0-indexed)
1260      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1261      */
1262     public IS removeContractCode(int rep) throws HL7Exception { 
1263         return (IS) super.removeRepetition(24, rep);
1264     }
1265 
1266 
1267     /**
1268      * Removes a repetition of
1269      * PV1-24: "Contract Code" at a specific index
1270      *
1271      * @param rep The repetition index (0-indexed)
1272      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1273      */
1274     public IS removePv124_ContractCode(int rep) throws HL7Exception { 
1275         return (IS) super.removeRepetition(24, rep);
1276     }
1277 
1278 
1279 
1280     /**
1281      * Returns all repetitions of Contract Effective Date (PV1-25).
1282      */
1283     public DT[] getContractEffectiveDate() {
1284     	DT[] retVal = this.getTypedField(25, new DT[0]);
1285     	return retVal;
1286     }
1287 
1288 
1289     /**
1290      * Returns all repetitions of Contract Effective Date (PV1-25).
1291      */
1292     public DT[] getPv125_ContractEffectiveDate() {
1293     	DT[] retVal = this.getTypedField(25, new DT[0]);
1294     	return retVal;
1295     }
1296 
1297 
1298     /**
1299      * Returns a count of the current number of repetitions of Contract Effective Date (PV1-25).
1300      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1301      * it will return zero.
1302      */
1303     public int getContractEffectiveDateReps() {
1304     	return this.getReps(25);
1305     }
1306 
1307 
1308     /**
1309      * Returns a specific repetition of
1310      * PV1-25: "Contract Effective Date" - creates it if necessary
1311      *
1312      * @param rep The repetition index (0-indexed)
1313      */
1314     public DT getContractEffectiveDate(int rep) { 
1315 		DT retVal = this.getTypedField(25, rep);
1316 		return retVal;
1317     }
1318 
1319     /**
1320      * Returns a specific repetition of
1321      * PV1-25: "Contract Effective Date" - creates it if necessary
1322      *
1323      * @param rep The repetition index (0-indexed)
1324      */
1325     public DT getPv125_ContractEffectiveDate(int rep) { 
1326 		DT retVal = this.getTypedField(25, rep);
1327 		return retVal;
1328     }
1329 
1330     /**
1331      * Returns a count of the current number of repetitions of Contract Effective Date (PV1-25).
1332      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1333      * it will return zero.
1334      */
1335     public int getPv125_ContractEffectiveDateReps() {
1336     	return this.getReps(25);
1337     }
1338 
1339 
1340     /**
1341      * Inserts a repetition of
1342      * PV1-25: "Contract Effective Date" at a specific index
1343      *
1344      * @param rep The repetition index (0-indexed)
1345      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1346      */
1347     public DT insertContractEffectiveDate(int rep) throws HL7Exception { 
1348         return (DT) super.insertRepetition(25, rep);
1349     }
1350 
1351 
1352     /**
1353      * Inserts a repetition of
1354      * PV1-25: "Contract Effective Date" at a specific index
1355      *
1356      * @param rep The repetition index (0-indexed)
1357      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1358      */
1359     public DT insertPv125_ContractEffectiveDate(int rep) throws HL7Exception { 
1360         return (DT) super.insertRepetition(25, rep);
1361     }
1362 
1363 
1364     /**
1365      * Removes a repetition of
1366      * PV1-25: "Contract Effective Date" at a specific index
1367      *
1368      * @param rep The repetition index (0-indexed)
1369      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1370      */
1371     public DT removeContractEffectiveDate(int rep) throws HL7Exception { 
1372         return (DT) super.removeRepetition(25, rep);
1373     }
1374 
1375 
1376     /**
1377      * Removes a repetition of
1378      * PV1-25: "Contract Effective Date" at a specific index
1379      *
1380      * @param rep The repetition index (0-indexed)
1381      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1382      */
1383     public DT removePv125_ContractEffectiveDate(int rep) throws HL7Exception { 
1384         return (DT) super.removeRepetition(25, rep);
1385     }
1386 
1387 
1388 
1389     /**
1390      * Returns all repetitions of Contract Amount (PV1-26).
1391      */
1392     public NM[] getContractAmount() {
1393     	NM[] retVal = this.getTypedField(26, new NM[0]);
1394     	return retVal;
1395     }
1396 
1397 
1398     /**
1399      * Returns all repetitions of Contract Amount (PV1-26).
1400      */
1401     public NM[] getPv126_ContractAmount() {
1402     	NM[] retVal = this.getTypedField(26, new NM[0]);
1403     	return retVal;
1404     }
1405 
1406 
1407     /**
1408      * Returns a count of the current number of repetitions of Contract Amount (PV1-26).
1409      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1410      * it will return zero.
1411      */
1412     public int getContractAmountReps() {
1413     	return this.getReps(26);
1414     }
1415 
1416 
1417     /**
1418      * Returns a specific repetition of
1419      * PV1-26: "Contract Amount" - creates it if necessary
1420      *
1421      * @param rep The repetition index (0-indexed)
1422      */
1423     public NM getContractAmount(int rep) { 
1424 		NM retVal = this.getTypedField(26, rep);
1425 		return retVal;
1426     }
1427 
1428     /**
1429      * Returns a specific repetition of
1430      * PV1-26: "Contract Amount" - creates it if necessary
1431      *
1432      * @param rep The repetition index (0-indexed)
1433      */
1434     public NM getPv126_ContractAmount(int rep) { 
1435 		NM retVal = this.getTypedField(26, rep);
1436 		return retVal;
1437     }
1438 
1439     /**
1440      * Returns a count of the current number of repetitions of Contract Amount (PV1-26).
1441      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1442      * it will return zero.
1443      */
1444     public int getPv126_ContractAmountReps() {
1445     	return this.getReps(26);
1446     }
1447 
1448 
1449     /**
1450      * Inserts a repetition of
1451      * PV1-26: "Contract Amount" at a specific index
1452      *
1453      * @param rep The repetition index (0-indexed)
1454      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1455      */
1456     public NM insertContractAmount(int rep) throws HL7Exception { 
1457         return (NM) super.insertRepetition(26, rep);
1458     }
1459 
1460 
1461     /**
1462      * Inserts a repetition of
1463      * PV1-26: "Contract Amount" at a specific index
1464      *
1465      * @param rep The repetition index (0-indexed)
1466      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1467      */
1468     public NM insertPv126_ContractAmount(int rep) throws HL7Exception { 
1469         return (NM) super.insertRepetition(26, rep);
1470     }
1471 
1472 
1473     /**
1474      * Removes a repetition of
1475      * PV1-26: "Contract Amount" at a specific index
1476      *
1477      * @param rep The repetition index (0-indexed)
1478      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1479      */
1480     public NM removeContractAmount(int rep) throws HL7Exception { 
1481         return (NM) super.removeRepetition(26, rep);
1482     }
1483 
1484 
1485     /**
1486      * Removes a repetition of
1487      * PV1-26: "Contract Amount" at a specific index
1488      *
1489      * @param rep The repetition index (0-indexed)
1490      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1491      */
1492     public NM removePv126_ContractAmount(int rep) throws HL7Exception { 
1493         return (NM) super.removeRepetition(26, rep);
1494     }
1495 
1496 
1497 
1498     /**
1499      * Returns all repetitions of Contract Period (PV1-27).
1500      */
1501     public NM[] getContractPeriod() {
1502     	NM[] retVal = this.getTypedField(27, new NM[0]);
1503     	return retVal;
1504     }
1505 
1506 
1507     /**
1508      * Returns all repetitions of Contract Period (PV1-27).
1509      */
1510     public NM[] getPv127_ContractPeriod() {
1511     	NM[] retVal = this.getTypedField(27, new NM[0]);
1512     	return retVal;
1513     }
1514 
1515 
1516     /**
1517      * Returns a count of the current number of repetitions of Contract Period (PV1-27).
1518      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1519      * it will return zero.
1520      */
1521     public int getContractPeriodReps() {
1522     	return this.getReps(27);
1523     }
1524 
1525 
1526     /**
1527      * Returns a specific repetition of
1528      * PV1-27: "Contract Period" - creates it if necessary
1529      *
1530      * @param rep The repetition index (0-indexed)
1531      */
1532     public NM getContractPeriod(int rep) { 
1533 		NM retVal = this.getTypedField(27, rep);
1534 		return retVal;
1535     }
1536 
1537     /**
1538      * Returns a specific repetition of
1539      * PV1-27: "Contract Period" - creates it if necessary
1540      *
1541      * @param rep The repetition index (0-indexed)
1542      */
1543     public NM getPv127_ContractPeriod(int rep) { 
1544 		NM retVal = this.getTypedField(27, rep);
1545 		return retVal;
1546     }
1547 
1548     /**
1549      * Returns a count of the current number of repetitions of Contract Period (PV1-27).
1550      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1551      * it will return zero.
1552      */
1553     public int getPv127_ContractPeriodReps() {
1554     	return this.getReps(27);
1555     }
1556 
1557 
1558     /**
1559      * Inserts a repetition of
1560      * PV1-27: "Contract Period" at a specific index
1561      *
1562      * @param rep The repetition index (0-indexed)
1563      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1564      */
1565     public NM insertContractPeriod(int rep) throws HL7Exception { 
1566         return (NM) super.insertRepetition(27, rep);
1567     }
1568 
1569 
1570     /**
1571      * Inserts a repetition of
1572      * PV1-27: "Contract Period" at a specific index
1573      *
1574      * @param rep The repetition index (0-indexed)
1575      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1576      */
1577     public NM insertPv127_ContractPeriod(int rep) throws HL7Exception { 
1578         return (NM) super.insertRepetition(27, rep);
1579     }
1580 
1581 
1582     /**
1583      * Removes a repetition of
1584      * PV1-27: "Contract Period" at a specific index
1585      *
1586      * @param rep The repetition index (0-indexed)
1587      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1588      */
1589     public NM removeContractPeriod(int rep) throws HL7Exception { 
1590         return (NM) super.removeRepetition(27, rep);
1591     }
1592 
1593 
1594     /**
1595      * Removes a repetition of
1596      * PV1-27: "Contract Period" at a specific index
1597      *
1598      * @param rep The repetition index (0-indexed)
1599      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1600      */
1601     public NM removePv127_ContractPeriod(int rep) throws HL7Exception { 
1602         return (NM) super.removeRepetition(27, rep);
1603     }
1604 
1605 
1606 
1607 
1608     /**
1609      * Returns
1610      * PV1-28: "Interest Code" - creates it if necessary
1611      */
1612     public IS getInterestCode() { 
1613 		IS retVal = this.getTypedField(28, 0);
1614 		return retVal;
1615     }
1616     
1617     /**
1618      * Returns
1619      * PV1-28: "Interest Code" - creates it if necessary
1620      */
1621     public IS getPv128_InterestCode() { 
1622 		IS retVal = this.getTypedField(28, 0);
1623 		return retVal;
1624     }
1625 
1626 
1627 
1628     /**
1629      * Returns
1630      * PV1-29: "Transfer to Bad Debt Code" - creates it if necessary
1631      */
1632     public IS getTransferToBadDebtCode() { 
1633 		IS retVal = this.getTypedField(29, 0);
1634 		return retVal;
1635     }
1636     
1637     /**
1638      * Returns
1639      * PV1-29: "Transfer to Bad Debt Code" - creates it if necessary
1640      */
1641     public IS getPv129_TransferToBadDebtCode() { 
1642 		IS retVal = this.getTypedField(29, 0);
1643 		return retVal;
1644     }
1645 
1646 
1647 
1648     /**
1649      * Returns
1650      * PV1-30: "Transfer to Bad Debt Date" - creates it if necessary
1651      */
1652     public DT getTransferToBadDebtDate() { 
1653 		DT retVal = this.getTypedField(30, 0);
1654 		return retVal;
1655     }
1656     
1657     /**
1658      * Returns
1659      * PV1-30: "Transfer to Bad Debt Date" - creates it if necessary
1660      */
1661     public DT getPv130_TransferToBadDebtDate() { 
1662 		DT retVal = this.getTypedField(30, 0);
1663 		return retVal;
1664     }
1665 
1666 
1667 
1668     /**
1669      * Returns
1670      * PV1-31: "Bad Debt Agency Code" - creates it if necessary
1671      */
1672     public IS getBadDebtAgencyCode() { 
1673 		IS retVal = this.getTypedField(31, 0);
1674 		return retVal;
1675     }
1676     
1677     /**
1678      * Returns
1679      * PV1-31: "Bad Debt Agency Code" - creates it if necessary
1680      */
1681     public IS getPv131_BadDebtAgencyCode() { 
1682 		IS retVal = this.getTypedField(31, 0);
1683 		return retVal;
1684     }
1685 
1686 
1687 
1688     /**
1689      * Returns
1690      * PV1-32: "Bad Debt Transfer Amount" - creates it if necessary
1691      */
1692     public NM getBadDebtTransferAmount() { 
1693 		NM retVal = this.getTypedField(32, 0);
1694 		return retVal;
1695     }
1696     
1697     /**
1698      * Returns
1699      * PV1-32: "Bad Debt Transfer Amount" - creates it if necessary
1700      */
1701     public NM getPv132_BadDebtTransferAmount() { 
1702 		NM retVal = this.getTypedField(32, 0);
1703 		return retVal;
1704     }
1705 
1706 
1707 
1708     /**
1709      * Returns
1710      * PV1-33: "Bad Debt Recovery Amount" - creates it if necessary
1711      */
1712     public NM getBadDebtRecoveryAmount() { 
1713 		NM retVal = this.getTypedField(33, 0);
1714 		return retVal;
1715     }
1716     
1717     /**
1718      * Returns
1719      * PV1-33: "Bad Debt Recovery Amount" - creates it if necessary
1720      */
1721     public NM getPv133_BadDebtRecoveryAmount() { 
1722 		NM retVal = this.getTypedField(33, 0);
1723 		return retVal;
1724     }
1725 
1726 
1727 
1728     /**
1729      * Returns
1730      * PV1-34: "Delete Account Indicator" - creates it if necessary
1731      */
1732     public IS getDeleteAccountIndicator() { 
1733 		IS retVal = this.getTypedField(34, 0);
1734 		return retVal;
1735     }
1736     
1737     /**
1738      * Returns
1739      * PV1-34: "Delete Account Indicator" - creates it if necessary
1740      */
1741     public IS getPv134_DeleteAccountIndicator() { 
1742 		IS retVal = this.getTypedField(34, 0);
1743 		return retVal;
1744     }
1745 
1746 
1747 
1748     /**
1749      * Returns
1750      * PV1-35: "Delete Account Date" - creates it if necessary
1751      */
1752     public DT getDeleteAccountDate() { 
1753 		DT retVal = this.getTypedField(35, 0);
1754 		return retVal;
1755     }
1756     
1757     /**
1758      * Returns
1759      * PV1-35: "Delete Account Date" - creates it if necessary
1760      */
1761     public DT getPv135_DeleteAccountDate() { 
1762 		DT retVal = this.getTypedField(35, 0);
1763 		return retVal;
1764     }
1765 
1766 
1767 
1768     /**
1769      * Returns
1770      * PV1-36: "Discharge Disposition" - creates it if necessary
1771      */
1772     public IS getDischargeDisposition() { 
1773 		IS retVal = this.getTypedField(36, 0);
1774 		return retVal;
1775     }
1776     
1777     /**
1778      * Returns
1779      * PV1-36: "Discharge Disposition" - creates it if necessary
1780      */
1781     public IS getPv136_DischargeDisposition() { 
1782 		IS retVal = this.getTypedField(36, 0);
1783 		return retVal;
1784     }
1785 
1786 
1787 
1788     /**
1789      * Returns
1790      * PV1-37: "Discharged to Location" - creates it if necessary
1791      */
1792     public DLD getDischargedToLocation() { 
1793 		DLD retVal = this.getTypedField(37, 0);
1794 		return retVal;
1795     }
1796     
1797     /**
1798      * Returns
1799      * PV1-37: "Discharged to Location" - creates it if necessary
1800      */
1801     public DLD getPv137_DischargedToLocation() { 
1802 		DLD retVal = this.getTypedField(37, 0);
1803 		return retVal;
1804     }
1805 
1806 
1807 
1808     /**
1809      * Returns
1810      * PV1-38: "Diet Type" - creates it if necessary
1811      */
1812     public CE getDietType() { 
1813 		CE retVal = this.getTypedField(38, 0);
1814 		return retVal;
1815     }
1816     
1817     /**
1818      * Returns
1819      * PV1-38: "Diet Type" - creates it if necessary
1820      */
1821     public CE getPv138_DietType() { 
1822 		CE retVal = this.getTypedField(38, 0);
1823 		return retVal;
1824     }
1825 
1826 
1827 
1828     /**
1829      * Returns
1830      * PV1-39: "Servicing Facility" - creates it if necessary
1831      */
1832     public IS getServicingFacility() { 
1833 		IS retVal = this.getTypedField(39, 0);
1834 		return retVal;
1835     }
1836     
1837     /**
1838      * Returns
1839      * PV1-39: "Servicing Facility" - creates it if necessary
1840      */
1841     public IS getPv139_ServicingFacility() { 
1842 		IS retVal = this.getTypedField(39, 0);
1843 		return retVal;
1844     }
1845 
1846 
1847 
1848     /**
1849      * Returns
1850      * PV1-40: "Bed Status" - creates it if necessary
1851      */
1852     public IS getBedStatus() { 
1853 		IS retVal = this.getTypedField(40, 0);
1854 		return retVal;
1855     }
1856     
1857     /**
1858      * Returns
1859      * PV1-40: "Bed Status" - creates it if necessary
1860      */
1861     public IS getPv140_BedStatus() { 
1862 		IS retVal = this.getTypedField(40, 0);
1863 		return retVal;
1864     }
1865 
1866 
1867 
1868     /**
1869      * Returns
1870      * PV1-41: "Account Status" - creates it if necessary
1871      */
1872     public IS getAccountStatus() { 
1873 		IS retVal = this.getTypedField(41, 0);
1874 		return retVal;
1875     }
1876     
1877     /**
1878      * Returns
1879      * PV1-41: "Account Status" - creates it if necessary
1880      */
1881     public IS getPv141_AccountStatus() { 
1882 		IS retVal = this.getTypedField(41, 0);
1883 		return retVal;
1884     }
1885 
1886 
1887 
1888     /**
1889      * Returns
1890      * PV1-42: "Pending Location" - creates it if necessary
1891      */
1892     public PL getPendingLocation() { 
1893 		PL retVal = this.getTypedField(42, 0);
1894 		return retVal;
1895     }
1896     
1897     /**
1898      * Returns
1899      * PV1-42: "Pending Location" - creates it if necessary
1900      */
1901     public PL getPv142_PendingLocation() { 
1902 		PL retVal = this.getTypedField(42, 0);
1903 		return retVal;
1904     }
1905 
1906 
1907 
1908     /**
1909      * Returns
1910      * PV1-43: "Prior Temporary Location" - creates it if necessary
1911      */
1912     public PL getPriorTemporaryLocation() { 
1913 		PL retVal = this.getTypedField(43, 0);
1914 		return retVal;
1915     }
1916     
1917     /**
1918      * Returns
1919      * PV1-43: "Prior Temporary Location" - creates it if necessary
1920      */
1921     public PL getPv143_PriorTemporaryLocation() { 
1922 		PL retVal = this.getTypedField(43, 0);
1923 		return retVal;
1924     }
1925 
1926 
1927 
1928     /**
1929      * Returns
1930      * PV1-44: "Admit Date/Time" - creates it if necessary
1931      */
1932     public TS getAdmitDateTime() { 
1933 		TS retVal = this.getTypedField(44, 0);
1934 		return retVal;
1935     }
1936     
1937     /**
1938      * Returns
1939      * PV1-44: "Admit Date/Time" - creates it if necessary
1940      */
1941     public TS getPv144_AdmitDateTime() { 
1942 		TS retVal = this.getTypedField(44, 0);
1943 		return retVal;
1944     }
1945 
1946 
1947     /**
1948      * Returns all repetitions of Discharge Date/Time (PV1-45).
1949      */
1950     public TS[] getDischargeDateTime() {
1951     	TS[] retVal = this.getTypedField(45, new TS[0]);
1952     	return retVal;
1953     }
1954 
1955 
1956     /**
1957      * Returns all repetitions of Discharge Date/Time (PV1-45).
1958      */
1959     public TS[] getPv145_DischargeDateTime() {
1960     	TS[] retVal = this.getTypedField(45, new TS[0]);
1961     	return retVal;
1962     }
1963 
1964 
1965     /**
1966      * Returns a count of the current number of repetitions of Discharge Date/Time (PV1-45).
1967      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1968      * it will return zero.
1969      */
1970     public int getDischargeDateTimeReps() {
1971     	return this.getReps(45);
1972     }
1973 
1974 
1975     /**
1976      * Returns a specific repetition of
1977      * PV1-45: "Discharge Date/Time" - creates it if necessary
1978      *
1979      * @param rep The repetition index (0-indexed)
1980      */
1981     public TS getDischargeDateTime(int rep) { 
1982 		TS retVal = this.getTypedField(45, rep);
1983 		return retVal;
1984     }
1985 
1986     /**
1987      * Returns a specific repetition of
1988      * PV1-45: "Discharge Date/Time" - creates it if necessary
1989      *
1990      * @param rep The repetition index (0-indexed)
1991      */
1992     public TS getPv145_DischargeDateTime(int rep) { 
1993 		TS retVal = this.getTypedField(45, rep);
1994 		return retVal;
1995     }
1996 
1997     /**
1998      * Returns a count of the current number of repetitions of Discharge Date/Time (PV1-45).
1999      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2000      * it will return zero.
2001      */
2002     public int getPv145_DischargeDateTimeReps() {
2003     	return this.getReps(45);
2004     }
2005 
2006 
2007     /**
2008      * Inserts a repetition of
2009      * PV1-45: "Discharge Date/Time" at a specific index
2010      *
2011      * @param rep The repetition index (0-indexed)
2012      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2013      */
2014     public TS insertDischargeDateTime(int rep) throws HL7Exception { 
2015         return (TS) super.insertRepetition(45, rep);
2016     }
2017 
2018 
2019     /**
2020      * Inserts a repetition of
2021      * PV1-45: "Discharge Date/Time" at a specific index
2022      *
2023      * @param rep The repetition index (0-indexed)
2024      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2025      */
2026     public TS insertPv145_DischargeDateTime(int rep) throws HL7Exception { 
2027         return (TS) super.insertRepetition(45, rep);
2028     }
2029 
2030 
2031     /**
2032      * Removes a repetition of
2033      * PV1-45: "Discharge Date/Time" at a specific index
2034      *
2035      * @param rep The repetition index (0-indexed)
2036      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2037      */
2038     public TS removeDischargeDateTime(int rep) throws HL7Exception { 
2039         return (TS) super.removeRepetition(45, rep);
2040     }
2041 
2042 
2043     /**
2044      * Removes a repetition of
2045      * PV1-45: "Discharge Date/Time" at a specific index
2046      *
2047      * @param rep The repetition index (0-indexed)
2048      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2049      */
2050     public TS removePv145_DischargeDateTime(int rep) throws HL7Exception { 
2051         return (TS) super.removeRepetition(45, rep);
2052     }
2053 
2054 
2055 
2056 
2057     /**
2058      * Returns
2059      * PV1-46: "Current Patient Balance" - creates it if necessary
2060      */
2061     public NM getCurrentPatientBalance() { 
2062 		NM retVal = this.getTypedField(46, 0);
2063 		return retVal;
2064     }
2065     
2066     /**
2067      * Returns
2068      * PV1-46: "Current Patient Balance" - creates it if necessary
2069      */
2070     public NM getPv146_CurrentPatientBalance() { 
2071 		NM retVal = this.getTypedField(46, 0);
2072 		return retVal;
2073     }
2074 
2075 
2076 
2077     /**
2078      * Returns
2079      * PV1-47: "Total Charges" - creates it if necessary
2080      */
2081     public NM getTotalCharges() { 
2082 		NM retVal = this.getTypedField(47, 0);
2083 		return retVal;
2084     }
2085     
2086     /**
2087      * Returns
2088      * PV1-47: "Total Charges" - creates it if necessary
2089      */
2090     public NM getPv147_TotalCharges() { 
2091 		NM retVal = this.getTypedField(47, 0);
2092 		return retVal;
2093     }
2094 
2095 
2096 
2097     /**
2098      * Returns
2099      * PV1-48: "Total Adjustments" - creates it if necessary
2100      */
2101     public NM getTotalAdjustments() { 
2102 		NM retVal = this.getTypedField(48, 0);
2103 		return retVal;
2104     }
2105     
2106     /**
2107      * Returns
2108      * PV1-48: "Total Adjustments" - creates it if necessary
2109      */
2110     public NM getPv148_TotalAdjustments() { 
2111 		NM retVal = this.getTypedField(48, 0);
2112 		return retVal;
2113     }
2114 
2115 
2116 
2117     /**
2118      * Returns
2119      * PV1-49: "Total Payments" - creates it if necessary
2120      */
2121     public NM getTotalPayments() { 
2122 		NM retVal = this.getTypedField(49, 0);
2123 		return retVal;
2124     }
2125     
2126     /**
2127      * Returns
2128      * PV1-49: "Total Payments" - creates it if necessary
2129      */
2130     public NM getPv149_TotalPayments() { 
2131 		NM retVal = this.getTypedField(49, 0);
2132 		return retVal;
2133     }
2134 
2135 
2136 
2137     /**
2138      * Returns
2139      * PV1-50: "Alternate Visit ID" - creates it if necessary
2140      */
2141     public CX getAlternateVisitID() { 
2142 		CX retVal = this.getTypedField(50, 0);
2143 		return retVal;
2144     }
2145     
2146     /**
2147      * Returns
2148      * PV1-50: "Alternate Visit ID" - creates it if necessary
2149      */
2150     public CX getPv150_AlternateVisitID() { 
2151 		CX retVal = this.getTypedField(50, 0);
2152 		return retVal;
2153     }
2154 
2155 
2156 
2157     /**
2158      * Returns
2159      * PV1-51: "Visit Indicator" - creates it if necessary
2160      */
2161     public IS getVisitIndicator() { 
2162 		IS retVal = this.getTypedField(51, 0);
2163 		return retVal;
2164     }
2165     
2166     /**
2167      * Returns
2168      * PV1-51: "Visit Indicator" - creates it if necessary
2169      */
2170     public IS getPv151_VisitIndicator() { 
2171 		IS retVal = this.getTypedField(51, 0);
2172 		return retVal;
2173     }
2174 
2175 
2176     /**
2177      * Returns all repetitions of Other Healthcare Provider (PV1-52).
2178      */
2179     public XCN[] getOtherHealthcareProvider() {
2180     	XCN[] retVal = this.getTypedField(52, new XCN[0]);
2181     	return retVal;
2182     }
2183 
2184 
2185     /**
2186      * Returns all repetitions of Other Healthcare Provider (PV1-52).
2187      */
2188     public XCN[] getPv152_OtherHealthcareProvider() {
2189     	XCN[] retVal = this.getTypedField(52, new XCN[0]);
2190     	return retVal;
2191     }
2192 
2193 
2194     /**
2195      * Returns a count of the current number of repetitions of Other Healthcare Provider (PV1-52).
2196      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2197      * it will return zero.
2198      */
2199     public int getOtherHealthcareProviderReps() {
2200     	return this.getReps(52);
2201     }
2202 
2203 
2204     /**
2205      * Returns a specific repetition of
2206      * PV1-52: "Other Healthcare Provider" - creates it if necessary
2207      *
2208      * @param rep The repetition index (0-indexed)
2209      */
2210     public XCN getOtherHealthcareProvider(int rep) { 
2211 		XCN retVal = this.getTypedField(52, rep);
2212 		return retVal;
2213     }
2214 
2215     /**
2216      * Returns a specific repetition of
2217      * PV1-52: "Other Healthcare Provider" - creates it if necessary
2218      *
2219      * @param rep The repetition index (0-indexed)
2220      */
2221     public XCN getPv152_OtherHealthcareProvider(int rep) { 
2222 		XCN retVal = this.getTypedField(52, rep);
2223 		return retVal;
2224     }
2225 
2226     /**
2227      * Returns a count of the current number of repetitions of Other Healthcare Provider (PV1-52).
2228      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2229      * it will return zero.
2230      */
2231     public int getPv152_OtherHealthcareProviderReps() {
2232     	return this.getReps(52);
2233     }
2234 
2235 
2236     /**
2237      * Inserts a repetition of
2238      * PV1-52: "Other Healthcare Provider" at a specific index
2239      *
2240      * @param rep The repetition index (0-indexed)
2241      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2242      */
2243     public XCN insertOtherHealthcareProvider(int rep) throws HL7Exception { 
2244         return (XCN) super.insertRepetition(52, rep);
2245     }
2246 
2247 
2248     /**
2249      * Inserts a repetition of
2250      * PV1-52: "Other Healthcare Provider" at a specific index
2251      *
2252      * @param rep The repetition index (0-indexed)
2253      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2254      */
2255     public XCN insertPv152_OtherHealthcareProvider(int rep) throws HL7Exception { 
2256         return (XCN) super.insertRepetition(52, rep);
2257     }
2258 
2259 
2260     /**
2261      * Removes a repetition of
2262      * PV1-52: "Other Healthcare Provider" at a specific index
2263      *
2264      * @param rep The repetition index (0-indexed)
2265      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2266      */
2267     public XCN removeOtherHealthcareProvider(int rep) throws HL7Exception { 
2268         return (XCN) super.removeRepetition(52, rep);
2269     }
2270 
2271 
2272     /**
2273      * Removes a repetition of
2274      * PV1-52: "Other Healthcare Provider" at a specific index
2275      *
2276      * @param rep The repetition index (0-indexed)
2277      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2278      */
2279     public XCN removePv152_OtherHealthcareProvider(int rep) throws HL7Exception { 
2280         return (XCN) super.removeRepetition(52, rep);
2281     }
2282 
2283 
2284 
2285 
2286 
2287 
2288     /** {@inheritDoc} */   
2289     protected Type createNewTypeWithoutReflection(int field) {
2290        switch (field) {
2291           case 0: return new SI(getMessage());
2292           case 1: return new IS(getMessage(), new Integer( 4 ));
2293           case 2: return new PL(getMessage());
2294           case 3: return new IS(getMessage(), new Integer( 7 ));
2295           case 4: return new CX(getMessage());
2296           case 5: return new PL(getMessage());
2297           case 6: return new XCN(getMessage());
2298           case 7: return new XCN(getMessage());
2299           case 8: return new XCN(getMessage());
2300           case 9: return new IS(getMessage(), new Integer( 69 ));
2301           case 10: return new PL(getMessage());
2302           case 11: return new IS(getMessage(), new Integer( 87 ));
2303           case 12: return new IS(getMessage(), new Integer( 92 ));
2304           case 13: return new IS(getMessage(), new Integer( 23 ));
2305           case 14: return new IS(getMessage(), new Integer( 9 ));
2306           case 15: return new IS(getMessage(), new Integer( 99 ));
2307           case 16: return new XCN(getMessage());
2308           case 17: return new IS(getMessage(), new Integer( 18 ));
2309           case 18: return new CX(getMessage());
2310           case 19: return new FC(getMessage());
2311           case 20: return new IS(getMessage(), new Integer( 32 ));
2312           case 21: return new IS(getMessage(), new Integer( 45 ));
2313           case 22: return new IS(getMessage(), new Integer( 46 ));
2314           case 23: return new IS(getMessage(), new Integer( 44 ));
2315           case 24: return new DT(getMessage());
2316           case 25: return new NM(getMessage());
2317           case 26: return new NM(getMessage());
2318           case 27: return new IS(getMessage(), new Integer( 73 ));
2319           case 28: return new IS(getMessage(), new Integer( 110 ));
2320           case 29: return new DT(getMessage());
2321           case 30: return new IS(getMessage(), new Integer( 21 ));
2322           case 31: return new NM(getMessage());
2323           case 32: return new NM(getMessage());
2324           case 33: return new IS(getMessage(), new Integer( 111 ));
2325           case 34: return new DT(getMessage());
2326           case 35: return new IS(getMessage(), new Integer( 112 ));
2327           case 36: return new DLD(getMessage());
2328           case 37: return new CE(getMessage());
2329           case 38: return new IS(getMessage(), new Integer( 115 ));
2330           case 39: return new IS(getMessage(), new Integer( 116 ));
2331           case 40: return new IS(getMessage(), new Integer( 117 ));
2332           case 41: return new PL(getMessage());
2333           case 42: return new PL(getMessage());
2334           case 43: return new TS(getMessage());
2335           case 44: return new TS(getMessage());
2336           case 45: return new NM(getMessage());
2337           case 46: return new NM(getMessage());
2338           case 47: return new NM(getMessage());
2339           case 48: return new NM(getMessage());
2340           case 49: return new CX(getMessage());
2341           case 50: return new IS(getMessage(), new Integer( 326 ));
2342           case 51: return new XCN(getMessage());
2343           default: return null;
2344        }
2345    }
2346 
2347 
2348 }
2349