001/*
002 * This class is an auto-generated source file for a HAPI
003 * HL7 v2.x standard structure class.
004 *
005 * For more information, visit: http://hl7api.sourceforge.net/
006 * 
007 * The contents of this file are subject to the Mozilla Public License Version 1.1 
008 * (the "License"); you may not use this file except in compliance with the License. 
009 * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
010 * Software distributed under the License is distributed on an "AS IS" basis, 
011 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
012 * specific language governing rights and limitations under the License. 
013 * 
014 * The Original Code is "[file_name]".  Description: 
015 * "[one_line_description]" 
016 * 
017 * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
018 * 2012.  All Rights Reserved. 
019 * 
020 * Contributor(s): ______________________________________. 
021 * 
022 * Alternatively, the contents of this file may be used under the terms of the 
023 * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
024 * applicable instead of those above.  If you wish to allow use of your version of this 
025 * file only under the terms of the GPL and not to allow others to use your version 
026 * of this file under the MPL, indicate your decision by deleting  the provisions above 
027 * and replace  them with the notice and other provisions required by the GPL License.  
028 * If you do not delete the provisions above, a recipient may use your version of 
029 * this file under either the MPL or the GPL. 
030 * 
031 */
032
033
034package ca.uhn.hl7v2.model.v23.message;
035
036import ca.uhn.hl7v2.model.v23.group.*;
037import ca.uhn.hl7v2.model.v23.segment.*;
038
039import ca.uhn.hl7v2.HL7Exception;
040import ca.uhn.hl7v2.parser.ModelClassFactory;
041import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
042import ca.uhn.hl7v2.model.*;
043
044
045/**
046 * <p>Represents a ADT_AXX message structure (see chapter ). This structure contains the 
047 * following elements: </p>
048 * <ul>
049                                 * <li>1: MSH () <b> </b> </li>
050                                 * <li>2: EVN () <b> </b> </li>
051                                 * <li>3: PID () <b>optional </b> </li>
052                                 * <li>4: PD1 () <b>optional </b> </li>
053                                 * <li>5: MRG () <b>optional </b> </li>
054                                 * <li>6: NK1 () <b>optional repeating</b> </li>
055                                 * <li>7: PV1 () <b>optional </b> </li>
056                                 * <li>8: PV2 () <b>optional </b> </li>
057                                 * <li>9: DB1 () <b>optional repeating</b> </li>
058                                 * <li>10: OBX () <b>optional repeating</b> </li>
059                                 * <li>11: AL1 () <b>optional repeating</b> </li>
060                                 * <li>12: DG1 () <b>optional repeating</b> </li>
061                                 * <li>13: DRG () <b>optional </b> </li>
062                                 * <li>14: ADT_AXX_PROCEDURE () <b>optional repeating</b> </li>
063                                 * <li>15: GT1 () <b>optional repeating</b> </li>
064                                 * <li>16: ADT_AXX_INSURANCE () <b>optional repeating</b> </li>
065                                 * <li>17: ACC () <b>optional </b> </li>
066                                 * <li>18: UB1 () <b>optional </b> </li>
067                                 * <li>19: UB2 () <b>optional </b> </li>
068                                 * <li>20: DRG () <b>optional </b> </li>
069                                 * <li>21: PID () <b>optional </b> </li>
070                                 * <li>22: PD1 () <b>optional </b> </li>
071                                 * <li>23: PV1 () <b>optional </b> </li>
072                                 * <li>24: PV2 () <b>optional </b> </li>
073                                 * <li>25: DB1 () <b>optional repeating</b> </li>
074                                 * <li>26: OBX () <b>optional repeating</b> </li>
075                                 * <li>27: NPU () <b>optional </b> </li>
076                                 * <li>28: ADT_AXX_PATIENT () <b>optional repeating</b> </li>
077                                 * <li>29: ADT_AXX_MERGE_INFO () <b>optional repeating</b> </li>
078 * </ul>
079 */
080//@SuppressWarnings("unused")
081public class ADT_AXX extends AbstractMessage  {
082
083    /**
084     * Creates a new ADT_AXX message with DefaultModelClassFactory. 
085     */ 
086    public ADT_AXX() { 
087       this(new DefaultModelClassFactory());
088    }
089
090    /** 
091     * Creates a new ADT_AXX message with custom ModelClassFactory.
092     */
093    public ADT_AXX(ModelClassFactory factory) {
094       super(factory);
095       init(factory);
096    }
097
098    private void init(ModelClassFactory factory) {
099       try {
100                          this.add(MSH.class, true, false);
101                                  this.add(EVN.class, true, false);
102                                  this.add(PID.class, false, false);
103                                  this.add(PD1.class, false, false);
104                                  this.add(MRG.class, false, false);
105                                  this.add(NK1.class, false, true);
106                                  this.add(PV1.class, false, false);
107                                  this.add(PV2.class, false, false);
108                                  this.add(DB1.class, false, true);
109                                  this.add(OBX.class, false, true);
110                                  this.add(AL1.class, false, true);
111                                  this.add(DG1.class, false, true);
112                                  this.add(DRG.class, false, false);
113                                  this.add(ADT_AXX_PROCEDURE.class, false, true);
114                                  this.add(GT1.class, false, true);
115                                  this.add(ADT_AXX_INSURANCE.class, false, true);
116                                  this.add(ACC.class, false, false);
117                                  this.add(UB1.class, false, false);
118                                  this.add(UB2.class, false, false);
119                                  this.add(DRG.class, false, false);
120                                  this.add(PID.class, false, false);
121                                  this.add(PD1.class, false, false);
122                                  this.add(PV1.class, false, false);
123                                  this.add(PV2.class, false, false);
124                                  this.add(DB1.class, false, true);
125                                  this.add(OBX.class, false, true);
126                                  this.add(NPU.class, false, false);
127                                  this.add(ADT_AXX_PATIENT.class, false, true);
128                                  this.add(ADT_AXX_MERGE_INFO.class, false, true);
129               } catch(HL7Exception e) {
130          log.error("Unexpected error creating ADT_AXX - this is probably a bug in the source code generator.", e);
131       }
132    }
133
134
135    /** 
136     * Returns "2.3"
137     */
138    public String getVersion() {
139       return "2.3";
140    }
141
142
143
144
145    /**
146     * <p>
147     * Returns
148     * MSH () - creates it if necessary
149     * </p>
150     * 
151     *
152     */
153    public MSH getMSH() { 
154       return getTyped("MSH", MSH.class);
155    }
156
157
158
159
160
161    /**
162     * <p>
163     * Returns
164     * EVN () - creates it if necessary
165     * </p>
166     * 
167     *
168     */
169    public EVN getEVN() { 
170       return getTyped("EVN", EVN.class);
171    }
172
173
174
175
176
177    /**
178     * <p>
179     * Returns
180     * PID () - creates it if necessary
181     * </p>
182     * 
183     *
184     */
185    public PID getPID() { 
186       return getTyped("PID", PID.class);
187    }
188
189
190
191
192
193    /**
194     * <p>
195     * Returns
196     * PD1 () - creates it if necessary
197     * </p>
198     * 
199     *
200     */
201    public PD1 getPD1() { 
202       return getTyped("PD1", PD1.class);
203    }
204
205
206
207
208
209    /**
210     * <p>
211     * Returns
212     * MRG () - creates it if necessary
213     * </p>
214     * 
215     *
216     */
217    public MRG getMRG() { 
218       return getTyped("MRG", MRG.class);
219    }
220
221
222
223
224
225    /**
226     * <p>
227     * Returns
228     * the first repetition of 
229     * NK1 () - creates it if necessary
230     * </p>
231     * 
232     *
233     */
234    public NK1 getNK1() { 
235       return getTyped("NK1", NK1.class);
236    }
237
238
239    /**
240     * <p>
241     * Returns a specific repetition of
242     * NK1 () - creates it if necessary
243     * </p>
244     * 
245     *
246     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
247     * @throws HL7Exception if the repetition requested is more than one 
248     *     greater than the number of existing repetitions.
249     */
250    public NK1 getNK1(int rep) { 
251       return getTyped("NK1", rep, NK1.class);
252    }
253
254    /** 
255     * <p>
256     * Returns the number of existing repetitions of NK1 
257     * </p>
258     * 
259     */ 
260    public int getNK1Reps() { 
261        return getReps("NK1");
262    } 
263
264    /** 
265     * <p>
266     * Returns a non-modifiable List containing all current existing repetitions of NK1.
267     * <p>
268     * <p>
269     * Note that unlike {@link #getNK1()}, this method will not create any reps
270     * if none are already present, so an empty list may be returned.
271     * </p>
272     * 
273     */ 
274    public java.util.List<NK1> getNK1All() throws HL7Exception {
275        return getAllAsList("NK1", NK1.class);
276    } 
277
278    /**
279     * <p>
280     * Inserts a specific repetition of NK1 ()
281     * </p>
282     * 
283     *
284     * @see AbstractGroup#insertRepetition(Structure, int) 
285     */
286    public void insertNK1(NK1 structure, int rep) throws HL7Exception { 
287       super.insertRepetition( "NK1", structure, rep);
288    }
289
290
291    /**
292     * <p>
293     * Inserts a specific repetition of NK1 ()
294     * </p>
295     * 
296     *
297     * @see AbstractGroup#insertRepetition(Structure, int) 
298     */
299    public NK1 insertNK1(int rep) throws HL7Exception { 
300       return (NK1)super.insertRepetition("NK1", rep);
301    }
302
303
304    /**
305     * <p>
306     * Removes a specific repetition of NK1 ()
307     * </p>
308     * 
309     *
310     * @see AbstractGroup#removeRepetition(String, int) 
311     */
312    public NK1 removeNK1(int rep) throws HL7Exception { 
313       return (NK1)super.removeRepetition("NK1", rep);
314    }
315
316
317
318
319    /**
320     * <p>
321     * Returns
322     * PV1 () - creates it if necessary
323     * </p>
324     * 
325     *
326     */
327    public PV1 getPV1() { 
328       return getTyped("PV1", PV1.class);
329    }
330
331
332
333
334
335    /**
336     * <p>
337     * Returns
338     * PV2 () - creates it if necessary
339     * </p>
340     * 
341     *
342     */
343    public PV2 getPV2() { 
344       return getTyped("PV2", PV2.class);
345    }
346
347
348
349
350
351    /**
352     * <p>
353     * Returns
354     * the first repetition of 
355     * DB1 () - creates it if necessary
356     * </p>
357     * 
358     *
359     */
360    public DB1 getDB1() { 
361       return getTyped("DB1", DB1.class);
362    }
363
364
365    /**
366     * <p>
367     * Returns a specific repetition of
368     * DB1 () - creates it if necessary
369     * </p>
370     * 
371     *
372     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
373     * @throws HL7Exception if the repetition requested is more than one 
374     *     greater than the number of existing repetitions.
375     */
376    public DB1 getDB1(int rep) { 
377       return getTyped("DB1", rep, DB1.class);
378    }
379
380    /** 
381     * <p>
382     * Returns the number of existing repetitions of DB1 
383     * </p>
384     * 
385     */ 
386    public int getDB1Reps() { 
387        return getReps("DB1");
388    } 
389
390    /** 
391     * <p>
392     * Returns a non-modifiable List containing all current existing repetitions of DB1.
393     * <p>
394     * <p>
395     * Note that unlike {@link #getDB1()}, this method will not create any reps
396     * if none are already present, so an empty list may be returned.
397     * </p>
398     * 
399     */ 
400    public java.util.List<DB1> getDB1All() throws HL7Exception {
401        return getAllAsList("DB1", DB1.class);
402    } 
403
404    /**
405     * <p>
406     * Inserts a specific repetition of DB1 ()
407     * </p>
408     * 
409     *
410     * @see AbstractGroup#insertRepetition(Structure, int) 
411     */
412    public void insertDB1(DB1 structure, int rep) throws HL7Exception { 
413       super.insertRepetition( "DB1", structure, rep);
414    }
415
416
417    /**
418     * <p>
419     * Inserts a specific repetition of DB1 ()
420     * </p>
421     * 
422     *
423     * @see AbstractGroup#insertRepetition(Structure, int) 
424     */
425    public DB1 insertDB1(int rep) throws HL7Exception { 
426       return (DB1)super.insertRepetition("DB1", rep);
427    }
428
429
430    /**
431     * <p>
432     * Removes a specific repetition of DB1 ()
433     * </p>
434     * 
435     *
436     * @see AbstractGroup#removeRepetition(String, int) 
437     */
438    public DB1 removeDB1(int rep) throws HL7Exception { 
439       return (DB1)super.removeRepetition("DB1", rep);
440    }
441
442
443
444
445    /**
446     * <p>
447     * Returns
448     * the first repetition of 
449     * OBX () - creates it if necessary
450     * </p>
451     * 
452     *
453     */
454    public OBX getOBX() { 
455       return getTyped("OBX", OBX.class);
456    }
457
458
459    /**
460     * <p>
461     * Returns a specific repetition of
462     * OBX () - creates it if necessary
463     * </p>
464     * 
465     *
466     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
467     * @throws HL7Exception if the repetition requested is more than one 
468     *     greater than the number of existing repetitions.
469     */
470    public OBX getOBX(int rep) { 
471       return getTyped("OBX", rep, OBX.class);
472    }
473
474    /** 
475     * <p>
476     * Returns the number of existing repetitions of OBX 
477     * </p>
478     * 
479     */ 
480    public int getOBXReps() { 
481        return getReps("OBX");
482    } 
483
484    /** 
485     * <p>
486     * Returns a non-modifiable List containing all current existing repetitions of OBX.
487     * <p>
488     * <p>
489     * Note that unlike {@link #getOBX()}, this method will not create any reps
490     * if none are already present, so an empty list may be returned.
491     * </p>
492     * 
493     */ 
494    public java.util.List<OBX> getOBXAll() throws HL7Exception {
495        return getAllAsList("OBX", OBX.class);
496    } 
497
498    /**
499     * <p>
500     * Inserts a specific repetition of OBX ()
501     * </p>
502     * 
503     *
504     * @see AbstractGroup#insertRepetition(Structure, int) 
505     */
506    public void insertOBX(OBX structure, int rep) throws HL7Exception { 
507       super.insertRepetition( "OBX", structure, rep);
508    }
509
510
511    /**
512     * <p>
513     * Inserts a specific repetition of OBX ()
514     * </p>
515     * 
516     *
517     * @see AbstractGroup#insertRepetition(Structure, int) 
518     */
519    public OBX insertOBX(int rep) throws HL7Exception { 
520       return (OBX)super.insertRepetition("OBX", rep);
521    }
522
523
524    /**
525     * <p>
526     * Removes a specific repetition of OBX ()
527     * </p>
528     * 
529     *
530     * @see AbstractGroup#removeRepetition(String, int) 
531     */
532    public OBX removeOBX(int rep) throws HL7Exception { 
533       return (OBX)super.removeRepetition("OBX", rep);
534    }
535
536
537
538
539    /**
540     * <p>
541     * Returns
542     * the first repetition of 
543     * AL1 () - creates it if necessary
544     * </p>
545     * 
546     *
547     */
548    public AL1 getAL1() { 
549       return getTyped("AL1", AL1.class);
550    }
551
552
553    /**
554     * <p>
555     * Returns a specific repetition of
556     * AL1 () - creates it if necessary
557     * </p>
558     * 
559     *
560     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
561     * @throws HL7Exception if the repetition requested is more than one 
562     *     greater than the number of existing repetitions.
563     */
564    public AL1 getAL1(int rep) { 
565       return getTyped("AL1", rep, AL1.class);
566    }
567
568    /** 
569     * <p>
570     * Returns the number of existing repetitions of AL1 
571     * </p>
572     * 
573     */ 
574    public int getAL1Reps() { 
575        return getReps("AL1");
576    } 
577
578    /** 
579     * <p>
580     * Returns a non-modifiable List containing all current existing repetitions of AL1.
581     * <p>
582     * <p>
583     * Note that unlike {@link #getAL1()}, this method will not create any reps
584     * if none are already present, so an empty list may be returned.
585     * </p>
586     * 
587     */ 
588    public java.util.List<AL1> getAL1All() throws HL7Exception {
589        return getAllAsList("AL1", AL1.class);
590    } 
591
592    /**
593     * <p>
594     * Inserts a specific repetition of AL1 ()
595     * </p>
596     * 
597     *
598     * @see AbstractGroup#insertRepetition(Structure, int) 
599     */
600    public void insertAL1(AL1 structure, int rep) throws HL7Exception { 
601       super.insertRepetition( "AL1", structure, rep);
602    }
603
604
605    /**
606     * <p>
607     * Inserts a specific repetition of AL1 ()
608     * </p>
609     * 
610     *
611     * @see AbstractGroup#insertRepetition(Structure, int) 
612     */
613    public AL1 insertAL1(int rep) throws HL7Exception { 
614       return (AL1)super.insertRepetition("AL1", rep);
615    }
616
617
618    /**
619     * <p>
620     * Removes a specific repetition of AL1 ()
621     * </p>
622     * 
623     *
624     * @see AbstractGroup#removeRepetition(String, int) 
625     */
626    public AL1 removeAL1(int rep) throws HL7Exception { 
627       return (AL1)super.removeRepetition("AL1", rep);
628    }
629
630
631
632
633    /**
634     * <p>
635     * Returns
636     * the first repetition of 
637     * DG1 () - creates it if necessary
638     * </p>
639     * 
640     *
641     */
642    public DG1 getDG1() { 
643       return getTyped("DG1", DG1.class);
644    }
645
646
647    /**
648     * <p>
649     * Returns a specific repetition of
650     * DG1 () - creates it if necessary
651     * </p>
652     * 
653     *
654     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
655     * @throws HL7Exception if the repetition requested is more than one 
656     *     greater than the number of existing repetitions.
657     */
658    public DG1 getDG1(int rep) { 
659       return getTyped("DG1", rep, DG1.class);
660    }
661
662    /** 
663     * <p>
664     * Returns the number of existing repetitions of DG1 
665     * </p>
666     * 
667     */ 
668    public int getDG1Reps() { 
669        return getReps("DG1");
670    } 
671
672    /** 
673     * <p>
674     * Returns a non-modifiable List containing all current existing repetitions of DG1.
675     * <p>
676     * <p>
677     * Note that unlike {@link #getDG1()}, this method will not create any reps
678     * if none are already present, so an empty list may be returned.
679     * </p>
680     * 
681     */ 
682    public java.util.List<DG1> getDG1All() throws HL7Exception {
683        return getAllAsList("DG1", DG1.class);
684    } 
685
686    /**
687     * <p>
688     * Inserts a specific repetition of DG1 ()
689     * </p>
690     * 
691     *
692     * @see AbstractGroup#insertRepetition(Structure, int) 
693     */
694    public void insertDG1(DG1 structure, int rep) throws HL7Exception { 
695       super.insertRepetition( "DG1", structure, rep);
696    }
697
698
699    /**
700     * <p>
701     * Inserts a specific repetition of DG1 ()
702     * </p>
703     * 
704     *
705     * @see AbstractGroup#insertRepetition(Structure, int) 
706     */
707    public DG1 insertDG1(int rep) throws HL7Exception { 
708       return (DG1)super.insertRepetition("DG1", rep);
709    }
710
711
712    /**
713     * <p>
714     * Removes a specific repetition of DG1 ()
715     * </p>
716     * 
717     *
718     * @see AbstractGroup#removeRepetition(String, int) 
719     */
720    public DG1 removeDG1(int rep) throws HL7Exception { 
721       return (DG1)super.removeRepetition("DG1", rep);
722    }
723
724
725
726
727    /**
728     * <p>
729     * Returns
730     * DRG () - creates it if necessary
731     * </p>
732     * 
733     *
734     */
735    public DRG getDRG() { 
736       return getTyped("DRG", DRG.class);
737    }
738
739
740
741
742
743    /**
744     * <p>
745     * Returns
746     * the first repetition of 
747     * PROCEDURE () - creates it if necessary
748     * </p>
749     * 
750     *
751     */
752    public ADT_AXX_PROCEDURE getPROCEDURE() { 
753       return getTyped("PROCEDURE", ADT_AXX_PROCEDURE.class);
754    }
755
756
757    /**
758     * <p>
759     * Returns a specific repetition of
760     * PROCEDURE () - creates it if necessary
761     * </p>
762     * 
763     *
764     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
765     * @throws HL7Exception if the repetition requested is more than one 
766     *     greater than the number of existing repetitions.
767     */
768    public ADT_AXX_PROCEDURE getPROCEDURE(int rep) { 
769       return getTyped("PROCEDURE", rep, ADT_AXX_PROCEDURE.class);
770    }
771
772    /** 
773     * <p>
774     * Returns the number of existing repetitions of PROCEDURE 
775     * </p>
776     * 
777     */ 
778    public int getPROCEDUREReps() { 
779        return getReps("PROCEDURE");
780    } 
781
782    /** 
783     * <p>
784     * Returns a non-modifiable List containing all current existing repetitions of PROCEDURE.
785     * <p>
786     * <p>
787     * Note that unlike {@link #getPROCEDURE()}, this method will not create any reps
788     * if none are already present, so an empty list may be returned.
789     * </p>
790     * 
791     */ 
792    public java.util.List<ADT_AXX_PROCEDURE> getPROCEDUREAll() throws HL7Exception {
793        return getAllAsList("PROCEDURE", ADT_AXX_PROCEDURE.class);
794    } 
795
796    /**
797     * <p>
798     * Inserts a specific repetition of PROCEDURE ()
799     * </p>
800     * 
801     *
802     * @see AbstractGroup#insertRepetition(Structure, int) 
803     */
804    public void insertPROCEDURE(ADT_AXX_PROCEDURE structure, int rep) throws HL7Exception { 
805       super.insertRepetition( "PROCEDURE", structure, rep);
806    }
807
808
809    /**
810     * <p>
811     * Inserts a specific repetition of PROCEDURE ()
812     * </p>
813     * 
814     *
815     * @see AbstractGroup#insertRepetition(Structure, int) 
816     */
817    public ADT_AXX_PROCEDURE insertPROCEDURE(int rep) throws HL7Exception { 
818       return (ADT_AXX_PROCEDURE)super.insertRepetition("PROCEDURE", rep);
819    }
820
821
822    /**
823     * <p>
824     * Removes a specific repetition of PROCEDURE ()
825     * </p>
826     * 
827     *
828     * @see AbstractGroup#removeRepetition(String, int) 
829     */
830    public ADT_AXX_PROCEDURE removePROCEDURE(int rep) throws HL7Exception { 
831       return (ADT_AXX_PROCEDURE)super.removeRepetition("PROCEDURE", rep);
832    }
833
834
835
836
837    /**
838     * <p>
839     * Returns
840     * the first repetition of 
841     * GT1 () - creates it if necessary
842     * </p>
843     * 
844     *
845     */
846    public GT1 getGT1() { 
847       return getTyped("GT1", GT1.class);
848    }
849
850
851    /**
852     * <p>
853     * Returns a specific repetition of
854     * GT1 () - creates it if necessary
855     * </p>
856     * 
857     *
858     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
859     * @throws HL7Exception if the repetition requested is more than one 
860     *     greater than the number of existing repetitions.
861     */
862    public GT1 getGT1(int rep) { 
863       return getTyped("GT1", rep, GT1.class);
864    }
865
866    /** 
867     * <p>
868     * Returns the number of existing repetitions of GT1 
869     * </p>
870     * 
871     */ 
872    public int getGT1Reps() { 
873        return getReps("GT1");
874    } 
875
876    /** 
877     * <p>
878     * Returns a non-modifiable List containing all current existing repetitions of GT1.
879     * <p>
880     * <p>
881     * Note that unlike {@link #getGT1()}, this method will not create any reps
882     * if none are already present, so an empty list may be returned.
883     * </p>
884     * 
885     */ 
886    public java.util.List<GT1> getGT1All() throws HL7Exception {
887        return getAllAsList("GT1", GT1.class);
888    } 
889
890    /**
891     * <p>
892     * Inserts a specific repetition of GT1 ()
893     * </p>
894     * 
895     *
896     * @see AbstractGroup#insertRepetition(Structure, int) 
897     */
898    public void insertGT1(GT1 structure, int rep) throws HL7Exception { 
899       super.insertRepetition( "GT1", structure, rep);
900    }
901
902
903    /**
904     * <p>
905     * Inserts a specific repetition of GT1 ()
906     * </p>
907     * 
908     *
909     * @see AbstractGroup#insertRepetition(Structure, int) 
910     */
911    public GT1 insertGT1(int rep) throws HL7Exception { 
912       return (GT1)super.insertRepetition("GT1", rep);
913    }
914
915
916    /**
917     * <p>
918     * Removes a specific repetition of GT1 ()
919     * </p>
920     * 
921     *
922     * @see AbstractGroup#removeRepetition(String, int) 
923     */
924    public GT1 removeGT1(int rep) throws HL7Exception { 
925       return (GT1)super.removeRepetition("GT1", rep);
926    }
927
928
929
930
931    /**
932     * <p>
933     * Returns
934     * the first repetition of 
935     * INSURANCE () - creates it if necessary
936     * </p>
937     * 
938     *
939     */
940    public ADT_AXX_INSURANCE getINSURANCE() { 
941       return getTyped("INSURANCE", ADT_AXX_INSURANCE.class);
942    }
943
944
945    /**
946     * <p>
947     * Returns a specific repetition of
948     * INSURANCE () - creates it if necessary
949     * </p>
950     * 
951     *
952     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
953     * @throws HL7Exception if the repetition requested is more than one 
954     *     greater than the number of existing repetitions.
955     */
956    public ADT_AXX_INSURANCE getINSURANCE(int rep) { 
957       return getTyped("INSURANCE", rep, ADT_AXX_INSURANCE.class);
958    }
959
960    /** 
961     * <p>
962     * Returns the number of existing repetitions of INSURANCE 
963     * </p>
964     * 
965     */ 
966    public int getINSURANCEReps() { 
967        return getReps("INSURANCE");
968    } 
969
970    /** 
971     * <p>
972     * Returns a non-modifiable List containing all current existing repetitions of INSURANCE.
973     * <p>
974     * <p>
975     * Note that unlike {@link #getINSURANCE()}, this method will not create any reps
976     * if none are already present, so an empty list may be returned.
977     * </p>
978     * 
979     */ 
980    public java.util.List<ADT_AXX_INSURANCE> getINSURANCEAll() throws HL7Exception {
981        return getAllAsList("INSURANCE", ADT_AXX_INSURANCE.class);
982    } 
983
984    /**
985     * <p>
986     * Inserts a specific repetition of INSURANCE ()
987     * </p>
988     * 
989     *
990     * @see AbstractGroup#insertRepetition(Structure, int) 
991     */
992    public void insertINSURANCE(ADT_AXX_INSURANCE structure, int rep) throws HL7Exception { 
993       super.insertRepetition( "INSURANCE", structure, rep);
994    }
995
996
997    /**
998     * <p>
999     * Inserts a specific repetition of INSURANCE ()
1000     * </p>
1001     * 
1002     *
1003     * @see AbstractGroup#insertRepetition(Structure, int) 
1004     */
1005    public ADT_AXX_INSURANCE insertINSURANCE(int rep) throws HL7Exception { 
1006       return (ADT_AXX_INSURANCE)super.insertRepetition("INSURANCE", rep);
1007    }
1008
1009
1010    /**
1011     * <p>
1012     * Removes a specific repetition of INSURANCE ()
1013     * </p>
1014     * 
1015     *
1016     * @see AbstractGroup#removeRepetition(String, int) 
1017     */
1018    public ADT_AXX_INSURANCE removeINSURANCE(int rep) throws HL7Exception { 
1019       return (ADT_AXX_INSURANCE)super.removeRepetition("INSURANCE", rep);
1020    }
1021
1022
1023
1024
1025    /**
1026     * <p>
1027     * Returns
1028     * ACC () - creates it if necessary
1029     * </p>
1030     * 
1031     *
1032     */
1033    public ACC getACC() { 
1034       return getTyped("ACC", ACC.class);
1035    }
1036
1037
1038
1039
1040
1041    /**
1042     * <p>
1043     * Returns
1044     * UB1 () - creates it if necessary
1045     * </p>
1046     * 
1047     *
1048     */
1049    public UB1 getUB1() { 
1050       return getTyped("UB1", UB1.class);
1051    }
1052
1053
1054
1055
1056
1057    /**
1058     * <p>
1059     * Returns
1060     * UB2 () - creates it if necessary
1061     * </p>
1062     * 
1063     *
1064     */
1065    public UB2 getUB2() { 
1066       return getTyped("UB2", UB2.class);
1067    }
1068
1069
1070
1071
1072
1073    /**
1074     * <p>
1075     * Returns
1076     * DRG2 () - creates it if necessary
1077     * </p>
1078     * 
1079     *
1080     */
1081    public DRG getDRG2() { 
1082       return getTyped("DRG2", DRG.class);
1083    }
1084
1085
1086
1087
1088
1089    /**
1090     * <p>
1091     * Returns
1092     * PID2 () - creates it if necessary
1093     * </p>
1094     * 
1095     *
1096     */
1097    public PID getPID2() { 
1098       return getTyped("PID2", PID.class);
1099    }
1100
1101
1102
1103
1104
1105    /**
1106     * <p>
1107     * Returns
1108     * PD12 () - creates it if necessary
1109     * </p>
1110     * 
1111     *
1112     */
1113    public PD1 getPD12() { 
1114       return getTyped("PD12", PD1.class);
1115    }
1116
1117
1118
1119
1120
1121    /**
1122     * <p>
1123     * Returns
1124     * PV12 () - creates it if necessary
1125     * </p>
1126     * 
1127     *
1128     */
1129    public PV1 getPV12() { 
1130       return getTyped("PV12", PV1.class);
1131    }
1132
1133
1134
1135
1136
1137    /**
1138     * <p>
1139     * Returns
1140     * PV22 () - creates it if necessary
1141     * </p>
1142     * 
1143     *
1144     */
1145    public PV2 getPV22() { 
1146       return getTyped("PV22", PV2.class);
1147    }
1148
1149
1150
1151
1152
1153    /**
1154     * <p>
1155     * Returns
1156     * the first repetition of 
1157     * DB12 () - creates it if necessary
1158     * </p>
1159     * 
1160     *
1161     */
1162    public DB1 getDB12() { 
1163       return getTyped("DB12", DB1.class);
1164    }
1165
1166
1167    /**
1168     * <p>
1169     * Returns a specific repetition of
1170     * DB12 () - creates it if necessary
1171     * </p>
1172     * 
1173     *
1174     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1175     * @throws HL7Exception if the repetition requested is more than one 
1176     *     greater than the number of existing repetitions.
1177     */
1178    public DB1 getDB12(int rep) { 
1179       return getTyped("DB12", rep, DB1.class);
1180    }
1181
1182    /** 
1183     * <p>
1184     * Returns the number of existing repetitions of DB12 
1185     * </p>
1186     * 
1187     */ 
1188    public int getDB12Reps() { 
1189        return getReps("DB12");
1190    } 
1191
1192    /** 
1193     * <p>
1194     * Returns a non-modifiable List containing all current existing repetitions of DB12.
1195     * <p>
1196     * <p>
1197     * Note that unlike {@link #getDB12()}, this method will not create any reps
1198     * if none are already present, so an empty list may be returned.
1199     * </p>
1200     * 
1201     */ 
1202    public java.util.List<DB1> getDB12All() throws HL7Exception {
1203        return getAllAsList("DB12", DB1.class);
1204    } 
1205
1206    /**
1207     * <p>
1208     * Inserts a specific repetition of DB12 ()
1209     * </p>
1210     * 
1211     *
1212     * @see AbstractGroup#insertRepetition(Structure, int) 
1213     */
1214    public void insertDB12(DB1 structure, int rep) throws HL7Exception { 
1215       super.insertRepetition( "DB12", structure, rep);
1216    }
1217
1218
1219    /**
1220     * <p>
1221     * Inserts a specific repetition of DB12 ()
1222     * </p>
1223     * 
1224     *
1225     * @see AbstractGroup#insertRepetition(Structure, int) 
1226     */
1227    public DB1 insertDB12(int rep) throws HL7Exception { 
1228       return (DB1)super.insertRepetition("DB12", rep);
1229    }
1230
1231
1232    /**
1233     * <p>
1234     * Removes a specific repetition of DB12 ()
1235     * </p>
1236     * 
1237     *
1238     * @see AbstractGroup#removeRepetition(String, int) 
1239     */
1240    public DB1 removeDB12(int rep) throws HL7Exception { 
1241       return (DB1)super.removeRepetition("DB12", rep);
1242    }
1243
1244
1245
1246
1247    /**
1248     * <p>
1249     * Returns
1250     * the first repetition of 
1251     * OBX2 () - creates it if necessary
1252     * </p>
1253     * 
1254     *
1255     */
1256    public OBX getOBX2() { 
1257       return getTyped("OBX2", OBX.class);
1258    }
1259
1260
1261    /**
1262     * <p>
1263     * Returns a specific repetition of
1264     * OBX2 () - creates it if necessary
1265     * </p>
1266     * 
1267     *
1268     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1269     * @throws HL7Exception if the repetition requested is more than one 
1270     *     greater than the number of existing repetitions.
1271     */
1272    public OBX getOBX2(int rep) { 
1273       return getTyped("OBX2", rep, OBX.class);
1274    }
1275
1276    /** 
1277     * <p>
1278     * Returns the number of existing repetitions of OBX2 
1279     * </p>
1280     * 
1281     */ 
1282    public int getOBX2Reps() { 
1283        return getReps("OBX2");
1284    } 
1285
1286    /** 
1287     * <p>
1288     * Returns a non-modifiable List containing all current existing repetitions of OBX2.
1289     * <p>
1290     * <p>
1291     * Note that unlike {@link #getOBX2()}, this method will not create any reps
1292     * if none are already present, so an empty list may be returned.
1293     * </p>
1294     * 
1295     */ 
1296    public java.util.List<OBX> getOBX2All() throws HL7Exception {
1297        return getAllAsList("OBX2", OBX.class);
1298    } 
1299
1300    /**
1301     * <p>
1302     * Inserts a specific repetition of OBX2 ()
1303     * </p>
1304     * 
1305     *
1306     * @see AbstractGroup#insertRepetition(Structure, int) 
1307     */
1308    public void insertOBX2(OBX structure, int rep) throws HL7Exception { 
1309       super.insertRepetition( "OBX2", structure, rep);
1310    }
1311
1312
1313    /**
1314     * <p>
1315     * Inserts a specific repetition of OBX2 ()
1316     * </p>
1317     * 
1318     *
1319     * @see AbstractGroup#insertRepetition(Structure, int) 
1320     */
1321    public OBX insertOBX2(int rep) throws HL7Exception { 
1322       return (OBX)super.insertRepetition("OBX2", rep);
1323    }
1324
1325
1326    /**
1327     * <p>
1328     * Removes a specific repetition of OBX2 ()
1329     * </p>
1330     * 
1331     *
1332     * @see AbstractGroup#removeRepetition(String, int) 
1333     */
1334    public OBX removeOBX2(int rep) throws HL7Exception { 
1335       return (OBX)super.removeRepetition("OBX2", rep);
1336    }
1337
1338
1339
1340
1341    /**
1342     * <p>
1343     * Returns
1344     * NPU () - creates it if necessary
1345     * </p>
1346     * 
1347     *
1348     */
1349    public NPU getNPU() { 
1350       return getTyped("NPU", NPU.class);
1351    }
1352
1353
1354
1355
1356
1357    /**
1358     * <p>
1359     * Returns
1360     * the first repetition of 
1361     * PATIENT () - creates it if necessary
1362     * </p>
1363     * 
1364     *
1365     */
1366    public ADT_AXX_PATIENT getPATIENT() { 
1367       return getTyped("PATIENT", ADT_AXX_PATIENT.class);
1368    }
1369
1370
1371    /**
1372     * <p>
1373     * Returns a specific repetition of
1374     * PATIENT () - creates it if necessary
1375     * </p>
1376     * 
1377     *
1378     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1379     * @throws HL7Exception if the repetition requested is more than one 
1380     *     greater than the number of existing repetitions.
1381     */
1382    public ADT_AXX_PATIENT getPATIENT(int rep) { 
1383       return getTyped("PATIENT", rep, ADT_AXX_PATIENT.class);
1384    }
1385
1386    /** 
1387     * <p>
1388     * Returns the number of existing repetitions of PATIENT 
1389     * </p>
1390     * 
1391     */ 
1392    public int getPATIENTReps() { 
1393        return getReps("PATIENT");
1394    } 
1395
1396    /** 
1397     * <p>
1398     * Returns a non-modifiable List containing all current existing repetitions of PATIENT.
1399     * <p>
1400     * <p>
1401     * Note that unlike {@link #getPATIENT()}, this method will not create any reps
1402     * if none are already present, so an empty list may be returned.
1403     * </p>
1404     * 
1405     */ 
1406    public java.util.List<ADT_AXX_PATIENT> getPATIENTAll() throws HL7Exception {
1407        return getAllAsList("PATIENT", ADT_AXX_PATIENT.class);
1408    } 
1409
1410    /**
1411     * <p>
1412     * Inserts a specific repetition of PATIENT ()
1413     * </p>
1414     * 
1415     *
1416     * @see AbstractGroup#insertRepetition(Structure, int) 
1417     */
1418    public void insertPATIENT(ADT_AXX_PATIENT structure, int rep) throws HL7Exception { 
1419       super.insertRepetition( "PATIENT", structure, rep);
1420    }
1421
1422
1423    /**
1424     * <p>
1425     * Inserts a specific repetition of PATIENT ()
1426     * </p>
1427     * 
1428     *
1429     * @see AbstractGroup#insertRepetition(Structure, int) 
1430     */
1431    public ADT_AXX_PATIENT insertPATIENT(int rep) throws HL7Exception { 
1432       return (ADT_AXX_PATIENT)super.insertRepetition("PATIENT", rep);
1433    }
1434
1435
1436    /**
1437     * <p>
1438     * Removes a specific repetition of PATIENT ()
1439     * </p>
1440     * 
1441     *
1442     * @see AbstractGroup#removeRepetition(String, int) 
1443     */
1444    public ADT_AXX_PATIENT removePATIENT(int rep) throws HL7Exception { 
1445       return (ADT_AXX_PATIENT)super.removeRepetition("PATIENT", rep);
1446    }
1447
1448
1449
1450
1451    /**
1452     * <p>
1453     * Returns
1454     * the first repetition of 
1455     * MERGE_INFO () - creates it if necessary
1456     * </p>
1457     * 
1458     *
1459     */
1460    public ADT_AXX_MERGE_INFO getMERGE_INFO() { 
1461       return getTyped("MERGE_INFO", ADT_AXX_MERGE_INFO.class);
1462    }
1463
1464
1465    /**
1466     * <p>
1467     * Returns a specific repetition of
1468     * MERGE_INFO () - creates it if necessary
1469     * </p>
1470     * 
1471     *
1472     * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1473     * @throws HL7Exception if the repetition requested is more than one 
1474     *     greater than the number of existing repetitions.
1475     */
1476    public ADT_AXX_MERGE_INFO getMERGE_INFO(int rep) { 
1477       return getTyped("MERGE_INFO", rep, ADT_AXX_MERGE_INFO.class);
1478    }
1479
1480    /** 
1481     * <p>
1482     * Returns the number of existing repetitions of MERGE_INFO 
1483     * </p>
1484     * 
1485     */ 
1486    public int getMERGE_INFOReps() { 
1487        return getReps("MERGE_INFO");
1488    } 
1489
1490    /** 
1491     * <p>
1492     * Returns a non-modifiable List containing all current existing repetitions of MERGE_INFO.
1493     * <p>
1494     * <p>
1495     * Note that unlike {@link #getMERGE_INFO()}, this method will not create any reps
1496     * if none are already present, so an empty list may be returned.
1497     * </p>
1498     * 
1499     */ 
1500    public java.util.List<ADT_AXX_MERGE_INFO> getMERGE_INFOAll() throws HL7Exception {
1501        return getAllAsList("MERGE_INFO", ADT_AXX_MERGE_INFO.class);
1502    } 
1503
1504    /**
1505     * <p>
1506     * Inserts a specific repetition of MERGE_INFO ()
1507     * </p>
1508     * 
1509     *
1510     * @see AbstractGroup#insertRepetition(Structure, int) 
1511     */
1512    public void insertMERGE_INFO(ADT_AXX_MERGE_INFO structure, int rep) throws HL7Exception { 
1513       super.insertRepetition( "MERGE_INFO", structure, rep);
1514    }
1515
1516
1517    /**
1518     * <p>
1519     * Inserts a specific repetition of MERGE_INFO ()
1520     * </p>
1521     * 
1522     *
1523     * @see AbstractGroup#insertRepetition(Structure, int) 
1524     */
1525    public ADT_AXX_MERGE_INFO insertMERGE_INFO(int rep) throws HL7Exception { 
1526       return (ADT_AXX_MERGE_INFO)super.insertRepetition("MERGE_INFO", rep);
1527    }
1528
1529
1530    /**
1531     * <p>
1532     * Removes a specific repetition of MERGE_INFO ()
1533     * </p>
1534     * 
1535     *
1536     * @see AbstractGroup#removeRepetition(String, int) 
1537     */
1538    public ADT_AXX_MERGE_INFO removeMERGE_INFO(int rep) throws HL7Exception { 
1539       return (ADT_AXX_MERGE_INFO)super.removeRepetition("MERGE_INFO", rep);
1540    }
1541
1542
1543
1544}
1545