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