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.message;
35  
36  import ca.uhn.hl7v2.model.v25.group.*;
37  import ca.uhn.hl7v2.model.v25.segment.*;
38  
39  import ca.uhn.hl7v2.HL7Exception;
40  import ca.uhn.hl7v2.parser.ModelClassFactory;
41  import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
42  import ca.uhn.hl7v2.model.*;
43  
44  
45  /**
46   * <p>Represents a ADT_A05 message structure (see chapter 3.3.14). This structure contains the 
47   * following elements: </p>
48   * <ul>
49  		                 * <li>1: MSH (Message Header) <b> </b> </li>
50  		                 * <li>2: SFT (Software Segment) <b>optional repeating</b> </li>
51  		                 * <li>3: EVN (Event Type) <b> </b> </li>
52  		                 * <li>4: PID (Patient Identification) <b> </b> </li>
53  		                 * <li>5: PD1 (Patient Additional Demographic) <b>optional </b> </li>
54  		                 * <li>6: ROL (Role) <b>optional repeating</b> </li>
55  		                 * <li>7: NK1 (Next of Kin / Associated Parties) <b>optional repeating</b> </li>
56  		                 * <li>8: PV1 (Patient Visit) <b> </b> </li>
57  		                 * <li>9: PV2 (Patient Visit - Additional Information) <b>optional </b> </li>
58  		                 * <li>10: ROL (Role) <b>optional repeating</b> </li>
59  		                 * <li>11: DB1 (Disability) <b>optional repeating</b> </li>
60  		                 * <li>12: OBX (Observation/Result) <b>optional repeating</b> </li>
61  		                 * <li>13: AL1 (Patient Allergy Information) <b>optional repeating</b> </li>
62  		                 * <li>14: DG1 (Diagnosis) <b>optional repeating</b> </li>
63  		                 * <li>15: DRG (Diagnosis Related Group) <b>optional </b> </li>
64  		                 * <li>16: ADT_A05_PROCEDURE (a Group object) <b>optional repeating</b> </li>
65  		                 * <li>17: GT1 (Guarantor) <b>optional repeating</b> </li>
66  		                 * <li>18: ADT_A05_INSURANCE (a Group object) <b>optional repeating</b> </li>
67  		                 * <li>19: ACC (Accident) <b>optional </b> </li>
68  		                 * <li>20: UB1 (UB82) <b>optional </b> </li>
69  		                 * <li>21: UB2 (UB92 Data) <b>optional </b> </li>
70   * </ul>
71   */
72  //@SuppressWarnings("unused")
73  public class ADT_A05 extends AbstractMessage  {
74  
75      /**
76       * Creates a new ADT_A05 message with DefaultModelClassFactory. 
77       */ 
78      public ADT_A05() { 
79         this(new DefaultModelClassFactory());
80      }
81  
82      /** 
83       * Creates a new ADT_A05 message with custom ModelClassFactory.
84       */
85      public ADT_A05(ModelClassFactory factory) {
86         super(factory);
87         init(factory);
88      }
89  
90      private void init(ModelClassFactory factory) {
91         try {
92                            this.add(MSH.class, true, false);
93  	                          this.add(SFT.class, false, true);
94  	                          this.add(EVN.class, true, false);
95  	                          this.add(PID.class, true, false);
96  	                          this.add(PD1.class, false, false);
97  	                          this.add(ROL.class, false, true);
98  	                          this.add(NK1.class, false, true);
99  	                          this.add(PV1.class, true, false);
100 	                          this.add(PV2.class, false, false);
101 	                          this.add(ROL.class, false, true);
102 	                          this.add(DB1.class, false, true);
103 	                          this.add(OBX.class, false, true);
104 	                          this.add(AL1.class, false, true);
105 	                          this.add(DG1.class, false, true);
106 	                          this.add(DRG.class, false, false);
107 	                          this.add(ADT_A05_PROCEDURE.class, false, true);
108 	                          this.add(GT1.class, false, true);
109 	                          this.add(ADT_A05_INSURANCE.class, false, true);
110 	                          this.add(ACC.class, false, false);
111 	                          this.add(UB1.class, false, false);
112 	                          this.add(UB2.class, false, false);
113 	       } catch(HL7Exception e) {
114           log.error("Unexpected error creating ADT_A05 - this is probably a bug in the source code generator.", e);
115        }
116     }
117 
118 
119     /** 
120      * Returns "2.5"
121      */
122     public String getVersion() {
123        return "2.5";
124     }
125 
126 
127 
128 
129     /**
130      * <p>
131      * Returns
132      * MSH (Message Header) - creates it if necessary
133      * </p>
134      * 
135      *
136      */
137     public MSH getMSH() { 
138        return getTyped("MSH", MSH.class);
139     }
140 
141 
142 
143 
144 
145     /**
146      * <p>
147      * Returns
148      * the first repetition of 
149      * SFT (Software Segment) - creates it if necessary
150      * </p>
151      * 
152      *
153      */
154     public SFT getSFT() { 
155        return getTyped("SFT", SFT.class);
156     }
157 
158 
159     /**
160      * <p>
161      * Returns a specific repetition of
162      * SFT (Software Segment) - creates it if necessary
163      * </p>
164      * 
165      *
166      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
167      * @throws HL7Exception if the repetition requested is more than one 
168      *     greater than the number of existing repetitions.
169      */
170     public SFT getSFT(int rep) { 
171        return getTyped("SFT", rep, SFT.class);
172     }
173 
174     /** 
175      * <p>
176      * Returns the number of existing repetitions of SFT 
177      * </p>
178      * 
179      */ 
180     public int getSFTReps() { 
181     	return getReps("SFT");
182     } 
183 
184     /** 
185      * <p>
186      * Returns a non-modifiable List containing all current existing repetitions of SFT.
187      * <p>
188      * <p>
189      * Note that unlike {@link #getSFT()}, this method will not create any reps
190      * if none are already present, so an empty list may be returned.
191      * </p>
192      * 
193      */ 
194     public java.util.List<SFT> getSFTAll() throws HL7Exception {
195     	return getAllAsList("SFT", SFT.class);
196     } 
197 
198     /**
199      * <p>
200      * Inserts a specific repetition of SFT (Software Segment)
201      * </p>
202      * 
203      *
204      * @see AbstractGroup#insertRepetition(Structure, int) 
205      */
206     public void insertSFT(SFT structure, int rep) throws HL7Exception { 
207        super.insertRepetition( "SFT", structure, rep);
208     }
209 
210 
211     /**
212      * <p>
213      * Inserts a specific repetition of SFT (Software Segment)
214      * </p>
215      * 
216      *
217      * @see AbstractGroup#insertRepetition(Structure, int) 
218      */
219     public SFT insertSFT(int rep) throws HL7Exception { 
220        return (SFT)super.insertRepetition("SFT", rep);
221     }
222 
223 
224     /**
225      * <p>
226      * Removes a specific repetition of SFT (Software Segment)
227      * </p>
228      * 
229      *
230      * @see AbstractGroup#removeRepetition(String, int) 
231      */
232     public SFT removeSFT(int rep) throws HL7Exception { 
233        return (SFT)super.removeRepetition("SFT", rep);
234     }
235 
236 
237 
238 
239     /**
240      * <p>
241      * Returns
242      * EVN (Event Type) - creates it if necessary
243      * </p>
244      * 
245      *
246      */
247     public EVN getEVN() { 
248        return getTyped("EVN", EVN.class);
249     }
250 
251 
252 
253 
254 
255     /**
256      * <p>
257      * Returns
258      * PID (Patient Identification) - creates it if necessary
259      * </p>
260      * 
261      *
262      */
263     public PID getPID() { 
264        return getTyped("PID", PID.class);
265     }
266 
267 
268 
269 
270 
271     /**
272      * <p>
273      * Returns
274      * PD1 (Patient Additional Demographic) - creates it if necessary
275      * </p>
276      * 
277      *
278      */
279     public PD1 getPD1() { 
280        return getTyped("PD1", PD1.class);
281     }
282 
283 
284 
285 
286 
287     /**
288      * <p>
289      * Returns
290      * the first repetition of 
291      * ROL (Role) - creates it if necessary
292      * </p>
293      * 
294      *
295      */
296     public ROL getROL() { 
297        return getTyped("ROL", ROL.class);
298     }
299 
300 
301     /**
302      * <p>
303      * Returns a specific repetition of
304      * ROL (Role) - creates it if necessary
305      * </p>
306      * 
307      *
308      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
309      * @throws HL7Exception if the repetition requested is more than one 
310      *     greater than the number of existing repetitions.
311      */
312     public ROL getROL(int rep) { 
313        return getTyped("ROL", rep, ROL.class);
314     }
315 
316     /** 
317      * <p>
318      * Returns the number of existing repetitions of ROL 
319      * </p>
320      * 
321      */ 
322     public int getROLReps() { 
323     	return getReps("ROL");
324     } 
325 
326     /** 
327      * <p>
328      * Returns a non-modifiable List containing all current existing repetitions of ROL.
329      * <p>
330      * <p>
331      * Note that unlike {@link #getROL()}, this method will not create any reps
332      * if none are already present, so an empty list may be returned.
333      * </p>
334      * 
335      */ 
336     public java.util.List<ROL> getROLAll() throws HL7Exception {
337     	return getAllAsList("ROL", ROL.class);
338     } 
339 
340     /**
341      * <p>
342      * Inserts a specific repetition of ROL (Role)
343      * </p>
344      * 
345      *
346      * @see AbstractGroup#insertRepetition(Structure, int) 
347      */
348     public void insertROL(ROL structure, int rep) throws HL7Exception { 
349        super.insertRepetition( "ROL", structure, rep);
350     }
351 
352 
353     /**
354      * <p>
355      * Inserts a specific repetition of ROL (Role)
356      * </p>
357      * 
358      *
359      * @see AbstractGroup#insertRepetition(Structure, int) 
360      */
361     public ROL insertROL(int rep) throws HL7Exception { 
362        return (ROL)super.insertRepetition("ROL", rep);
363     }
364 
365 
366     /**
367      * <p>
368      * Removes a specific repetition of ROL (Role)
369      * </p>
370      * 
371      *
372      * @see AbstractGroup#removeRepetition(String, int) 
373      */
374     public ROL removeROL(int rep) throws HL7Exception { 
375        return (ROL)super.removeRepetition("ROL", rep);
376     }
377 
378 
379 
380 
381     /**
382      * <p>
383      * Returns
384      * the first repetition of 
385      * NK1 (Next of Kin / Associated Parties) - creates it if necessary
386      * </p>
387      * 
388      *
389      */
390     public NK1 getNK1() { 
391        return getTyped("NK1", NK1.class);
392     }
393 
394 
395     /**
396      * <p>
397      * Returns a specific repetition of
398      * NK1 (Next of Kin / Associated Parties) - creates it if necessary
399      * </p>
400      * 
401      *
402      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
403      * @throws HL7Exception if the repetition requested is more than one 
404      *     greater than the number of existing repetitions.
405      */
406     public NK1 getNK1(int rep) { 
407        return getTyped("NK1", rep, NK1.class);
408     }
409 
410     /** 
411      * <p>
412      * Returns the number of existing repetitions of NK1 
413      * </p>
414      * 
415      */ 
416     public int getNK1Reps() { 
417     	return getReps("NK1");
418     } 
419 
420     /** 
421      * <p>
422      * Returns a non-modifiable List containing all current existing repetitions of NK1.
423      * <p>
424      * <p>
425      * Note that unlike {@link #getNK1()}, this method will not create any reps
426      * if none are already present, so an empty list may be returned.
427      * </p>
428      * 
429      */ 
430     public java.util.List<NK1> getNK1All() throws HL7Exception {
431     	return getAllAsList("NK1", NK1.class);
432     } 
433 
434     /**
435      * <p>
436      * Inserts a specific repetition of NK1 (Next of Kin / Associated Parties)
437      * </p>
438      * 
439      *
440      * @see AbstractGroup#insertRepetition(Structure, int) 
441      */
442     public void insertNK1(NK1 structure, int rep) throws HL7Exception { 
443        super.insertRepetition( "NK1", structure, rep);
444     }
445 
446 
447     /**
448      * <p>
449      * Inserts a specific repetition of NK1 (Next of Kin / Associated Parties)
450      * </p>
451      * 
452      *
453      * @see AbstractGroup#insertRepetition(Structure, int) 
454      */
455     public NK1 insertNK1(int rep) throws HL7Exception { 
456        return (NK1)super.insertRepetition("NK1", rep);
457     }
458 
459 
460     /**
461      * <p>
462      * Removes a specific repetition of NK1 (Next of Kin / Associated Parties)
463      * </p>
464      * 
465      *
466      * @see AbstractGroup#removeRepetition(String, int) 
467      */
468     public NK1 removeNK1(int rep) throws HL7Exception { 
469        return (NK1)super.removeRepetition("NK1", rep);
470     }
471 
472 
473 
474 
475     /**
476      * <p>
477      * Returns
478      * PV1 (Patient Visit) - creates it if necessary
479      * </p>
480      * 
481      *
482      */
483     public PV1 getPV1() { 
484        return getTyped("PV1", PV1.class);
485     }
486 
487 
488 
489 
490 
491     /**
492      * <p>
493      * Returns
494      * PV2 (Patient Visit - Additional Information) - creates it if necessary
495      * </p>
496      * 
497      *
498      */
499     public PV2 getPV2() { 
500        return getTyped("PV2", PV2.class);
501     }
502 
503 
504 
505 
506 
507     /**
508      * <p>
509      * Returns
510      * the first repetition of 
511      * ROL2 (Role) - creates it if necessary
512      * </p>
513      * 
514      *
515      */
516     public ROL getROL2() { 
517        return getTyped("ROL2", ROL.class);
518     }
519 
520 
521     /**
522      * <p>
523      * Returns a specific repetition of
524      * ROL2 (Role) - creates it if necessary
525      * </p>
526      * 
527      *
528      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
529      * @throws HL7Exception if the repetition requested is more than one 
530      *     greater than the number of existing repetitions.
531      */
532     public ROL getROL2(int rep) { 
533        return getTyped("ROL2", rep, ROL.class);
534     }
535 
536     /** 
537      * <p>
538      * Returns the number of existing repetitions of ROL2 
539      * </p>
540      * 
541      */ 
542     public int getROL2Reps() { 
543     	return getReps("ROL2");
544     } 
545 
546     /** 
547      * <p>
548      * Returns a non-modifiable List containing all current existing repetitions of ROL2.
549      * <p>
550      * <p>
551      * Note that unlike {@link #getROL2()}, this method will not create any reps
552      * if none are already present, so an empty list may be returned.
553      * </p>
554      * 
555      */ 
556     public java.util.List<ROL> getROL2All() throws HL7Exception {
557     	return getAllAsList("ROL2", ROL.class);
558     } 
559 
560     /**
561      * <p>
562      * Inserts a specific repetition of ROL2 (Role)
563      * </p>
564      * 
565      *
566      * @see AbstractGroup#insertRepetition(Structure, int) 
567      */
568     public void insertROL2(ROL structure, int rep) throws HL7Exception { 
569        super.insertRepetition( "ROL2", structure, rep);
570     }
571 
572 
573     /**
574      * <p>
575      * Inserts a specific repetition of ROL2 (Role)
576      * </p>
577      * 
578      *
579      * @see AbstractGroup#insertRepetition(Structure, int) 
580      */
581     public ROL insertROL2(int rep) throws HL7Exception { 
582        return (ROL)super.insertRepetition("ROL2", rep);
583     }
584 
585 
586     /**
587      * <p>
588      * Removes a specific repetition of ROL2 (Role)
589      * </p>
590      * 
591      *
592      * @see AbstractGroup#removeRepetition(String, int) 
593      */
594     public ROL removeROL2(int rep) throws HL7Exception { 
595        return (ROL)super.removeRepetition("ROL2", rep);
596     }
597 
598 
599 
600 
601     /**
602      * <p>
603      * Returns
604      * the first repetition of 
605      * DB1 (Disability) - creates it if necessary
606      * </p>
607      * 
608      *
609      */
610     public DB1 getDB1() { 
611        return getTyped("DB1", DB1.class);
612     }
613 
614 
615     /**
616      * <p>
617      * Returns a specific repetition of
618      * DB1 (Disability) - creates it if necessary
619      * </p>
620      * 
621      *
622      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
623      * @throws HL7Exception if the repetition requested is more than one 
624      *     greater than the number of existing repetitions.
625      */
626     public DB1 getDB1(int rep) { 
627        return getTyped("DB1", rep, DB1.class);
628     }
629 
630     /** 
631      * <p>
632      * Returns the number of existing repetitions of DB1 
633      * </p>
634      * 
635      */ 
636     public int getDB1Reps() { 
637     	return getReps("DB1");
638     } 
639 
640     /** 
641      * <p>
642      * Returns a non-modifiable List containing all current existing repetitions of DB1.
643      * <p>
644      * <p>
645      * Note that unlike {@link #getDB1()}, this method will not create any reps
646      * if none are already present, so an empty list may be returned.
647      * </p>
648      * 
649      */ 
650     public java.util.List<DB1> getDB1All() throws HL7Exception {
651     	return getAllAsList("DB1", DB1.class);
652     } 
653 
654     /**
655      * <p>
656      * Inserts a specific repetition of DB1 (Disability)
657      * </p>
658      * 
659      *
660      * @see AbstractGroup#insertRepetition(Structure, int) 
661      */
662     public void insertDB1(DB1 structure, int rep) throws HL7Exception { 
663        super.insertRepetition( "DB1", structure, rep);
664     }
665 
666 
667     /**
668      * <p>
669      * Inserts a specific repetition of DB1 (Disability)
670      * </p>
671      * 
672      *
673      * @see AbstractGroup#insertRepetition(Structure, int) 
674      */
675     public DB1 insertDB1(int rep) throws HL7Exception { 
676        return (DB1)super.insertRepetition("DB1", rep);
677     }
678 
679 
680     /**
681      * <p>
682      * Removes a specific repetition of DB1 (Disability)
683      * </p>
684      * 
685      *
686      * @see AbstractGroup#removeRepetition(String, int) 
687      */
688     public DB1 removeDB1(int rep) throws HL7Exception { 
689        return (DB1)super.removeRepetition("DB1", rep);
690     }
691 
692 
693 
694 
695     /**
696      * <p>
697      * Returns
698      * the first repetition of 
699      * OBX (Observation/Result) - creates it if necessary
700      * </p>
701      * 
702      *
703      */
704     public OBX getOBX() { 
705        return getTyped("OBX", OBX.class);
706     }
707 
708 
709     /**
710      * <p>
711      * Returns a specific repetition of
712      * OBX (Observation/Result) - creates it if necessary
713      * </p>
714      * 
715      *
716      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
717      * @throws HL7Exception if the repetition requested is more than one 
718      *     greater than the number of existing repetitions.
719      */
720     public OBX getOBX(int rep) { 
721        return getTyped("OBX", rep, OBX.class);
722     }
723 
724     /** 
725      * <p>
726      * Returns the number of existing repetitions of OBX 
727      * </p>
728      * 
729      */ 
730     public int getOBXReps() { 
731     	return getReps("OBX");
732     } 
733 
734     /** 
735      * <p>
736      * Returns a non-modifiable List containing all current existing repetitions of OBX.
737      * <p>
738      * <p>
739      * Note that unlike {@link #getOBX()}, this method will not create any reps
740      * if none are already present, so an empty list may be returned.
741      * </p>
742      * 
743      */ 
744     public java.util.List<OBX> getOBXAll() throws HL7Exception {
745     	return getAllAsList("OBX", OBX.class);
746     } 
747 
748     /**
749      * <p>
750      * Inserts a specific repetition of OBX (Observation/Result)
751      * </p>
752      * 
753      *
754      * @see AbstractGroup#insertRepetition(Structure, int) 
755      */
756     public void insertOBX(OBX structure, int rep) throws HL7Exception { 
757        super.insertRepetition( "OBX", structure, rep);
758     }
759 
760 
761     /**
762      * <p>
763      * Inserts a specific repetition of OBX (Observation/Result)
764      * </p>
765      * 
766      *
767      * @see AbstractGroup#insertRepetition(Structure, int) 
768      */
769     public OBX insertOBX(int rep) throws HL7Exception { 
770        return (OBX)super.insertRepetition("OBX", rep);
771     }
772 
773 
774     /**
775      * <p>
776      * Removes a specific repetition of OBX (Observation/Result)
777      * </p>
778      * 
779      *
780      * @see AbstractGroup#removeRepetition(String, int) 
781      */
782     public OBX removeOBX(int rep) throws HL7Exception { 
783        return (OBX)super.removeRepetition("OBX", rep);
784     }
785 
786 
787 
788 
789     /**
790      * <p>
791      * Returns
792      * the first repetition of 
793      * AL1 (Patient Allergy Information) - creates it if necessary
794      * </p>
795      * 
796      *
797      */
798     public AL1 getAL1() { 
799        return getTyped("AL1", AL1.class);
800     }
801 
802 
803     /**
804      * <p>
805      * Returns a specific repetition of
806      * AL1 (Patient Allergy Information) - creates it if necessary
807      * </p>
808      * 
809      *
810      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
811      * @throws HL7Exception if the repetition requested is more than one 
812      *     greater than the number of existing repetitions.
813      */
814     public AL1 getAL1(int rep) { 
815        return getTyped("AL1", rep, AL1.class);
816     }
817 
818     /** 
819      * <p>
820      * Returns the number of existing repetitions of AL1 
821      * </p>
822      * 
823      */ 
824     public int getAL1Reps() { 
825     	return getReps("AL1");
826     } 
827 
828     /** 
829      * <p>
830      * Returns a non-modifiable List containing all current existing repetitions of AL1.
831      * <p>
832      * <p>
833      * Note that unlike {@link #getAL1()}, this method will not create any reps
834      * if none are already present, so an empty list may be returned.
835      * </p>
836      * 
837      */ 
838     public java.util.List<AL1> getAL1All() throws HL7Exception {
839     	return getAllAsList("AL1", AL1.class);
840     } 
841 
842     /**
843      * <p>
844      * Inserts a specific repetition of AL1 (Patient Allergy Information)
845      * </p>
846      * 
847      *
848      * @see AbstractGroup#insertRepetition(Structure, int) 
849      */
850     public void insertAL1(AL1 structure, int rep) throws HL7Exception { 
851        super.insertRepetition( "AL1", structure, rep);
852     }
853 
854 
855     /**
856      * <p>
857      * Inserts a specific repetition of AL1 (Patient Allergy Information)
858      * </p>
859      * 
860      *
861      * @see AbstractGroup#insertRepetition(Structure, int) 
862      */
863     public AL1 insertAL1(int rep) throws HL7Exception { 
864        return (AL1)super.insertRepetition("AL1", rep);
865     }
866 
867 
868     /**
869      * <p>
870      * Removes a specific repetition of AL1 (Patient Allergy Information)
871      * </p>
872      * 
873      *
874      * @see AbstractGroup#removeRepetition(String, int) 
875      */
876     public AL1 removeAL1(int rep) throws HL7Exception { 
877        return (AL1)super.removeRepetition("AL1", rep);
878     }
879 
880 
881 
882 
883     /**
884      * <p>
885      * Returns
886      * the first repetition of 
887      * DG1 (Diagnosis) - creates it if necessary
888      * </p>
889      * 
890      *
891      */
892     public DG1 getDG1() { 
893        return getTyped("DG1", DG1.class);
894     }
895 
896 
897     /**
898      * <p>
899      * Returns a specific repetition of
900      * DG1 (Diagnosis) - creates it if necessary
901      * </p>
902      * 
903      *
904      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
905      * @throws HL7Exception if the repetition requested is more than one 
906      *     greater than the number of existing repetitions.
907      */
908     public DG1 getDG1(int rep) { 
909        return getTyped("DG1", rep, DG1.class);
910     }
911 
912     /** 
913      * <p>
914      * Returns the number of existing repetitions of DG1 
915      * </p>
916      * 
917      */ 
918     public int getDG1Reps() { 
919     	return getReps("DG1");
920     } 
921 
922     /** 
923      * <p>
924      * Returns a non-modifiable List containing all current existing repetitions of DG1.
925      * <p>
926      * <p>
927      * Note that unlike {@link #getDG1()}, this method will not create any reps
928      * if none are already present, so an empty list may be returned.
929      * </p>
930      * 
931      */ 
932     public java.util.List<DG1> getDG1All() throws HL7Exception {
933     	return getAllAsList("DG1", DG1.class);
934     } 
935 
936     /**
937      * <p>
938      * Inserts a specific repetition of DG1 (Diagnosis)
939      * </p>
940      * 
941      *
942      * @see AbstractGroup#insertRepetition(Structure, int) 
943      */
944     public void insertDG1(DG1 structure, int rep) throws HL7Exception { 
945        super.insertRepetition( "DG1", structure, rep);
946     }
947 
948 
949     /**
950      * <p>
951      * Inserts a specific repetition of DG1 (Diagnosis)
952      * </p>
953      * 
954      *
955      * @see AbstractGroup#insertRepetition(Structure, int) 
956      */
957     public DG1 insertDG1(int rep) throws HL7Exception { 
958        return (DG1)super.insertRepetition("DG1", rep);
959     }
960 
961 
962     /**
963      * <p>
964      * Removes a specific repetition of DG1 (Diagnosis)
965      * </p>
966      * 
967      *
968      * @see AbstractGroup#removeRepetition(String, int) 
969      */
970     public DG1 removeDG1(int rep) throws HL7Exception { 
971        return (DG1)super.removeRepetition("DG1", rep);
972     }
973 
974 
975 
976 
977     /**
978      * <p>
979      * Returns
980      * DRG (Diagnosis Related Group) - creates it if necessary
981      * </p>
982      * 
983      *
984      */
985     public DRG getDRG() { 
986        return getTyped("DRG", DRG.class);
987     }
988 
989 
990 
991 
992 
993     /**
994      * <p>
995      * Returns
996      * the first repetition of 
997      * PROCEDURE (a Group object) - creates it if necessary
998      * </p>
999      * 
1000      *
1001      */
1002     public ADT_A05_PROCEDURE getPROCEDURE() { 
1003        return getTyped("PROCEDURE", ADT_A05_PROCEDURE.class);
1004     }
1005 
1006 
1007     /**
1008      * <p>
1009      * Returns a specific repetition of
1010      * PROCEDURE (a Group object) - creates it if necessary
1011      * </p>
1012      * 
1013      *
1014      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1015      * @throws HL7Exception if the repetition requested is more than one 
1016      *     greater than the number of existing repetitions.
1017      */
1018     public ADT_A05_PROCEDURE getPROCEDURE(int rep) { 
1019        return getTyped("PROCEDURE", rep, ADT_A05_PROCEDURE.class);
1020     }
1021 
1022     /** 
1023      * <p>
1024      * Returns the number of existing repetitions of PROCEDURE 
1025      * </p>
1026      * 
1027      */ 
1028     public int getPROCEDUREReps() { 
1029     	return getReps("PROCEDURE");
1030     } 
1031 
1032     /** 
1033      * <p>
1034      * Returns a non-modifiable List containing all current existing repetitions of PROCEDURE.
1035      * <p>
1036      * <p>
1037      * Note that unlike {@link #getPROCEDURE()}, this method will not create any reps
1038      * if none are already present, so an empty list may be returned.
1039      * </p>
1040      * 
1041      */ 
1042     public java.util.List<ADT_A05_PROCEDURE> getPROCEDUREAll() throws HL7Exception {
1043     	return getAllAsList("PROCEDURE", ADT_A05_PROCEDURE.class);
1044     } 
1045 
1046     /**
1047      * <p>
1048      * Inserts a specific repetition of PROCEDURE (a Group object)
1049      * </p>
1050      * 
1051      *
1052      * @see AbstractGroup#insertRepetition(Structure, int) 
1053      */
1054     public void insertPROCEDURE(ADT_A05_PROCEDURE structure, int rep) throws HL7Exception { 
1055        super.insertRepetition( "PROCEDURE", structure, rep);
1056     }
1057 
1058 
1059     /**
1060      * <p>
1061      * Inserts a specific repetition of PROCEDURE (a Group object)
1062      * </p>
1063      * 
1064      *
1065      * @see AbstractGroup#insertRepetition(Structure, int) 
1066      */
1067     public ADT_A05_PROCEDURE insertPROCEDURE(int rep) throws HL7Exception { 
1068        return (ADT_A05_PROCEDURE)super.insertRepetition("PROCEDURE", rep);
1069     }
1070 
1071 
1072     /**
1073      * <p>
1074      * Removes a specific repetition of PROCEDURE (a Group object)
1075      * </p>
1076      * 
1077      *
1078      * @see AbstractGroup#removeRepetition(String, int) 
1079      */
1080     public ADT_A05_PROCEDURE removePROCEDURE(int rep) throws HL7Exception { 
1081        return (ADT_A05_PROCEDURE)super.removeRepetition("PROCEDURE", rep);
1082     }
1083 
1084 
1085 
1086 
1087     /**
1088      * <p>
1089      * Returns
1090      * the first repetition of 
1091      * GT1 (Guarantor) - creates it if necessary
1092      * </p>
1093      * 
1094      *
1095      */
1096     public GT1 getGT1() { 
1097        return getTyped("GT1", GT1.class);
1098     }
1099 
1100 
1101     /**
1102      * <p>
1103      * Returns a specific repetition of
1104      * GT1 (Guarantor) - creates it if necessary
1105      * </p>
1106      * 
1107      *
1108      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1109      * @throws HL7Exception if the repetition requested is more than one 
1110      *     greater than the number of existing repetitions.
1111      */
1112     public GT1 getGT1(int rep) { 
1113        return getTyped("GT1", rep, GT1.class);
1114     }
1115 
1116     /** 
1117      * <p>
1118      * Returns the number of existing repetitions of GT1 
1119      * </p>
1120      * 
1121      */ 
1122     public int getGT1Reps() { 
1123     	return getReps("GT1");
1124     } 
1125 
1126     /** 
1127      * <p>
1128      * Returns a non-modifiable List containing all current existing repetitions of GT1.
1129      * <p>
1130      * <p>
1131      * Note that unlike {@link #getGT1()}, this method will not create any reps
1132      * if none are already present, so an empty list may be returned.
1133      * </p>
1134      * 
1135      */ 
1136     public java.util.List<GT1> getGT1All() throws HL7Exception {
1137     	return getAllAsList("GT1", GT1.class);
1138     } 
1139 
1140     /**
1141      * <p>
1142      * Inserts a specific repetition of GT1 (Guarantor)
1143      * </p>
1144      * 
1145      *
1146      * @see AbstractGroup#insertRepetition(Structure, int) 
1147      */
1148     public void insertGT1(GT1 structure, int rep) throws HL7Exception { 
1149        super.insertRepetition( "GT1", structure, rep);
1150     }
1151 
1152 
1153     /**
1154      * <p>
1155      * Inserts a specific repetition of GT1 (Guarantor)
1156      * </p>
1157      * 
1158      *
1159      * @see AbstractGroup#insertRepetition(Structure, int) 
1160      */
1161     public GT1 insertGT1(int rep) throws HL7Exception { 
1162        return (GT1)super.insertRepetition("GT1", rep);
1163     }
1164 
1165 
1166     /**
1167      * <p>
1168      * Removes a specific repetition of GT1 (Guarantor)
1169      * </p>
1170      * 
1171      *
1172      * @see AbstractGroup#removeRepetition(String, int) 
1173      */
1174     public GT1 removeGT1(int rep) throws HL7Exception { 
1175        return (GT1)super.removeRepetition("GT1", rep);
1176     }
1177 
1178 
1179 
1180 
1181     /**
1182      * <p>
1183      * Returns
1184      * the first repetition of 
1185      * INSURANCE (a Group object) - creates it if necessary
1186      * </p>
1187      * 
1188      *
1189      */
1190     public ADT_A05_INSURANCE getINSURANCE() { 
1191        return getTyped("INSURANCE", ADT_A05_INSURANCE.class);
1192     }
1193 
1194 
1195     /**
1196      * <p>
1197      * Returns a specific repetition of
1198      * INSURANCE (a Group object) - creates it if necessary
1199      * </p>
1200      * 
1201      *
1202      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1203      * @throws HL7Exception if the repetition requested is more than one 
1204      *     greater than the number of existing repetitions.
1205      */
1206     public ADT_A05_INSURANCE getINSURANCE(int rep) { 
1207        return getTyped("INSURANCE", rep, ADT_A05_INSURANCE.class);
1208     }
1209 
1210     /** 
1211      * <p>
1212      * Returns the number of existing repetitions of INSURANCE 
1213      * </p>
1214      * 
1215      */ 
1216     public int getINSURANCEReps() { 
1217     	return getReps("INSURANCE");
1218     } 
1219 
1220     /** 
1221      * <p>
1222      * Returns a non-modifiable List containing all current existing repetitions of INSURANCE.
1223      * <p>
1224      * <p>
1225      * Note that unlike {@link #getINSURANCE()}, this method will not create any reps
1226      * if none are already present, so an empty list may be returned.
1227      * </p>
1228      * 
1229      */ 
1230     public java.util.List<ADT_A05_INSURANCE> getINSURANCEAll() throws HL7Exception {
1231     	return getAllAsList("INSURANCE", ADT_A05_INSURANCE.class);
1232     } 
1233 
1234     /**
1235      * <p>
1236      * Inserts a specific repetition of INSURANCE (a Group object)
1237      * </p>
1238      * 
1239      *
1240      * @see AbstractGroup#insertRepetition(Structure, int) 
1241      */
1242     public void insertINSURANCE(ADT_A05_INSURANCE structure, int rep) throws HL7Exception { 
1243        super.insertRepetition( "INSURANCE", structure, rep);
1244     }
1245 
1246 
1247     /**
1248      * <p>
1249      * Inserts a specific repetition of INSURANCE (a Group object)
1250      * </p>
1251      * 
1252      *
1253      * @see AbstractGroup#insertRepetition(Structure, int) 
1254      */
1255     public ADT_A05_INSURANCE insertINSURANCE(int rep) throws HL7Exception { 
1256        return (ADT_A05_INSURANCE)super.insertRepetition("INSURANCE", rep);
1257     }
1258 
1259 
1260     /**
1261      * <p>
1262      * Removes a specific repetition of INSURANCE (a Group object)
1263      * </p>
1264      * 
1265      *
1266      * @see AbstractGroup#removeRepetition(String, int) 
1267      */
1268     public ADT_A05_INSURANCE removeINSURANCE(int rep) throws HL7Exception { 
1269        return (ADT_A05_INSURANCE)super.removeRepetition("INSURANCE", rep);
1270     }
1271 
1272 
1273 
1274 
1275     /**
1276      * <p>
1277      * Returns
1278      * ACC (Accident) - creates it if necessary
1279      * </p>
1280      * 
1281      *
1282      */
1283     public ACC getACC() { 
1284        return getTyped("ACC", ACC.class);
1285     }
1286 
1287 
1288 
1289 
1290 
1291     /**
1292      * <p>
1293      * Returns
1294      * UB1 (UB82) - creates it if necessary
1295      * </p>
1296      * 
1297      *
1298      */
1299     public UB1 getUB1() { 
1300        return getTyped("UB1", UB1.class);
1301     }
1302 
1303 
1304 
1305 
1306 
1307     /**
1308      * <p>
1309      * Returns
1310      * UB2 (UB92 Data) - creates it if necessary
1311      * </p>
1312      * 
1313      *
1314      */
1315     public UB2 getUB2() { 
1316        return getTyped("UB2", UB2.class);
1317     }
1318 
1319 
1320 
1321 
1322 }
1323