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