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.v22.message;
35  
36  import ca.uhn.hl7v2.model.v22.group.*;
37  import ca.uhn.hl7v2.model.v22.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_AXX message structure (see chapter ). This structure contains the 
47   * following elements: </p>
48   * <ul>
49  		                 * <li>1: MSH () <b> </b> <ul><li>Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A18, ADT_A20, ADT_A21, ADT_A22, ADT_A23, ADT_A24, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A30, ADT_A31, ADT_A32, ADT_A33, ADT_A34, ADT_A35, ADT_A36, ADT_A37]</li></ul></li>
50  		                 * <li>2: EVN () <b> </b> <ul><li>Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A18, ADT_A20, ADT_A21, ADT_A22, ADT_A23, ADT_A24, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A30, ADT_A31, ADT_A32, ADT_A33, ADT_A34, ADT_A35, ADT_A36, ADT_A37]</li></ul></li>
51  		                 * <li>3: PID () <b>optional </b> <ul><li>Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A18, ADT_A21, ADT_A22, ADT_A23, ADT_A24, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A30, ADT_A31, ADT_A32, ADT_A33, ADT_A34, ADT_A35, ADT_A36, ADT_A37]</li></ul></li>
52  		                 * <li>4: MRG () <b>optional </b> <ul><li>Used for the following structures: [ADT_A06, ADT_A07, ADT_A18, ADT_A30, ADT_A34, ADT_A35, ADT_A36]</li></ul></li>
53  		                 * <li>5: NK1 () <b>optional repeating</b> <ul><li>Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]</li></ul></li>
54  		                 * <li>6: PV1 () <b>optional </b> <ul><li>Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A18, ADT_A21, ADT_A22, ADT_A23, ADT_A24, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33, ADT_A37]</li></ul></li>
55  		                 * <li>7: PV2 () <b>optional </b> <ul><li>Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]</li></ul></li>
56  		                 * <li>8: OBX () <b>optional repeating</b> <ul><li>Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]</li></ul></li>
57  		                 * <li>9: AL1 () <b>optional repeating</b> <ul><li>Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]</li></ul></li>
58  		                 * <li>10: DG1 () <b>optional repeating</b> <ul><li>Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A28, ADT_A31]</li></ul></li>
59  		                 * <li>11: PR1 () <b>optional repeating</b> <ul><li>Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]</li></ul></li>
60  		                 * <li>12: GT1 () <b>optional repeating</b> <ul><li>Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]</li></ul></li>
61  		                 * <li>13: ADT_AXX_INSURANCE () <b>optional repeating</b> </li>
62  		                 * <li>14: ACC () <b>optional </b> <ul><li>Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]</li></ul></li>
63  		                 * <li>15: UB1 () <b>optional </b> <ul><li>Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]</li></ul></li>
64  		                 * <li>16: UB2 () <b>optional </b> <ul><li>Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]</li></ul></li>
65  		                 * <li>17: PID () <b>optional </b> <ul><li>Used for the following structures: [ADT_A17, ADT_A24, ADT_A37]</li></ul></li>
66  		                 * <li>18: PV1 () <b>optional </b> <ul><li>Used for the following structures: [ADT_A17, ADT_A24, ADT_A37]</li></ul></li>
67  		                 * <li>19: PV2 () <b>optional </b> <ul><li>Used for the following structures: [ADT_A17]</li></ul></li>
68  		                 * <li>20: OBX () <b>optional repeating</b> <ul><li>Used for the following structures: [ADT_A17]</li></ul></li>
69  		                 * <li>21: NPU () <b>optional </b> <ul><li>Used for the following structures: [ADT_A20]</li></ul></li>
70   * </ul>
71   */
72  //@SuppressWarnings("unused")
73  public class ADT_AXX extends AbstractSuperMessage  {
74  
75      /**
76       * Creates a new ADT_AXX message with DefaultModelClassFactory. 
77       */ 
78      public ADT_AXX() { 
79         this(new DefaultModelClassFactory());
80      }
81  
82      /** 
83       * Creates a new ADT_AXX message with custom ModelClassFactory.
84       */
85      public ADT_AXX(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.addSuperstructureApplication("MSH", "ADT_A01"); 
94  	          this.addSuperstructureApplication("MSH", "ADT_A02"); 
95  	          this.addSuperstructureApplication("MSH", "ADT_A03"); 
96  	          this.addSuperstructureApplication("MSH", "ADT_A04"); 
97  	          this.addSuperstructureApplication("MSH", "ADT_A05"); 
98  	          this.addSuperstructureApplication("MSH", "ADT_A06"); 
99  	          this.addSuperstructureApplication("MSH", "ADT_A07"); 
100 	          this.addSuperstructureApplication("MSH", "ADT_A08"); 
101 	          this.addSuperstructureApplication("MSH", "ADT_A09"); 
102 	          this.addSuperstructureApplication("MSH", "ADT_A10"); 
103 	          this.addSuperstructureApplication("MSH", "ADT_A11"); 
104 	          this.addSuperstructureApplication("MSH", "ADT_A12"); 
105 	          this.addSuperstructureApplication("MSH", "ADT_A13"); 
106 	          this.addSuperstructureApplication("MSH", "ADT_A14"); 
107 	          this.addSuperstructureApplication("MSH", "ADT_A15"); 
108 	          this.addSuperstructureApplication("MSH", "ADT_A16"); 
109 	          this.addSuperstructureApplication("MSH", "ADT_A17"); 
110 	          this.addSuperstructureApplication("MSH", "ADT_A18"); 
111 	          this.addSuperstructureApplication("MSH", "ADT_A20"); 
112 	          this.addSuperstructureApplication("MSH", "ADT_A21"); 
113 	          this.addSuperstructureApplication("MSH", "ADT_A22"); 
114 	          this.addSuperstructureApplication("MSH", "ADT_A23"); 
115 	          this.addSuperstructureApplication("MSH", "ADT_A24"); 
116 	          this.addSuperstructureApplication("MSH", "ADT_A25"); 
117 	          this.addSuperstructureApplication("MSH", "ADT_A26"); 
118 	          this.addSuperstructureApplication("MSH", "ADT_A27"); 
119 	          this.addSuperstructureApplication("MSH", "ADT_A28"); 
120 	          this.addSuperstructureApplication("MSH", "ADT_A29"); 
121 	          this.addSuperstructureApplication("MSH", "ADT_A30"); 
122 	          this.addSuperstructureApplication("MSH", "ADT_A31"); 
123 	          this.addSuperstructureApplication("MSH", "ADT_A32"); 
124 	          this.addSuperstructureApplication("MSH", "ADT_A33"); 
125 	          this.addSuperstructureApplication("MSH", "ADT_A34"); 
126 	          this.addSuperstructureApplication("MSH", "ADT_A35"); 
127 	          this.addSuperstructureApplication("MSH", "ADT_A36"); 
128 	          this.addSuperstructureApplication("MSH", "ADT_A37"); 
129 	                          this.add(EVN.class, true, false);
130 	          this.addSuperstructureApplication("EVN", "ADT_A01"); 
131 	          this.addSuperstructureApplication("EVN", "ADT_A02"); 
132 	          this.addSuperstructureApplication("EVN", "ADT_A03"); 
133 	          this.addSuperstructureApplication("EVN", "ADT_A04"); 
134 	          this.addSuperstructureApplication("EVN", "ADT_A05"); 
135 	          this.addSuperstructureApplication("EVN", "ADT_A06"); 
136 	          this.addSuperstructureApplication("EVN", "ADT_A07"); 
137 	          this.addSuperstructureApplication("EVN", "ADT_A08"); 
138 	          this.addSuperstructureApplication("EVN", "ADT_A09"); 
139 	          this.addSuperstructureApplication("EVN", "ADT_A10"); 
140 	          this.addSuperstructureApplication("EVN", "ADT_A11"); 
141 	          this.addSuperstructureApplication("EVN", "ADT_A12"); 
142 	          this.addSuperstructureApplication("EVN", "ADT_A13"); 
143 	          this.addSuperstructureApplication("EVN", "ADT_A14"); 
144 	          this.addSuperstructureApplication("EVN", "ADT_A15"); 
145 	          this.addSuperstructureApplication("EVN", "ADT_A16"); 
146 	          this.addSuperstructureApplication("EVN", "ADT_A17"); 
147 	          this.addSuperstructureApplication("EVN", "ADT_A18"); 
148 	          this.addSuperstructureApplication("EVN", "ADT_A20"); 
149 	          this.addSuperstructureApplication("EVN", "ADT_A21"); 
150 	          this.addSuperstructureApplication("EVN", "ADT_A22"); 
151 	          this.addSuperstructureApplication("EVN", "ADT_A23"); 
152 	          this.addSuperstructureApplication("EVN", "ADT_A24"); 
153 	          this.addSuperstructureApplication("EVN", "ADT_A25"); 
154 	          this.addSuperstructureApplication("EVN", "ADT_A26"); 
155 	          this.addSuperstructureApplication("EVN", "ADT_A27"); 
156 	          this.addSuperstructureApplication("EVN", "ADT_A28"); 
157 	          this.addSuperstructureApplication("EVN", "ADT_A29"); 
158 	          this.addSuperstructureApplication("EVN", "ADT_A30"); 
159 	          this.addSuperstructureApplication("EVN", "ADT_A31"); 
160 	          this.addSuperstructureApplication("EVN", "ADT_A32"); 
161 	          this.addSuperstructureApplication("EVN", "ADT_A33"); 
162 	          this.addSuperstructureApplication("EVN", "ADT_A34"); 
163 	          this.addSuperstructureApplication("EVN", "ADT_A35"); 
164 	          this.addSuperstructureApplication("EVN", "ADT_A36"); 
165 	          this.addSuperstructureApplication("EVN", "ADT_A37"); 
166 	                          this.add(PID.class, false, false);
167 	          this.addSuperstructureApplication("PID", "ADT_A01"); 
168 	          this.addSuperstructureApplication("PID", "ADT_A02"); 
169 	          this.addSuperstructureApplication("PID", "ADT_A03"); 
170 	          this.addSuperstructureApplication("PID", "ADT_A04"); 
171 	          this.addSuperstructureApplication("PID", "ADT_A05"); 
172 	          this.addSuperstructureApplication("PID", "ADT_A06"); 
173 	          this.addSuperstructureApplication("PID", "ADT_A07"); 
174 	          this.addSuperstructureApplication("PID", "ADT_A08"); 
175 	          this.addSuperstructureApplication("PID", "ADT_A09"); 
176 	          this.addSuperstructureApplication("PID", "ADT_A10"); 
177 	          this.addSuperstructureApplication("PID", "ADT_A11"); 
178 	          this.addSuperstructureApplication("PID", "ADT_A12"); 
179 	          this.addSuperstructureApplication("PID", "ADT_A13"); 
180 	          this.addSuperstructureApplication("PID", "ADT_A14"); 
181 	          this.addSuperstructureApplication("PID", "ADT_A15"); 
182 	          this.addSuperstructureApplication("PID", "ADT_A16"); 
183 	          this.addSuperstructureApplication("PID", "ADT_A17"); 
184 	          this.addSuperstructureApplication("PID", "ADT_A18"); 
185 	          this.addSuperstructureApplication("PID", "ADT_A21"); 
186 	          this.addSuperstructureApplication("PID", "ADT_A22"); 
187 	          this.addSuperstructureApplication("PID", "ADT_A23"); 
188 	          this.addSuperstructureApplication("PID", "ADT_A24"); 
189 	          this.addSuperstructureApplication("PID", "ADT_A25"); 
190 	          this.addSuperstructureApplication("PID", "ADT_A26"); 
191 	          this.addSuperstructureApplication("PID", "ADT_A27"); 
192 	          this.addSuperstructureApplication("PID", "ADT_A28"); 
193 	          this.addSuperstructureApplication("PID", "ADT_A29"); 
194 	          this.addSuperstructureApplication("PID", "ADT_A30"); 
195 	          this.addSuperstructureApplication("PID", "ADT_A31"); 
196 	          this.addSuperstructureApplication("PID", "ADT_A32"); 
197 	          this.addSuperstructureApplication("PID", "ADT_A33"); 
198 	          this.addSuperstructureApplication("PID", "ADT_A34"); 
199 	          this.addSuperstructureApplication("PID", "ADT_A35"); 
200 	          this.addSuperstructureApplication("PID", "ADT_A36"); 
201 	          this.addSuperstructureApplication("PID", "ADT_A37"); 
202 	                          this.add(MRG.class, false, false);
203 	          this.addSuperstructureApplication("MRG", "ADT_A06"); 
204 	          this.addSuperstructureApplication("MRG", "ADT_A07"); 
205 	          this.addSuperstructureApplication("MRG", "ADT_A18"); 
206 	          this.addSuperstructureApplication("MRG", "ADT_A30"); 
207 	          this.addSuperstructureApplication("MRG", "ADT_A34"); 
208 	          this.addSuperstructureApplication("MRG", "ADT_A35"); 
209 	          this.addSuperstructureApplication("MRG", "ADT_A36"); 
210 	                          this.add(NK1.class, false, true);
211 	          this.addSuperstructureApplication("NK1", "ADT_A01"); 
212 	          this.addSuperstructureApplication("NK1", "ADT_A04"); 
213 	          this.addSuperstructureApplication("NK1", "ADT_A05"); 
214 	          this.addSuperstructureApplication("NK1", "ADT_A06"); 
215 	          this.addSuperstructureApplication("NK1", "ADT_A07"); 
216 	          this.addSuperstructureApplication("NK1", "ADT_A08"); 
217 	          this.addSuperstructureApplication("NK1", "ADT_A13"); 
218 	          this.addSuperstructureApplication("NK1", "ADT_A14"); 
219 	          this.addSuperstructureApplication("NK1", "ADT_A28"); 
220 	          this.addSuperstructureApplication("NK1", "ADT_A31"); 
221 	                          this.add(PV1.class, false, false);
222 	          this.addSuperstructureApplication("PV1", "ADT_A01"); 
223 	          this.addSuperstructureApplication("PV1", "ADT_A02"); 
224 	          this.addSuperstructureApplication("PV1", "ADT_A03"); 
225 	          this.addSuperstructureApplication("PV1", "ADT_A04"); 
226 	          this.addSuperstructureApplication("PV1", "ADT_A05"); 
227 	          this.addSuperstructureApplication("PV1", "ADT_A06"); 
228 	          this.addSuperstructureApplication("PV1", "ADT_A07"); 
229 	          this.addSuperstructureApplication("PV1", "ADT_A08"); 
230 	          this.addSuperstructureApplication("PV1", "ADT_A09"); 
231 	          this.addSuperstructureApplication("PV1", "ADT_A10"); 
232 	          this.addSuperstructureApplication("PV1", "ADT_A11"); 
233 	          this.addSuperstructureApplication("PV1", "ADT_A12"); 
234 	          this.addSuperstructureApplication("PV1", "ADT_A13"); 
235 	          this.addSuperstructureApplication("PV1", "ADT_A14"); 
236 	          this.addSuperstructureApplication("PV1", "ADT_A15"); 
237 	          this.addSuperstructureApplication("PV1", "ADT_A16"); 
238 	          this.addSuperstructureApplication("PV1", "ADT_A17"); 
239 	          this.addSuperstructureApplication("PV1", "ADT_A18"); 
240 	          this.addSuperstructureApplication("PV1", "ADT_A21"); 
241 	          this.addSuperstructureApplication("PV1", "ADT_A22"); 
242 	          this.addSuperstructureApplication("PV1", "ADT_A23"); 
243 	          this.addSuperstructureApplication("PV1", "ADT_A24"); 
244 	          this.addSuperstructureApplication("PV1", "ADT_A25"); 
245 	          this.addSuperstructureApplication("PV1", "ADT_A26"); 
246 	          this.addSuperstructureApplication("PV1", "ADT_A27"); 
247 	          this.addSuperstructureApplication("PV1", "ADT_A28"); 
248 	          this.addSuperstructureApplication("PV1", "ADT_A29"); 
249 	          this.addSuperstructureApplication("PV1", "ADT_A31"); 
250 	          this.addSuperstructureApplication("PV1", "ADT_A32"); 
251 	          this.addSuperstructureApplication("PV1", "ADT_A33"); 
252 	          this.addSuperstructureApplication("PV1", "ADT_A37"); 
253 	                          this.add(PV2.class, false, false);
254 	          this.addSuperstructureApplication("PV2", "ADT_A01"); 
255 	          this.addSuperstructureApplication("PV2", "ADT_A02"); 
256 	          this.addSuperstructureApplication("PV2", "ADT_A03"); 
257 	          this.addSuperstructureApplication("PV2", "ADT_A04"); 
258 	          this.addSuperstructureApplication("PV2", "ADT_A05"); 
259 	          this.addSuperstructureApplication("PV2", "ADT_A06"); 
260 	          this.addSuperstructureApplication("PV2", "ADT_A07"); 
261 	          this.addSuperstructureApplication("PV2", "ADT_A08"); 
262 	          this.addSuperstructureApplication("PV2", "ADT_A09"); 
263 	          this.addSuperstructureApplication("PV2", "ADT_A10"); 
264 	          this.addSuperstructureApplication("PV2", "ADT_A11"); 
265 	          this.addSuperstructureApplication("PV2", "ADT_A12"); 
266 	          this.addSuperstructureApplication("PV2", "ADT_A13"); 
267 	          this.addSuperstructureApplication("PV2", "ADT_A14"); 
268 	          this.addSuperstructureApplication("PV2", "ADT_A15"); 
269 	          this.addSuperstructureApplication("PV2", "ADT_A16"); 
270 	          this.addSuperstructureApplication("PV2", "ADT_A17"); 
271 	          this.addSuperstructureApplication("PV2", "ADT_A21"); 
272 	          this.addSuperstructureApplication("PV2", "ADT_A22"); 
273 	          this.addSuperstructureApplication("PV2", "ADT_A23"); 
274 	          this.addSuperstructureApplication("PV2", "ADT_A25"); 
275 	          this.addSuperstructureApplication("PV2", "ADT_A26"); 
276 	          this.addSuperstructureApplication("PV2", "ADT_A27"); 
277 	          this.addSuperstructureApplication("PV2", "ADT_A28"); 
278 	          this.addSuperstructureApplication("PV2", "ADT_A29"); 
279 	          this.addSuperstructureApplication("PV2", "ADT_A31"); 
280 	          this.addSuperstructureApplication("PV2", "ADT_A32"); 
281 	          this.addSuperstructureApplication("PV2", "ADT_A33"); 
282 	                          this.add(OBX.class, false, true);
283 	          this.addSuperstructureApplication("OBX", "ADT_A01"); 
284 	          this.addSuperstructureApplication("OBX", "ADT_A02"); 
285 	          this.addSuperstructureApplication("OBX", "ADT_A03"); 
286 	          this.addSuperstructureApplication("OBX", "ADT_A04"); 
287 	          this.addSuperstructureApplication("OBX", "ADT_A05"); 
288 	          this.addSuperstructureApplication("OBX", "ADT_A06"); 
289 	          this.addSuperstructureApplication("OBX", "ADT_A07"); 
290 	          this.addSuperstructureApplication("OBX", "ADT_A08"); 
291 	          this.addSuperstructureApplication("OBX", "ADT_A09"); 
292 	          this.addSuperstructureApplication("OBX", "ADT_A10"); 
293 	          this.addSuperstructureApplication("OBX", "ADT_A11"); 
294 	          this.addSuperstructureApplication("OBX", "ADT_A12"); 
295 	          this.addSuperstructureApplication("OBX", "ADT_A13"); 
296 	          this.addSuperstructureApplication("OBX", "ADT_A14"); 
297 	          this.addSuperstructureApplication("OBX", "ADT_A15"); 
298 	          this.addSuperstructureApplication("OBX", "ADT_A16"); 
299 	          this.addSuperstructureApplication("OBX", "ADT_A17"); 
300 	          this.addSuperstructureApplication("OBX", "ADT_A21"); 
301 	          this.addSuperstructureApplication("OBX", "ADT_A22"); 
302 	          this.addSuperstructureApplication("OBX", "ADT_A23"); 
303 	          this.addSuperstructureApplication("OBX", "ADT_A25"); 
304 	          this.addSuperstructureApplication("OBX", "ADT_A26"); 
305 	          this.addSuperstructureApplication("OBX", "ADT_A27"); 
306 	          this.addSuperstructureApplication("OBX", "ADT_A28"); 
307 	          this.addSuperstructureApplication("OBX", "ADT_A29"); 
308 	          this.addSuperstructureApplication("OBX", "ADT_A31"); 
309 	          this.addSuperstructureApplication("OBX", "ADT_A32"); 
310 	          this.addSuperstructureApplication("OBX", "ADT_A33"); 
311 	                          this.add(AL1.class, false, true);
312 	          this.addSuperstructureApplication("AL1", "ADT_A01"); 
313 	          this.addSuperstructureApplication("AL1", "ADT_A04"); 
314 	          this.addSuperstructureApplication("AL1", "ADT_A05"); 
315 	          this.addSuperstructureApplication("AL1", "ADT_A06"); 
316 	          this.addSuperstructureApplication("AL1", "ADT_A07"); 
317 	          this.addSuperstructureApplication("AL1", "ADT_A08"); 
318 	          this.addSuperstructureApplication("AL1", "ADT_A13"); 
319 	          this.addSuperstructureApplication("AL1", "ADT_A14"); 
320 	          this.addSuperstructureApplication("AL1", "ADT_A28"); 
321 	          this.addSuperstructureApplication("AL1", "ADT_A31"); 
322 	                          this.add(DG1.class, false, true);
323 	          this.addSuperstructureApplication("DG1", "ADT_A01"); 
324 	          this.addSuperstructureApplication("DG1", "ADT_A04"); 
325 	          this.addSuperstructureApplication("DG1", "ADT_A05"); 
326 	          this.addSuperstructureApplication("DG1", "ADT_A06"); 
327 	          this.addSuperstructureApplication("DG1", "ADT_A07"); 
328 	          this.addSuperstructureApplication("DG1", "ADT_A08"); 
329 	          this.addSuperstructureApplication("DG1", "ADT_A09"); 
330 	          this.addSuperstructureApplication("DG1", "ADT_A10"); 
331 	          this.addSuperstructureApplication("DG1", "ADT_A11"); 
332 	          this.addSuperstructureApplication("DG1", "ADT_A12"); 
333 	          this.addSuperstructureApplication("DG1", "ADT_A13"); 
334 	          this.addSuperstructureApplication("DG1", "ADT_A14"); 
335 	          this.addSuperstructureApplication("DG1", "ADT_A15"); 
336 	          this.addSuperstructureApplication("DG1", "ADT_A16"); 
337 	          this.addSuperstructureApplication("DG1", "ADT_A28"); 
338 	          this.addSuperstructureApplication("DG1", "ADT_A31"); 
339 	                          this.add(PR1.class, false, true);
340 	          this.addSuperstructureApplication("PR1", "ADT_A01"); 
341 	          this.addSuperstructureApplication("PR1", "ADT_A04"); 
342 	          this.addSuperstructureApplication("PR1", "ADT_A05"); 
343 	          this.addSuperstructureApplication("PR1", "ADT_A06"); 
344 	          this.addSuperstructureApplication("PR1", "ADT_A07"); 
345 	          this.addSuperstructureApplication("PR1", "ADT_A08"); 
346 	          this.addSuperstructureApplication("PR1", "ADT_A13"); 
347 	          this.addSuperstructureApplication("PR1", "ADT_A14"); 
348 	          this.addSuperstructureApplication("PR1", "ADT_A28"); 
349 	          this.addSuperstructureApplication("PR1", "ADT_A31"); 
350 	                          this.add(GT1.class, false, true);
351 	          this.addSuperstructureApplication("GT1", "ADT_A01"); 
352 	          this.addSuperstructureApplication("GT1", "ADT_A04"); 
353 	          this.addSuperstructureApplication("GT1", "ADT_A05"); 
354 	          this.addSuperstructureApplication("GT1", "ADT_A06"); 
355 	          this.addSuperstructureApplication("GT1", "ADT_A07"); 
356 	          this.addSuperstructureApplication("GT1", "ADT_A08"); 
357 	          this.addSuperstructureApplication("GT1", "ADT_A13"); 
358 	          this.addSuperstructureApplication("GT1", "ADT_A14"); 
359 	          this.addSuperstructureApplication("GT1", "ADT_A28"); 
360 	          this.addSuperstructureApplication("GT1", "ADT_A31"); 
361 	                          this.add(ADT_AXX_INSURANCE.class, false, true);
362 	                          this.add(ACC.class, false, false);
363 	          this.addSuperstructureApplication("ACC", "ADT_A01"); 
364 	          this.addSuperstructureApplication("ACC", "ADT_A04"); 
365 	          this.addSuperstructureApplication("ACC", "ADT_A05"); 
366 	          this.addSuperstructureApplication("ACC", "ADT_A06"); 
367 	          this.addSuperstructureApplication("ACC", "ADT_A07"); 
368 	          this.addSuperstructureApplication("ACC", "ADT_A08"); 
369 	          this.addSuperstructureApplication("ACC", "ADT_A13"); 
370 	          this.addSuperstructureApplication("ACC", "ADT_A14"); 
371 	          this.addSuperstructureApplication("ACC", "ADT_A28"); 
372 	          this.addSuperstructureApplication("ACC", "ADT_A31"); 
373 	                          this.add(UB1.class, false, false);
374 	          this.addSuperstructureApplication("UB1", "ADT_A01"); 
375 	          this.addSuperstructureApplication("UB1", "ADT_A04"); 
376 	          this.addSuperstructureApplication("UB1", "ADT_A05"); 
377 	          this.addSuperstructureApplication("UB1", "ADT_A06"); 
378 	          this.addSuperstructureApplication("UB1", "ADT_A07"); 
379 	          this.addSuperstructureApplication("UB1", "ADT_A08"); 
380 	          this.addSuperstructureApplication("UB1", "ADT_A13"); 
381 	          this.addSuperstructureApplication("UB1", "ADT_A14"); 
382 	          this.addSuperstructureApplication("UB1", "ADT_A28"); 
383 	          this.addSuperstructureApplication("UB1", "ADT_A31"); 
384 	                          this.add(UB2.class, false, false);
385 	          this.addSuperstructureApplication("UB2", "ADT_A01"); 
386 	          this.addSuperstructureApplication("UB2", "ADT_A04"); 
387 	          this.addSuperstructureApplication("UB2", "ADT_A05"); 
388 	          this.addSuperstructureApplication("UB2", "ADT_A06"); 
389 	          this.addSuperstructureApplication("UB2", "ADT_A07"); 
390 	          this.addSuperstructureApplication("UB2", "ADT_A08"); 
391 	          this.addSuperstructureApplication("UB2", "ADT_A13"); 
392 	          this.addSuperstructureApplication("UB2", "ADT_A14"); 
393 	          this.addSuperstructureApplication("UB2", "ADT_A28"); 
394 	          this.addSuperstructureApplication("UB2", "ADT_A31"); 
395 	                          this.add(PID.class, false, false);
396 	          this.addSuperstructureApplication("PID2", "ADT_A17"); 
397 	          this.addSuperstructureApplication("PID2", "ADT_A24"); 
398 	          this.addSuperstructureApplication("PID2", "ADT_A37"); 
399 	                          this.add(PV1.class, false, false);
400 	          this.addSuperstructureApplication("PV12", "ADT_A17"); 
401 	          this.addSuperstructureApplication("PV12", "ADT_A24"); 
402 	          this.addSuperstructureApplication("PV12", "ADT_A37"); 
403 	                          this.add(PV2.class, false, false);
404 	          this.addSuperstructureApplication("PV22", "ADT_A17"); 
405 	                          this.add(OBX.class, false, true);
406 	          this.addSuperstructureApplication("OBX2", "ADT_A17"); 
407 	                          this.add(NPU.class, false, false);
408 	          this.addSuperstructureApplication("NPU", "ADT_A20"); 
409 	       } catch(HL7Exception e) {
410           log.error("Unexpected error creating ADT_AXX - this is probably a bug in the source code generator.", e);
411        }
412     }
413 
414 	public java.util.List<String> getChildNamesForStructure(String theStructure) {
415 		java.util.ArrayList<String> retVal = new java.util.ArrayList<String>();
416 			if ( "ADT_A01".equals(theStructure) ) {
417 					retVal.add("MSH"); 
418 					retVal.add("EVN"); 
419 					retVal.add("PID"); 
420 					retVal.add("NK1"); 
421 					retVal.add("PV1"); 
422 					retVal.add("PV2"); 
423 					retVal.add("OBX"); 
424 					retVal.add("AL1"); 
425 					retVal.add("DG1"); 
426 					retVal.add("PR1"); 
427 					retVal.add("GT1"); 
428 					retVal.add("INSURANCE"); 
429 					retVal.add("ACC"); 
430 					retVal.add("UB1"); 
431 					retVal.add("UB2"); 
432 				}
433 			if ( "ADT_A02".equals(theStructure) ) {
434 					retVal.add("MSH"); 
435 					retVal.add("EVN"); 
436 					retVal.add("PID"); 
437 					retVal.add("PV1"); 
438 					retVal.add("PV2"); 
439 					retVal.add("OBX"); 
440 				}
441 			if ( "ADT_A03".equals(theStructure) ) {
442 					retVal.add("MSH"); 
443 					retVal.add("EVN"); 
444 					retVal.add("PID"); 
445 					retVal.add("PV1"); 
446 					retVal.add("PV2"); 
447 					retVal.add("OBX"); 
448 				}
449 			if ( "ADT_A04".equals(theStructure) ) {
450 					retVal.add("MSH"); 
451 					retVal.add("EVN"); 
452 					retVal.add("PID"); 
453 					retVal.add("NK1"); 
454 					retVal.add("PV1"); 
455 					retVal.add("PV2"); 
456 					retVal.add("OBX"); 
457 					retVal.add("AL1"); 
458 					retVal.add("DG1"); 
459 					retVal.add("PR1"); 
460 					retVal.add("GT1"); 
461 					retVal.add("INSURANCE"); 
462 					retVal.add("ACC"); 
463 					retVal.add("UB1"); 
464 					retVal.add("UB2"); 
465 				}
466 			if ( "ADT_A05".equals(theStructure) ) {
467 					retVal.add("MSH"); 
468 					retVal.add("EVN"); 
469 					retVal.add("PID"); 
470 					retVal.add("NK1"); 
471 					retVal.add("PV1"); 
472 					retVal.add("PV2"); 
473 					retVal.add("OBX"); 
474 					retVal.add("AL1"); 
475 					retVal.add("DG1"); 
476 					retVal.add("PR1"); 
477 					retVal.add("GT1"); 
478 					retVal.add("INSURANCE"); 
479 					retVal.add("ACC"); 
480 					retVal.add("UB1"); 
481 					retVal.add("UB2"); 
482 				}
483 			if ( "ADT_A06".equals(theStructure) ) {
484 					retVal.add("MSH"); 
485 					retVal.add("EVN"); 
486 					retVal.add("PID"); 
487 					retVal.add("MRG"); 
488 					retVal.add("NK1"); 
489 					retVal.add("PV1"); 
490 					retVal.add("PV2"); 
491 					retVal.add("OBX"); 
492 					retVal.add("AL1"); 
493 					retVal.add("DG1"); 
494 					retVal.add("PR1"); 
495 					retVal.add("GT1"); 
496 					retVal.add("INSURANCE"); 
497 					retVal.add("ACC"); 
498 					retVal.add("UB1"); 
499 					retVal.add("UB2"); 
500 				}
501 			if ( "ADT_A07".equals(theStructure) ) {
502 					retVal.add("MSH"); 
503 					retVal.add("EVN"); 
504 					retVal.add("PID"); 
505 					retVal.add("MRG"); 
506 					retVal.add("NK1"); 
507 					retVal.add("PV1"); 
508 					retVal.add("PV2"); 
509 					retVal.add("OBX"); 
510 					retVal.add("AL1"); 
511 					retVal.add("DG1"); 
512 					retVal.add("PR1"); 
513 					retVal.add("GT1"); 
514 					retVal.add("INSURANCE"); 
515 					retVal.add("ACC"); 
516 					retVal.add("UB1"); 
517 					retVal.add("UB2"); 
518 				}
519 			if ( "ADT_A08".equals(theStructure) ) {
520 					retVal.add("MSH"); 
521 					retVal.add("EVN"); 
522 					retVal.add("PID"); 
523 					retVal.add("NK1"); 
524 					retVal.add("PV1"); 
525 					retVal.add("PV2"); 
526 					retVal.add("OBX"); 
527 					retVal.add("AL1"); 
528 					retVal.add("DG1"); 
529 					retVal.add("PR1"); 
530 					retVal.add("GT1"); 
531 					retVal.add("INSURANCE"); 
532 					retVal.add("ACC"); 
533 					retVal.add("UB1"); 
534 					retVal.add("UB2"); 
535 				}
536 			if ( "ADT_A09".equals(theStructure) ) {
537 					retVal.add("MSH"); 
538 					retVal.add("EVN"); 
539 					retVal.add("PID"); 
540 					retVal.add("PV1"); 
541 					retVal.add("PV2"); 
542 					retVal.add("OBX"); 
543 					retVal.add("DG1"); 
544 				}
545 			if ( "ADT_A10".equals(theStructure) ) {
546 					retVal.add("MSH"); 
547 					retVal.add("EVN"); 
548 					retVal.add("PID"); 
549 					retVal.add("PV1"); 
550 					retVal.add("PV2"); 
551 					retVal.add("OBX"); 
552 					retVal.add("DG1"); 
553 				}
554 			if ( "ADT_A11".equals(theStructure) ) {
555 					retVal.add("MSH"); 
556 					retVal.add("EVN"); 
557 					retVal.add("PID"); 
558 					retVal.add("PV1"); 
559 					retVal.add("PV2"); 
560 					retVal.add("OBX"); 
561 					retVal.add("DG1"); 
562 				}
563 			if ( "ADT_A12".equals(theStructure) ) {
564 					retVal.add("MSH"); 
565 					retVal.add("EVN"); 
566 					retVal.add("PID"); 
567 					retVal.add("PV1"); 
568 					retVal.add("PV2"); 
569 					retVal.add("OBX"); 
570 					retVal.add("DG1"); 
571 				}
572 			if ( "ADT_A13".equals(theStructure) ) {
573 					retVal.add("MSH"); 
574 					retVal.add("EVN"); 
575 					retVal.add("PID"); 
576 					retVal.add("NK1"); 
577 					retVal.add("PV1"); 
578 					retVal.add("PV2"); 
579 					retVal.add("OBX"); 
580 					retVal.add("AL1"); 
581 					retVal.add("DG1"); 
582 					retVal.add("PR1"); 
583 					retVal.add("GT1"); 
584 					retVal.add("INSURANCE"); 
585 					retVal.add("ACC"); 
586 					retVal.add("UB1"); 
587 					retVal.add("UB2"); 
588 				}
589 			if ( "ADT_A14".equals(theStructure) ) {
590 					retVal.add("MSH"); 
591 					retVal.add("EVN"); 
592 					retVal.add("PID"); 
593 					retVal.add("NK1"); 
594 					retVal.add("PV1"); 
595 					retVal.add("PV2"); 
596 					retVal.add("OBX"); 
597 					retVal.add("AL1"); 
598 					retVal.add("DG1"); 
599 					retVal.add("PR1"); 
600 					retVal.add("GT1"); 
601 					retVal.add("INSURANCE"); 
602 					retVal.add("ACC"); 
603 					retVal.add("UB1"); 
604 					retVal.add("UB2"); 
605 				}
606 			if ( "ADT_A15".equals(theStructure) ) {
607 					retVal.add("MSH"); 
608 					retVal.add("EVN"); 
609 					retVal.add("PID"); 
610 					retVal.add("PV1"); 
611 					retVal.add("PV2"); 
612 					retVal.add("OBX"); 
613 					retVal.add("DG1"); 
614 				}
615 			if ( "ADT_A16".equals(theStructure) ) {
616 					retVal.add("MSH"); 
617 					retVal.add("EVN"); 
618 					retVal.add("PID"); 
619 					retVal.add("PV1"); 
620 					retVal.add("PV2"); 
621 					retVal.add("OBX"); 
622 					retVal.add("DG1"); 
623 				}
624 			if ( "ADT_A17".equals(theStructure) ) {
625 					retVal.add("MSH"); 
626 					retVal.add("EVN"); 
627 					retVal.add("PID"); 
628 					retVal.add("PV1"); 
629 					retVal.add("PV2"); 
630 					retVal.add("OBX"); 
631 					retVal.add("PID2"); 
632 					retVal.add("PV12"); 
633 					retVal.add("PV22"); 
634 					retVal.add("OBX2"); 
635 				}
636 			if ( "ADT_A18".equals(theStructure) ) {
637 					retVal.add("MSH"); 
638 					retVal.add("EVN"); 
639 					retVal.add("PID"); 
640 					retVal.add("MRG"); 
641 					retVal.add("PV1"); 
642 				}
643 			if ( "ADT_A20".equals(theStructure) ) {
644 					retVal.add("MSH"); 
645 					retVal.add("EVN"); 
646 					retVal.add("NPU"); 
647 				}
648 			if ( "ADT_A21".equals(theStructure) ) {
649 					retVal.add("MSH"); 
650 					retVal.add("EVN"); 
651 					retVal.add("PID"); 
652 					retVal.add("PV1"); 
653 					retVal.add("PV2"); 
654 					retVal.add("OBX"); 
655 				}
656 			if ( "ADT_A22".equals(theStructure) ) {
657 					retVal.add("MSH"); 
658 					retVal.add("EVN"); 
659 					retVal.add("PID"); 
660 					retVal.add("PV1"); 
661 					retVal.add("PV2"); 
662 					retVal.add("OBX"); 
663 				}
664 			if ( "ADT_A23".equals(theStructure) ) {
665 					retVal.add("MSH"); 
666 					retVal.add("EVN"); 
667 					retVal.add("PID"); 
668 					retVal.add("PV1"); 
669 					retVal.add("PV2"); 
670 					retVal.add("OBX"); 
671 				}
672 			if ( "ADT_A24".equals(theStructure) ) {
673 					retVal.add("MSH"); 
674 					retVal.add("EVN"); 
675 					retVal.add("PID"); 
676 					retVal.add("PV1"); 
677 					retVal.add("PID2"); 
678 					retVal.add("PV12"); 
679 				}
680 			if ( "ADT_A25".equals(theStructure) ) {
681 					retVal.add("MSH"); 
682 					retVal.add("EVN"); 
683 					retVal.add("PID"); 
684 					retVal.add("PV1"); 
685 					retVal.add("PV2"); 
686 					retVal.add("OBX"); 
687 				}
688 			if ( "ADT_A26".equals(theStructure) ) {
689 					retVal.add("MSH"); 
690 					retVal.add("EVN"); 
691 					retVal.add("PID"); 
692 					retVal.add("PV1"); 
693 					retVal.add("PV2"); 
694 					retVal.add("OBX"); 
695 				}
696 			if ( "ADT_A27".equals(theStructure) ) {
697 					retVal.add("MSH"); 
698 					retVal.add("EVN"); 
699 					retVal.add("PID"); 
700 					retVal.add("PV1"); 
701 					retVal.add("PV2"); 
702 					retVal.add("OBX"); 
703 				}
704 			if ( "ADT_A28".equals(theStructure) ) {
705 					retVal.add("MSH"); 
706 					retVal.add("EVN"); 
707 					retVal.add("PID"); 
708 					retVal.add("NK1"); 
709 					retVal.add("PV1"); 
710 					retVal.add("PV2"); 
711 					retVal.add("OBX"); 
712 					retVal.add("AL1"); 
713 					retVal.add("DG1"); 
714 					retVal.add("PR1"); 
715 					retVal.add("GT1"); 
716 					retVal.add("INSURANCE"); 
717 					retVal.add("ACC"); 
718 					retVal.add("UB1"); 
719 					retVal.add("UB2"); 
720 				}
721 			if ( "ADT_A29".equals(theStructure) ) {
722 					retVal.add("MSH"); 
723 					retVal.add("EVN"); 
724 					retVal.add("PID"); 
725 					retVal.add("PV1"); 
726 					retVal.add("PV2"); 
727 					retVal.add("OBX"); 
728 				}
729 			if ( "ADT_A30".equals(theStructure) ) {
730 					retVal.add("MSH"); 
731 					retVal.add("EVN"); 
732 					retVal.add("PID"); 
733 					retVal.add("MRG"); 
734 				}
735 			if ( "ADT_A31".equals(theStructure) ) {
736 					retVal.add("MSH"); 
737 					retVal.add("EVN"); 
738 					retVal.add("PID"); 
739 					retVal.add("NK1"); 
740 					retVal.add("PV1"); 
741 					retVal.add("PV2"); 
742 					retVal.add("OBX"); 
743 					retVal.add("AL1"); 
744 					retVal.add("DG1"); 
745 					retVal.add("PR1"); 
746 					retVal.add("GT1"); 
747 					retVal.add("INSURANCE"); 
748 					retVal.add("ACC"); 
749 					retVal.add("UB1"); 
750 					retVal.add("UB2"); 
751 				}
752 			if ( "ADT_A32".equals(theStructure) ) {
753 					retVal.add("MSH"); 
754 					retVal.add("EVN"); 
755 					retVal.add("PID"); 
756 					retVal.add("PV1"); 
757 					retVal.add("PV2"); 
758 					retVal.add("OBX"); 
759 				}
760 			if ( "ADT_A33".equals(theStructure) ) {
761 					retVal.add("MSH"); 
762 					retVal.add("EVN"); 
763 					retVal.add("PID"); 
764 					retVal.add("PV1"); 
765 					retVal.add("PV2"); 
766 					retVal.add("OBX"); 
767 				}
768 			if ( "ADT_A34".equals(theStructure) ) {
769 					retVal.add("MSH"); 
770 					retVal.add("EVN"); 
771 					retVal.add("PID"); 
772 					retVal.add("MRG"); 
773 				}
774 			if ( "ADT_A35".equals(theStructure) ) {
775 					retVal.add("MSH"); 
776 					retVal.add("EVN"); 
777 					retVal.add("PID"); 
778 					retVal.add("MRG"); 
779 				}
780 			if ( "ADT_A36".equals(theStructure) ) {
781 					retVal.add("MSH"); 
782 					retVal.add("EVN"); 
783 					retVal.add("PID"); 
784 					retVal.add("MRG"); 
785 				}
786 			if ( "ADT_A37".equals(theStructure) ) {
787 					retVal.add("MSH"); 
788 					retVal.add("EVN"); 
789 					retVal.add("PID"); 
790 					retVal.add("PV1"); 
791 					retVal.add("PID2"); 
792 					retVal.add("PV12"); 
793 				}
794 			return retVal;
795 	}
796 
797     /** 
798      * Returns "2.2"
799      */
800     public String getVersion() {
801        return "2.2";
802     }
803 
804 
805 
806 
807     /**
808      * <p>
809      * Returns
810      * MSH () - creates it if necessary
811      * </p>
812      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A18, ADT_A20, ADT_A21, ADT_A22, ADT_A23, ADT_A24, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A30, ADT_A31, ADT_A32, ADT_A33, ADT_A34, ADT_A35, ADT_A36, ADT_A37]
813      *
814      */
815     public MSH getMSH() { 
816        return getTyped("MSH", MSH.class);
817     }
818 
819 
820 
821 
822 
823     /**
824      * <p>
825      * Returns
826      * EVN () - creates it if necessary
827      * </p>
828      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A18, ADT_A20, ADT_A21, ADT_A22, ADT_A23, ADT_A24, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A30, ADT_A31, ADT_A32, ADT_A33, ADT_A34, ADT_A35, ADT_A36, ADT_A37]
829      *
830      */
831     public EVN getEVN() { 
832        return getTyped("EVN", EVN.class);
833     }
834 
835 
836 
837 
838 
839     /**
840      * <p>
841      * Returns
842      * PID () - creates it if necessary
843      * </p>
844      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A18, ADT_A21, ADT_A22, ADT_A23, ADT_A24, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A30, ADT_A31, ADT_A32, ADT_A33, ADT_A34, ADT_A35, ADT_A36, ADT_A37]
845      *
846      */
847     public PID getPID() { 
848        return getTyped("PID", PID.class);
849     }
850 
851 
852 
853 
854 
855     /**
856      * <p>
857      * Returns
858      * MRG () - creates it if necessary
859      * </p>
860      * Used for the following structures: [ADT_A06, ADT_A07, ADT_A18, ADT_A30, ADT_A34, ADT_A35, ADT_A36]
861      *
862      */
863     public MRG getMRG() { 
864        return getTyped("MRG", MRG.class);
865     }
866 
867 
868 
869 
870 
871     /**
872      * <p>
873      * Returns
874      * the first repetition of 
875      * NK1 () - creates it if necessary
876      * </p>
877      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
878      *
879      */
880     public NK1 getNK1() { 
881        return getTyped("NK1", NK1.class);
882     }
883 
884 
885     /**
886      * <p>
887      * Returns a specific repetition of
888      * NK1 () - creates it if necessary
889      * </p>
890      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
891      *
892      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
893      * @throws HL7Exception if the repetition requested is more than one 
894      *     greater than the number of existing repetitions.
895      */
896     public NK1 getNK1(int rep) { 
897        return getTyped("NK1", rep, NK1.class);
898     }
899 
900     /** 
901      * <p>
902      * Returns the number of existing repetitions of NK1 
903      * </p>
904      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
905      */ 
906     public int getNK1Reps() { 
907     	return getReps("NK1");
908     } 
909 
910     /** 
911      * <p>
912      * Returns a non-modifiable List containing all current existing repetitions of NK1.
913      * <p>
914      * <p>
915      * Note that unlike {@link #getNK1()}, this method will not create any reps
916      * if none are already present, so an empty list may be returned.
917      * </p>
918      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
919      */ 
920     public java.util.List<NK1> getNK1All() throws HL7Exception {
921     	return getAllAsList("NK1", NK1.class);
922     } 
923 
924     /**
925      * <p>
926      * Inserts a specific repetition of NK1 ()
927      * </p>
928      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
929      *
930      * @see AbstractGroup#insertRepetition(Structure, int) 
931      */
932     public void insertNK1(NK1 structure, int rep) throws HL7Exception { 
933        super.insertRepetition( "NK1", structure, rep);
934     }
935 
936 
937     /**
938      * <p>
939      * Inserts a specific repetition of NK1 ()
940      * </p>
941      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
942      *
943      * @see AbstractGroup#insertRepetition(Structure, int) 
944      */
945     public NK1 insertNK1(int rep) throws HL7Exception { 
946        return (NK1)super.insertRepetition("NK1", rep);
947     }
948 
949 
950     /**
951      * <p>
952      * Removes a specific repetition of NK1 ()
953      * </p>
954      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
955      *
956      * @see AbstractGroup#removeRepetition(String, int) 
957      */
958     public NK1 removeNK1(int rep) throws HL7Exception { 
959        return (NK1)super.removeRepetition("NK1", rep);
960     }
961 
962 
963 
964 
965     /**
966      * <p>
967      * Returns
968      * PV1 () - creates it if necessary
969      * </p>
970      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A18, ADT_A21, ADT_A22, ADT_A23, ADT_A24, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33, ADT_A37]
971      *
972      */
973     public PV1 getPV1() { 
974        return getTyped("PV1", PV1.class);
975     }
976 
977 
978 
979 
980 
981     /**
982      * <p>
983      * Returns
984      * PV2 () - creates it if necessary
985      * </p>
986      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]
987      *
988      */
989     public PV2 getPV2() { 
990        return getTyped("PV2", PV2.class);
991     }
992 
993 
994 
995 
996 
997     /**
998      * <p>
999      * Returns
1000      * the first repetition of 
1001      * OBX () - creates it if necessary
1002      * </p>
1003      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]
1004      *
1005      */
1006     public OBX getOBX() { 
1007        return getTyped("OBX", OBX.class);
1008     }
1009 
1010 
1011     /**
1012      * <p>
1013      * Returns a specific repetition of
1014      * OBX () - creates it if necessary
1015      * </p>
1016      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]
1017      *
1018      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1019      * @throws HL7Exception if the repetition requested is more than one 
1020      *     greater than the number of existing repetitions.
1021      */
1022     public OBX getOBX(int rep) { 
1023        return getTyped("OBX", rep, OBX.class);
1024     }
1025 
1026     /** 
1027      * <p>
1028      * Returns the number of existing repetitions of OBX 
1029      * </p>
1030      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]
1031      */ 
1032     public int getOBXReps() { 
1033     	return getReps("OBX");
1034     } 
1035 
1036     /** 
1037      * <p>
1038      * Returns a non-modifiable List containing all current existing repetitions of OBX.
1039      * <p>
1040      * <p>
1041      * Note that unlike {@link #getOBX()}, this method will not create any reps
1042      * if none are already present, so an empty list may be returned.
1043      * </p>
1044      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]
1045      */ 
1046     public java.util.List<OBX> getOBXAll() throws HL7Exception {
1047     	return getAllAsList("OBX", OBX.class);
1048     } 
1049 
1050     /**
1051      * <p>
1052      * Inserts a specific repetition of OBX ()
1053      * </p>
1054      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]
1055      *
1056      * @see AbstractGroup#insertRepetition(Structure, int) 
1057      */
1058     public void insertOBX(OBX structure, int rep) throws HL7Exception { 
1059        super.insertRepetition( "OBX", structure, rep);
1060     }
1061 
1062 
1063     /**
1064      * <p>
1065      * Inserts a specific repetition of OBX ()
1066      * </p>
1067      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]
1068      *
1069      * @see AbstractGroup#insertRepetition(Structure, int) 
1070      */
1071     public OBX insertOBX(int rep) throws HL7Exception { 
1072        return (OBX)super.insertRepetition("OBX", rep);
1073     }
1074 
1075 
1076     /**
1077      * <p>
1078      * Removes a specific repetition of OBX ()
1079      * </p>
1080      * Used for the following structures: [ADT_A01, ADT_A02, ADT_A03, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A17, ADT_A21, ADT_A22, ADT_A23, ADT_A25, ADT_A26, ADT_A27, ADT_A28, ADT_A29, ADT_A31, ADT_A32, ADT_A33]
1081      *
1082      * @see AbstractGroup#removeRepetition(String, int) 
1083      */
1084     public OBX removeOBX(int rep) throws HL7Exception { 
1085        return (OBX)super.removeRepetition("OBX", rep);
1086     }
1087 
1088 
1089 
1090 
1091     /**
1092      * <p>
1093      * Returns
1094      * the first repetition of 
1095      * AL1 () - creates it if necessary
1096      * </p>
1097      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1098      *
1099      */
1100     public AL1 getAL1() { 
1101        return getTyped("AL1", AL1.class);
1102     }
1103 
1104 
1105     /**
1106      * <p>
1107      * Returns a specific repetition of
1108      * AL1 () - creates it if necessary
1109      * </p>
1110      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1111      *
1112      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1113      * @throws HL7Exception if the repetition requested is more than one 
1114      *     greater than the number of existing repetitions.
1115      */
1116     public AL1 getAL1(int rep) { 
1117        return getTyped("AL1", rep, AL1.class);
1118     }
1119 
1120     /** 
1121      * <p>
1122      * Returns the number of existing repetitions of AL1 
1123      * </p>
1124      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1125      */ 
1126     public int getAL1Reps() { 
1127     	return getReps("AL1");
1128     } 
1129 
1130     /** 
1131      * <p>
1132      * Returns a non-modifiable List containing all current existing repetitions of AL1.
1133      * <p>
1134      * <p>
1135      * Note that unlike {@link #getAL1()}, this method will not create any reps
1136      * if none are already present, so an empty list may be returned.
1137      * </p>
1138      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1139      */ 
1140     public java.util.List<AL1> getAL1All() throws HL7Exception {
1141     	return getAllAsList("AL1", AL1.class);
1142     } 
1143 
1144     /**
1145      * <p>
1146      * Inserts a specific repetition of AL1 ()
1147      * </p>
1148      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1149      *
1150      * @see AbstractGroup#insertRepetition(Structure, int) 
1151      */
1152     public void insertAL1(AL1 structure, int rep) throws HL7Exception { 
1153        super.insertRepetition( "AL1", structure, rep);
1154     }
1155 
1156 
1157     /**
1158      * <p>
1159      * Inserts a specific repetition of AL1 ()
1160      * </p>
1161      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1162      *
1163      * @see AbstractGroup#insertRepetition(Structure, int) 
1164      */
1165     public AL1 insertAL1(int rep) throws HL7Exception { 
1166        return (AL1)super.insertRepetition("AL1", rep);
1167     }
1168 
1169 
1170     /**
1171      * <p>
1172      * Removes a specific repetition of AL1 ()
1173      * </p>
1174      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1175      *
1176      * @see AbstractGroup#removeRepetition(String, int) 
1177      */
1178     public AL1 removeAL1(int rep) throws HL7Exception { 
1179        return (AL1)super.removeRepetition("AL1", rep);
1180     }
1181 
1182 
1183 
1184 
1185     /**
1186      * <p>
1187      * Returns
1188      * the first repetition of 
1189      * DG1 () - creates it if necessary
1190      * </p>
1191      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A28, ADT_A31]
1192      *
1193      */
1194     public DG1 getDG1() { 
1195        return getTyped("DG1", DG1.class);
1196     }
1197 
1198 
1199     /**
1200      * <p>
1201      * Returns a specific repetition of
1202      * DG1 () - creates it if necessary
1203      * </p>
1204      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A28, ADT_A31]
1205      *
1206      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1207      * @throws HL7Exception if the repetition requested is more than one 
1208      *     greater than the number of existing repetitions.
1209      */
1210     public DG1 getDG1(int rep) { 
1211        return getTyped("DG1", rep, DG1.class);
1212     }
1213 
1214     /** 
1215      * <p>
1216      * Returns the number of existing repetitions of DG1 
1217      * </p>
1218      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A28, ADT_A31]
1219      */ 
1220     public int getDG1Reps() { 
1221     	return getReps("DG1");
1222     } 
1223 
1224     /** 
1225      * <p>
1226      * Returns a non-modifiable List containing all current existing repetitions of DG1.
1227      * <p>
1228      * <p>
1229      * Note that unlike {@link #getDG1()}, this method will not create any reps
1230      * if none are already present, so an empty list may be returned.
1231      * </p>
1232      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A28, ADT_A31]
1233      */ 
1234     public java.util.List<DG1> getDG1All() throws HL7Exception {
1235     	return getAllAsList("DG1", DG1.class);
1236     } 
1237 
1238     /**
1239      * <p>
1240      * Inserts a specific repetition of DG1 ()
1241      * </p>
1242      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A28, ADT_A31]
1243      *
1244      * @see AbstractGroup#insertRepetition(Structure, int) 
1245      */
1246     public void insertDG1(DG1 structure, int rep) throws HL7Exception { 
1247        super.insertRepetition( "DG1", structure, rep);
1248     }
1249 
1250 
1251     /**
1252      * <p>
1253      * Inserts a specific repetition of DG1 ()
1254      * </p>
1255      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A28, ADT_A31]
1256      *
1257      * @see AbstractGroup#insertRepetition(Structure, int) 
1258      */
1259     public DG1 insertDG1(int rep) throws HL7Exception { 
1260        return (DG1)super.insertRepetition("DG1", rep);
1261     }
1262 
1263 
1264     /**
1265      * <p>
1266      * Removes a specific repetition of DG1 ()
1267      * </p>
1268      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A09, ADT_A10, ADT_A11, ADT_A12, ADT_A13, ADT_A14, ADT_A15, ADT_A16, ADT_A28, ADT_A31]
1269      *
1270      * @see AbstractGroup#removeRepetition(String, int) 
1271      */
1272     public DG1 removeDG1(int rep) throws HL7Exception { 
1273        return (DG1)super.removeRepetition("DG1", rep);
1274     }
1275 
1276 
1277 
1278 
1279     /**
1280      * <p>
1281      * Returns
1282      * the first repetition of 
1283      * PR1 () - creates it if necessary
1284      * </p>
1285      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1286      *
1287      */
1288     public PR1 getPR1() { 
1289        return getTyped("PR1", PR1.class);
1290     }
1291 
1292 
1293     /**
1294      * <p>
1295      * Returns a specific repetition of
1296      * PR1 () - creates it if necessary
1297      * </p>
1298      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1299      *
1300      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1301      * @throws HL7Exception if the repetition requested is more than one 
1302      *     greater than the number of existing repetitions.
1303      */
1304     public PR1 getPR1(int rep) { 
1305        return getTyped("PR1", rep, PR1.class);
1306     }
1307 
1308     /** 
1309      * <p>
1310      * Returns the number of existing repetitions of PR1 
1311      * </p>
1312      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1313      */ 
1314     public int getPR1Reps() { 
1315     	return getReps("PR1");
1316     } 
1317 
1318     /** 
1319      * <p>
1320      * Returns a non-modifiable List containing all current existing repetitions of PR1.
1321      * <p>
1322      * <p>
1323      * Note that unlike {@link #getPR1()}, this method will not create any reps
1324      * if none are already present, so an empty list may be returned.
1325      * </p>
1326      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1327      */ 
1328     public java.util.List<PR1> getPR1All() throws HL7Exception {
1329     	return getAllAsList("PR1", PR1.class);
1330     } 
1331 
1332     /**
1333      * <p>
1334      * Inserts a specific repetition of PR1 ()
1335      * </p>
1336      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1337      *
1338      * @see AbstractGroup#insertRepetition(Structure, int) 
1339      */
1340     public void insertPR1(PR1 structure, int rep) throws HL7Exception { 
1341        super.insertRepetition( "PR1", structure, rep);
1342     }
1343 
1344 
1345     /**
1346      * <p>
1347      * Inserts a specific repetition of PR1 ()
1348      * </p>
1349      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1350      *
1351      * @see AbstractGroup#insertRepetition(Structure, int) 
1352      */
1353     public PR1 insertPR1(int rep) throws HL7Exception { 
1354        return (PR1)super.insertRepetition("PR1", rep);
1355     }
1356 
1357 
1358     /**
1359      * <p>
1360      * Removes a specific repetition of PR1 ()
1361      * </p>
1362      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1363      *
1364      * @see AbstractGroup#removeRepetition(String, int) 
1365      */
1366     public PR1 removePR1(int rep) throws HL7Exception { 
1367        return (PR1)super.removeRepetition("PR1", rep);
1368     }
1369 
1370 
1371 
1372 
1373     /**
1374      * <p>
1375      * Returns
1376      * the first repetition of 
1377      * GT1 () - creates it if necessary
1378      * </p>
1379      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1380      *
1381      */
1382     public GT1 getGT1() { 
1383        return getTyped("GT1", GT1.class);
1384     }
1385 
1386 
1387     /**
1388      * <p>
1389      * Returns a specific repetition of
1390      * GT1 () - creates it if necessary
1391      * </p>
1392      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1393      *
1394      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1395      * @throws HL7Exception if the repetition requested is more than one 
1396      *     greater than the number of existing repetitions.
1397      */
1398     public GT1 getGT1(int rep) { 
1399        return getTyped("GT1", rep, GT1.class);
1400     }
1401 
1402     /** 
1403      * <p>
1404      * Returns the number of existing repetitions of GT1 
1405      * </p>
1406      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1407      */ 
1408     public int getGT1Reps() { 
1409     	return getReps("GT1");
1410     } 
1411 
1412     /** 
1413      * <p>
1414      * Returns a non-modifiable List containing all current existing repetitions of GT1.
1415      * <p>
1416      * <p>
1417      * Note that unlike {@link #getGT1()}, this method will not create any reps
1418      * if none are already present, so an empty list may be returned.
1419      * </p>
1420      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1421      */ 
1422     public java.util.List<GT1> getGT1All() throws HL7Exception {
1423     	return getAllAsList("GT1", GT1.class);
1424     } 
1425 
1426     /**
1427      * <p>
1428      * Inserts a specific repetition of GT1 ()
1429      * </p>
1430      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1431      *
1432      * @see AbstractGroup#insertRepetition(Structure, int) 
1433      */
1434     public void insertGT1(GT1 structure, int rep) throws HL7Exception { 
1435        super.insertRepetition( "GT1", structure, rep);
1436     }
1437 
1438 
1439     /**
1440      * <p>
1441      * Inserts a specific repetition of GT1 ()
1442      * </p>
1443      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1444      *
1445      * @see AbstractGroup#insertRepetition(Structure, int) 
1446      */
1447     public GT1 insertGT1(int rep) throws HL7Exception { 
1448        return (GT1)super.insertRepetition("GT1", rep);
1449     }
1450 
1451 
1452     /**
1453      * <p>
1454      * Removes a specific repetition of GT1 ()
1455      * </p>
1456      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1457      *
1458      * @see AbstractGroup#removeRepetition(String, int) 
1459      */
1460     public GT1 removeGT1(int rep) throws HL7Exception { 
1461        return (GT1)super.removeRepetition("GT1", rep);
1462     }
1463 
1464 
1465 
1466 
1467     /**
1468      * <p>
1469      * Returns
1470      * the first repetition of 
1471      * INSURANCE () - creates it if necessary
1472      * </p>
1473      * 
1474      *
1475      */
1476     public ADT_AXX_INSURANCE getINSURANCE() { 
1477        return getTyped("INSURANCE", ADT_AXX_INSURANCE.class);
1478     }
1479 
1480 
1481     /**
1482      * <p>
1483      * Returns a specific repetition of
1484      * INSURANCE () - creates it if necessary
1485      * </p>
1486      * 
1487      *
1488      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1489      * @throws HL7Exception if the repetition requested is more than one 
1490      *     greater than the number of existing repetitions.
1491      */
1492     public ADT_AXX_INSURANCE getINSURANCE(int rep) { 
1493        return getTyped("INSURANCE", rep, ADT_AXX_INSURANCE.class);
1494     }
1495 
1496     /** 
1497      * <p>
1498      * Returns the number of existing repetitions of INSURANCE 
1499      * </p>
1500      * 
1501      */ 
1502     public int getINSURANCEReps() { 
1503     	return getReps("INSURANCE");
1504     } 
1505 
1506     /** 
1507      * <p>
1508      * Returns a non-modifiable List containing all current existing repetitions of INSURANCE.
1509      * <p>
1510      * <p>
1511      * Note that unlike {@link #getINSURANCE()}, this method will not create any reps
1512      * if none are already present, so an empty list may be returned.
1513      * </p>
1514      * 
1515      */ 
1516     public java.util.List<ADT_AXX_INSURANCE> getINSURANCEAll() throws HL7Exception {
1517     	return getAllAsList("INSURANCE", ADT_AXX_INSURANCE.class);
1518     } 
1519 
1520     /**
1521      * <p>
1522      * Inserts a specific repetition of INSURANCE ()
1523      * </p>
1524      * 
1525      *
1526      * @see AbstractGroup#insertRepetition(Structure, int) 
1527      */
1528     public void insertINSURANCE(ADT_AXX_INSURANCE structure, int rep) throws HL7Exception { 
1529        super.insertRepetition( "INSURANCE", structure, rep);
1530     }
1531 
1532 
1533     /**
1534      * <p>
1535      * Inserts a specific repetition of INSURANCE ()
1536      * </p>
1537      * 
1538      *
1539      * @see AbstractGroup#insertRepetition(Structure, int) 
1540      */
1541     public ADT_AXX_INSURANCE insertINSURANCE(int rep) throws HL7Exception { 
1542        return (ADT_AXX_INSURANCE)super.insertRepetition("INSURANCE", rep);
1543     }
1544 
1545 
1546     /**
1547      * <p>
1548      * Removes a specific repetition of INSURANCE ()
1549      * </p>
1550      * 
1551      *
1552      * @see AbstractGroup#removeRepetition(String, int) 
1553      */
1554     public ADT_AXX_INSURANCE removeINSURANCE(int rep) throws HL7Exception { 
1555        return (ADT_AXX_INSURANCE)super.removeRepetition("INSURANCE", rep);
1556     }
1557 
1558 
1559 
1560 
1561     /**
1562      * <p>
1563      * Returns
1564      * ACC () - creates it if necessary
1565      * </p>
1566      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1567      *
1568      */
1569     public ACC getACC() { 
1570        return getTyped("ACC", ACC.class);
1571     }
1572 
1573 
1574 
1575 
1576 
1577     /**
1578      * <p>
1579      * Returns
1580      * UB1 () - creates it if necessary
1581      * </p>
1582      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1583      *
1584      */
1585     public UB1 getUB1() { 
1586        return getTyped("UB1", UB1.class);
1587     }
1588 
1589 
1590 
1591 
1592 
1593     /**
1594      * <p>
1595      * Returns
1596      * UB2 () - creates it if necessary
1597      * </p>
1598      * Used for the following structures: [ADT_A01, ADT_A04, ADT_A05, ADT_A06, ADT_A07, ADT_A08, ADT_A13, ADT_A14, ADT_A28, ADT_A31]
1599      *
1600      */
1601     public UB2 getUB2() { 
1602        return getTyped("UB2", UB2.class);
1603     }
1604 
1605 
1606 
1607 
1608 
1609     /**
1610      * <p>
1611      * Returns
1612      * PID2 () - creates it if necessary
1613      * </p>
1614      * Used for the following structures: [ADT_A17, ADT_A24, ADT_A37]
1615      *
1616      */
1617     public PID getPID2() { 
1618        return getTyped("PID2", PID.class);
1619     }
1620 
1621 
1622 
1623 
1624 
1625     /**
1626      * <p>
1627      * Returns
1628      * PV12 () - creates it if necessary
1629      * </p>
1630      * Used for the following structures: [ADT_A17, ADT_A24, ADT_A37]
1631      *
1632      */
1633     public PV1 getPV12() { 
1634        return getTyped("PV12", PV1.class);
1635     }
1636 
1637 
1638 
1639 
1640 
1641     /**
1642      * <p>
1643      * Returns
1644      * PV22 () - creates it if necessary
1645      * </p>
1646      * Used for the following structures: [ADT_A17]
1647      *
1648      */
1649     public PV2 getPV22() { 
1650        return getTyped("PV22", PV2.class);
1651     }
1652 
1653 
1654 
1655 
1656 
1657     /**
1658      * <p>
1659      * Returns
1660      * the first repetition of 
1661      * OBX2 () - creates it if necessary
1662      * </p>
1663      * Used for the following structures: [ADT_A17]
1664      *
1665      */
1666     public OBX getOBX2() { 
1667        return getTyped("OBX2", OBX.class);
1668     }
1669 
1670 
1671     /**
1672      * <p>
1673      * Returns a specific repetition of
1674      * OBX2 () - creates it if necessary
1675      * </p>
1676      * Used for the following structures: [ADT_A17]
1677      *
1678      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
1679      * @throws HL7Exception if the repetition requested is more than one 
1680      *     greater than the number of existing repetitions.
1681      */
1682     public OBX getOBX2(int rep) { 
1683        return getTyped("OBX2", rep, OBX.class);
1684     }
1685 
1686     /** 
1687      * <p>
1688      * Returns the number of existing repetitions of OBX2 
1689      * </p>
1690      * Used for the following structures: [ADT_A17]
1691      */ 
1692     public int getOBX2Reps() { 
1693     	return getReps("OBX2");
1694     } 
1695 
1696     /** 
1697      * <p>
1698      * Returns a non-modifiable List containing all current existing repetitions of OBX2.
1699      * <p>
1700      * <p>
1701      * Note that unlike {@link #getOBX2()}, this method will not create any reps
1702      * if none are already present, so an empty list may be returned.
1703      * </p>
1704      * Used for the following structures: [ADT_A17]
1705      */ 
1706     public java.util.List<OBX> getOBX2All() throws HL7Exception {
1707     	return getAllAsList("OBX2", OBX.class);
1708     } 
1709 
1710     /**
1711      * <p>
1712      * Inserts a specific repetition of OBX2 ()
1713      * </p>
1714      * Used for the following structures: [ADT_A17]
1715      *
1716      * @see AbstractGroup#insertRepetition(Structure, int) 
1717      */
1718     public void insertOBX2(OBX structure, int rep) throws HL7Exception { 
1719        super.insertRepetition( "OBX2", structure, rep);
1720     }
1721 
1722 
1723     /**
1724      * <p>
1725      * Inserts a specific repetition of OBX2 ()
1726      * </p>
1727      * Used for the following structures: [ADT_A17]
1728      *
1729      * @see AbstractGroup#insertRepetition(Structure, int) 
1730      */
1731     public OBX insertOBX2(int rep) throws HL7Exception { 
1732        return (OBX)super.insertRepetition("OBX2", rep);
1733     }
1734 
1735 
1736     /**
1737      * <p>
1738      * Removes a specific repetition of OBX2 ()
1739      * </p>
1740      * Used for the following structures: [ADT_A17]
1741      *
1742      * @see AbstractGroup#removeRepetition(String, int) 
1743      */
1744     public OBX removeOBX2(int rep) throws HL7Exception { 
1745        return (OBX)super.removeRepetition("OBX2", rep);
1746     }
1747 
1748 
1749 
1750 
1751     /**
1752      * <p>
1753      * Returns
1754      * NPU () - creates it if necessary
1755      * </p>
1756      * Used for the following structures: [ADT_A20]
1757      *
1758      */
1759     public NPU getNPU() { 
1760        return getTyped("NPU", NPU.class);
1761     }
1762 
1763 
1764 
1765 
1766 }
1767