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