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.v251.segment;
35  
36  // import ca.uhn.hl7v2.model.v251.group.*;
37  import ca.uhn.hl7v2.model.v251.datatype.*;
38  import ca.uhn.hl7v2.HL7Exception;
39  import ca.uhn.hl7v2.parser.ModelClassFactory;
40  import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
41  import ca.uhn.hl7v2.model.AbstractMessage;
42  import ca.uhn.hl7v2.model.Group;
43  import ca.uhn.hl7v2.model.Type;
44  import ca.uhn.hl7v2.model.AbstractSegment;
45  import ca.uhn.hl7v2.model.Varies;
46  
47  
48  /**
49   *<p>Represents an HL7 OBR message segment (Observation Request). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>OBR-1: Set ID - OBR (SI) <b>optional </b>
53       * <li>OBR-2: Placer Order Number (EI) <b>optional </b>
54       * <li>OBR-3: Filler Order Number (EI) <b>optional </b>
55       * <li>OBR-4: Universal Service Identifier (CE) <b> </b>
56       * <li>OBR-5: Priority - OBR (ID) <b>optional </b>
57       * <li>OBR-6: Requested Date/Time (TS) <b>optional </b>
58       * <li>OBR-7: Observation Date/Time (TS) <b>optional </b>
59       * <li>OBR-8: Observation End Date/Time (TS) <b>optional </b>
60       * <li>OBR-9: Collection Volume (CQ) <b>optional </b>
61       * <li>OBR-10: Collector Identifier (XCN) <b>optional repeating</b>
62       * <li>OBR-11: Specimen Action Code (ID) <b>optional </b>
63       * <li>OBR-12: Danger Code (CE) <b>optional </b>
64       * <li>OBR-13: Relevant Clinical Information (ST) <b>optional </b>
65       * <li>OBR-14: Specimen Received Date/Time (TS) <b>optional </b>
66       * <li>OBR-15: Specimen Source (SPS) <b>optional </b>
67       * <li>OBR-16: Ordering Provider (XCN) <b>optional repeating</b>
68       * <li>OBR-17: Order Callback Phone Number (XTN) <b>optional repeating</b>
69       * <li>OBR-18: Placer Field 1 (ST) <b>optional </b>
70       * <li>OBR-19: Placer Field 2 (ST) <b>optional </b>
71       * <li>OBR-20: Filler Field 1 (ST) <b>optional </b>
72       * <li>OBR-21: Filler Field 2 (ST) <b>optional </b>
73       * <li>OBR-22: Results Rpt/Status Chng - Date/Time (TS) <b>optional </b>
74       * <li>OBR-23: Charge to Practice (MOC) <b>optional </b>
75       * <li>OBR-24: Diagnostic Serv Sect ID (ID) <b>optional </b>
76       * <li>OBR-25: Result Status (ID) <b>optional </b>
77       * <li>OBR-26: Parent Result (PRL) <b>optional </b>
78       * <li>OBR-27: Quantity/Timing (TQ) <b>optional repeating</b>
79       * <li>OBR-28: Result Copies To (XCN) <b>optional repeating</b>
80       * <li>OBR-29: Parent (EIP) <b>optional </b>
81       * <li>OBR-30: Transportation Mode (ID) <b>optional </b>
82       * <li>OBR-31: Reason for Study (CE) <b>optional repeating</b>
83       * <li>OBR-32: Principal Result Interpreter (NDL) <b>optional </b>
84       * <li>OBR-33: Assistant Result Interpreter (NDL) <b>optional repeating</b>
85       * <li>OBR-34: Technician (NDL) <b>optional repeating</b>
86       * <li>OBR-35: Transcriptionist (NDL) <b>optional repeating</b>
87       * <li>OBR-36: Scheduled Date/Time (TS) <b>optional </b>
88       * <li>OBR-37: Number of Sample Containers * (NM) <b>optional </b>
89       * <li>OBR-38: Transport Logistics of Collected Sample (CE) <b>optional repeating</b>
90       * <li>OBR-39: Collector's Comment * (CE) <b>optional repeating</b>
91       * <li>OBR-40: Transport Arrangement Responsibility (CE) <b>optional </b>
92       * <li>OBR-41: Transport Arranged (ID) <b>optional </b>
93       * <li>OBR-42: Escort Required (ID) <b>optional </b>
94       * <li>OBR-43: Planned Patient Transport Comment (CE) <b>optional repeating</b>
95       * <li>OBR-44: Procedure Code (CE) <b>optional </b>
96       * <li>OBR-45: Procedure Code Modifier (CE) <b>optional repeating</b>
97       * <li>OBR-46: Placer Supplemental Service Information (CE) <b>optional repeating</b>
98       * <li>OBR-47: Filler Supplemental Service Information (CE) <b>optional repeating</b>
99       * <li>OBR-48: Medically Necessary Duplicate Procedure Reason. (CWE) <b>optional </b>
100      * <li>OBR-49: Result Handling (IS) <b>optional </b>
101      * <li>OBR-50: Parent Universal Service Identifier (CWE) <b>optional </b>
102  * </ul>
103  */
104 @SuppressWarnings("unused")
105 public class OBR extends AbstractSegment {
106 
107     /** 
108      * Creates a new OBR segment
109      */
110     public OBR(Group parent, ModelClassFactory factory) {
111        super(parent, factory);
112        init(factory);
113     }
114 
115     private void init(ModelClassFactory factory) {
116        try {
117                                   this.add(SI.class, false, 1, 4, new Object[]{ getMessage() }, "Set ID - OBR");
118                                   this.add(EI.class, false, 1, 22, new Object[]{ getMessage() }, "Placer Order Number");
119                                   this.add(EI.class, false, 1, 22, new Object[]{ getMessage() }, "Filler Order Number");
120                                   this.add(CE.class, true, 1, 250, new Object[]{ getMessage() }, "Universal Service Identifier");
121                                               this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(0) }, "Priority - OBR");
122                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Requested Date/Time");
123                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Observation Date/Time");
124                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Observation End Date/Time");
125                                   this.add(CQ.class, false, 1, 20, new Object[]{ getMessage() }, "Collection Volume");
126                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Collector Identifier");
127                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(65) }, "Specimen Action Code");
128                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Danger Code");
129                                   this.add(ST.class, false, 1, 300, new Object[]{ getMessage() }, "Relevant Clinical Information");
130                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Specimen Received Date/Time");
131                                   this.add(SPS.class, false, 1, 300, new Object[]{ getMessage() }, "Specimen Source");
132                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Ordering Provider");
133                                   this.add(XTN.class, false, 2, 250, new Object[]{ getMessage() }, "Order Callback Phone Number");
134                                   this.add(ST.class, false, 1, 60, new Object[]{ getMessage() }, "Placer Field 1");
135                                   this.add(ST.class, false, 1, 60, new Object[]{ getMessage() }, "Placer Field 2");
136                                   this.add(ST.class, false, 1, 60, new Object[]{ getMessage() }, "Filler Field 1");
137                                   this.add(ST.class, false, 1, 60, new Object[]{ getMessage() }, "Filler Field 2");
138                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Results Rpt/Status Chng - Date/Time");
139                                   this.add(MOC.class, false, 1, 40, new Object[]{ getMessage() }, "Charge to Practice");
140                                               this.add(ID.class, false, 1, 10, new Object[]{ getMessage(), new Integer(74) }, "Diagnostic Serv Sect ID");
141                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(123) }, "Result Status");
142                                   this.add(PRL.class, false, 1, 400, new Object[]{ getMessage() }, "Parent Result");
143                                   this.add(TQ.class, false, 0, 200, new Object[]{ getMessage() }, "Quantity/Timing");
144                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Result Copies To");
145                                   this.add(EIP.class, false, 1, 200, new Object[]{ getMessage() }, "Parent");
146                                               this.add(ID.class, false, 1, 20, new Object[]{ getMessage(), new Integer(124) }, "Transportation Mode");
147                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Reason for Study");
148                                   this.add(NDL.class, false, 1, 200, new Object[]{ getMessage() }, "Principal Result Interpreter");
149                                   this.add(NDL.class, false, 0, 200, new Object[]{ getMessage() }, "Assistant Result Interpreter");
150                                   this.add(NDL.class, false, 0, 200, new Object[]{ getMessage() }, "Technician");
151                                   this.add(NDL.class, false, 0, 200, new Object[]{ getMessage() }, "Transcriptionist");
152                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Scheduled Date/Time");
153                                   this.add(NM.class, false, 1, 4, new Object[]{ getMessage() }, "Number of Sample Containers *");
154                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Transport Logistics of Collected Sample");
155                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Collector's Comment *");
156                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Transport Arrangement Responsibility");
157                                               this.add(ID.class, false, 1, 30, new Object[]{ getMessage(), new Integer(224) }, "Transport Arranged");
158                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(225) }, "Escort Required");
159                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Planned Patient Transport Comment");
160                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Procedure Code");
161                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Procedure Code Modifier");
162                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Placer Supplemental Service Information");
163                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Filler Supplemental Service Information");
164                                   this.add(CWE.class, false, 1, 250, new Object[]{ getMessage() }, "Medically Necessary Duplicate Procedure Reason.");
165                                               this.add(IS.class, false, 1, 2, new Object[]{ getMessage(), new Integer(507) }, "Result Handling");
166                                   this.add(CWE.class, false, 1, 250, new Object[]{ getMessage() }, "Parent Universal Service Identifier");
167        } catch(HL7Exception e) {
168           log.error("Unexpected error creating OBR - this is probably a bug in the source code generator.", e);
169        }
170     }
171 
172 
173 
174     /**
175      * Returns
176      * OBR-1: "Set ID - OBR" - creates it if necessary
177      */
178     public SI getSetIDOBR() { 
179 		SI retVal = this.getTypedField(1, 0);
180 		return retVal;
181     }
182     
183     /**
184      * Returns
185      * OBR-1: "Set ID - OBR" - creates it if necessary
186      */
187     public SI getObr1_SetIDOBR() { 
188 		SI retVal = this.getTypedField(1, 0);
189 		return retVal;
190     }
191 
192 
193 
194     /**
195      * Returns
196      * OBR-2: "Placer Order Number" - creates it if necessary
197      */
198     public EI getPlacerOrderNumber() { 
199 		EI retVal = this.getTypedField(2, 0);
200 		return retVal;
201     }
202     
203     /**
204      * Returns
205      * OBR-2: "Placer Order Number" - creates it if necessary
206      */
207     public EI getObr2_PlacerOrderNumber() { 
208 		EI retVal = this.getTypedField(2, 0);
209 		return retVal;
210     }
211 
212 
213 
214     /**
215      * Returns
216      * OBR-3: "Filler Order Number" - creates it if necessary
217      */
218     public EI getFillerOrderNumber() { 
219 		EI retVal = this.getTypedField(3, 0);
220 		return retVal;
221     }
222     
223     /**
224      * Returns
225      * OBR-3: "Filler Order Number" - creates it if necessary
226      */
227     public EI getObr3_FillerOrderNumber() { 
228 		EI retVal = this.getTypedField(3, 0);
229 		return retVal;
230     }
231 
232 
233 
234     /**
235      * Returns
236      * OBR-4: "Universal Service Identifier" - creates it if necessary
237      */
238     public CE getUniversalServiceIdentifier() { 
239 		CE retVal = this.getTypedField(4, 0);
240 		return retVal;
241     }
242     
243     /**
244      * Returns
245      * OBR-4: "Universal Service Identifier" - creates it if necessary
246      */
247     public CE getObr4_UniversalServiceIdentifier() { 
248 		CE retVal = this.getTypedField(4, 0);
249 		return retVal;
250     }
251 
252 
253 
254     /**
255      * Returns
256      * OBR-5: "Priority - OBR" - creates it if necessary
257      */
258     public ID getPriorityOBR() { 
259 		ID retVal = this.getTypedField(5, 0);
260 		return retVal;
261     }
262     
263     /**
264      * Returns
265      * OBR-5: "Priority - OBR" - creates it if necessary
266      */
267     public ID getObr5_PriorityOBR() { 
268 		ID retVal = this.getTypedField(5, 0);
269 		return retVal;
270     }
271 
272 
273 
274     /**
275      * Returns
276      * OBR-6: "Requested Date/Time" - creates it if necessary
277      */
278     public TS getRequestedDateTime() { 
279 		TS retVal = this.getTypedField(6, 0);
280 		return retVal;
281     }
282     
283     /**
284      * Returns
285      * OBR-6: "Requested Date/Time" - creates it if necessary
286      */
287     public TS getObr6_RequestedDateTime() { 
288 		TS retVal = this.getTypedField(6, 0);
289 		return retVal;
290     }
291 
292 
293 
294     /**
295      * Returns
296      * OBR-7: "Observation Date/Time" - creates it if necessary
297      */
298     public TS getObservationDateTime() { 
299 		TS retVal = this.getTypedField(7, 0);
300 		return retVal;
301     }
302     
303     /**
304      * Returns
305      * OBR-7: "Observation Date/Time" - creates it if necessary
306      */
307     public TS getObr7_ObservationDateTime() { 
308 		TS retVal = this.getTypedField(7, 0);
309 		return retVal;
310     }
311 
312 
313 
314     /**
315      * Returns
316      * OBR-8: "Observation End Date/Time" - creates it if necessary
317      */
318     public TS getObservationEndDateTime() { 
319 		TS retVal = this.getTypedField(8, 0);
320 		return retVal;
321     }
322     
323     /**
324      * Returns
325      * OBR-8: "Observation End Date/Time" - creates it if necessary
326      */
327     public TS getObr8_ObservationEndDateTime() { 
328 		TS retVal = this.getTypedField(8, 0);
329 		return retVal;
330     }
331 
332 
333 
334     /**
335      * Returns
336      * OBR-9: "Collection Volume" - creates it if necessary
337      */
338     public CQ getCollectionVolume() { 
339 		CQ retVal = this.getTypedField(9, 0);
340 		return retVal;
341     }
342     
343     /**
344      * Returns
345      * OBR-9: "Collection Volume" - creates it if necessary
346      */
347     public CQ getObr9_CollectionVolume() { 
348 		CQ retVal = this.getTypedField(9, 0);
349 		return retVal;
350     }
351 
352 
353     /**
354      * Returns all repetitions of Collector Identifier (OBR-10).
355      */
356     public XCN[] getCollectorIdentifier() {
357     	XCN[] retVal = this.getTypedField(10, new XCN[0]);
358     	return retVal;
359     }
360 
361 
362     /**
363      * Returns all repetitions of Collector Identifier (OBR-10).
364      */
365     public XCN[] getObr10_CollectorIdentifier() {
366     	XCN[] retVal = this.getTypedField(10, new XCN[0]);
367     	return retVal;
368     }
369 
370 
371     /**
372      * Returns a count of the current number of repetitions of Collector Identifier (OBR-10).
373      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
374      * it will return zero.
375      */
376     public int getCollectorIdentifierReps() {
377     	return this.getReps(10);
378     }
379 
380 
381     /**
382      * Returns a specific repetition of
383      * OBR-10: "Collector Identifier" - creates it if necessary
384      *
385      * @param rep The repetition index (0-indexed)
386      */
387     public XCN getCollectorIdentifier(int rep) { 
388 		XCN retVal = this.getTypedField(10, rep);
389 		return retVal;
390     }
391 
392     /**
393      * Returns a specific repetition of
394      * OBR-10: "Collector Identifier" - creates it if necessary
395      *
396      * @param rep The repetition index (0-indexed)
397      */
398     public XCN getObr10_CollectorIdentifier(int rep) { 
399 		XCN retVal = this.getTypedField(10, rep);
400 		return retVal;
401     }
402 
403     /**
404      * Returns a count of the current number of repetitions of Collector Identifier (OBR-10).
405      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
406      * it will return zero.
407      */
408     public int getObr10_CollectorIdentifierReps() {
409     	return this.getReps(10);
410     }
411 
412 
413     /**
414      * Inserts a repetition of
415      * OBR-10: "Collector Identifier" at a specific index
416      *
417      * @param rep The repetition index (0-indexed)
418      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
419      */
420     public XCN insertCollectorIdentifier(int rep) throws HL7Exception { 
421         return (XCN) super.insertRepetition(10, rep);
422     }
423 
424 
425     /**
426      * Inserts a repetition of
427      * OBR-10: "Collector Identifier" at a specific index
428      *
429      * @param rep The repetition index (0-indexed)
430      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
431      */
432     public XCN insertObr10_CollectorIdentifier(int rep) throws HL7Exception { 
433         return (XCN) super.insertRepetition(10, rep);
434     }
435 
436 
437     /**
438      * Removes a repetition of
439      * OBR-10: "Collector Identifier" at a specific index
440      *
441      * @param rep The repetition index (0-indexed)
442      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
443      */
444     public XCN removeCollectorIdentifier(int rep) throws HL7Exception { 
445         return (XCN) super.removeRepetition(10, rep);
446     }
447 
448 
449     /**
450      * Removes a repetition of
451      * OBR-10: "Collector Identifier" at a specific index
452      *
453      * @param rep The repetition index (0-indexed)
454      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
455      */
456     public XCN removeObr10_CollectorIdentifier(int rep) throws HL7Exception { 
457         return (XCN) super.removeRepetition(10, rep);
458     }
459 
460 
461 
462 
463     /**
464      * Returns
465      * OBR-11: "Specimen Action Code" - creates it if necessary
466      */
467     public ID getSpecimenActionCode() { 
468 		ID retVal = this.getTypedField(11, 0);
469 		return retVal;
470     }
471     
472     /**
473      * Returns
474      * OBR-11: "Specimen Action Code" - creates it if necessary
475      */
476     public ID getObr11_SpecimenActionCode() { 
477 		ID retVal = this.getTypedField(11, 0);
478 		return retVal;
479     }
480 
481 
482 
483     /**
484      * Returns
485      * OBR-12: "Danger Code" - creates it if necessary
486      */
487     public CE getDangerCode() { 
488 		CE retVal = this.getTypedField(12, 0);
489 		return retVal;
490     }
491     
492     /**
493      * Returns
494      * OBR-12: "Danger Code" - creates it if necessary
495      */
496     public CE getObr12_DangerCode() { 
497 		CE retVal = this.getTypedField(12, 0);
498 		return retVal;
499     }
500 
501 
502 
503     /**
504      * Returns
505      * OBR-13: "Relevant Clinical Information" - creates it if necessary
506      */
507     public ST getRelevantClinicalInformation() { 
508 		ST retVal = this.getTypedField(13, 0);
509 		return retVal;
510     }
511     
512     /**
513      * Returns
514      * OBR-13: "Relevant Clinical Information" - creates it if necessary
515      */
516     public ST getObr13_RelevantClinicalInformation() { 
517 		ST retVal = this.getTypedField(13, 0);
518 		return retVal;
519     }
520 
521 
522 
523     /**
524      * Returns
525      * OBR-14: "Specimen Received Date/Time" - creates it if necessary
526      */
527     public TS getSpecimenReceivedDateTime() { 
528 		TS retVal = this.getTypedField(14, 0);
529 		return retVal;
530     }
531     
532     /**
533      * Returns
534      * OBR-14: "Specimen Received Date/Time" - creates it if necessary
535      */
536     public TS getObr14_SpecimenReceivedDateTime() { 
537 		TS retVal = this.getTypedField(14, 0);
538 		return retVal;
539     }
540 
541 
542 
543     /**
544      * Returns
545      * OBR-15: "Specimen Source" - creates it if necessary
546      */
547     public SPS getSpecimenSource() { 
548 		SPS retVal = this.getTypedField(15, 0);
549 		return retVal;
550     }
551     
552     /**
553      * Returns
554      * OBR-15: "Specimen Source" - creates it if necessary
555      */
556     public SPS getObr15_SpecimenSource() { 
557 		SPS retVal = this.getTypedField(15, 0);
558 		return retVal;
559     }
560 
561 
562     /**
563      * Returns all repetitions of Ordering Provider (OBR-16).
564      */
565     public XCN[] getOrderingProvider() {
566     	XCN[] retVal = this.getTypedField(16, new XCN[0]);
567     	return retVal;
568     }
569 
570 
571     /**
572      * Returns all repetitions of Ordering Provider (OBR-16).
573      */
574     public XCN[] getObr16_OrderingProvider() {
575     	XCN[] retVal = this.getTypedField(16, new XCN[0]);
576     	return retVal;
577     }
578 
579 
580     /**
581      * Returns a count of the current number of repetitions of Ordering Provider (OBR-16).
582      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
583      * it will return zero.
584      */
585     public int getOrderingProviderReps() {
586     	return this.getReps(16);
587     }
588 
589 
590     /**
591      * Returns a specific repetition of
592      * OBR-16: "Ordering Provider" - creates it if necessary
593      *
594      * @param rep The repetition index (0-indexed)
595      */
596     public XCN getOrderingProvider(int rep) { 
597 		XCN retVal = this.getTypedField(16, rep);
598 		return retVal;
599     }
600 
601     /**
602      * Returns a specific repetition of
603      * OBR-16: "Ordering Provider" - creates it if necessary
604      *
605      * @param rep The repetition index (0-indexed)
606      */
607     public XCN getObr16_OrderingProvider(int rep) { 
608 		XCN retVal = this.getTypedField(16, rep);
609 		return retVal;
610     }
611 
612     /**
613      * Returns a count of the current number of repetitions of Ordering Provider (OBR-16).
614      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
615      * it will return zero.
616      */
617     public int getObr16_OrderingProviderReps() {
618     	return this.getReps(16);
619     }
620 
621 
622     /**
623      * Inserts a repetition of
624      * OBR-16: "Ordering Provider" at a specific index
625      *
626      * @param rep The repetition index (0-indexed)
627      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
628      */
629     public XCN insertOrderingProvider(int rep) throws HL7Exception { 
630         return (XCN) super.insertRepetition(16, rep);
631     }
632 
633 
634     /**
635      * Inserts a repetition of
636      * OBR-16: "Ordering Provider" at a specific index
637      *
638      * @param rep The repetition index (0-indexed)
639      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
640      */
641     public XCN insertObr16_OrderingProvider(int rep) throws HL7Exception { 
642         return (XCN) super.insertRepetition(16, rep);
643     }
644 
645 
646     /**
647      * Removes a repetition of
648      * OBR-16: "Ordering Provider" at a specific index
649      *
650      * @param rep The repetition index (0-indexed)
651      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
652      */
653     public XCN removeOrderingProvider(int rep) throws HL7Exception { 
654         return (XCN) super.removeRepetition(16, rep);
655     }
656 
657 
658     /**
659      * Removes a repetition of
660      * OBR-16: "Ordering Provider" at a specific index
661      *
662      * @param rep The repetition index (0-indexed)
663      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
664      */
665     public XCN removeObr16_OrderingProvider(int rep) throws HL7Exception { 
666         return (XCN) super.removeRepetition(16, rep);
667     }
668 
669 
670 
671     /**
672      * Returns all repetitions of Order Callback Phone Number (OBR-17).
673      */
674     public XTN[] getOrderCallbackPhoneNumber() {
675     	XTN[] retVal = this.getTypedField(17, new XTN[0]);
676     	return retVal;
677     }
678 
679 
680     /**
681      * Returns all repetitions of Order Callback Phone Number (OBR-17).
682      */
683     public XTN[] getObr17_OrderCallbackPhoneNumber() {
684     	XTN[] retVal = this.getTypedField(17, new XTN[0]);
685     	return retVal;
686     }
687 
688 
689     /**
690      * Returns a count of the current number of repetitions of Order Callback Phone Number (OBR-17).
691      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
692      * it will return zero.
693      */
694     public int getOrderCallbackPhoneNumberReps() {
695     	return this.getReps(17);
696     }
697 
698 
699     /**
700      * Returns a specific repetition of
701      * OBR-17: "Order Callback Phone Number" - creates it if necessary
702      *
703      * @param rep The repetition index (0-indexed)
704      */
705     public XTN getOrderCallbackPhoneNumber(int rep) { 
706 		XTN retVal = this.getTypedField(17, rep);
707 		return retVal;
708     }
709 
710     /**
711      * Returns a specific repetition of
712      * OBR-17: "Order Callback Phone Number" - creates it if necessary
713      *
714      * @param rep The repetition index (0-indexed)
715      */
716     public XTN getObr17_OrderCallbackPhoneNumber(int rep) { 
717 		XTN retVal = this.getTypedField(17, rep);
718 		return retVal;
719     }
720 
721     /**
722      * Returns a count of the current number of repetitions of Order Callback Phone Number (OBR-17).
723      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
724      * it will return zero.
725      */
726     public int getObr17_OrderCallbackPhoneNumberReps() {
727     	return this.getReps(17);
728     }
729 
730 
731     /**
732      * Inserts a repetition of
733      * OBR-17: "Order Callback Phone Number" at a specific index
734      *
735      * @param rep The repetition index (0-indexed)
736      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
737      */
738     public XTN insertOrderCallbackPhoneNumber(int rep) throws HL7Exception { 
739         return (XTN) super.insertRepetition(17, rep);
740     }
741 
742 
743     /**
744      * Inserts a repetition of
745      * OBR-17: "Order Callback Phone Number" at a specific index
746      *
747      * @param rep The repetition index (0-indexed)
748      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
749      */
750     public XTN insertObr17_OrderCallbackPhoneNumber(int rep) throws HL7Exception { 
751         return (XTN) super.insertRepetition(17, rep);
752     }
753 
754 
755     /**
756      * Removes a repetition of
757      * OBR-17: "Order Callback Phone Number" at a specific index
758      *
759      * @param rep The repetition index (0-indexed)
760      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
761      */
762     public XTN removeOrderCallbackPhoneNumber(int rep) throws HL7Exception { 
763         return (XTN) super.removeRepetition(17, rep);
764     }
765 
766 
767     /**
768      * Removes a repetition of
769      * OBR-17: "Order Callback Phone Number" at a specific index
770      *
771      * @param rep The repetition index (0-indexed)
772      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
773      */
774     public XTN removeObr17_OrderCallbackPhoneNumber(int rep) throws HL7Exception { 
775         return (XTN) super.removeRepetition(17, rep);
776     }
777 
778 
779 
780 
781     /**
782      * Returns
783      * OBR-18: "Placer Field 1" - creates it if necessary
784      */
785     public ST getPlacerField1() { 
786 		ST retVal = this.getTypedField(18, 0);
787 		return retVal;
788     }
789     
790     /**
791      * Returns
792      * OBR-18: "Placer Field 1" - creates it if necessary
793      */
794     public ST getObr18_PlacerField1() { 
795 		ST retVal = this.getTypedField(18, 0);
796 		return retVal;
797     }
798 
799 
800 
801     /**
802      * Returns
803      * OBR-19: "Placer Field 2" - creates it if necessary
804      */
805     public ST getPlacerField2() { 
806 		ST retVal = this.getTypedField(19, 0);
807 		return retVal;
808     }
809     
810     /**
811      * Returns
812      * OBR-19: "Placer Field 2" - creates it if necessary
813      */
814     public ST getObr19_PlacerField2() { 
815 		ST retVal = this.getTypedField(19, 0);
816 		return retVal;
817     }
818 
819 
820 
821     /**
822      * Returns
823      * OBR-20: "Filler Field 1" - creates it if necessary
824      */
825     public ST getFillerField1() { 
826 		ST retVal = this.getTypedField(20, 0);
827 		return retVal;
828     }
829     
830     /**
831      * Returns
832      * OBR-20: "Filler Field 1" - creates it if necessary
833      */
834     public ST getObr20_FillerField1() { 
835 		ST retVal = this.getTypedField(20, 0);
836 		return retVal;
837     }
838 
839 
840 
841     /**
842      * Returns
843      * OBR-21: "Filler Field 2" - creates it if necessary
844      */
845     public ST getFillerField2() { 
846 		ST retVal = this.getTypedField(21, 0);
847 		return retVal;
848     }
849     
850     /**
851      * Returns
852      * OBR-21: "Filler Field 2" - creates it if necessary
853      */
854     public ST getObr21_FillerField2() { 
855 		ST retVal = this.getTypedField(21, 0);
856 		return retVal;
857     }
858 
859 
860 
861     /**
862      * Returns
863      * OBR-22: "Results Rpt/Status Chng - Date/Time" - creates it if necessary
864      */
865     public TS getResultsRptStatusChngDateTime() { 
866 		TS retVal = this.getTypedField(22, 0);
867 		return retVal;
868     }
869     
870     /**
871      * Returns
872      * OBR-22: "Results Rpt/Status Chng - Date/Time" - creates it if necessary
873      */
874     public TS getObr22_ResultsRptStatusChngDateTime() { 
875 		TS retVal = this.getTypedField(22, 0);
876 		return retVal;
877     }
878 
879 
880 
881     /**
882      * Returns
883      * OBR-23: "Charge to Practice" - creates it if necessary
884      */
885     public MOC getChargeToPractice() { 
886 		MOC retVal = this.getTypedField(23, 0);
887 		return retVal;
888     }
889     
890     /**
891      * Returns
892      * OBR-23: "Charge to Practice" - creates it if necessary
893      */
894     public MOC getObr23_ChargeToPractice() { 
895 		MOC retVal = this.getTypedField(23, 0);
896 		return retVal;
897     }
898 
899 
900 
901     /**
902      * Returns
903      * OBR-24: "Diagnostic Serv Sect ID" - creates it if necessary
904      */
905     public ID getDiagnosticServSectID() { 
906 		ID retVal = this.getTypedField(24, 0);
907 		return retVal;
908     }
909     
910     /**
911      * Returns
912      * OBR-24: "Diagnostic Serv Sect ID" - creates it if necessary
913      */
914     public ID getObr24_DiagnosticServSectID() { 
915 		ID retVal = this.getTypedField(24, 0);
916 		return retVal;
917     }
918 
919 
920 
921     /**
922      * Returns
923      * OBR-25: "Result Status" - creates it if necessary
924      */
925     public ID getResultStatus() { 
926 		ID retVal = this.getTypedField(25, 0);
927 		return retVal;
928     }
929     
930     /**
931      * Returns
932      * OBR-25: "Result Status" - creates it if necessary
933      */
934     public ID getObr25_ResultStatus() { 
935 		ID retVal = this.getTypedField(25, 0);
936 		return retVal;
937     }
938 
939 
940 
941     /**
942      * Returns
943      * OBR-26: "Parent Result" - creates it if necessary
944      */
945     public PRL getParentResult() { 
946 		PRL retVal = this.getTypedField(26, 0);
947 		return retVal;
948     }
949     
950     /**
951      * Returns
952      * OBR-26: "Parent Result" - creates it if necessary
953      */
954     public PRL getObr26_ParentResult() { 
955 		PRL retVal = this.getTypedField(26, 0);
956 		return retVal;
957     }
958 
959 
960     /**
961      * Returns all repetitions of Quantity/Timing (OBR-27).
962      */
963     public TQ[] getQuantityTiming() {
964     	TQ[] retVal = this.getTypedField(27, new TQ[0]);
965     	return retVal;
966     }
967 
968 
969     /**
970      * Returns all repetitions of Quantity/Timing (OBR-27).
971      */
972     public TQ[] getObr27_QuantityTiming() {
973     	TQ[] retVal = this.getTypedField(27, new TQ[0]);
974     	return retVal;
975     }
976 
977 
978     /**
979      * Returns a count of the current number of repetitions of Quantity/Timing (OBR-27).
980      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
981      * it will return zero.
982      */
983     public int getQuantityTimingReps() {
984     	return this.getReps(27);
985     }
986 
987 
988     /**
989      * Returns a specific repetition of
990      * OBR-27: "Quantity/Timing" - creates it if necessary
991      *
992      * @param rep The repetition index (0-indexed)
993      */
994     public TQ getQuantityTiming(int rep) { 
995 		TQ retVal = this.getTypedField(27, rep);
996 		return retVal;
997     }
998 
999     /**
1000      * Returns a specific repetition of
1001      * OBR-27: "Quantity/Timing" - creates it if necessary
1002      *
1003      * @param rep The repetition index (0-indexed)
1004      */
1005     public TQ getObr27_QuantityTiming(int rep) { 
1006 		TQ retVal = this.getTypedField(27, rep);
1007 		return retVal;
1008     }
1009 
1010     /**
1011      * Returns a count of the current number of repetitions of Quantity/Timing (OBR-27).
1012      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1013      * it will return zero.
1014      */
1015     public int getObr27_QuantityTimingReps() {
1016     	return this.getReps(27);
1017     }
1018 
1019 
1020     /**
1021      * Inserts a repetition of
1022      * OBR-27: "Quantity/Timing" at a specific index
1023      *
1024      * @param rep The repetition index (0-indexed)
1025      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1026      */
1027     public TQ insertQuantityTiming(int rep) throws HL7Exception { 
1028         return (TQ) super.insertRepetition(27, rep);
1029     }
1030 
1031 
1032     /**
1033      * Inserts a repetition of
1034      * OBR-27: "Quantity/Timing" at a specific index
1035      *
1036      * @param rep The repetition index (0-indexed)
1037      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1038      */
1039     public TQ insertObr27_QuantityTiming(int rep) throws HL7Exception { 
1040         return (TQ) super.insertRepetition(27, rep);
1041     }
1042 
1043 
1044     /**
1045      * Removes a repetition of
1046      * OBR-27: "Quantity/Timing" at a specific index
1047      *
1048      * @param rep The repetition index (0-indexed)
1049      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1050      */
1051     public TQ removeQuantityTiming(int rep) throws HL7Exception { 
1052         return (TQ) super.removeRepetition(27, rep);
1053     }
1054 
1055 
1056     /**
1057      * Removes a repetition of
1058      * OBR-27: "Quantity/Timing" at a specific index
1059      *
1060      * @param rep The repetition index (0-indexed)
1061      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1062      */
1063     public TQ removeObr27_QuantityTiming(int rep) throws HL7Exception { 
1064         return (TQ) super.removeRepetition(27, rep);
1065     }
1066 
1067 
1068 
1069     /**
1070      * Returns all repetitions of Result Copies To (OBR-28).
1071      */
1072     public XCN[] getResultCopiesTo() {
1073     	XCN[] retVal = this.getTypedField(28, new XCN[0]);
1074     	return retVal;
1075     }
1076 
1077 
1078     /**
1079      * Returns all repetitions of Result Copies To (OBR-28).
1080      */
1081     public XCN[] getObr28_ResultCopiesTo() {
1082     	XCN[] retVal = this.getTypedField(28, new XCN[0]);
1083     	return retVal;
1084     }
1085 
1086 
1087     /**
1088      * Returns a count of the current number of repetitions of Result Copies To (OBR-28).
1089      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1090      * it will return zero.
1091      */
1092     public int getResultCopiesToReps() {
1093     	return this.getReps(28);
1094     }
1095 
1096 
1097     /**
1098      * Returns a specific repetition of
1099      * OBR-28: "Result Copies To" - creates it if necessary
1100      *
1101      * @param rep The repetition index (0-indexed)
1102      */
1103     public XCN getResultCopiesTo(int rep) { 
1104 		XCN retVal = this.getTypedField(28, rep);
1105 		return retVal;
1106     }
1107 
1108     /**
1109      * Returns a specific repetition of
1110      * OBR-28: "Result Copies To" - creates it if necessary
1111      *
1112      * @param rep The repetition index (0-indexed)
1113      */
1114     public XCN getObr28_ResultCopiesTo(int rep) { 
1115 		XCN retVal = this.getTypedField(28, rep);
1116 		return retVal;
1117     }
1118 
1119     /**
1120      * Returns a count of the current number of repetitions of Result Copies To (OBR-28).
1121      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1122      * it will return zero.
1123      */
1124     public int getObr28_ResultCopiesToReps() {
1125     	return this.getReps(28);
1126     }
1127 
1128 
1129     /**
1130      * Inserts a repetition of
1131      * OBR-28: "Result Copies To" at a specific index
1132      *
1133      * @param rep The repetition index (0-indexed)
1134      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1135      */
1136     public XCN insertResultCopiesTo(int rep) throws HL7Exception { 
1137         return (XCN) super.insertRepetition(28, rep);
1138     }
1139 
1140 
1141     /**
1142      * Inserts a repetition of
1143      * OBR-28: "Result Copies To" at a specific index
1144      *
1145      * @param rep The repetition index (0-indexed)
1146      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1147      */
1148     public XCN insertObr28_ResultCopiesTo(int rep) throws HL7Exception { 
1149         return (XCN) super.insertRepetition(28, rep);
1150     }
1151 
1152 
1153     /**
1154      * Removes a repetition of
1155      * OBR-28: "Result Copies To" at a specific index
1156      *
1157      * @param rep The repetition index (0-indexed)
1158      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1159      */
1160     public XCN removeResultCopiesTo(int rep) throws HL7Exception { 
1161         return (XCN) super.removeRepetition(28, rep);
1162     }
1163 
1164 
1165     /**
1166      * Removes a repetition of
1167      * OBR-28: "Result Copies To" at a specific index
1168      *
1169      * @param rep The repetition index (0-indexed)
1170      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1171      */
1172     public XCN removeObr28_ResultCopiesTo(int rep) throws HL7Exception { 
1173         return (XCN) super.removeRepetition(28, rep);
1174     }
1175 
1176 
1177 
1178 
1179     /**
1180      * Returns
1181      * OBR-29: "Parent" - creates it if necessary
1182      */
1183     public EIP getOBRParent() { 
1184 		EIP retVal = this.getTypedField(29, 0);
1185 		return retVal;
1186     }
1187     
1188     /**
1189      * Returns
1190      * OBR-29: "Parent" - creates it if necessary
1191      */
1192     public EIP getObr29_Parent() { 
1193 		EIP retVal = this.getTypedField(29, 0);
1194 		return retVal;
1195     }
1196 
1197 
1198 
1199     /**
1200      * Returns
1201      * OBR-30: "Transportation Mode" - creates it if necessary
1202      */
1203     public ID getTransportationMode() { 
1204 		ID retVal = this.getTypedField(30, 0);
1205 		return retVal;
1206     }
1207     
1208     /**
1209      * Returns
1210      * OBR-30: "Transportation Mode" - creates it if necessary
1211      */
1212     public ID getObr30_TransportationMode() { 
1213 		ID retVal = this.getTypedField(30, 0);
1214 		return retVal;
1215     }
1216 
1217 
1218     /**
1219      * Returns all repetitions of Reason for Study (OBR-31).
1220      */
1221     public CE[] getReasonForStudy() {
1222     	CE[] retVal = this.getTypedField(31, new CE[0]);
1223     	return retVal;
1224     }
1225 
1226 
1227     /**
1228      * Returns all repetitions of Reason for Study (OBR-31).
1229      */
1230     public CE[] getObr31_ReasonForStudy() {
1231     	CE[] retVal = this.getTypedField(31, new CE[0]);
1232     	return retVal;
1233     }
1234 
1235 
1236     /**
1237      * Returns a count of the current number of repetitions of Reason for Study (OBR-31).
1238      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1239      * it will return zero.
1240      */
1241     public int getReasonForStudyReps() {
1242     	return this.getReps(31);
1243     }
1244 
1245 
1246     /**
1247      * Returns a specific repetition of
1248      * OBR-31: "Reason for Study" - creates it if necessary
1249      *
1250      * @param rep The repetition index (0-indexed)
1251      */
1252     public CE getReasonForStudy(int rep) { 
1253 		CE retVal = this.getTypedField(31, rep);
1254 		return retVal;
1255     }
1256 
1257     /**
1258      * Returns a specific repetition of
1259      * OBR-31: "Reason for Study" - creates it if necessary
1260      *
1261      * @param rep The repetition index (0-indexed)
1262      */
1263     public CE getObr31_ReasonForStudy(int rep) { 
1264 		CE retVal = this.getTypedField(31, rep);
1265 		return retVal;
1266     }
1267 
1268     /**
1269      * Returns a count of the current number of repetitions of Reason for Study (OBR-31).
1270      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1271      * it will return zero.
1272      */
1273     public int getObr31_ReasonForStudyReps() {
1274     	return this.getReps(31);
1275     }
1276 
1277 
1278     /**
1279      * Inserts a repetition of
1280      * OBR-31: "Reason for Study" at a specific index
1281      *
1282      * @param rep The repetition index (0-indexed)
1283      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1284      */
1285     public CE insertReasonForStudy(int rep) throws HL7Exception { 
1286         return (CE) super.insertRepetition(31, rep);
1287     }
1288 
1289 
1290     /**
1291      * Inserts a repetition of
1292      * OBR-31: "Reason for Study" at a specific index
1293      *
1294      * @param rep The repetition index (0-indexed)
1295      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1296      */
1297     public CE insertObr31_ReasonForStudy(int rep) throws HL7Exception { 
1298         return (CE) super.insertRepetition(31, rep);
1299     }
1300 
1301 
1302     /**
1303      * Removes a repetition of
1304      * OBR-31: "Reason for Study" at a specific index
1305      *
1306      * @param rep The repetition index (0-indexed)
1307      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1308      */
1309     public CE removeReasonForStudy(int rep) throws HL7Exception { 
1310         return (CE) super.removeRepetition(31, rep);
1311     }
1312 
1313 
1314     /**
1315      * Removes a repetition of
1316      * OBR-31: "Reason for Study" at a specific index
1317      *
1318      * @param rep The repetition index (0-indexed)
1319      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1320      */
1321     public CE removeObr31_ReasonForStudy(int rep) throws HL7Exception { 
1322         return (CE) super.removeRepetition(31, rep);
1323     }
1324 
1325 
1326 
1327 
1328     /**
1329      * Returns
1330      * OBR-32: "Principal Result Interpreter" - creates it if necessary
1331      */
1332     public NDL getPrincipalResultInterpreter() { 
1333 		NDL retVal = this.getTypedField(32, 0);
1334 		return retVal;
1335     }
1336     
1337     /**
1338      * Returns
1339      * OBR-32: "Principal Result Interpreter" - creates it if necessary
1340      */
1341     public NDL getObr32_PrincipalResultInterpreter() { 
1342 		NDL retVal = this.getTypedField(32, 0);
1343 		return retVal;
1344     }
1345 
1346 
1347     /**
1348      * Returns all repetitions of Assistant Result Interpreter (OBR-33).
1349      */
1350     public NDL[] getAssistantResultInterpreter() {
1351     	NDL[] retVal = this.getTypedField(33, new NDL[0]);
1352     	return retVal;
1353     }
1354 
1355 
1356     /**
1357      * Returns all repetitions of Assistant Result Interpreter (OBR-33).
1358      */
1359     public NDL[] getObr33_AssistantResultInterpreter() {
1360     	NDL[] retVal = this.getTypedField(33, new NDL[0]);
1361     	return retVal;
1362     }
1363 
1364 
1365     /**
1366      * Returns a count of the current number of repetitions of Assistant Result Interpreter (OBR-33).
1367      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1368      * it will return zero.
1369      */
1370     public int getAssistantResultInterpreterReps() {
1371     	return this.getReps(33);
1372     }
1373 
1374 
1375     /**
1376      * Returns a specific repetition of
1377      * OBR-33: "Assistant Result Interpreter" - creates it if necessary
1378      *
1379      * @param rep The repetition index (0-indexed)
1380      */
1381     public NDL getAssistantResultInterpreter(int rep) { 
1382 		NDL retVal = this.getTypedField(33, rep);
1383 		return retVal;
1384     }
1385 
1386     /**
1387      * Returns a specific repetition of
1388      * OBR-33: "Assistant Result Interpreter" - creates it if necessary
1389      *
1390      * @param rep The repetition index (0-indexed)
1391      */
1392     public NDL getObr33_AssistantResultInterpreter(int rep) { 
1393 		NDL retVal = this.getTypedField(33, rep);
1394 		return retVal;
1395     }
1396 
1397     /**
1398      * Returns a count of the current number of repetitions of Assistant Result Interpreter (OBR-33).
1399      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1400      * it will return zero.
1401      */
1402     public int getObr33_AssistantResultInterpreterReps() {
1403     	return this.getReps(33);
1404     }
1405 
1406 
1407     /**
1408      * Inserts a repetition of
1409      * OBR-33: "Assistant Result Interpreter" at a specific index
1410      *
1411      * @param rep The repetition index (0-indexed)
1412      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1413      */
1414     public NDL insertAssistantResultInterpreter(int rep) throws HL7Exception { 
1415         return (NDL) super.insertRepetition(33, rep);
1416     }
1417 
1418 
1419     /**
1420      * Inserts a repetition of
1421      * OBR-33: "Assistant Result Interpreter" at a specific index
1422      *
1423      * @param rep The repetition index (0-indexed)
1424      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1425      */
1426     public NDL insertObr33_AssistantResultInterpreter(int rep) throws HL7Exception { 
1427         return (NDL) super.insertRepetition(33, rep);
1428     }
1429 
1430 
1431     /**
1432      * Removes a repetition of
1433      * OBR-33: "Assistant Result Interpreter" at a specific index
1434      *
1435      * @param rep The repetition index (0-indexed)
1436      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1437      */
1438     public NDL removeAssistantResultInterpreter(int rep) throws HL7Exception { 
1439         return (NDL) super.removeRepetition(33, rep);
1440     }
1441 
1442 
1443     /**
1444      * Removes a repetition of
1445      * OBR-33: "Assistant Result Interpreter" at a specific index
1446      *
1447      * @param rep The repetition index (0-indexed)
1448      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1449      */
1450     public NDL removeObr33_AssistantResultInterpreter(int rep) throws HL7Exception { 
1451         return (NDL) super.removeRepetition(33, rep);
1452     }
1453 
1454 
1455 
1456     /**
1457      * Returns all repetitions of Technician (OBR-34).
1458      */
1459     public NDL[] getTechnician() {
1460     	NDL[] retVal = this.getTypedField(34, new NDL[0]);
1461     	return retVal;
1462     }
1463 
1464 
1465     /**
1466      * Returns all repetitions of Technician (OBR-34).
1467      */
1468     public NDL[] getObr34_Technician() {
1469     	NDL[] retVal = this.getTypedField(34, new NDL[0]);
1470     	return retVal;
1471     }
1472 
1473 
1474     /**
1475      * Returns a count of the current number of repetitions of Technician (OBR-34).
1476      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1477      * it will return zero.
1478      */
1479     public int getTechnicianReps() {
1480     	return this.getReps(34);
1481     }
1482 
1483 
1484     /**
1485      * Returns a specific repetition of
1486      * OBR-34: "Technician" - creates it if necessary
1487      *
1488      * @param rep The repetition index (0-indexed)
1489      */
1490     public NDL getTechnician(int rep) { 
1491 		NDL retVal = this.getTypedField(34, rep);
1492 		return retVal;
1493     }
1494 
1495     /**
1496      * Returns a specific repetition of
1497      * OBR-34: "Technician" - creates it if necessary
1498      *
1499      * @param rep The repetition index (0-indexed)
1500      */
1501     public NDL getObr34_Technician(int rep) { 
1502 		NDL retVal = this.getTypedField(34, rep);
1503 		return retVal;
1504     }
1505 
1506     /**
1507      * Returns a count of the current number of repetitions of Technician (OBR-34).
1508      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1509      * it will return zero.
1510      */
1511     public int getObr34_TechnicianReps() {
1512     	return this.getReps(34);
1513     }
1514 
1515 
1516     /**
1517      * Inserts a repetition of
1518      * OBR-34: "Technician" at a specific index
1519      *
1520      * @param rep The repetition index (0-indexed)
1521      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1522      */
1523     public NDL insertTechnician(int rep) throws HL7Exception { 
1524         return (NDL) super.insertRepetition(34, rep);
1525     }
1526 
1527 
1528     /**
1529      * Inserts a repetition of
1530      * OBR-34: "Technician" at a specific index
1531      *
1532      * @param rep The repetition index (0-indexed)
1533      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1534      */
1535     public NDL insertObr34_Technician(int rep) throws HL7Exception { 
1536         return (NDL) super.insertRepetition(34, rep);
1537     }
1538 
1539 
1540     /**
1541      * Removes a repetition of
1542      * OBR-34: "Technician" at a specific index
1543      *
1544      * @param rep The repetition index (0-indexed)
1545      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1546      */
1547     public NDL removeTechnician(int rep) throws HL7Exception { 
1548         return (NDL) super.removeRepetition(34, rep);
1549     }
1550 
1551 
1552     /**
1553      * Removes a repetition of
1554      * OBR-34: "Technician" at a specific index
1555      *
1556      * @param rep The repetition index (0-indexed)
1557      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1558      */
1559     public NDL removeObr34_Technician(int rep) throws HL7Exception { 
1560         return (NDL) super.removeRepetition(34, rep);
1561     }
1562 
1563 
1564 
1565     /**
1566      * Returns all repetitions of Transcriptionist (OBR-35).
1567      */
1568     public NDL[] getTranscriptionist() {
1569     	NDL[] retVal = this.getTypedField(35, new NDL[0]);
1570     	return retVal;
1571     }
1572 
1573 
1574     /**
1575      * Returns all repetitions of Transcriptionist (OBR-35).
1576      */
1577     public NDL[] getObr35_Transcriptionist() {
1578     	NDL[] retVal = this.getTypedField(35, new NDL[0]);
1579     	return retVal;
1580     }
1581 
1582 
1583     /**
1584      * Returns a count of the current number of repetitions of Transcriptionist (OBR-35).
1585      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1586      * it will return zero.
1587      */
1588     public int getTranscriptionistReps() {
1589     	return this.getReps(35);
1590     }
1591 
1592 
1593     /**
1594      * Returns a specific repetition of
1595      * OBR-35: "Transcriptionist" - creates it if necessary
1596      *
1597      * @param rep The repetition index (0-indexed)
1598      */
1599     public NDL getTranscriptionist(int rep) { 
1600 		NDL retVal = this.getTypedField(35, rep);
1601 		return retVal;
1602     }
1603 
1604     /**
1605      * Returns a specific repetition of
1606      * OBR-35: "Transcriptionist" - creates it if necessary
1607      *
1608      * @param rep The repetition index (0-indexed)
1609      */
1610     public NDL getObr35_Transcriptionist(int rep) { 
1611 		NDL retVal = this.getTypedField(35, rep);
1612 		return retVal;
1613     }
1614 
1615     /**
1616      * Returns a count of the current number of repetitions of Transcriptionist (OBR-35).
1617      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1618      * it will return zero.
1619      */
1620     public int getObr35_TranscriptionistReps() {
1621     	return this.getReps(35);
1622     }
1623 
1624 
1625     /**
1626      * Inserts a repetition of
1627      * OBR-35: "Transcriptionist" at a specific index
1628      *
1629      * @param rep The repetition index (0-indexed)
1630      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1631      */
1632     public NDL insertTranscriptionist(int rep) throws HL7Exception { 
1633         return (NDL) super.insertRepetition(35, rep);
1634     }
1635 
1636 
1637     /**
1638      * Inserts a repetition of
1639      * OBR-35: "Transcriptionist" at a specific index
1640      *
1641      * @param rep The repetition index (0-indexed)
1642      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1643      */
1644     public NDL insertObr35_Transcriptionist(int rep) throws HL7Exception { 
1645         return (NDL) super.insertRepetition(35, rep);
1646     }
1647 
1648 
1649     /**
1650      * Removes a repetition of
1651      * OBR-35: "Transcriptionist" at a specific index
1652      *
1653      * @param rep The repetition index (0-indexed)
1654      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1655      */
1656     public NDL removeTranscriptionist(int rep) throws HL7Exception { 
1657         return (NDL) super.removeRepetition(35, rep);
1658     }
1659 
1660 
1661     /**
1662      * Removes a repetition of
1663      * OBR-35: "Transcriptionist" at a specific index
1664      *
1665      * @param rep The repetition index (0-indexed)
1666      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1667      */
1668     public NDL removeObr35_Transcriptionist(int rep) throws HL7Exception { 
1669         return (NDL) super.removeRepetition(35, rep);
1670     }
1671 
1672 
1673 
1674 
1675     /**
1676      * Returns
1677      * OBR-36: "Scheduled Date/Time" - creates it if necessary
1678      */
1679     public TS getScheduledDateTime() { 
1680 		TS retVal = this.getTypedField(36, 0);
1681 		return retVal;
1682     }
1683     
1684     /**
1685      * Returns
1686      * OBR-36: "Scheduled Date/Time" - creates it if necessary
1687      */
1688     public TS getObr36_ScheduledDateTime() { 
1689 		TS retVal = this.getTypedField(36, 0);
1690 		return retVal;
1691     }
1692 
1693 
1694 
1695     /**
1696      * Returns
1697      * OBR-37: "Number of Sample Containers *" - creates it if necessary
1698      */
1699     public NM getNumberOfSampleContainers() { 
1700 		NM retVal = this.getTypedField(37, 0);
1701 		return retVal;
1702     }
1703     
1704     /**
1705      * Returns
1706      * OBR-37: "Number of Sample Containers *" - creates it if necessary
1707      */
1708     public NM getObr37_NumberOfSampleContainers() { 
1709 		NM retVal = this.getTypedField(37, 0);
1710 		return retVal;
1711     }
1712 
1713 
1714     /**
1715      * Returns all repetitions of Transport Logistics of Collected Sample (OBR-38).
1716      */
1717     public CE[] getTransportLogisticsOfCollectedSample() {
1718     	CE[] retVal = this.getTypedField(38, new CE[0]);
1719     	return retVal;
1720     }
1721 
1722 
1723     /**
1724      * Returns all repetitions of Transport Logistics of Collected Sample (OBR-38).
1725      */
1726     public CE[] getObr38_TransportLogisticsOfCollectedSample() {
1727     	CE[] retVal = this.getTypedField(38, new CE[0]);
1728     	return retVal;
1729     }
1730 
1731 
1732     /**
1733      * Returns a count of the current number of repetitions of Transport Logistics of Collected Sample (OBR-38).
1734      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1735      * it will return zero.
1736      */
1737     public int getTransportLogisticsOfCollectedSampleReps() {
1738     	return this.getReps(38);
1739     }
1740 
1741 
1742     /**
1743      * Returns a specific repetition of
1744      * OBR-38: "Transport Logistics of Collected Sample" - creates it if necessary
1745      *
1746      * @param rep The repetition index (0-indexed)
1747      */
1748     public CE getTransportLogisticsOfCollectedSample(int rep) { 
1749 		CE retVal = this.getTypedField(38, rep);
1750 		return retVal;
1751     }
1752 
1753     /**
1754      * Returns a specific repetition of
1755      * OBR-38: "Transport Logistics of Collected Sample" - creates it if necessary
1756      *
1757      * @param rep The repetition index (0-indexed)
1758      */
1759     public CE getObr38_TransportLogisticsOfCollectedSample(int rep) { 
1760 		CE retVal = this.getTypedField(38, rep);
1761 		return retVal;
1762     }
1763 
1764     /**
1765      * Returns a count of the current number of repetitions of Transport Logistics of Collected Sample (OBR-38).
1766      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1767      * it will return zero.
1768      */
1769     public int getObr38_TransportLogisticsOfCollectedSampleReps() {
1770     	return this.getReps(38);
1771     }
1772 
1773 
1774     /**
1775      * Inserts a repetition of
1776      * OBR-38: "Transport Logistics of Collected Sample" at a specific index
1777      *
1778      * @param rep The repetition index (0-indexed)
1779      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1780      */
1781     public CE insertTransportLogisticsOfCollectedSample(int rep) throws HL7Exception { 
1782         return (CE) super.insertRepetition(38, rep);
1783     }
1784 
1785 
1786     /**
1787      * Inserts a repetition of
1788      * OBR-38: "Transport Logistics of Collected Sample" at a specific index
1789      *
1790      * @param rep The repetition index (0-indexed)
1791      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1792      */
1793     public CE insertObr38_TransportLogisticsOfCollectedSample(int rep) throws HL7Exception { 
1794         return (CE) super.insertRepetition(38, rep);
1795     }
1796 
1797 
1798     /**
1799      * Removes a repetition of
1800      * OBR-38: "Transport Logistics of Collected Sample" at a specific index
1801      *
1802      * @param rep The repetition index (0-indexed)
1803      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1804      */
1805     public CE removeTransportLogisticsOfCollectedSample(int rep) throws HL7Exception { 
1806         return (CE) super.removeRepetition(38, rep);
1807     }
1808 
1809 
1810     /**
1811      * Removes a repetition of
1812      * OBR-38: "Transport Logistics of Collected Sample" at a specific index
1813      *
1814      * @param rep The repetition index (0-indexed)
1815      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1816      */
1817     public CE removeObr38_TransportLogisticsOfCollectedSample(int rep) throws HL7Exception { 
1818         return (CE) super.removeRepetition(38, rep);
1819     }
1820 
1821 
1822 
1823     /**
1824      * Returns all repetitions of Collector's Comment * (OBR-39).
1825      */
1826     public CE[] getCollectorSComment() {
1827     	CE[] retVal = this.getTypedField(39, new CE[0]);
1828     	return retVal;
1829     }
1830 
1831 
1832     /**
1833      * Returns all repetitions of Collector's Comment * (OBR-39).
1834      */
1835     public CE[] getObr39_CollectorSComment() {
1836     	CE[] retVal = this.getTypedField(39, new CE[0]);
1837     	return retVal;
1838     }
1839 
1840 
1841     /**
1842      * Returns a count of the current number of repetitions of Collector's Comment * (OBR-39).
1843      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1844      * it will return zero.
1845      */
1846     public int getCollectorSCommentReps() {
1847     	return this.getReps(39);
1848     }
1849 
1850 
1851     /**
1852      * Returns a specific repetition of
1853      * OBR-39: "Collector's Comment *" - creates it if necessary
1854      *
1855      * @param rep The repetition index (0-indexed)
1856      */
1857     public CE getCollectorSComment(int rep) { 
1858 		CE retVal = this.getTypedField(39, rep);
1859 		return retVal;
1860     }
1861 
1862     /**
1863      * Returns a specific repetition of
1864      * OBR-39: "Collector's Comment *" - creates it if necessary
1865      *
1866      * @param rep The repetition index (0-indexed)
1867      */
1868     public CE getObr39_CollectorSComment(int rep) { 
1869 		CE retVal = this.getTypedField(39, rep);
1870 		return retVal;
1871     }
1872 
1873     /**
1874      * Returns a count of the current number of repetitions of Collector's Comment * (OBR-39).
1875      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1876      * it will return zero.
1877      */
1878     public int getObr39_CollectorSCommentReps() {
1879     	return this.getReps(39);
1880     }
1881 
1882 
1883     /**
1884      * Inserts a repetition of
1885      * OBR-39: "Collector's Comment *" at a specific index
1886      *
1887      * @param rep The repetition index (0-indexed)
1888      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1889      */
1890     public CE insertCollectorSComment(int rep) throws HL7Exception { 
1891         return (CE) super.insertRepetition(39, rep);
1892     }
1893 
1894 
1895     /**
1896      * Inserts a repetition of
1897      * OBR-39: "Collector's Comment *" at a specific index
1898      *
1899      * @param rep The repetition index (0-indexed)
1900      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1901      */
1902     public CE insertObr39_CollectorSComment(int rep) throws HL7Exception { 
1903         return (CE) super.insertRepetition(39, rep);
1904     }
1905 
1906 
1907     /**
1908      * Removes a repetition of
1909      * OBR-39: "Collector's Comment *" at a specific index
1910      *
1911      * @param rep The repetition index (0-indexed)
1912      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1913      */
1914     public CE removeCollectorSComment(int rep) throws HL7Exception { 
1915         return (CE) super.removeRepetition(39, rep);
1916     }
1917 
1918 
1919     /**
1920      * Removes a repetition of
1921      * OBR-39: "Collector's Comment *" at a specific index
1922      *
1923      * @param rep The repetition index (0-indexed)
1924      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1925      */
1926     public CE removeObr39_CollectorSComment(int rep) throws HL7Exception { 
1927         return (CE) super.removeRepetition(39, rep);
1928     }
1929 
1930 
1931 
1932 
1933     /**
1934      * Returns
1935      * OBR-40: "Transport Arrangement Responsibility" - creates it if necessary
1936      */
1937     public CE getTransportArrangementResponsibility() { 
1938 		CE retVal = this.getTypedField(40, 0);
1939 		return retVal;
1940     }
1941     
1942     /**
1943      * Returns
1944      * OBR-40: "Transport Arrangement Responsibility" - creates it if necessary
1945      */
1946     public CE getObr40_TransportArrangementResponsibility() { 
1947 		CE retVal = this.getTypedField(40, 0);
1948 		return retVal;
1949     }
1950 
1951 
1952 
1953     /**
1954      * Returns
1955      * OBR-41: "Transport Arranged" - creates it if necessary
1956      */
1957     public ID getTransportArranged() { 
1958 		ID retVal = this.getTypedField(41, 0);
1959 		return retVal;
1960     }
1961     
1962     /**
1963      * Returns
1964      * OBR-41: "Transport Arranged" - creates it if necessary
1965      */
1966     public ID getObr41_TransportArranged() { 
1967 		ID retVal = this.getTypedField(41, 0);
1968 		return retVal;
1969     }
1970 
1971 
1972 
1973     /**
1974      * Returns
1975      * OBR-42: "Escort Required" - creates it if necessary
1976      */
1977     public ID getEscortRequired() { 
1978 		ID retVal = this.getTypedField(42, 0);
1979 		return retVal;
1980     }
1981     
1982     /**
1983      * Returns
1984      * OBR-42: "Escort Required" - creates it if necessary
1985      */
1986     public ID getObr42_EscortRequired() { 
1987 		ID retVal = this.getTypedField(42, 0);
1988 		return retVal;
1989     }
1990 
1991 
1992     /**
1993      * Returns all repetitions of Planned Patient Transport Comment (OBR-43).
1994      */
1995     public CE[] getPlannedPatientTransportComment() {
1996     	CE[] retVal = this.getTypedField(43, new CE[0]);
1997     	return retVal;
1998     }
1999 
2000 
2001     /**
2002      * Returns all repetitions of Planned Patient Transport Comment (OBR-43).
2003      */
2004     public CE[] getObr43_PlannedPatientTransportComment() {
2005     	CE[] retVal = this.getTypedField(43, new CE[0]);
2006     	return retVal;
2007     }
2008 
2009 
2010     /**
2011      * Returns a count of the current number of repetitions of Planned Patient Transport Comment (OBR-43).
2012      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2013      * it will return zero.
2014      */
2015     public int getPlannedPatientTransportCommentReps() {
2016     	return this.getReps(43);
2017     }
2018 
2019 
2020     /**
2021      * Returns a specific repetition of
2022      * OBR-43: "Planned Patient Transport Comment" - creates it if necessary
2023      *
2024      * @param rep The repetition index (0-indexed)
2025      */
2026     public CE getPlannedPatientTransportComment(int rep) { 
2027 		CE retVal = this.getTypedField(43, rep);
2028 		return retVal;
2029     }
2030 
2031     /**
2032      * Returns a specific repetition of
2033      * OBR-43: "Planned Patient Transport Comment" - creates it if necessary
2034      *
2035      * @param rep The repetition index (0-indexed)
2036      */
2037     public CE getObr43_PlannedPatientTransportComment(int rep) { 
2038 		CE retVal = this.getTypedField(43, rep);
2039 		return retVal;
2040     }
2041 
2042     /**
2043      * Returns a count of the current number of repetitions of Planned Patient Transport Comment (OBR-43).
2044      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2045      * it will return zero.
2046      */
2047     public int getObr43_PlannedPatientTransportCommentReps() {
2048     	return this.getReps(43);
2049     }
2050 
2051 
2052     /**
2053      * Inserts a repetition of
2054      * OBR-43: "Planned Patient Transport Comment" at a specific index
2055      *
2056      * @param rep The repetition index (0-indexed)
2057      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2058      */
2059     public CE insertPlannedPatientTransportComment(int rep) throws HL7Exception { 
2060         return (CE) super.insertRepetition(43, rep);
2061     }
2062 
2063 
2064     /**
2065      * Inserts a repetition of
2066      * OBR-43: "Planned Patient Transport Comment" at a specific index
2067      *
2068      * @param rep The repetition index (0-indexed)
2069      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2070      */
2071     public CE insertObr43_PlannedPatientTransportComment(int rep) throws HL7Exception { 
2072         return (CE) super.insertRepetition(43, rep);
2073     }
2074 
2075 
2076     /**
2077      * Removes a repetition of
2078      * OBR-43: "Planned Patient Transport Comment" at a specific index
2079      *
2080      * @param rep The repetition index (0-indexed)
2081      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2082      */
2083     public CE removePlannedPatientTransportComment(int rep) throws HL7Exception { 
2084         return (CE) super.removeRepetition(43, rep);
2085     }
2086 
2087 
2088     /**
2089      * Removes a repetition of
2090      * OBR-43: "Planned Patient Transport Comment" at a specific index
2091      *
2092      * @param rep The repetition index (0-indexed)
2093      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2094      */
2095     public CE removeObr43_PlannedPatientTransportComment(int rep) throws HL7Exception { 
2096         return (CE) super.removeRepetition(43, rep);
2097     }
2098 
2099 
2100 
2101 
2102     /**
2103      * Returns
2104      * OBR-44: "Procedure Code" - creates it if necessary
2105      */
2106     public CE getProcedureCode() { 
2107 		CE retVal = this.getTypedField(44, 0);
2108 		return retVal;
2109     }
2110     
2111     /**
2112      * Returns
2113      * OBR-44: "Procedure Code" - creates it if necessary
2114      */
2115     public CE getObr44_ProcedureCode() { 
2116 		CE retVal = this.getTypedField(44, 0);
2117 		return retVal;
2118     }
2119 
2120 
2121     /**
2122      * Returns all repetitions of Procedure Code Modifier (OBR-45).
2123      */
2124     public CE[] getProcedureCodeModifier() {
2125     	CE[] retVal = this.getTypedField(45, new CE[0]);
2126     	return retVal;
2127     }
2128 
2129 
2130     /**
2131      * Returns all repetitions of Procedure Code Modifier (OBR-45).
2132      */
2133     public CE[] getObr45_ProcedureCodeModifier() {
2134     	CE[] retVal = this.getTypedField(45, new CE[0]);
2135     	return retVal;
2136     }
2137 
2138 
2139     /**
2140      * Returns a count of the current number of repetitions of Procedure Code Modifier (OBR-45).
2141      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2142      * it will return zero.
2143      */
2144     public int getProcedureCodeModifierReps() {
2145     	return this.getReps(45);
2146     }
2147 
2148 
2149     /**
2150      * Returns a specific repetition of
2151      * OBR-45: "Procedure Code Modifier" - creates it if necessary
2152      *
2153      * @param rep The repetition index (0-indexed)
2154      */
2155     public CE getProcedureCodeModifier(int rep) { 
2156 		CE retVal = this.getTypedField(45, rep);
2157 		return retVal;
2158     }
2159 
2160     /**
2161      * Returns a specific repetition of
2162      * OBR-45: "Procedure Code Modifier" - creates it if necessary
2163      *
2164      * @param rep The repetition index (0-indexed)
2165      */
2166     public CE getObr45_ProcedureCodeModifier(int rep) { 
2167 		CE retVal = this.getTypedField(45, rep);
2168 		return retVal;
2169     }
2170 
2171     /**
2172      * Returns a count of the current number of repetitions of Procedure Code Modifier (OBR-45).
2173      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2174      * it will return zero.
2175      */
2176     public int getObr45_ProcedureCodeModifierReps() {
2177     	return this.getReps(45);
2178     }
2179 
2180 
2181     /**
2182      * Inserts a repetition of
2183      * OBR-45: "Procedure Code Modifier" at a specific index
2184      *
2185      * @param rep The repetition index (0-indexed)
2186      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2187      */
2188     public CE insertProcedureCodeModifier(int rep) throws HL7Exception { 
2189         return (CE) super.insertRepetition(45, rep);
2190     }
2191 
2192 
2193     /**
2194      * Inserts a repetition of
2195      * OBR-45: "Procedure Code Modifier" at a specific index
2196      *
2197      * @param rep The repetition index (0-indexed)
2198      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2199      */
2200     public CE insertObr45_ProcedureCodeModifier(int rep) throws HL7Exception { 
2201         return (CE) super.insertRepetition(45, rep);
2202     }
2203 
2204 
2205     /**
2206      * Removes a repetition of
2207      * OBR-45: "Procedure Code Modifier" at a specific index
2208      *
2209      * @param rep The repetition index (0-indexed)
2210      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2211      */
2212     public CE removeProcedureCodeModifier(int rep) throws HL7Exception { 
2213         return (CE) super.removeRepetition(45, rep);
2214     }
2215 
2216 
2217     /**
2218      * Removes a repetition of
2219      * OBR-45: "Procedure Code Modifier" at a specific index
2220      *
2221      * @param rep The repetition index (0-indexed)
2222      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2223      */
2224     public CE removeObr45_ProcedureCodeModifier(int rep) throws HL7Exception { 
2225         return (CE) super.removeRepetition(45, rep);
2226     }
2227 
2228 
2229 
2230     /**
2231      * Returns all repetitions of Placer Supplemental Service Information (OBR-46).
2232      */
2233     public CE[] getPlacerSupplementalServiceInformation() {
2234     	CE[] retVal = this.getTypedField(46, new CE[0]);
2235     	return retVal;
2236     }
2237 
2238 
2239     /**
2240      * Returns all repetitions of Placer Supplemental Service Information (OBR-46).
2241      */
2242     public CE[] getObr46_PlacerSupplementalServiceInformation() {
2243     	CE[] retVal = this.getTypedField(46, new CE[0]);
2244     	return retVal;
2245     }
2246 
2247 
2248     /**
2249      * Returns a count of the current number of repetitions of Placer Supplemental Service Information (OBR-46).
2250      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2251      * it will return zero.
2252      */
2253     public int getPlacerSupplementalServiceInformationReps() {
2254     	return this.getReps(46);
2255     }
2256 
2257 
2258     /**
2259      * Returns a specific repetition of
2260      * OBR-46: "Placer Supplemental Service Information" - creates it if necessary
2261      *
2262      * @param rep The repetition index (0-indexed)
2263      */
2264     public CE getPlacerSupplementalServiceInformation(int rep) { 
2265 		CE retVal = this.getTypedField(46, rep);
2266 		return retVal;
2267     }
2268 
2269     /**
2270      * Returns a specific repetition of
2271      * OBR-46: "Placer Supplemental Service Information" - creates it if necessary
2272      *
2273      * @param rep The repetition index (0-indexed)
2274      */
2275     public CE getObr46_PlacerSupplementalServiceInformation(int rep) { 
2276 		CE retVal = this.getTypedField(46, rep);
2277 		return retVal;
2278     }
2279 
2280     /**
2281      * Returns a count of the current number of repetitions of Placer Supplemental Service Information (OBR-46).
2282      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2283      * it will return zero.
2284      */
2285     public int getObr46_PlacerSupplementalServiceInformationReps() {
2286     	return this.getReps(46);
2287     }
2288 
2289 
2290     /**
2291      * Inserts a repetition of
2292      * OBR-46: "Placer Supplemental Service Information" at a specific index
2293      *
2294      * @param rep The repetition index (0-indexed)
2295      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2296      */
2297     public CE insertPlacerSupplementalServiceInformation(int rep) throws HL7Exception { 
2298         return (CE) super.insertRepetition(46, rep);
2299     }
2300 
2301 
2302     /**
2303      * Inserts a repetition of
2304      * OBR-46: "Placer Supplemental Service Information" at a specific index
2305      *
2306      * @param rep The repetition index (0-indexed)
2307      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2308      */
2309     public CE insertObr46_PlacerSupplementalServiceInformation(int rep) throws HL7Exception { 
2310         return (CE) super.insertRepetition(46, rep);
2311     }
2312 
2313 
2314     /**
2315      * Removes a repetition of
2316      * OBR-46: "Placer Supplemental Service Information" at a specific index
2317      *
2318      * @param rep The repetition index (0-indexed)
2319      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2320      */
2321     public CE removePlacerSupplementalServiceInformation(int rep) throws HL7Exception { 
2322         return (CE) super.removeRepetition(46, rep);
2323     }
2324 
2325 
2326     /**
2327      * Removes a repetition of
2328      * OBR-46: "Placer Supplemental Service Information" at a specific index
2329      *
2330      * @param rep The repetition index (0-indexed)
2331      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2332      */
2333     public CE removeObr46_PlacerSupplementalServiceInformation(int rep) throws HL7Exception { 
2334         return (CE) super.removeRepetition(46, rep);
2335     }
2336 
2337 
2338 
2339     /**
2340      * Returns all repetitions of Filler Supplemental Service Information (OBR-47).
2341      */
2342     public CE[] getFillerSupplementalServiceInformation() {
2343     	CE[] retVal = this.getTypedField(47, new CE[0]);
2344     	return retVal;
2345     }
2346 
2347 
2348     /**
2349      * Returns all repetitions of Filler Supplemental Service Information (OBR-47).
2350      */
2351     public CE[] getObr47_FillerSupplementalServiceInformation() {
2352     	CE[] retVal = this.getTypedField(47, new CE[0]);
2353     	return retVal;
2354     }
2355 
2356 
2357     /**
2358      * Returns a count of the current number of repetitions of Filler Supplemental Service Information (OBR-47).
2359      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2360      * it will return zero.
2361      */
2362     public int getFillerSupplementalServiceInformationReps() {
2363     	return this.getReps(47);
2364     }
2365 
2366 
2367     /**
2368      * Returns a specific repetition of
2369      * OBR-47: "Filler Supplemental Service Information" - creates it if necessary
2370      *
2371      * @param rep The repetition index (0-indexed)
2372      */
2373     public CE getFillerSupplementalServiceInformation(int rep) { 
2374 		CE retVal = this.getTypedField(47, rep);
2375 		return retVal;
2376     }
2377 
2378     /**
2379      * Returns a specific repetition of
2380      * OBR-47: "Filler Supplemental Service Information" - creates it if necessary
2381      *
2382      * @param rep The repetition index (0-indexed)
2383      */
2384     public CE getObr47_FillerSupplementalServiceInformation(int rep) { 
2385 		CE retVal = this.getTypedField(47, rep);
2386 		return retVal;
2387     }
2388 
2389     /**
2390      * Returns a count of the current number of repetitions of Filler Supplemental Service Information (OBR-47).
2391      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2392      * it will return zero.
2393      */
2394     public int getObr47_FillerSupplementalServiceInformationReps() {
2395     	return this.getReps(47);
2396     }
2397 
2398 
2399     /**
2400      * Inserts a repetition of
2401      * OBR-47: "Filler Supplemental Service Information" at a specific index
2402      *
2403      * @param rep The repetition index (0-indexed)
2404      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2405      */
2406     public CE insertFillerSupplementalServiceInformation(int rep) throws HL7Exception { 
2407         return (CE) super.insertRepetition(47, rep);
2408     }
2409 
2410 
2411     /**
2412      * Inserts a repetition of
2413      * OBR-47: "Filler Supplemental Service Information" at a specific index
2414      *
2415      * @param rep The repetition index (0-indexed)
2416      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2417      */
2418     public CE insertObr47_FillerSupplementalServiceInformation(int rep) throws HL7Exception { 
2419         return (CE) super.insertRepetition(47, rep);
2420     }
2421 
2422 
2423     /**
2424      * Removes a repetition of
2425      * OBR-47: "Filler Supplemental Service Information" at a specific index
2426      *
2427      * @param rep The repetition index (0-indexed)
2428      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2429      */
2430     public CE removeFillerSupplementalServiceInformation(int rep) throws HL7Exception { 
2431         return (CE) super.removeRepetition(47, rep);
2432     }
2433 
2434 
2435     /**
2436      * Removes a repetition of
2437      * OBR-47: "Filler Supplemental Service Information" at a specific index
2438      *
2439      * @param rep The repetition index (0-indexed)
2440      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2441      */
2442     public CE removeObr47_FillerSupplementalServiceInformation(int rep) throws HL7Exception { 
2443         return (CE) super.removeRepetition(47, rep);
2444     }
2445 
2446 
2447 
2448 
2449     /**
2450      * Returns
2451      * OBR-48: "Medically Necessary Duplicate Procedure Reason." - creates it if necessary
2452      */
2453     public CWE getMedicallyNecessaryDuplicateProcedureReason() { 
2454 		CWE retVal = this.getTypedField(48, 0);
2455 		return retVal;
2456     }
2457     
2458     /**
2459      * Returns
2460      * OBR-48: "Medically Necessary Duplicate Procedure Reason." - creates it if necessary
2461      */
2462     public CWE getObr48_MedicallyNecessaryDuplicateProcedureReason() { 
2463 		CWE retVal = this.getTypedField(48, 0);
2464 		return retVal;
2465     }
2466 
2467 
2468 
2469     /**
2470      * Returns
2471      * OBR-49: "Result Handling" - creates it if necessary
2472      */
2473     public IS getResultHandling() { 
2474 		IS retVal = this.getTypedField(49, 0);
2475 		return retVal;
2476     }
2477     
2478     /**
2479      * Returns
2480      * OBR-49: "Result Handling" - creates it if necessary
2481      */
2482     public IS getObr49_ResultHandling() { 
2483 		IS retVal = this.getTypedField(49, 0);
2484 		return retVal;
2485     }
2486 
2487 
2488 
2489     /**
2490      * Returns
2491      * OBR-50: "Parent Universal Service Identifier" - creates it if necessary
2492      */
2493     public CWE getParentUniversalServiceIdentifier() { 
2494 		CWE retVal = this.getTypedField(50, 0);
2495 		return retVal;
2496     }
2497     
2498     /**
2499      * Returns
2500      * OBR-50: "Parent Universal Service Identifier" - creates it if necessary
2501      */
2502     public CWE getObr50_ParentUniversalServiceIdentifier() { 
2503 		CWE retVal = this.getTypedField(50, 0);
2504 		return retVal;
2505     }
2506 
2507 
2508 
2509 
2510 
2511     /** {@inheritDoc} */   
2512     protected Type createNewTypeWithoutReflection(int field) {
2513        switch (field) {
2514           case 0: return new SI(getMessage());
2515           case 1: return new EI(getMessage());
2516           case 2: return new EI(getMessage());
2517           case 3: return new CE(getMessage());
2518           case 4: return new ID(getMessage(), new Integer( 0 ));
2519           case 5: return new TS(getMessage());
2520           case 6: return new TS(getMessage());
2521           case 7: return new TS(getMessage());
2522           case 8: return new CQ(getMessage());
2523           case 9: return new XCN(getMessage());
2524           case 10: return new ID(getMessage(), new Integer( 65 ));
2525           case 11: return new CE(getMessage());
2526           case 12: return new ST(getMessage());
2527           case 13: return new TS(getMessage());
2528           case 14: return new SPS(getMessage());
2529           case 15: return new XCN(getMessage());
2530           case 16: return new XTN(getMessage());
2531           case 17: return new ST(getMessage());
2532           case 18: return new ST(getMessage());
2533           case 19: return new ST(getMessage());
2534           case 20: return new ST(getMessage());
2535           case 21: return new TS(getMessage());
2536           case 22: return new MOC(getMessage());
2537           case 23: return new ID(getMessage(), new Integer( 74 ));
2538           case 24: return new ID(getMessage(), new Integer( 123 ));
2539           case 25: return new PRL(getMessage());
2540           case 26: return new TQ(getMessage());
2541           case 27: return new XCN(getMessage());
2542           case 28: return new EIP(getMessage());
2543           case 29: return new ID(getMessage(), new Integer( 124 ));
2544           case 30: return new CE(getMessage());
2545           case 31: return new NDL(getMessage());
2546           case 32: return new NDL(getMessage());
2547           case 33: return new NDL(getMessage());
2548           case 34: return new NDL(getMessage());
2549           case 35: return new TS(getMessage());
2550           case 36: return new NM(getMessage());
2551           case 37: return new CE(getMessage());
2552           case 38: return new CE(getMessage());
2553           case 39: return new CE(getMessage());
2554           case 40: return new ID(getMessage(), new Integer( 224 ));
2555           case 41: return new ID(getMessage(), new Integer( 225 ));
2556           case 42: return new CE(getMessage());
2557           case 43: return new CE(getMessage());
2558           case 44: return new CE(getMessage());
2559           case 45: return new CE(getMessage());
2560           case 46: return new CE(getMessage());
2561           case 47: return new CWE(getMessage());
2562           case 48: return new IS(getMessage(), new Integer( 507 ));
2563           case 49: return new CWE(getMessage());
2564           default: return null;
2565        }
2566    }
2567 
2568 
2569 }
2570