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.v281.segment;
35  
36  // import ca.uhn.hl7v2.model.v281.group.*;
37  import ca.uhn.hl7v2.model.v281.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 ARQ message segment (Appointment Request). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>ARQ-1: Placer Appointment ID (EI) <b> </b>
53       * <li>ARQ-2: Filler Appointment ID (EI) <b>optional </b>
54       * <li>ARQ-3: Occurrence Number (NM) <b>optional </b>
55       * <li>ARQ-4: Placer Group Number (EIP) <b>optional </b>
56       * <li>ARQ-5: Schedule ID (CWE) <b>optional </b>
57       * <li>ARQ-6: Request Event Reason (CWE) <b>optional </b>
58       * <li>ARQ-7: Appointment Reason (CWE) <b>optional </b>
59       * <li>ARQ-8: Appointment Type (CWE) <b>optional </b>
60       * <li>ARQ-9: Appointment Duration (NM) <b>optional </b>
61       * <li>ARQ-10: Appointment Duration Units (CNE) <b>optional </b>
62       * <li>ARQ-11: Requested Start Date/Time Range (DR) <b>optional repeating</b>
63       * <li>ARQ-12: Priority-ARQ (ST) <b>optional </b>
64       * <li>ARQ-13: Repeating Interval (RI) <b>optional </b>
65       * <li>ARQ-14: Repeating Interval Duration (ST) <b>optional </b>
66       * <li>ARQ-15: Placer Contact Person (XCN) <b> repeating</b>
67       * <li>ARQ-16: Placer Contact Phone Number (XTN) <b>optional repeating</b>
68       * <li>ARQ-17: Placer Contact Address (XAD) <b>optional repeating</b>
69       * <li>ARQ-18: Placer Contact Location (PL) <b>optional </b>
70       * <li>ARQ-19: Entered By Person (XCN) <b> repeating</b>
71       * <li>ARQ-20: Entered By Phone Number (XTN) <b>optional repeating</b>
72       * <li>ARQ-21: Entered By Location (PL) <b>optional </b>
73       * <li>ARQ-22: Parent Placer Appointment ID (EI) <b>optional </b>
74       * <li>ARQ-23: Parent Filler Appointment ID (EI) <b>optional </b>
75       * <li>ARQ-24: Placer Order Number (EI) <b>optional repeating</b>
76       * <li>ARQ-25: Filler Order Number (EI) <b>optional repeating</b>
77   * </ul>
78   */
79  @SuppressWarnings("unused")
80  public class ARQ extends AbstractSegment {
81  
82      /** 
83       * Creates a new ARQ segment
84       */
85      public ARQ(Group parent, ModelClassFactory factory) {
86         super(parent, factory);
87         init(factory);
88      }
89  
90      private void init(ModelClassFactory factory) {
91         try {
92                                    this.add(EI.class, true, 1, 0, new Object[]{ getMessage() }, "Placer Appointment ID");
93                                    this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Filler Appointment ID");
94                                    this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Occurrence Number");
95                                    this.add(EIP.class, false, 1, 0, new Object[]{ getMessage() }, "Placer Group Number");
96                                    this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Schedule ID");
97                                    this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Request Event Reason");
98                                    this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Appointment Reason");
99                                    this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Appointment Type");
100                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Appointment Duration");
101                                   this.add(CNE.class, false, 1, 0, new Object[]{ getMessage() }, "Appointment Duration Units");
102                                   this.add(DR.class, false, 0, 0, new Object[]{ getMessage() }, "Requested Start Date/Time Range");
103                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Priority-ARQ");
104                                   this.add(RI.class, false, 1, 0, new Object[]{ getMessage() }, "Repeating Interval");
105                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Repeating Interval Duration");
106                                   this.add(XCN.class, true, 0, 0, new Object[]{ getMessage() }, "Placer Contact Person");
107                                   this.add(XTN.class, false, 0, 0, new Object[]{ getMessage() }, "Placer Contact Phone Number");
108                                   this.add(XAD.class, false, 0, 0, new Object[]{ getMessage() }, "Placer Contact Address");
109                                   this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Placer Contact Location");
110                                   this.add(XCN.class, true, 0, 0, new Object[]{ getMessage() }, "Entered By Person");
111                                   this.add(XTN.class, false, 0, 0, new Object[]{ getMessage() }, "Entered By Phone Number");
112                                   this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Entered By Location");
113                                   this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Parent Placer Appointment ID");
114                                   this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Parent Filler Appointment ID");
115                                   this.add(EI.class, false, 0, 0, new Object[]{ getMessage() }, "Placer Order Number");
116                                   this.add(EI.class, false, 0, 0, new Object[]{ getMessage() }, "Filler Order Number");
117        } catch(HL7Exception e) {
118           log.error("Unexpected error creating ARQ - this is probably a bug in the source code generator.", e);
119        }
120     }
121 
122 
123 
124     /**
125      * Returns
126      * ARQ-1: "Placer Appointment ID" - creates it if necessary
127      */
128     public EI getPlacerAppointmentID() { 
129 		EI retVal = this.getTypedField(1, 0);
130 		return retVal;
131     }
132     
133     /**
134      * Returns
135      * ARQ-1: "Placer Appointment ID" - creates it if necessary
136      */
137     public EI getArq1_PlacerAppointmentID() { 
138 		EI retVal = this.getTypedField(1, 0);
139 		return retVal;
140     }
141 
142 
143 
144     /**
145      * Returns
146      * ARQ-2: "Filler Appointment ID" - creates it if necessary
147      */
148     public EI getFillerAppointmentID() { 
149 		EI retVal = this.getTypedField(2, 0);
150 		return retVal;
151     }
152     
153     /**
154      * Returns
155      * ARQ-2: "Filler Appointment ID" - creates it if necessary
156      */
157     public EI getArq2_FillerAppointmentID() { 
158 		EI retVal = this.getTypedField(2, 0);
159 		return retVal;
160     }
161 
162 
163 
164     /**
165      * Returns
166      * ARQ-3: "Occurrence Number" - creates it if necessary
167      */
168     public NM getOccurrenceNumber() { 
169 		NM retVal = this.getTypedField(3, 0);
170 		return retVal;
171     }
172     
173     /**
174      * Returns
175      * ARQ-3: "Occurrence Number" - creates it if necessary
176      */
177     public NM getArq3_OccurrenceNumber() { 
178 		NM retVal = this.getTypedField(3, 0);
179 		return retVal;
180     }
181 
182 
183 
184     /**
185      * Returns
186      * ARQ-4: "Placer Group Number" - creates it if necessary
187      */
188     public EIP getPlacerGroupNumber() { 
189 		EIP retVal = this.getTypedField(4, 0);
190 		return retVal;
191     }
192     
193     /**
194      * Returns
195      * ARQ-4: "Placer Group Number" - creates it if necessary
196      */
197     public EIP getArq4_PlacerGroupNumber() { 
198 		EIP retVal = this.getTypedField(4, 0);
199 		return retVal;
200     }
201 
202 
203 
204     /**
205      * Returns
206      * ARQ-5: "Schedule ID" - creates it if necessary
207      */
208     public CWE getScheduleID() { 
209 		CWE retVal = this.getTypedField(5, 0);
210 		return retVal;
211     }
212     
213     /**
214      * Returns
215      * ARQ-5: "Schedule ID" - creates it if necessary
216      */
217     public CWE getArq5_ScheduleID() { 
218 		CWE retVal = this.getTypedField(5, 0);
219 		return retVal;
220     }
221 
222 
223 
224     /**
225      * Returns
226      * ARQ-6: "Request Event Reason" - creates it if necessary
227      */
228     public CWE getRequestEventReason() { 
229 		CWE retVal = this.getTypedField(6, 0);
230 		return retVal;
231     }
232     
233     /**
234      * Returns
235      * ARQ-6: "Request Event Reason" - creates it if necessary
236      */
237     public CWE getArq6_RequestEventReason() { 
238 		CWE retVal = this.getTypedField(6, 0);
239 		return retVal;
240     }
241 
242 
243 
244     /**
245      * Returns
246      * ARQ-7: "Appointment Reason" - creates it if necessary
247      */
248     public CWE getAppointmentReason() { 
249 		CWE retVal = this.getTypedField(7, 0);
250 		return retVal;
251     }
252     
253     /**
254      * Returns
255      * ARQ-7: "Appointment Reason" - creates it if necessary
256      */
257     public CWE getArq7_AppointmentReason() { 
258 		CWE retVal = this.getTypedField(7, 0);
259 		return retVal;
260     }
261 
262 
263 
264     /**
265      * Returns
266      * ARQ-8: "Appointment Type" - creates it if necessary
267      */
268     public CWE getAppointmentType() { 
269 		CWE retVal = this.getTypedField(8, 0);
270 		return retVal;
271     }
272     
273     /**
274      * Returns
275      * ARQ-8: "Appointment Type" - creates it if necessary
276      */
277     public CWE getArq8_AppointmentType() { 
278 		CWE retVal = this.getTypedField(8, 0);
279 		return retVal;
280     }
281 
282 
283 
284     /**
285      * Returns
286      * ARQ-9: "Appointment Duration" - creates it if necessary
287      */
288     public NM getAppointmentDuration() { 
289 		NM retVal = this.getTypedField(9, 0);
290 		return retVal;
291     }
292     
293     /**
294      * Returns
295      * ARQ-9: "Appointment Duration" - creates it if necessary
296      */
297     public NM getArq9_AppointmentDuration() { 
298 		NM retVal = this.getTypedField(9, 0);
299 		return retVal;
300     }
301 
302 
303 
304     /**
305      * Returns
306      * ARQ-10: "Appointment Duration Units" - creates it if necessary
307      */
308     public CNE getAppointmentDurationUnits() { 
309 		CNE retVal = this.getTypedField(10, 0);
310 		return retVal;
311     }
312     
313     /**
314      * Returns
315      * ARQ-10: "Appointment Duration Units" - creates it if necessary
316      */
317     public CNE getArq10_AppointmentDurationUnits() { 
318 		CNE retVal = this.getTypedField(10, 0);
319 		return retVal;
320     }
321 
322 
323     /**
324      * Returns all repetitions of Requested Start Date/Time Range (ARQ-11).
325      */
326     public DR[] getRequestedStartDateTimeRange() {
327     	DR[] retVal = this.getTypedField(11, new DR[0]);
328     	return retVal;
329     }
330 
331 
332     /**
333      * Returns all repetitions of Requested Start Date/Time Range (ARQ-11).
334      */
335     public DR[] getArq11_RequestedStartDateTimeRange() {
336     	DR[] retVal = this.getTypedField(11, new DR[0]);
337     	return retVal;
338     }
339 
340 
341     /**
342      * Returns a count of the current number of repetitions of Requested Start Date/Time Range (ARQ-11).
343      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
344      * it will return zero.
345      */
346     public int getRequestedStartDateTimeRangeReps() {
347     	return this.getReps(11);
348     }
349 
350 
351     /**
352      * Returns a specific repetition of
353      * ARQ-11: "Requested Start Date/Time Range" - creates it if necessary
354      *
355      * @param rep The repetition index (0-indexed)
356      */
357     public DR getRequestedStartDateTimeRange(int rep) { 
358 		DR retVal = this.getTypedField(11, rep);
359 		return retVal;
360     }
361 
362     /**
363      * Returns a specific repetition of
364      * ARQ-11: "Requested Start Date/Time Range" - creates it if necessary
365      *
366      * @param rep The repetition index (0-indexed)
367      */
368     public DR getArq11_RequestedStartDateTimeRange(int rep) { 
369 		DR retVal = this.getTypedField(11, rep);
370 		return retVal;
371     }
372 
373     /**
374      * Returns a count of the current number of repetitions of Requested Start Date/Time Range (ARQ-11).
375      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
376      * it will return zero.
377      */
378     public int getArq11_RequestedStartDateTimeRangeReps() {
379     	return this.getReps(11);
380     }
381 
382 
383     /**
384      * Inserts a repetition of
385      * ARQ-11: "Requested Start Date/Time Range" at a specific index
386      *
387      * @param rep The repetition index (0-indexed)
388      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
389      */
390     public DR insertRequestedStartDateTimeRange(int rep) throws HL7Exception { 
391         return (DR) super.insertRepetition(11, rep);
392     }
393 
394 
395     /**
396      * Inserts a repetition of
397      * ARQ-11: "Requested Start Date/Time Range" at a specific index
398      *
399      * @param rep The repetition index (0-indexed)
400      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
401      */
402     public DR insertArq11_RequestedStartDateTimeRange(int rep) throws HL7Exception { 
403         return (DR) super.insertRepetition(11, rep);
404     }
405 
406 
407     /**
408      * Removes a repetition of
409      * ARQ-11: "Requested Start Date/Time Range" at a specific index
410      *
411      * @param rep The repetition index (0-indexed)
412      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
413      */
414     public DR removeRequestedStartDateTimeRange(int rep) throws HL7Exception { 
415         return (DR) super.removeRepetition(11, rep);
416     }
417 
418 
419     /**
420      * Removes a repetition of
421      * ARQ-11: "Requested Start Date/Time Range" at a specific index
422      *
423      * @param rep The repetition index (0-indexed)
424      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
425      */
426     public DR removeArq11_RequestedStartDateTimeRange(int rep) throws HL7Exception { 
427         return (DR) super.removeRepetition(11, rep);
428     }
429 
430 
431 
432 
433     /**
434      * Returns
435      * ARQ-12: "Priority-ARQ" - creates it if necessary
436      */
437     public ST getPriorityARQ() { 
438 		ST retVal = this.getTypedField(12, 0);
439 		return retVal;
440     }
441     
442     /**
443      * Returns
444      * ARQ-12: "Priority-ARQ" - creates it if necessary
445      */
446     public ST getArq12_PriorityARQ() { 
447 		ST retVal = this.getTypedField(12, 0);
448 		return retVal;
449     }
450 
451 
452 
453     /**
454      * Returns
455      * ARQ-13: "Repeating Interval" - creates it if necessary
456      */
457     public RI getRepeatingInterval() { 
458 		RI retVal = this.getTypedField(13, 0);
459 		return retVal;
460     }
461     
462     /**
463      * Returns
464      * ARQ-13: "Repeating Interval" - creates it if necessary
465      */
466     public RI getArq13_RepeatingInterval() { 
467 		RI retVal = this.getTypedField(13, 0);
468 		return retVal;
469     }
470 
471 
472 
473     /**
474      * Returns
475      * ARQ-14: "Repeating Interval Duration" - creates it if necessary
476      */
477     public ST getRepeatingIntervalDuration() { 
478 		ST retVal = this.getTypedField(14, 0);
479 		return retVal;
480     }
481     
482     /**
483      * Returns
484      * ARQ-14: "Repeating Interval Duration" - creates it if necessary
485      */
486     public ST getArq14_RepeatingIntervalDuration() { 
487 		ST retVal = this.getTypedField(14, 0);
488 		return retVal;
489     }
490 
491 
492     /**
493      * Returns all repetitions of Placer Contact Person (ARQ-15).
494      */
495     public XCN[] getPlacerContactPerson() {
496     	XCN[] retVal = this.getTypedField(15, new XCN[0]);
497     	return retVal;
498     }
499 
500 
501     /**
502      * Returns all repetitions of Placer Contact Person (ARQ-15).
503      */
504     public XCN[] getArq15_PlacerContactPerson() {
505     	XCN[] retVal = this.getTypedField(15, new XCN[0]);
506     	return retVal;
507     }
508 
509 
510     /**
511      * Returns a count of the current number of repetitions of Placer Contact Person (ARQ-15).
512      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
513      * it will return zero.
514      */
515     public int getPlacerContactPersonReps() {
516     	return this.getReps(15);
517     }
518 
519 
520     /**
521      * Returns a specific repetition of
522      * ARQ-15: "Placer Contact Person" - creates it if necessary
523      *
524      * @param rep The repetition index (0-indexed)
525      */
526     public XCN getPlacerContactPerson(int rep) { 
527 		XCN retVal = this.getTypedField(15, rep);
528 		return retVal;
529     }
530 
531     /**
532      * Returns a specific repetition of
533      * ARQ-15: "Placer Contact Person" - creates it if necessary
534      *
535      * @param rep The repetition index (0-indexed)
536      */
537     public XCN getArq15_PlacerContactPerson(int rep) { 
538 		XCN retVal = this.getTypedField(15, rep);
539 		return retVal;
540     }
541 
542     /**
543      * Returns a count of the current number of repetitions of Placer Contact Person (ARQ-15).
544      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
545      * it will return zero.
546      */
547     public int getArq15_PlacerContactPersonReps() {
548     	return this.getReps(15);
549     }
550 
551 
552     /**
553      * Inserts a repetition of
554      * ARQ-15: "Placer Contact Person" at a specific index
555      *
556      * @param rep The repetition index (0-indexed)
557      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
558      */
559     public XCN insertPlacerContactPerson(int rep) throws HL7Exception { 
560         return (XCN) super.insertRepetition(15, rep);
561     }
562 
563 
564     /**
565      * Inserts a repetition of
566      * ARQ-15: "Placer Contact Person" at a specific index
567      *
568      * @param rep The repetition index (0-indexed)
569      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
570      */
571     public XCN insertArq15_PlacerContactPerson(int rep) throws HL7Exception { 
572         return (XCN) super.insertRepetition(15, rep);
573     }
574 
575 
576     /**
577      * Removes a repetition of
578      * ARQ-15: "Placer Contact Person" at a specific index
579      *
580      * @param rep The repetition index (0-indexed)
581      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
582      */
583     public XCN removePlacerContactPerson(int rep) throws HL7Exception { 
584         return (XCN) super.removeRepetition(15, rep);
585     }
586 
587 
588     /**
589      * Removes a repetition of
590      * ARQ-15: "Placer Contact Person" at a specific index
591      *
592      * @param rep The repetition index (0-indexed)
593      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
594      */
595     public XCN removeArq15_PlacerContactPerson(int rep) throws HL7Exception { 
596         return (XCN) super.removeRepetition(15, rep);
597     }
598 
599 
600 
601     /**
602      * Returns all repetitions of Placer Contact Phone Number (ARQ-16).
603      */
604     public XTN[] getPlacerContactPhoneNumber() {
605     	XTN[] retVal = this.getTypedField(16, new XTN[0]);
606     	return retVal;
607     }
608 
609 
610     /**
611      * Returns all repetitions of Placer Contact Phone Number (ARQ-16).
612      */
613     public XTN[] getArq16_PlacerContactPhoneNumber() {
614     	XTN[] retVal = this.getTypedField(16, new XTN[0]);
615     	return retVal;
616     }
617 
618 
619     /**
620      * Returns a count of the current number of repetitions of Placer Contact Phone Number (ARQ-16).
621      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
622      * it will return zero.
623      */
624     public int getPlacerContactPhoneNumberReps() {
625     	return this.getReps(16);
626     }
627 
628 
629     /**
630      * Returns a specific repetition of
631      * ARQ-16: "Placer Contact Phone Number" - creates it if necessary
632      *
633      * @param rep The repetition index (0-indexed)
634      */
635     public XTN getPlacerContactPhoneNumber(int rep) { 
636 		XTN retVal = this.getTypedField(16, rep);
637 		return retVal;
638     }
639 
640     /**
641      * Returns a specific repetition of
642      * ARQ-16: "Placer Contact Phone Number" - creates it if necessary
643      *
644      * @param rep The repetition index (0-indexed)
645      */
646     public XTN getArq16_PlacerContactPhoneNumber(int rep) { 
647 		XTN retVal = this.getTypedField(16, rep);
648 		return retVal;
649     }
650 
651     /**
652      * Returns a count of the current number of repetitions of Placer Contact Phone Number (ARQ-16).
653      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
654      * it will return zero.
655      */
656     public int getArq16_PlacerContactPhoneNumberReps() {
657     	return this.getReps(16);
658     }
659 
660 
661     /**
662      * Inserts a repetition of
663      * ARQ-16: "Placer Contact Phone Number" at a specific index
664      *
665      * @param rep The repetition index (0-indexed)
666      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
667      */
668     public XTN insertPlacerContactPhoneNumber(int rep) throws HL7Exception { 
669         return (XTN) super.insertRepetition(16, rep);
670     }
671 
672 
673     /**
674      * Inserts a repetition of
675      * ARQ-16: "Placer Contact Phone Number" at a specific index
676      *
677      * @param rep The repetition index (0-indexed)
678      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
679      */
680     public XTN insertArq16_PlacerContactPhoneNumber(int rep) throws HL7Exception { 
681         return (XTN) super.insertRepetition(16, rep);
682     }
683 
684 
685     /**
686      * Removes a repetition of
687      * ARQ-16: "Placer Contact Phone Number" at a specific index
688      *
689      * @param rep The repetition index (0-indexed)
690      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
691      */
692     public XTN removePlacerContactPhoneNumber(int rep) throws HL7Exception { 
693         return (XTN) super.removeRepetition(16, rep);
694     }
695 
696 
697     /**
698      * Removes a repetition of
699      * ARQ-16: "Placer Contact Phone Number" at a specific index
700      *
701      * @param rep The repetition index (0-indexed)
702      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
703      */
704     public XTN removeArq16_PlacerContactPhoneNumber(int rep) throws HL7Exception { 
705         return (XTN) super.removeRepetition(16, rep);
706     }
707 
708 
709 
710     /**
711      * Returns all repetitions of Placer Contact Address (ARQ-17).
712      */
713     public XAD[] getPlacerContactAddress() {
714     	XAD[] retVal = this.getTypedField(17, new XAD[0]);
715     	return retVal;
716     }
717 
718 
719     /**
720      * Returns all repetitions of Placer Contact Address (ARQ-17).
721      */
722     public XAD[] getArq17_PlacerContactAddress() {
723     	XAD[] retVal = this.getTypedField(17, new XAD[0]);
724     	return retVal;
725     }
726 
727 
728     /**
729      * Returns a count of the current number of repetitions of Placer Contact Address (ARQ-17).
730      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
731      * it will return zero.
732      */
733     public int getPlacerContactAddressReps() {
734     	return this.getReps(17);
735     }
736 
737 
738     /**
739      * Returns a specific repetition of
740      * ARQ-17: "Placer Contact Address" - creates it if necessary
741      *
742      * @param rep The repetition index (0-indexed)
743      */
744     public XAD getPlacerContactAddress(int rep) { 
745 		XAD retVal = this.getTypedField(17, rep);
746 		return retVal;
747     }
748 
749     /**
750      * Returns a specific repetition of
751      * ARQ-17: "Placer Contact Address" - creates it if necessary
752      *
753      * @param rep The repetition index (0-indexed)
754      */
755     public XAD getArq17_PlacerContactAddress(int rep) { 
756 		XAD retVal = this.getTypedField(17, rep);
757 		return retVal;
758     }
759 
760     /**
761      * Returns a count of the current number of repetitions of Placer Contact Address (ARQ-17).
762      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
763      * it will return zero.
764      */
765     public int getArq17_PlacerContactAddressReps() {
766     	return this.getReps(17);
767     }
768 
769 
770     /**
771      * Inserts a repetition of
772      * ARQ-17: "Placer Contact Address" at a specific index
773      *
774      * @param rep The repetition index (0-indexed)
775      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
776      */
777     public XAD insertPlacerContactAddress(int rep) throws HL7Exception { 
778         return (XAD) super.insertRepetition(17, rep);
779     }
780 
781 
782     /**
783      * Inserts a repetition of
784      * ARQ-17: "Placer Contact Address" at a specific index
785      *
786      * @param rep The repetition index (0-indexed)
787      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
788      */
789     public XAD insertArq17_PlacerContactAddress(int rep) throws HL7Exception { 
790         return (XAD) super.insertRepetition(17, rep);
791     }
792 
793 
794     /**
795      * Removes a repetition of
796      * ARQ-17: "Placer Contact Address" at a specific index
797      *
798      * @param rep The repetition index (0-indexed)
799      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
800      */
801     public XAD removePlacerContactAddress(int rep) throws HL7Exception { 
802         return (XAD) super.removeRepetition(17, rep);
803     }
804 
805 
806     /**
807      * Removes a repetition of
808      * ARQ-17: "Placer Contact Address" at a specific index
809      *
810      * @param rep The repetition index (0-indexed)
811      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
812      */
813     public XAD removeArq17_PlacerContactAddress(int rep) throws HL7Exception { 
814         return (XAD) super.removeRepetition(17, rep);
815     }
816 
817 
818 
819 
820     /**
821      * Returns
822      * ARQ-18: "Placer Contact Location" - creates it if necessary
823      */
824     public PL getPlacerContactLocation() { 
825 		PL retVal = this.getTypedField(18, 0);
826 		return retVal;
827     }
828     
829     /**
830      * Returns
831      * ARQ-18: "Placer Contact Location" - creates it if necessary
832      */
833     public PL getArq18_PlacerContactLocation() { 
834 		PL retVal = this.getTypedField(18, 0);
835 		return retVal;
836     }
837 
838 
839     /**
840      * Returns all repetitions of Entered By Person (ARQ-19).
841      */
842     public XCN[] getEnteredByPerson() {
843     	XCN[] retVal = this.getTypedField(19, new XCN[0]);
844     	return retVal;
845     }
846 
847 
848     /**
849      * Returns all repetitions of Entered By Person (ARQ-19).
850      */
851     public XCN[] getArq19_EnteredByPerson() {
852     	XCN[] retVal = this.getTypedField(19, new XCN[0]);
853     	return retVal;
854     }
855 
856 
857     /**
858      * Returns a count of the current number of repetitions of Entered By Person (ARQ-19).
859      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
860      * it will return zero.
861      */
862     public int getEnteredByPersonReps() {
863     	return this.getReps(19);
864     }
865 
866 
867     /**
868      * Returns a specific repetition of
869      * ARQ-19: "Entered By Person" - creates it if necessary
870      *
871      * @param rep The repetition index (0-indexed)
872      */
873     public XCN getEnteredByPerson(int rep) { 
874 		XCN retVal = this.getTypedField(19, rep);
875 		return retVal;
876     }
877 
878     /**
879      * Returns a specific repetition of
880      * ARQ-19: "Entered By Person" - creates it if necessary
881      *
882      * @param rep The repetition index (0-indexed)
883      */
884     public XCN getArq19_EnteredByPerson(int rep) { 
885 		XCN retVal = this.getTypedField(19, rep);
886 		return retVal;
887     }
888 
889     /**
890      * Returns a count of the current number of repetitions of Entered By Person (ARQ-19).
891      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
892      * it will return zero.
893      */
894     public int getArq19_EnteredByPersonReps() {
895     	return this.getReps(19);
896     }
897 
898 
899     /**
900      * Inserts a repetition of
901      * ARQ-19: "Entered By Person" at a specific index
902      *
903      * @param rep The repetition index (0-indexed)
904      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
905      */
906     public XCN insertEnteredByPerson(int rep) throws HL7Exception { 
907         return (XCN) super.insertRepetition(19, rep);
908     }
909 
910 
911     /**
912      * Inserts a repetition of
913      * ARQ-19: "Entered By Person" at a specific index
914      *
915      * @param rep The repetition index (0-indexed)
916      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
917      */
918     public XCN insertArq19_EnteredByPerson(int rep) throws HL7Exception { 
919         return (XCN) super.insertRepetition(19, rep);
920     }
921 
922 
923     /**
924      * Removes a repetition of
925      * ARQ-19: "Entered By Person" at a specific index
926      *
927      * @param rep The repetition index (0-indexed)
928      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
929      */
930     public XCN removeEnteredByPerson(int rep) throws HL7Exception { 
931         return (XCN) super.removeRepetition(19, rep);
932     }
933 
934 
935     /**
936      * Removes a repetition of
937      * ARQ-19: "Entered By Person" at a specific index
938      *
939      * @param rep The repetition index (0-indexed)
940      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
941      */
942     public XCN removeArq19_EnteredByPerson(int rep) throws HL7Exception { 
943         return (XCN) super.removeRepetition(19, rep);
944     }
945 
946 
947 
948     /**
949      * Returns all repetitions of Entered By Phone Number (ARQ-20).
950      */
951     public XTN[] getEnteredByPhoneNumber() {
952     	XTN[] retVal = this.getTypedField(20, new XTN[0]);
953     	return retVal;
954     }
955 
956 
957     /**
958      * Returns all repetitions of Entered By Phone Number (ARQ-20).
959      */
960     public XTN[] getArq20_EnteredByPhoneNumber() {
961     	XTN[] retVal = this.getTypedField(20, new XTN[0]);
962     	return retVal;
963     }
964 
965 
966     /**
967      * Returns a count of the current number of repetitions of Entered By Phone Number (ARQ-20).
968      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
969      * it will return zero.
970      */
971     public int getEnteredByPhoneNumberReps() {
972     	return this.getReps(20);
973     }
974 
975 
976     /**
977      * Returns a specific repetition of
978      * ARQ-20: "Entered By Phone Number" - creates it if necessary
979      *
980      * @param rep The repetition index (0-indexed)
981      */
982     public XTN getEnteredByPhoneNumber(int rep) { 
983 		XTN retVal = this.getTypedField(20, rep);
984 		return retVal;
985     }
986 
987     /**
988      * Returns a specific repetition of
989      * ARQ-20: "Entered By Phone Number" - creates it if necessary
990      *
991      * @param rep The repetition index (0-indexed)
992      */
993     public XTN getArq20_EnteredByPhoneNumber(int rep) { 
994 		XTN retVal = this.getTypedField(20, rep);
995 		return retVal;
996     }
997 
998     /**
999      * Returns a count of the current number of repetitions of Entered By Phone Number (ARQ-20).
1000      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1001      * it will return zero.
1002      */
1003     public int getArq20_EnteredByPhoneNumberReps() {
1004     	return this.getReps(20);
1005     }
1006 
1007 
1008     /**
1009      * Inserts a repetition of
1010      * ARQ-20: "Entered By Phone Number" at a specific index
1011      *
1012      * @param rep The repetition index (0-indexed)
1013      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1014      */
1015     public XTN insertEnteredByPhoneNumber(int rep) throws HL7Exception { 
1016         return (XTN) super.insertRepetition(20, rep);
1017     }
1018 
1019 
1020     /**
1021      * Inserts a repetition of
1022      * ARQ-20: "Entered By Phone Number" at a specific index
1023      *
1024      * @param rep The repetition index (0-indexed)
1025      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1026      */
1027     public XTN insertArq20_EnteredByPhoneNumber(int rep) throws HL7Exception { 
1028         return (XTN) super.insertRepetition(20, rep);
1029     }
1030 
1031 
1032     /**
1033      * Removes a repetition of
1034      * ARQ-20: "Entered By Phone Number" at a specific index
1035      *
1036      * @param rep The repetition index (0-indexed)
1037      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1038      */
1039     public XTN removeEnteredByPhoneNumber(int rep) throws HL7Exception { 
1040         return (XTN) super.removeRepetition(20, rep);
1041     }
1042 
1043 
1044     /**
1045      * Removes a repetition of
1046      * ARQ-20: "Entered By Phone Number" at a specific index
1047      *
1048      * @param rep The repetition index (0-indexed)
1049      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1050      */
1051     public XTN removeArq20_EnteredByPhoneNumber(int rep) throws HL7Exception { 
1052         return (XTN) super.removeRepetition(20, rep);
1053     }
1054 
1055 
1056 
1057 
1058     /**
1059      * Returns
1060      * ARQ-21: "Entered By Location" - creates it if necessary
1061      */
1062     public PL getEnteredByLocation() { 
1063 		PL retVal = this.getTypedField(21, 0);
1064 		return retVal;
1065     }
1066     
1067     /**
1068      * Returns
1069      * ARQ-21: "Entered By Location" - creates it if necessary
1070      */
1071     public PL getArq21_EnteredByLocation() { 
1072 		PL retVal = this.getTypedField(21, 0);
1073 		return retVal;
1074     }
1075 
1076 
1077 
1078     /**
1079      * Returns
1080      * ARQ-22: "Parent Placer Appointment ID" - creates it if necessary
1081      */
1082     public EI getParentPlacerAppointmentID() { 
1083 		EI retVal = this.getTypedField(22, 0);
1084 		return retVal;
1085     }
1086     
1087     /**
1088      * Returns
1089      * ARQ-22: "Parent Placer Appointment ID" - creates it if necessary
1090      */
1091     public EI getArq22_ParentPlacerAppointmentID() { 
1092 		EI retVal = this.getTypedField(22, 0);
1093 		return retVal;
1094     }
1095 
1096 
1097 
1098     /**
1099      * Returns
1100      * ARQ-23: "Parent Filler Appointment ID" - creates it if necessary
1101      */
1102     public EI getParentFillerAppointmentID() { 
1103 		EI retVal = this.getTypedField(23, 0);
1104 		return retVal;
1105     }
1106     
1107     /**
1108      * Returns
1109      * ARQ-23: "Parent Filler Appointment ID" - creates it if necessary
1110      */
1111     public EI getArq23_ParentFillerAppointmentID() { 
1112 		EI retVal = this.getTypedField(23, 0);
1113 		return retVal;
1114     }
1115 
1116 
1117     /**
1118      * Returns all repetitions of Placer Order Number (ARQ-24).
1119      */
1120     public EI[] getPlacerOrderNumber() {
1121     	EI[] retVal = this.getTypedField(24, new EI[0]);
1122     	return retVal;
1123     }
1124 
1125 
1126     /**
1127      * Returns all repetitions of Placer Order Number (ARQ-24).
1128      */
1129     public EI[] getArq24_PlacerOrderNumber() {
1130     	EI[] retVal = this.getTypedField(24, new EI[0]);
1131     	return retVal;
1132     }
1133 
1134 
1135     /**
1136      * Returns a count of the current number of repetitions of Placer Order Number (ARQ-24).
1137      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1138      * it will return zero.
1139      */
1140     public int getPlacerOrderNumberReps() {
1141     	return this.getReps(24);
1142     }
1143 
1144 
1145     /**
1146      * Returns a specific repetition of
1147      * ARQ-24: "Placer Order Number" - creates it if necessary
1148      *
1149      * @param rep The repetition index (0-indexed)
1150      */
1151     public EI getPlacerOrderNumber(int rep) { 
1152 		EI retVal = this.getTypedField(24, rep);
1153 		return retVal;
1154     }
1155 
1156     /**
1157      * Returns a specific repetition of
1158      * ARQ-24: "Placer Order Number" - creates it if necessary
1159      *
1160      * @param rep The repetition index (0-indexed)
1161      */
1162     public EI getArq24_PlacerOrderNumber(int rep) { 
1163 		EI retVal = this.getTypedField(24, rep);
1164 		return retVal;
1165     }
1166 
1167     /**
1168      * Returns a count of the current number of repetitions of Placer Order Number (ARQ-24).
1169      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1170      * it will return zero.
1171      */
1172     public int getArq24_PlacerOrderNumberReps() {
1173     	return this.getReps(24);
1174     }
1175 
1176 
1177     /**
1178      * Inserts a repetition of
1179      * ARQ-24: "Placer Order Number" at a specific index
1180      *
1181      * @param rep The repetition index (0-indexed)
1182      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1183      */
1184     public EI insertPlacerOrderNumber(int rep) throws HL7Exception { 
1185         return (EI) super.insertRepetition(24, rep);
1186     }
1187 
1188 
1189     /**
1190      * Inserts a repetition of
1191      * ARQ-24: "Placer Order Number" at a specific index
1192      *
1193      * @param rep The repetition index (0-indexed)
1194      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1195      */
1196     public EI insertArq24_PlacerOrderNumber(int rep) throws HL7Exception { 
1197         return (EI) super.insertRepetition(24, rep);
1198     }
1199 
1200 
1201     /**
1202      * Removes a repetition of
1203      * ARQ-24: "Placer Order Number" at a specific index
1204      *
1205      * @param rep The repetition index (0-indexed)
1206      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1207      */
1208     public EI removePlacerOrderNumber(int rep) throws HL7Exception { 
1209         return (EI) super.removeRepetition(24, rep);
1210     }
1211 
1212 
1213     /**
1214      * Removes a repetition of
1215      * ARQ-24: "Placer Order Number" at a specific index
1216      *
1217      * @param rep The repetition index (0-indexed)
1218      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1219      */
1220     public EI removeArq24_PlacerOrderNumber(int rep) throws HL7Exception { 
1221         return (EI) super.removeRepetition(24, rep);
1222     }
1223 
1224 
1225 
1226     /**
1227      * Returns all repetitions of Filler Order Number (ARQ-25).
1228      */
1229     public EI[] getFillerOrderNumber() {
1230     	EI[] retVal = this.getTypedField(25, new EI[0]);
1231     	return retVal;
1232     }
1233 
1234 
1235     /**
1236      * Returns all repetitions of Filler Order Number (ARQ-25).
1237      */
1238     public EI[] getArq25_FillerOrderNumber() {
1239     	EI[] retVal = this.getTypedField(25, new EI[0]);
1240     	return retVal;
1241     }
1242 
1243 
1244     /**
1245      * Returns a count of the current number of repetitions of Filler Order Number (ARQ-25).
1246      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1247      * it will return zero.
1248      */
1249     public int getFillerOrderNumberReps() {
1250     	return this.getReps(25);
1251     }
1252 
1253 
1254     /**
1255      * Returns a specific repetition of
1256      * ARQ-25: "Filler Order Number" - creates it if necessary
1257      *
1258      * @param rep The repetition index (0-indexed)
1259      */
1260     public EI getFillerOrderNumber(int rep) { 
1261 		EI retVal = this.getTypedField(25, rep);
1262 		return retVal;
1263     }
1264 
1265     /**
1266      * Returns a specific repetition of
1267      * ARQ-25: "Filler Order Number" - creates it if necessary
1268      *
1269      * @param rep The repetition index (0-indexed)
1270      */
1271     public EI getArq25_FillerOrderNumber(int rep) { 
1272 		EI retVal = this.getTypedField(25, rep);
1273 		return retVal;
1274     }
1275 
1276     /**
1277      * Returns a count of the current number of repetitions of Filler Order Number (ARQ-25).
1278      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1279      * it will return zero.
1280      */
1281     public int getArq25_FillerOrderNumberReps() {
1282     	return this.getReps(25);
1283     }
1284 
1285 
1286     /**
1287      * Inserts a repetition of
1288      * ARQ-25: "Filler Order Number" at a specific index
1289      *
1290      * @param rep The repetition index (0-indexed)
1291      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1292      */
1293     public EI insertFillerOrderNumber(int rep) throws HL7Exception { 
1294         return (EI) super.insertRepetition(25, rep);
1295     }
1296 
1297 
1298     /**
1299      * Inserts a repetition of
1300      * ARQ-25: "Filler Order Number" at a specific index
1301      *
1302      * @param rep The repetition index (0-indexed)
1303      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1304      */
1305     public EI insertArq25_FillerOrderNumber(int rep) throws HL7Exception { 
1306         return (EI) super.insertRepetition(25, rep);
1307     }
1308 
1309 
1310     /**
1311      * Removes a repetition of
1312      * ARQ-25: "Filler Order Number" at a specific index
1313      *
1314      * @param rep The repetition index (0-indexed)
1315      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1316      */
1317     public EI removeFillerOrderNumber(int rep) throws HL7Exception { 
1318         return (EI) super.removeRepetition(25, rep);
1319     }
1320 
1321 
1322     /**
1323      * Removes a repetition of
1324      * ARQ-25: "Filler Order Number" at a specific index
1325      *
1326      * @param rep The repetition index (0-indexed)
1327      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1328      */
1329     public EI removeArq25_FillerOrderNumber(int rep) throws HL7Exception { 
1330         return (EI) super.removeRepetition(25, rep);
1331     }
1332 
1333 
1334 
1335 
1336 
1337 
1338     /** {@inheritDoc} */   
1339     protected Type createNewTypeWithoutReflection(int field) {
1340        switch (field) {
1341           case 0: return new EI(getMessage());
1342           case 1: return new EI(getMessage());
1343           case 2: return new NM(getMessage());
1344           case 3: return new EIP(getMessage());
1345           case 4: return new CWE(getMessage());
1346           case 5: return new CWE(getMessage());
1347           case 6: return new CWE(getMessage());
1348           case 7: return new CWE(getMessage());
1349           case 8: return new NM(getMessage());
1350           case 9: return new CNE(getMessage());
1351           case 10: return new DR(getMessage());
1352           case 11: return new ST(getMessage());
1353           case 12: return new RI(getMessage());
1354           case 13: return new ST(getMessage());
1355           case 14: return new XCN(getMessage());
1356           case 15: return new XTN(getMessage());
1357           case 16: return new XAD(getMessage());
1358           case 17: return new PL(getMessage());
1359           case 18: return new XCN(getMessage());
1360           case 19: return new XTN(getMessage());
1361           case 20: return new PL(getMessage());
1362           case 21: return new EI(getMessage());
1363           case 22: return new EI(getMessage());
1364           case 23: return new EI(getMessage());
1365           case 24: return new EI(getMessage());
1366           default: return null;
1367        }
1368    }
1369 
1370 
1371 }
1372