View Javadoc
1   /*
2    * This class is an auto-generated source file for a HAPI
3    * HL7 v2.x standard structure class.
4    *
5    * For more information, visit: http://hl7api.sourceforge.net/
6    * 
7    * The contents of this file are subject to the Mozilla Public License Version 1.1 
8    * (the "License"); you may not use this file except in compliance with the License. 
9    * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
10   * Software distributed under the License is distributed on an "AS IS" basis, 
11   * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
12   * specific language governing rights and limitations under the License. 
13   * 
14   * The Original Code is "[file_name]".  Description: 
15   * "[one_line_description]" 
16   * 
17   * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
18   * 2012.  All Rights Reserved. 
19   * 
20   * Contributor(s): ______________________________________. 
21   * 
22   * Alternatively, the contents of this file may be used under the terms of the 
23   * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
24   * applicable instead of those above.  If you wish to allow use of your version of this 
25   * file only under the terms of the GPL and not to allow others to use your version 
26   * of this file under the MPL, indicate your decision by deleting  the provisions above 
27   * and replace  them with the notice and other provisions required by the GPL License.  
28   * If you do not delete the provisions above, a recipient may use your version of 
29   * this file under either the MPL or the GPL. 
30   * 
31   */
32  
33  
34  package ca.uhn.hl7v2.model.v24.segment;
35  
36  // import ca.uhn.hl7v2.model.v24.group.*;
37  import ca.uhn.hl7v2.model.v24.datatype.*;
38  import ca.uhn.hl7v2.HL7Exception;
39  import ca.uhn.hl7v2.parser.ModelClassFactory;
40  import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
41  import ca.uhn.hl7v2.model.AbstractMessage;
42  import ca.uhn.hl7v2.model.Group;
43  import ca.uhn.hl7v2.model.Type;
44  import ca.uhn.hl7v2.model.AbstractSegment;
45  import ca.uhn.hl7v2.model.Varies;
46  
47  
48  /**
49   *<p>Represents an HL7 RXO message segment (Pharmacy/Treatment Order). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>RXO-1: Requested Give Code (CE) <b>optional </b>
53       * <li>RXO-2: Requested Give Amount - Minimum (NM) <b>optional </b>
54       * <li>RXO-3: Requested Give Amount - Maximum (NM) <b>optional </b>
55       * <li>RXO-4: Requested Give Units (CE) <b>optional </b>
56       * <li>RXO-5: Requested Dosage Form (CE) <b>optional </b>
57       * <li>RXO-6: Provider's Pharmacy/Treatment Instructions (CE) <b>optional repeating</b>
58       * <li>RXO-7: Provider's Administration Instructions (CE) <b>optional repeating</b>
59       * <li>RXO-8: Deliver-To Location (LA1) <b>optional </b>
60       * <li>RXO-9: Allow Substitutions (ID) <b>optional </b>
61       * <li>RXO-10: Requested Dispense Code (CE) <b>optional </b>
62       * <li>RXO-11: Requested Dispense Amount (NM) <b>optional </b>
63       * <li>RXO-12: Requested Dispense Units (CE) <b>optional </b>
64       * <li>RXO-13: Number of Refills (NM) <b>optional </b>
65       * <li>RXO-14: Ordering Provider's DEA Number (XCN) <b>optional repeating</b>
66       * <li>RXO-15: Pharmacist/Treatment Supplier's Verifier ID (XCN) <b>optional repeating</b>
67       * <li>RXO-16: Needs Human Review (ID) <b>optional </b>
68       * <li>RXO-17: Requested Give Per (Time Unit) (ST) <b>optional </b>
69       * <li>RXO-18: Requested Give Strength (NM) <b>optional </b>
70       * <li>RXO-19: Requested Give Strength Units (CE) <b>optional </b>
71       * <li>RXO-20: Indication (CE) <b>optional repeating</b>
72       * <li>RXO-21: Requested Give Rate Amount (ST) <b>optional </b>
73       * <li>RXO-22: Requested Give Rate Units (CE) <b>optional </b>
74       * <li>RXO-23: Total Daily Dose (CQ) <b>optional </b>
75       * <li>RXO-24: Supplementary Code (CE) <b>optional repeating</b>
76   * </ul>
77   */
78  @SuppressWarnings("unused")
79  public class RXO extends AbstractSegment {
80  
81      /** 
82       * Creates a new RXO segment
83       */
84      public RXO(Group parent, ModelClassFactory factory) {
85         super(parent, factory);
86         init(factory);
87      }
88  
89      private void init(ModelClassFactory factory) {
90         try {
91                                    this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Give Code");
92                                    this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Give Amount - Minimum");
93                                    this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Give Amount - Maximum");
94                                    this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Give Units");
95                                    this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Dosage Form");
96                                    this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Provider's Pharmacy/Treatment Instructions");
97                                    this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Provider's Administration Instructions");
98                                    this.add(LA1.class, false, 1, 200, new Object[]{ getMessage() }, "Deliver-To Location");
99                                                this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(161) }, "Allow Substitutions");
100                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Dispense Code");
101                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Dispense Amount");
102                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Dispense Units");
103                                   this.add(NM.class, false, 1, 3, new Object[]{ getMessage() }, "Number of Refills");
104                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Ordering Provider's DEA Number");
105                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Pharmacist/Treatment Supplier's Verifier ID");
106                                               this.add(ID.class, false, 1, 1, new Object[]{ getMessage(), new Integer(136) }, "Needs Human Review");
107                                   this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Give Per (Time Unit)");
108                                   this.add(NM.class, false, 1, 20, new Object[]{ getMessage() }, "Requested Give Strength");
109                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Give Strength Units");
110                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Indication");
111                                   this.add(ST.class, false, 1, 6, new Object[]{ getMessage() }, "Requested Give Rate Amount");
112                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Requested Give Rate Units");
113                                   this.add(CQ.class, false, 1, 10, new Object[]{ getMessage() }, "Total Daily Dose");
114                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Supplementary Code");
115        } catch(HL7Exception e) {
116           log.error("Unexpected error creating RXO - this is probably a bug in the source code generator.", e);
117        }
118     }
119 
120 
121 
122     /**
123      * Returns
124      * RXO-1: "Requested Give Code" - creates it if necessary
125      */
126     public CE getRequestedGiveCode() { 
127 		CE retVal = this.getTypedField(1, 0);
128 		return retVal;
129     }
130     
131     /**
132      * Returns
133      * RXO-1: "Requested Give Code" - creates it if necessary
134      */
135     public CE getRxo1_RequestedGiveCode() { 
136 		CE retVal = this.getTypedField(1, 0);
137 		return retVal;
138     }
139 
140 
141 
142     /**
143      * Returns
144      * RXO-2: "Requested Give Amount - Minimum" - creates it if necessary
145      */
146     public NM getRequestedGiveAmountMinimum() { 
147 		NM retVal = this.getTypedField(2, 0);
148 		return retVal;
149     }
150     
151     /**
152      * Returns
153      * RXO-2: "Requested Give Amount - Minimum" - creates it if necessary
154      */
155     public NM getRxo2_RequestedGiveAmountMinimum() { 
156 		NM retVal = this.getTypedField(2, 0);
157 		return retVal;
158     }
159 
160 
161 
162     /**
163      * Returns
164      * RXO-3: "Requested Give Amount - Maximum" - creates it if necessary
165      */
166     public NM getRequestedGiveAmountMaximum() { 
167 		NM retVal = this.getTypedField(3, 0);
168 		return retVal;
169     }
170     
171     /**
172      * Returns
173      * RXO-3: "Requested Give Amount - Maximum" - creates it if necessary
174      */
175     public NM getRxo3_RequestedGiveAmountMaximum() { 
176 		NM retVal = this.getTypedField(3, 0);
177 		return retVal;
178     }
179 
180 
181 
182     /**
183      * Returns
184      * RXO-4: "Requested Give Units" - creates it if necessary
185      */
186     public CE getRequestedGiveUnits() { 
187 		CE retVal = this.getTypedField(4, 0);
188 		return retVal;
189     }
190     
191     /**
192      * Returns
193      * RXO-4: "Requested Give Units" - creates it if necessary
194      */
195     public CE getRxo4_RequestedGiveUnits() { 
196 		CE retVal = this.getTypedField(4, 0);
197 		return retVal;
198     }
199 
200 
201 
202     /**
203      * Returns
204      * RXO-5: "Requested Dosage Form" - creates it if necessary
205      */
206     public CE getRequestedDosageForm() { 
207 		CE retVal = this.getTypedField(5, 0);
208 		return retVal;
209     }
210     
211     /**
212      * Returns
213      * RXO-5: "Requested Dosage Form" - creates it if necessary
214      */
215     public CE getRxo5_RequestedDosageForm() { 
216 		CE retVal = this.getTypedField(5, 0);
217 		return retVal;
218     }
219 
220 
221     /**
222      * Returns all repetitions of Provider's Pharmacy/Treatment Instructions (RXO-6).
223      */
224     public CE[] getProviderSPharmacyTreatmentInstructions() {
225     	CE[] retVal = this.getTypedField(6, new CE[0]);
226     	return retVal;
227     }
228 
229 
230     /**
231      * Returns all repetitions of Provider's Pharmacy/Treatment Instructions (RXO-6).
232      */
233     public CE[] getRxo6_ProviderSPharmacyTreatmentInstructions() {
234     	CE[] retVal = this.getTypedField(6, new CE[0]);
235     	return retVal;
236     }
237 
238 
239     /**
240      * Returns a count of the current number of repetitions of Provider's Pharmacy/Treatment Instructions (RXO-6).
241      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
242      * it will return zero.
243      */
244     public int getProviderSPharmacyTreatmentInstructionsReps() {
245     	return this.getReps(6);
246     }
247 
248 
249     /**
250      * Returns a specific repetition of
251      * RXO-6: "Provider's Pharmacy/Treatment Instructions" - creates it if necessary
252      *
253      * @param rep The repetition index (0-indexed)
254      */
255     public CE getProviderSPharmacyTreatmentInstructions(int rep) { 
256 		CE retVal = this.getTypedField(6, rep);
257 		return retVal;
258     }
259 
260     /**
261      * Returns a specific repetition of
262      * RXO-6: "Provider's Pharmacy/Treatment Instructions" - creates it if necessary
263      *
264      * @param rep The repetition index (0-indexed)
265      */
266     public CE getRxo6_ProviderSPharmacyTreatmentInstructions(int rep) { 
267 		CE retVal = this.getTypedField(6, rep);
268 		return retVal;
269     }
270 
271     /**
272      * Returns a count of the current number of repetitions of Provider's Pharmacy/Treatment Instructions (RXO-6).
273      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
274      * it will return zero.
275      */
276     public int getRxo6_ProviderSPharmacyTreatmentInstructionsReps() {
277     	return this.getReps(6);
278     }
279 
280 
281     /**
282      * Inserts a repetition of
283      * RXO-6: "Provider's Pharmacy/Treatment Instructions" at a specific index
284      *
285      * @param rep The repetition index (0-indexed)
286      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
287      */
288     public CE insertProviderSPharmacyTreatmentInstructions(int rep) throws HL7Exception { 
289         return (CE) super.insertRepetition(6, rep);
290     }
291 
292 
293     /**
294      * Inserts a repetition of
295      * RXO-6: "Provider's Pharmacy/Treatment Instructions" at a specific index
296      *
297      * @param rep The repetition index (0-indexed)
298      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
299      */
300     public CE insertRxo6_ProviderSPharmacyTreatmentInstructions(int rep) throws HL7Exception { 
301         return (CE) super.insertRepetition(6, rep);
302     }
303 
304 
305     /**
306      * Removes a repetition of
307      * RXO-6: "Provider's Pharmacy/Treatment Instructions" at a specific index
308      *
309      * @param rep The repetition index (0-indexed)
310      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
311      */
312     public CE removeProviderSPharmacyTreatmentInstructions(int rep) throws HL7Exception { 
313         return (CE) super.removeRepetition(6, rep);
314     }
315 
316 
317     /**
318      * Removes a repetition of
319      * RXO-6: "Provider's Pharmacy/Treatment Instructions" at a specific index
320      *
321      * @param rep The repetition index (0-indexed)
322      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
323      */
324     public CE removeRxo6_ProviderSPharmacyTreatmentInstructions(int rep) throws HL7Exception { 
325         return (CE) super.removeRepetition(6, rep);
326     }
327 
328 
329 
330     /**
331      * Returns all repetitions of Provider's Administration Instructions (RXO-7).
332      */
333     public CE[] getProviderSAdministrationInstructions() {
334     	CE[] retVal = this.getTypedField(7, new CE[0]);
335     	return retVal;
336     }
337 
338 
339     /**
340      * Returns all repetitions of Provider's Administration Instructions (RXO-7).
341      */
342     public CE[] getRxo7_ProviderSAdministrationInstructions() {
343     	CE[] retVal = this.getTypedField(7, new CE[0]);
344     	return retVal;
345     }
346 
347 
348     /**
349      * Returns a count of the current number of repetitions of Provider's Administration Instructions (RXO-7).
350      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
351      * it will return zero.
352      */
353     public int getProviderSAdministrationInstructionsReps() {
354     	return this.getReps(7);
355     }
356 
357 
358     /**
359      * Returns a specific repetition of
360      * RXO-7: "Provider's Administration Instructions" - creates it if necessary
361      *
362      * @param rep The repetition index (0-indexed)
363      */
364     public CE getProviderSAdministrationInstructions(int rep) { 
365 		CE retVal = this.getTypedField(7, rep);
366 		return retVal;
367     }
368 
369     /**
370      * Returns a specific repetition of
371      * RXO-7: "Provider's Administration Instructions" - creates it if necessary
372      *
373      * @param rep The repetition index (0-indexed)
374      */
375     public CE getRxo7_ProviderSAdministrationInstructions(int rep) { 
376 		CE retVal = this.getTypedField(7, rep);
377 		return retVal;
378     }
379 
380     /**
381      * Returns a count of the current number of repetitions of Provider's Administration Instructions (RXO-7).
382      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
383      * it will return zero.
384      */
385     public int getRxo7_ProviderSAdministrationInstructionsReps() {
386     	return this.getReps(7);
387     }
388 
389 
390     /**
391      * Inserts a repetition of
392      * RXO-7: "Provider's Administration Instructions" at a specific index
393      *
394      * @param rep The repetition index (0-indexed)
395      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
396      */
397     public CE insertProviderSAdministrationInstructions(int rep) throws HL7Exception { 
398         return (CE) super.insertRepetition(7, rep);
399     }
400 
401 
402     /**
403      * Inserts a repetition of
404      * RXO-7: "Provider's Administration Instructions" at a specific index
405      *
406      * @param rep The repetition index (0-indexed)
407      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
408      */
409     public CE insertRxo7_ProviderSAdministrationInstructions(int rep) throws HL7Exception { 
410         return (CE) super.insertRepetition(7, rep);
411     }
412 
413 
414     /**
415      * Removes a repetition of
416      * RXO-7: "Provider's Administration Instructions" at a specific index
417      *
418      * @param rep The repetition index (0-indexed)
419      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
420      */
421     public CE removeProviderSAdministrationInstructions(int rep) throws HL7Exception { 
422         return (CE) super.removeRepetition(7, rep);
423     }
424 
425 
426     /**
427      * Removes a repetition of
428      * RXO-7: "Provider's Administration Instructions" at a specific index
429      *
430      * @param rep The repetition index (0-indexed)
431      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
432      */
433     public CE removeRxo7_ProviderSAdministrationInstructions(int rep) throws HL7Exception { 
434         return (CE) super.removeRepetition(7, rep);
435     }
436 
437 
438 
439 
440     /**
441      * Returns
442      * RXO-8: "Deliver-To Location" - creates it if necessary
443      */
444     public LA1 getDeliverToLocation() { 
445 		LA1 retVal = this.getTypedField(8, 0);
446 		return retVal;
447     }
448     
449     /**
450      * Returns
451      * RXO-8: "Deliver-To Location" - creates it if necessary
452      */
453     public LA1 getRxo8_DeliverToLocation() { 
454 		LA1 retVal = this.getTypedField(8, 0);
455 		return retVal;
456     }
457 
458 
459 
460     /**
461      * Returns
462      * RXO-9: "Allow Substitutions" - creates it if necessary
463      */
464     public ID getAllowSubstitutions() { 
465 		ID retVal = this.getTypedField(9, 0);
466 		return retVal;
467     }
468     
469     /**
470      * Returns
471      * RXO-9: "Allow Substitutions" - creates it if necessary
472      */
473     public ID getRxo9_AllowSubstitutions() { 
474 		ID retVal = this.getTypedField(9, 0);
475 		return retVal;
476     }
477 
478 
479 
480     /**
481      * Returns
482      * RXO-10: "Requested Dispense Code" - creates it if necessary
483      */
484     public CE getRequestedDispenseCode() { 
485 		CE retVal = this.getTypedField(10, 0);
486 		return retVal;
487     }
488     
489     /**
490      * Returns
491      * RXO-10: "Requested Dispense Code" - creates it if necessary
492      */
493     public CE getRxo10_RequestedDispenseCode() { 
494 		CE retVal = this.getTypedField(10, 0);
495 		return retVal;
496     }
497 
498 
499 
500     /**
501      * Returns
502      * RXO-11: "Requested Dispense Amount" - creates it if necessary
503      */
504     public NM getRequestedDispenseAmount() { 
505 		NM retVal = this.getTypedField(11, 0);
506 		return retVal;
507     }
508     
509     /**
510      * Returns
511      * RXO-11: "Requested Dispense Amount" - creates it if necessary
512      */
513     public NM getRxo11_RequestedDispenseAmount() { 
514 		NM retVal = this.getTypedField(11, 0);
515 		return retVal;
516     }
517 
518 
519 
520     /**
521      * Returns
522      * RXO-12: "Requested Dispense Units" - creates it if necessary
523      */
524     public CE getRequestedDispenseUnits() { 
525 		CE retVal = this.getTypedField(12, 0);
526 		return retVal;
527     }
528     
529     /**
530      * Returns
531      * RXO-12: "Requested Dispense Units" - creates it if necessary
532      */
533     public CE getRxo12_RequestedDispenseUnits() { 
534 		CE retVal = this.getTypedField(12, 0);
535 		return retVal;
536     }
537 
538 
539 
540     /**
541      * Returns
542      * RXO-13: "Number of Refills" - creates it if necessary
543      */
544     public NM getNumberOfRefills() { 
545 		NM retVal = this.getTypedField(13, 0);
546 		return retVal;
547     }
548     
549     /**
550      * Returns
551      * RXO-13: "Number of Refills" - creates it if necessary
552      */
553     public NM getRxo13_NumberOfRefills() { 
554 		NM retVal = this.getTypedField(13, 0);
555 		return retVal;
556     }
557 
558 
559     /**
560      * Returns all repetitions of Ordering Provider's DEA Number (RXO-14).
561      */
562     public XCN[] getOrderingProviderSDEANumber() {
563     	XCN[] retVal = this.getTypedField(14, new XCN[0]);
564     	return retVal;
565     }
566 
567 
568     /**
569      * Returns all repetitions of Ordering Provider's DEA Number (RXO-14).
570      */
571     public XCN[] getRxo14_OrderingProviderSDEANumber() {
572     	XCN[] retVal = this.getTypedField(14, new XCN[0]);
573     	return retVal;
574     }
575 
576 
577     /**
578      * Returns a count of the current number of repetitions of Ordering Provider's DEA Number (RXO-14).
579      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
580      * it will return zero.
581      */
582     public int getOrderingProviderSDEANumberReps() {
583     	return this.getReps(14);
584     }
585 
586 
587     /**
588      * Returns a specific repetition of
589      * RXO-14: "Ordering Provider's DEA Number" - creates it if necessary
590      *
591      * @param rep The repetition index (0-indexed)
592      */
593     public XCN getOrderingProviderSDEANumber(int rep) { 
594 		XCN retVal = this.getTypedField(14, rep);
595 		return retVal;
596     }
597 
598     /**
599      * Returns a specific repetition of
600      * RXO-14: "Ordering Provider's DEA Number" - creates it if necessary
601      *
602      * @param rep The repetition index (0-indexed)
603      */
604     public XCN getRxo14_OrderingProviderSDEANumber(int rep) { 
605 		XCN retVal = this.getTypedField(14, rep);
606 		return retVal;
607     }
608 
609     /**
610      * Returns a count of the current number of repetitions of Ordering Provider's DEA Number (RXO-14).
611      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
612      * it will return zero.
613      */
614     public int getRxo14_OrderingProviderSDEANumberReps() {
615     	return this.getReps(14);
616     }
617 
618 
619     /**
620      * Inserts a repetition of
621      * RXO-14: "Ordering Provider's DEA Number" at a specific index
622      *
623      * @param rep The repetition index (0-indexed)
624      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
625      */
626     public XCN insertOrderingProviderSDEANumber(int rep) throws HL7Exception { 
627         return (XCN) super.insertRepetition(14, rep);
628     }
629 
630 
631     /**
632      * Inserts a repetition of
633      * RXO-14: "Ordering Provider's DEA Number" at a specific index
634      *
635      * @param rep The repetition index (0-indexed)
636      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
637      */
638     public XCN insertRxo14_OrderingProviderSDEANumber(int rep) throws HL7Exception { 
639         return (XCN) super.insertRepetition(14, rep);
640     }
641 
642 
643     /**
644      * Removes a repetition of
645      * RXO-14: "Ordering Provider's DEA Number" at a specific index
646      *
647      * @param rep The repetition index (0-indexed)
648      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
649      */
650     public XCN removeOrderingProviderSDEANumber(int rep) throws HL7Exception { 
651         return (XCN) super.removeRepetition(14, rep);
652     }
653 
654 
655     /**
656      * Removes a repetition of
657      * RXO-14: "Ordering Provider's DEA Number" at a specific index
658      *
659      * @param rep The repetition index (0-indexed)
660      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
661      */
662     public XCN removeRxo14_OrderingProviderSDEANumber(int rep) throws HL7Exception { 
663         return (XCN) super.removeRepetition(14, rep);
664     }
665 
666 
667 
668     /**
669      * Returns all repetitions of Pharmacist/Treatment Supplier's Verifier ID (RXO-15).
670      */
671     public XCN[] getPharmacistTreatmentSupplierSVerifierID() {
672     	XCN[] retVal = this.getTypedField(15, new XCN[0]);
673     	return retVal;
674     }
675 
676 
677     /**
678      * Returns all repetitions of Pharmacist/Treatment Supplier's Verifier ID (RXO-15).
679      */
680     public XCN[] getRxo15_PharmacistTreatmentSupplierSVerifierID() {
681     	XCN[] retVal = this.getTypedField(15, new XCN[0]);
682     	return retVal;
683     }
684 
685 
686     /**
687      * Returns a count of the current number of repetitions of Pharmacist/Treatment Supplier's Verifier ID (RXO-15).
688      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
689      * it will return zero.
690      */
691     public int getPharmacistTreatmentSupplierSVerifierIDReps() {
692     	return this.getReps(15);
693     }
694 
695 
696     /**
697      * Returns a specific repetition of
698      * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" - creates it if necessary
699      *
700      * @param rep The repetition index (0-indexed)
701      */
702     public XCN getPharmacistTreatmentSupplierSVerifierID(int rep) { 
703 		XCN retVal = this.getTypedField(15, rep);
704 		return retVal;
705     }
706 
707     /**
708      * Returns a specific repetition of
709      * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" - creates it if necessary
710      *
711      * @param rep The repetition index (0-indexed)
712      */
713     public XCN getRxo15_PharmacistTreatmentSupplierSVerifierID(int rep) { 
714 		XCN retVal = this.getTypedField(15, rep);
715 		return retVal;
716     }
717 
718     /**
719      * Returns a count of the current number of repetitions of Pharmacist/Treatment Supplier's Verifier ID (RXO-15).
720      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
721      * it will return zero.
722      */
723     public int getRxo15_PharmacistTreatmentSupplierSVerifierIDReps() {
724     	return this.getReps(15);
725     }
726 
727 
728     /**
729      * Inserts a repetition of
730      * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" at a specific index
731      *
732      * @param rep The repetition index (0-indexed)
733      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
734      */
735     public XCN insertPharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
736         return (XCN) super.insertRepetition(15, rep);
737     }
738 
739 
740     /**
741      * Inserts a repetition of
742      * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" at a specific index
743      *
744      * @param rep The repetition index (0-indexed)
745      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
746      */
747     public XCN insertRxo15_PharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
748         return (XCN) super.insertRepetition(15, rep);
749     }
750 
751 
752     /**
753      * Removes a repetition of
754      * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" at a specific index
755      *
756      * @param rep The repetition index (0-indexed)
757      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
758      */
759     public XCN removePharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
760         return (XCN) super.removeRepetition(15, rep);
761     }
762 
763 
764     /**
765      * Removes a repetition of
766      * RXO-15: "Pharmacist/Treatment Supplier's Verifier ID" at a specific index
767      *
768      * @param rep The repetition index (0-indexed)
769      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
770      */
771     public XCN removeRxo15_PharmacistTreatmentSupplierSVerifierID(int rep) throws HL7Exception { 
772         return (XCN) super.removeRepetition(15, rep);
773     }
774 
775 
776 
777 
778     /**
779      * Returns
780      * RXO-16: "Needs Human Review" - creates it if necessary
781      */
782     public ID getNeedsHumanReview() { 
783 		ID retVal = this.getTypedField(16, 0);
784 		return retVal;
785     }
786     
787     /**
788      * Returns
789      * RXO-16: "Needs Human Review" - creates it if necessary
790      */
791     public ID getRxo16_NeedsHumanReview() { 
792 		ID retVal = this.getTypedField(16, 0);
793 		return retVal;
794     }
795 
796 
797 
798     /**
799      * Returns
800      * RXO-17: "Requested Give Per (Time Unit)" - creates it if necessary
801      */
802     public ST getRequestedGivePerTimeUnit() { 
803 		ST retVal = this.getTypedField(17, 0);
804 		return retVal;
805     }
806     
807     /**
808      * Returns
809      * RXO-17: "Requested Give Per (Time Unit)" - creates it if necessary
810      */
811     public ST getRxo17_RequestedGivePerTimeUnit() { 
812 		ST retVal = this.getTypedField(17, 0);
813 		return retVal;
814     }
815 
816 
817 
818     /**
819      * Returns
820      * RXO-18: "Requested Give Strength" - creates it if necessary
821      */
822     public NM getRequestedGiveStrength() { 
823 		NM retVal = this.getTypedField(18, 0);
824 		return retVal;
825     }
826     
827     /**
828      * Returns
829      * RXO-18: "Requested Give Strength" - creates it if necessary
830      */
831     public NM getRxo18_RequestedGiveStrength() { 
832 		NM retVal = this.getTypedField(18, 0);
833 		return retVal;
834     }
835 
836 
837 
838     /**
839      * Returns
840      * RXO-19: "Requested Give Strength Units" - creates it if necessary
841      */
842     public CE getRequestedGiveStrengthUnits() { 
843 		CE retVal = this.getTypedField(19, 0);
844 		return retVal;
845     }
846     
847     /**
848      * Returns
849      * RXO-19: "Requested Give Strength Units" - creates it if necessary
850      */
851     public CE getRxo19_RequestedGiveStrengthUnits() { 
852 		CE retVal = this.getTypedField(19, 0);
853 		return retVal;
854     }
855 
856 
857     /**
858      * Returns all repetitions of Indication (RXO-20).
859      */
860     public CE[] getIndication() {
861     	CE[] retVal = this.getTypedField(20, new CE[0]);
862     	return retVal;
863     }
864 
865 
866     /**
867      * Returns all repetitions of Indication (RXO-20).
868      */
869     public CE[] getRxo20_Indication() {
870     	CE[] retVal = this.getTypedField(20, new CE[0]);
871     	return retVal;
872     }
873 
874 
875     /**
876      * Returns a count of the current number of repetitions of Indication (RXO-20).
877      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
878      * it will return zero.
879      */
880     public int getIndicationReps() {
881     	return this.getReps(20);
882     }
883 
884 
885     /**
886      * Returns a specific repetition of
887      * RXO-20: "Indication" - creates it if necessary
888      *
889      * @param rep The repetition index (0-indexed)
890      */
891     public CE getIndication(int rep) { 
892 		CE retVal = this.getTypedField(20, rep);
893 		return retVal;
894     }
895 
896     /**
897      * Returns a specific repetition of
898      * RXO-20: "Indication" - creates it if necessary
899      *
900      * @param rep The repetition index (0-indexed)
901      */
902     public CE getRxo20_Indication(int rep) { 
903 		CE retVal = this.getTypedField(20, rep);
904 		return retVal;
905     }
906 
907     /**
908      * Returns a count of the current number of repetitions of Indication (RXO-20).
909      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
910      * it will return zero.
911      */
912     public int getRxo20_IndicationReps() {
913     	return this.getReps(20);
914     }
915 
916 
917     /**
918      * Inserts a repetition of
919      * RXO-20: "Indication" at a specific index
920      *
921      * @param rep The repetition index (0-indexed)
922      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
923      */
924     public CE insertIndication(int rep) throws HL7Exception { 
925         return (CE) super.insertRepetition(20, rep);
926     }
927 
928 
929     /**
930      * Inserts a repetition of
931      * RXO-20: "Indication" at a specific index
932      *
933      * @param rep The repetition index (0-indexed)
934      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
935      */
936     public CE insertRxo20_Indication(int rep) throws HL7Exception { 
937         return (CE) super.insertRepetition(20, rep);
938     }
939 
940 
941     /**
942      * Removes a repetition of
943      * RXO-20: "Indication" at a specific index
944      *
945      * @param rep The repetition index (0-indexed)
946      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
947      */
948     public CE removeIndication(int rep) throws HL7Exception { 
949         return (CE) super.removeRepetition(20, rep);
950     }
951 
952 
953     /**
954      * Removes a repetition of
955      * RXO-20: "Indication" at a specific index
956      *
957      * @param rep The repetition index (0-indexed)
958      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
959      */
960     public CE removeRxo20_Indication(int rep) throws HL7Exception { 
961         return (CE) super.removeRepetition(20, rep);
962     }
963 
964 
965 
966 
967     /**
968      * Returns
969      * RXO-21: "Requested Give Rate Amount" - creates it if necessary
970      */
971     public ST getRequestedGiveRateAmount() { 
972 		ST retVal = this.getTypedField(21, 0);
973 		return retVal;
974     }
975     
976     /**
977      * Returns
978      * RXO-21: "Requested Give Rate Amount" - creates it if necessary
979      */
980     public ST getRxo21_RequestedGiveRateAmount() { 
981 		ST retVal = this.getTypedField(21, 0);
982 		return retVal;
983     }
984 
985 
986 
987     /**
988      * Returns
989      * RXO-22: "Requested Give Rate Units" - creates it if necessary
990      */
991     public CE getRequestedGiveRateUnits() { 
992 		CE retVal = this.getTypedField(22, 0);
993 		return retVal;
994     }
995     
996     /**
997      * Returns
998      * RXO-22: "Requested Give Rate Units" - creates it if necessary
999      */
1000     public CE getRxo22_RequestedGiveRateUnits() { 
1001 		CE retVal = this.getTypedField(22, 0);
1002 		return retVal;
1003     }
1004 
1005 
1006 
1007     /**
1008      * Returns
1009      * RXO-23: "Total Daily Dose" - creates it if necessary
1010      */
1011     public CQ getTotalDailyDose() { 
1012 		CQ retVal = this.getTypedField(23, 0);
1013 		return retVal;
1014     }
1015     
1016     /**
1017      * Returns
1018      * RXO-23: "Total Daily Dose" - creates it if necessary
1019      */
1020     public CQ getRxo23_TotalDailyDose() { 
1021 		CQ retVal = this.getTypedField(23, 0);
1022 		return retVal;
1023     }
1024 
1025 
1026     /**
1027      * Returns all repetitions of Supplementary Code (RXO-24).
1028      */
1029     public CE[] getSupplementaryCode() {
1030     	CE[] retVal = this.getTypedField(24, new CE[0]);
1031     	return retVal;
1032     }
1033 
1034 
1035     /**
1036      * Returns all repetitions of Supplementary Code (RXO-24).
1037      */
1038     public CE[] getRxo24_SupplementaryCode() {
1039     	CE[] retVal = this.getTypedField(24, new CE[0]);
1040     	return retVal;
1041     }
1042 
1043 
1044     /**
1045      * Returns a count of the current number of repetitions of Supplementary Code (RXO-24).
1046      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1047      * it will return zero.
1048      */
1049     public int getSupplementaryCodeReps() {
1050     	return this.getReps(24);
1051     }
1052 
1053 
1054     /**
1055      * Returns a specific repetition of
1056      * RXO-24: "Supplementary Code" - creates it if necessary
1057      *
1058      * @param rep The repetition index (0-indexed)
1059      */
1060     public CE getSupplementaryCode(int rep) { 
1061 		CE retVal = this.getTypedField(24, rep);
1062 		return retVal;
1063     }
1064 
1065     /**
1066      * Returns a specific repetition of
1067      * RXO-24: "Supplementary Code" - creates it if necessary
1068      *
1069      * @param rep The repetition index (0-indexed)
1070      */
1071     public CE getRxo24_SupplementaryCode(int rep) { 
1072 		CE retVal = this.getTypedField(24, rep);
1073 		return retVal;
1074     }
1075 
1076     /**
1077      * Returns a count of the current number of repetitions of Supplementary Code (RXO-24).
1078      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1079      * it will return zero.
1080      */
1081     public int getRxo24_SupplementaryCodeReps() {
1082     	return this.getReps(24);
1083     }
1084 
1085 
1086     /**
1087      * Inserts a repetition of
1088      * RXO-24: "Supplementary Code" at a specific index
1089      *
1090      * @param rep The repetition index (0-indexed)
1091      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1092      */
1093     public CE insertSupplementaryCode(int rep) throws HL7Exception { 
1094         return (CE) super.insertRepetition(24, rep);
1095     }
1096 
1097 
1098     /**
1099      * Inserts a repetition of
1100      * RXO-24: "Supplementary Code" at a specific index
1101      *
1102      * @param rep The repetition index (0-indexed)
1103      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1104      */
1105     public CE insertRxo24_SupplementaryCode(int rep) throws HL7Exception { 
1106         return (CE) super.insertRepetition(24, rep);
1107     }
1108 
1109 
1110     /**
1111      * Removes a repetition of
1112      * RXO-24: "Supplementary Code" at a specific index
1113      *
1114      * @param rep The repetition index (0-indexed)
1115      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1116      */
1117     public CE removeSupplementaryCode(int rep) throws HL7Exception { 
1118         return (CE) super.removeRepetition(24, rep);
1119     }
1120 
1121 
1122     /**
1123      * Removes a repetition of
1124      * RXO-24: "Supplementary Code" at a specific index
1125      *
1126      * @param rep The repetition index (0-indexed)
1127      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1128      */
1129     public CE removeRxo24_SupplementaryCode(int rep) throws HL7Exception { 
1130         return (CE) super.removeRepetition(24, rep);
1131     }
1132 
1133 
1134 
1135 
1136 
1137 
1138     /** {@inheritDoc} */   
1139     protected Type createNewTypeWithoutReflection(int field) {
1140        switch (field) {
1141           case 0: return new CE(getMessage());
1142           case 1: return new NM(getMessage());
1143           case 2: return new NM(getMessage());
1144           case 3: return new CE(getMessage());
1145           case 4: return new CE(getMessage());
1146           case 5: return new CE(getMessage());
1147           case 6: return new CE(getMessage());
1148           case 7: return new LA1(getMessage());
1149           case 8: return new ID(getMessage(), new Integer( 161 ));
1150           case 9: return new CE(getMessage());
1151           case 10: return new NM(getMessage());
1152           case 11: return new CE(getMessage());
1153           case 12: return new NM(getMessage());
1154           case 13: return new XCN(getMessage());
1155           case 14: return new XCN(getMessage());
1156           case 15: return new ID(getMessage(), new Integer( 136 ));
1157           case 16: return new ST(getMessage());
1158           case 17: return new NM(getMessage());
1159           case 18: return new CE(getMessage());
1160           case 19: return new CE(getMessage());
1161           case 20: return new ST(getMessage());
1162           case 21: return new CE(getMessage());
1163           case 22: return new CQ(getMessage());
1164           case 23: return new CE(getMessage());
1165           default: return null;
1166        }
1167    }
1168 
1169 
1170 }
1171