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