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