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