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.v251.segment;
35  
36  // import ca.uhn.hl7v2.model.v251.group.*;
37  import ca.uhn.hl7v2.model.v251.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 OBX message segment (Observation/Result). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>OBX-1: Set ID - OBX (SI) <b>optional </b>
53       * <li>OBX-2: Value Type (ID) <b>optional </b>
54       * <li>OBX-3: Observation Identifier (CE) <b> </b>
55       * <li>OBX-4: Observation Sub-ID (ST) <b>optional </b>
56       * <li>OBX-5: Observation Value (Varies) <b>optional repeating</b>
57       * <li>OBX-6: Units (CE) <b>optional </b>
58       * <li>OBX-7: References Range (ST) <b>optional </b>
59       * <li>OBX-8: Abnormal Flags (IS) <b>optional repeating</b>
60       * <li>OBX-9: Probability (NM) <b>optional </b>
61       * <li>OBX-10: Nature of Abnormal Test (ID) <b>optional repeating</b>
62       * <li>OBX-11: Observation Result Status (ID) <b> </b>
63       * <li>OBX-12: Effective Date of Reference Range Values (TS) <b>optional </b>
64       * <li>OBX-13: User Defined Access Checks (ST) <b>optional </b>
65       * <li>OBX-14: Date/Time of the Observation (TS) <b>optional </b>
66       * <li>OBX-15: Producer's Reference (CE) <b>optional </b>
67       * <li>OBX-16: Responsible Observer (XCN) <b>optional repeating</b>
68       * <li>OBX-17: Observation Method (CE) <b>optional repeating</b>
69       * <li>OBX-18: Equipment Instance Identifier (EI) <b>optional repeating</b>
70       * <li>OBX-19: Date/Time of the Analysis (TS) <b>optional </b>
71       * <li>OBX-20: Reserved for harmonization with V2.6 (Varies) <b>optional </b>
72       * <li>OBX-21: Reserved for harmonization with V2.6 Number 2 (Varies) <b>optional </b>
73       * <li>OBX-22: Reserved for harmonization with V2.6 Number 3 (Varies) <b>optional </b>
74       * <li>OBX-23: Performing Organization Name (XON) <b>optional </b>
75       * <li>OBX-24: Performing Organization Address (XAD) <b>optional </b>
76       * <li>OBX-25: Performing Organization Medical Director (XCN) <b>optional </b>
77   * </ul>
78   */
79  @SuppressWarnings("unused")
80  public class OBX extends AbstractSegment {
81  
82      /** 
83       * Creates a new OBX segment
84       */
85      public OBX(Group parent, ModelClassFactory factory) {
86         super(parent, factory);
87         init(factory);
88      }
89  
90      private void init(ModelClassFactory factory) {
91         try {
92                                    this.add(SI.class, false, 1, 4, new Object[]{ getMessage() }, "Set ID - OBX");
93                                                this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(125) }, "Value Type");
94                                    this.add(CE.class, true, 1, 250, new Object[]{ getMessage() }, "Observation Identifier");
95                                    this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "Observation Sub-ID");
96                                    this.add(Varies.class, false, 0, 99999, new Object[]{ getMessage() }, "Observation Value");
97                                    this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Units");
98                                    this.add(ST.class, false, 1, 60, new Object[]{ getMessage() }, "References Range");
99                                                this.add(IS.class, false, 0, 5, new Object[]{ getMessage(), new Integer(78) }, "Abnormal Flags");
100                                   this.add(NM.class, false, 1, 5, new Object[]{ getMessage() }, "Probability");
101                                               this.add(ID.class, false, 0, 2, new Object[]{ getMessage(), new Integer(80) }, "Nature of Abnormal Test");
102                                               this.add(ID.class, true, 1, 1, new Object[]{ getMessage(), new Integer(85) }, "Observation Result Status");
103                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Effective Date of Reference Range Values");
104                                   this.add(ST.class, false, 1, 20, new Object[]{ getMessage() }, "User Defined Access Checks");
105                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Date/Time of the Observation");
106                                   this.add(CE.class, false, 1, 250, new Object[]{ getMessage() }, "Producer's Reference");
107                                   this.add(XCN.class, false, 0, 250, new Object[]{ getMessage() }, "Responsible Observer");
108                                   this.add(CE.class, false, 0, 250, new Object[]{ getMessage() }, "Observation Method");
109                                   this.add(EI.class, false, 0, 22, new Object[]{ getMessage() }, "Equipment Instance Identifier");
110                                   this.add(TS.class, false, 1, 26, new Object[]{ getMessage() }, "Date/Time of the Analysis");
111                                   this.add(Varies.class, false, 1, 0, new Object[]{ getMessage() }, "Reserved for harmonization with V2.6");
112                                   this.add(Varies.class, false, 1, 0, new Object[]{ getMessage() }, "Reserved for harmonization with V2.6 Number 2");
113                                   this.add(Varies.class, false, 1, 0, new Object[]{ getMessage() }, "Reserved for harmonization with V2.6 Number 3");
114                                   this.add(XON.class, false, 1, 567, new Object[]{ getMessage() }, "Performing Organization Name");
115                                   this.add(XAD.class, false, 1, 631, new Object[]{ getMessage() }, "Performing Organization Address");
116                                   this.add(XCN.class, false, 1, 3002, new Object[]{ getMessage() }, "Performing Organization Medical Director");
117        } catch(HL7Exception e) {
118           log.error("Unexpected error creating OBX - this is probably a bug in the source code generator.", e);
119        }
120     }
121 
122 
123 
124     /**
125      * Returns
126      * OBX-1: "Set ID - OBX" - creates it if necessary
127      */
128     public SI getSetIDOBX() { 
129 		SI retVal = this.getTypedField(1, 0);
130 		return retVal;
131     }
132     
133     /**
134      * Returns
135      * OBX-1: "Set ID - OBX" - creates it if necessary
136      */
137     public SI getObx1_SetIDOBX() { 
138 		SI retVal = this.getTypedField(1, 0);
139 		return retVal;
140     }
141 
142 
143 
144     /**
145      * Returns
146      * OBX-2: "Value Type" - creates it if necessary
147      */
148     public ID getValueType() { 
149 		ID retVal = this.getTypedField(2, 0);
150 		return retVal;
151     }
152     
153     /**
154      * Returns
155      * OBX-2: "Value Type" - creates it if necessary
156      */
157     public ID getObx2_ValueType() { 
158 		ID retVal = this.getTypedField(2, 0);
159 		return retVal;
160     }
161 
162 
163 
164     /**
165      * Returns
166      * OBX-3: "Observation Identifier" - creates it if necessary
167      */
168     public CE getObservationIdentifier() { 
169 		CE retVal = this.getTypedField(3, 0);
170 		return retVal;
171     }
172     
173     /**
174      * Returns
175      * OBX-3: "Observation Identifier" - creates it if necessary
176      */
177     public CE getObx3_ObservationIdentifier() { 
178 		CE retVal = this.getTypedField(3, 0);
179 		return retVal;
180     }
181 
182 
183 
184     /**
185      * Returns
186      * OBX-4: "Observation Sub-ID" - creates it if necessary
187      */
188     public ST getObservationSubID() { 
189 		ST retVal = this.getTypedField(4, 0);
190 		return retVal;
191     }
192     
193     /**
194      * Returns
195      * OBX-4: "Observation Sub-ID" - creates it if necessary
196      */
197     public ST getObx4_ObservationSubID() { 
198 		ST retVal = this.getTypedField(4, 0);
199 		return retVal;
200     }
201 
202 
203     /**
204      * Returns all repetitions of Observation Value (OBX-5).
205      */
206     public Varies[] getObservationValue() {
207     	Varies[] retVal = this.getTypedField(5, new Varies[0]);
208     	return retVal;
209     }
210 
211 
212     /**
213      * Returns all repetitions of Observation Value (OBX-5).
214      */
215     public Varies[] getObx5_ObservationValue() {
216     	Varies[] retVal = this.getTypedField(5, new Varies[0]);
217     	return retVal;
218     }
219 
220 
221     /**
222      * Returns a count of the current number of repetitions of Observation Value (OBX-5).
223      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
224      * it will return zero.
225      */
226     public int getObservationValueReps() {
227     	return this.getReps(5);
228     }
229 
230 
231     /**
232      * Returns a specific repetition of
233      * OBX-5: "Observation Value" - creates it if necessary
234      *
235      * @param rep The repetition index (0-indexed)
236      */
237     public Varies getObservationValue(int rep) { 
238 		Varies retVal = this.getTypedField(5, rep);
239 		return retVal;
240     }
241 
242     /**
243      * Returns a specific repetition of
244      * OBX-5: "Observation Value" - creates it if necessary
245      *
246      * @param rep The repetition index (0-indexed)
247      */
248     public Varies getObx5_ObservationValue(int rep) { 
249 		Varies retVal = this.getTypedField(5, rep);
250 		return retVal;
251     }
252 
253     /**
254      * Returns a count of the current number of repetitions of Observation Value (OBX-5).
255      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
256      * it will return zero.
257      */
258     public int getObx5_ObservationValueReps() {
259     	return this.getReps(5);
260     }
261 
262 
263     /**
264      * Inserts a repetition of
265      * OBX-5: "Observation Value" at a specific index
266      *
267      * @param rep The repetition index (0-indexed)
268      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
269      */
270     public Varies insertObservationValue(int rep) throws HL7Exception { 
271         return (Varies) super.insertRepetition(5, rep);
272     }
273 
274 
275     /**
276      * Inserts a repetition of
277      * OBX-5: "Observation Value" at a specific index
278      *
279      * @param rep The repetition index (0-indexed)
280      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
281      */
282     public Varies insertObx5_ObservationValue(int rep) throws HL7Exception { 
283         return (Varies) super.insertRepetition(5, rep);
284     }
285 
286 
287     /**
288      * Removes a repetition of
289      * OBX-5: "Observation Value" at a specific index
290      *
291      * @param rep The repetition index (0-indexed)
292      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
293      */
294     public Varies removeObservationValue(int rep) throws HL7Exception { 
295         return (Varies) super.removeRepetition(5, rep);
296     }
297 
298 
299     /**
300      * Removes a repetition of
301      * OBX-5: "Observation Value" at a specific index
302      *
303      * @param rep The repetition index (0-indexed)
304      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
305      */
306     public Varies removeObx5_ObservationValue(int rep) throws HL7Exception { 
307         return (Varies) super.removeRepetition(5, rep);
308     }
309 
310 
311 
312 
313     /**
314      * Returns
315      * OBX-6: "Units" - creates it if necessary
316      */
317     public CE getUnits() { 
318 		CE retVal = this.getTypedField(6, 0);
319 		return retVal;
320     }
321     
322     /**
323      * Returns
324      * OBX-6: "Units" - creates it if necessary
325      */
326     public CE getObx6_Units() { 
327 		CE retVal = this.getTypedField(6, 0);
328 		return retVal;
329     }
330 
331 
332 
333     /**
334      * Returns
335      * OBX-7: "References Range" - creates it if necessary
336      */
337     public ST getReferencesRange() { 
338 		ST retVal = this.getTypedField(7, 0);
339 		return retVal;
340     }
341     
342     /**
343      * Returns
344      * OBX-7: "References Range" - creates it if necessary
345      */
346     public ST getObx7_ReferencesRange() { 
347 		ST retVal = this.getTypedField(7, 0);
348 		return retVal;
349     }
350 
351 
352     /**
353      * Returns all repetitions of Abnormal Flags (OBX-8).
354      */
355     public IS[] getAbnormalFlags() {
356     	IS[] retVal = this.getTypedField(8, new IS[0]);
357     	return retVal;
358     }
359 
360 
361     /**
362      * Returns all repetitions of Abnormal Flags (OBX-8).
363      */
364     public IS[] getObx8_AbnormalFlags() {
365     	IS[] retVal = this.getTypedField(8, new IS[0]);
366     	return retVal;
367     }
368 
369 
370     /**
371      * Returns a count of the current number of repetitions of Abnormal Flags (OBX-8).
372      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
373      * it will return zero.
374      */
375     public int getAbnormalFlagsReps() {
376     	return this.getReps(8);
377     }
378 
379 
380     /**
381      * Returns a specific repetition of
382      * OBX-8: "Abnormal Flags" - creates it if necessary
383      *
384      * @param rep The repetition index (0-indexed)
385      */
386     public IS getAbnormalFlags(int rep) { 
387 		IS retVal = this.getTypedField(8, rep);
388 		return retVal;
389     }
390 
391     /**
392      * Returns a specific repetition of
393      * OBX-8: "Abnormal Flags" - creates it if necessary
394      *
395      * @param rep The repetition index (0-indexed)
396      */
397     public IS getObx8_AbnormalFlags(int rep) { 
398 		IS retVal = this.getTypedField(8, rep);
399 		return retVal;
400     }
401 
402     /**
403      * Returns a count of the current number of repetitions of Abnormal Flags (OBX-8).
404      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
405      * it will return zero.
406      */
407     public int getObx8_AbnormalFlagsReps() {
408     	return this.getReps(8);
409     }
410 
411 
412     /**
413      * Inserts a repetition of
414      * OBX-8: "Abnormal Flags" at a specific index
415      *
416      * @param rep The repetition index (0-indexed)
417      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
418      */
419     public IS insertAbnormalFlags(int rep) throws HL7Exception { 
420         return (IS) super.insertRepetition(8, rep);
421     }
422 
423 
424     /**
425      * Inserts a repetition of
426      * OBX-8: "Abnormal Flags" at a specific index
427      *
428      * @param rep The repetition index (0-indexed)
429      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
430      */
431     public IS insertObx8_AbnormalFlags(int rep) throws HL7Exception { 
432         return (IS) super.insertRepetition(8, rep);
433     }
434 
435 
436     /**
437      * Removes a repetition of
438      * OBX-8: "Abnormal Flags" at a specific index
439      *
440      * @param rep The repetition index (0-indexed)
441      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
442      */
443     public IS removeAbnormalFlags(int rep) throws HL7Exception { 
444         return (IS) super.removeRepetition(8, rep);
445     }
446 
447 
448     /**
449      * Removes a repetition of
450      * OBX-8: "Abnormal Flags" at a specific index
451      *
452      * @param rep The repetition index (0-indexed)
453      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
454      */
455     public IS removeObx8_AbnormalFlags(int rep) throws HL7Exception { 
456         return (IS) super.removeRepetition(8, rep);
457     }
458 
459 
460 
461 
462     /**
463      * Returns
464      * OBX-9: "Probability" - creates it if necessary
465      */
466     public NM getProbability() { 
467 		NM retVal = this.getTypedField(9, 0);
468 		return retVal;
469     }
470     
471     /**
472      * Returns
473      * OBX-9: "Probability" - creates it if necessary
474      */
475     public NM getObx9_Probability() { 
476 		NM retVal = this.getTypedField(9, 0);
477 		return retVal;
478     }
479 
480 
481     /**
482      * Returns all repetitions of Nature of Abnormal Test (OBX-10).
483      */
484     public ID[] getNatureOfAbnormalTest() {
485     	ID[] retVal = this.getTypedField(10, new ID[0]);
486     	return retVal;
487     }
488 
489 
490     /**
491      * Returns all repetitions of Nature of Abnormal Test (OBX-10).
492      */
493     public ID[] getObx10_NatureOfAbnormalTest() {
494     	ID[] retVal = this.getTypedField(10, new ID[0]);
495     	return retVal;
496     }
497 
498 
499     /**
500      * Returns a count of the current number of repetitions of Nature of Abnormal Test (OBX-10).
501      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
502      * it will return zero.
503      */
504     public int getNatureOfAbnormalTestReps() {
505     	return this.getReps(10);
506     }
507 
508 
509     /**
510      * Returns a specific repetition of
511      * OBX-10: "Nature of Abnormal Test" - creates it if necessary
512      *
513      * @param rep The repetition index (0-indexed)
514      */
515     public ID getNatureOfAbnormalTest(int rep) { 
516 		ID retVal = this.getTypedField(10, rep);
517 		return retVal;
518     }
519 
520     /**
521      * Returns a specific repetition of
522      * OBX-10: "Nature of Abnormal Test" - creates it if necessary
523      *
524      * @param rep The repetition index (0-indexed)
525      */
526     public ID getObx10_NatureOfAbnormalTest(int rep) { 
527 		ID retVal = this.getTypedField(10, rep);
528 		return retVal;
529     }
530 
531     /**
532      * Returns a count of the current number of repetitions of Nature of Abnormal Test (OBX-10).
533      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
534      * it will return zero.
535      */
536     public int getObx10_NatureOfAbnormalTestReps() {
537     	return this.getReps(10);
538     }
539 
540 
541     /**
542      * Inserts a repetition of
543      * OBX-10: "Nature of Abnormal Test" at a specific index
544      *
545      * @param rep The repetition index (0-indexed)
546      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
547      */
548     public ID insertNatureOfAbnormalTest(int rep) throws HL7Exception { 
549         return (ID) super.insertRepetition(10, rep);
550     }
551 
552 
553     /**
554      * Inserts a repetition of
555      * OBX-10: "Nature of Abnormal Test" at a specific index
556      *
557      * @param rep The repetition index (0-indexed)
558      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
559      */
560     public ID insertObx10_NatureOfAbnormalTest(int rep) throws HL7Exception { 
561         return (ID) super.insertRepetition(10, rep);
562     }
563 
564 
565     /**
566      * Removes a repetition of
567      * OBX-10: "Nature of Abnormal Test" at a specific index
568      *
569      * @param rep The repetition index (0-indexed)
570      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
571      */
572     public ID removeNatureOfAbnormalTest(int rep) throws HL7Exception { 
573         return (ID) super.removeRepetition(10, rep);
574     }
575 
576 
577     /**
578      * Removes a repetition of
579      * OBX-10: "Nature of Abnormal Test" at a specific index
580      *
581      * @param rep The repetition index (0-indexed)
582      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
583      */
584     public ID removeObx10_NatureOfAbnormalTest(int rep) throws HL7Exception { 
585         return (ID) super.removeRepetition(10, rep);
586     }
587 
588 
589 
590 
591     /**
592      * Returns
593      * OBX-11: "Observation Result Status" - creates it if necessary
594      */
595     public ID getObservationResultStatus() { 
596 		ID retVal = this.getTypedField(11, 0);
597 		return retVal;
598     }
599     
600     /**
601      * Returns
602      * OBX-11: "Observation Result Status" - creates it if necessary
603      */
604     public ID getObx11_ObservationResultStatus() { 
605 		ID retVal = this.getTypedField(11, 0);
606 		return retVal;
607     }
608 
609 
610 
611     /**
612      * Returns
613      * OBX-12: "Effective Date of Reference Range Values" - creates it if necessary
614      */
615     public TS getEffectiveDateOfReferenceRangeValues() { 
616 		TS retVal = this.getTypedField(12, 0);
617 		return retVal;
618     }
619     
620     /**
621      * Returns
622      * OBX-12: "Effective Date of Reference Range Values" - creates it if necessary
623      */
624     public TS getObx12_EffectiveDateOfReferenceRangeValues() { 
625 		TS retVal = this.getTypedField(12, 0);
626 		return retVal;
627     }
628 
629 
630 
631     /**
632      * Returns
633      * OBX-13: "User Defined Access Checks" - creates it if necessary
634      */
635     public ST getUserDefinedAccessChecks() { 
636 		ST retVal = this.getTypedField(13, 0);
637 		return retVal;
638     }
639     
640     /**
641      * Returns
642      * OBX-13: "User Defined Access Checks" - creates it if necessary
643      */
644     public ST getObx13_UserDefinedAccessChecks() { 
645 		ST retVal = this.getTypedField(13, 0);
646 		return retVal;
647     }
648 
649 
650 
651     /**
652      * Returns
653      * OBX-14: "Date/Time of the Observation" - creates it if necessary
654      */
655     public TS getDateTimeOfTheObservation() { 
656 		TS retVal = this.getTypedField(14, 0);
657 		return retVal;
658     }
659     
660     /**
661      * Returns
662      * OBX-14: "Date/Time of the Observation" - creates it if necessary
663      */
664     public TS getObx14_DateTimeOfTheObservation() { 
665 		TS retVal = this.getTypedField(14, 0);
666 		return retVal;
667     }
668 
669 
670 
671     /**
672      * Returns
673      * OBX-15: "Producer's Reference" - creates it if necessary
674      */
675     public CE getProducerSReference() { 
676 		CE retVal = this.getTypedField(15, 0);
677 		return retVal;
678     }
679     
680     /**
681      * Returns
682      * OBX-15: "Producer's Reference" - creates it if necessary
683      */
684     public CE getObx15_ProducerSReference() { 
685 		CE retVal = this.getTypedField(15, 0);
686 		return retVal;
687     }
688 
689 
690     /**
691      * Returns all repetitions of Responsible Observer (OBX-16).
692      */
693     public XCN[] getResponsibleObserver() {
694     	XCN[] retVal = this.getTypedField(16, new XCN[0]);
695     	return retVal;
696     }
697 
698 
699     /**
700      * Returns all repetitions of Responsible Observer (OBX-16).
701      */
702     public XCN[] getObx16_ResponsibleObserver() {
703     	XCN[] retVal = this.getTypedField(16, new XCN[0]);
704     	return retVal;
705     }
706 
707 
708     /**
709      * Returns a count of the current number of repetitions of Responsible Observer (OBX-16).
710      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
711      * it will return zero.
712      */
713     public int getResponsibleObserverReps() {
714     	return this.getReps(16);
715     }
716 
717 
718     /**
719      * Returns a specific repetition of
720      * OBX-16: "Responsible Observer" - creates it if necessary
721      *
722      * @param rep The repetition index (0-indexed)
723      */
724     public XCN getResponsibleObserver(int rep) { 
725 		XCN retVal = this.getTypedField(16, rep);
726 		return retVal;
727     }
728 
729     /**
730      * Returns a specific repetition of
731      * OBX-16: "Responsible Observer" - creates it if necessary
732      *
733      * @param rep The repetition index (0-indexed)
734      */
735     public XCN getObx16_ResponsibleObserver(int rep) { 
736 		XCN retVal = this.getTypedField(16, rep);
737 		return retVal;
738     }
739 
740     /**
741      * Returns a count of the current number of repetitions of Responsible Observer (OBX-16).
742      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
743      * it will return zero.
744      */
745     public int getObx16_ResponsibleObserverReps() {
746     	return this.getReps(16);
747     }
748 
749 
750     /**
751      * Inserts a repetition of
752      * OBX-16: "Responsible Observer" at a specific index
753      *
754      * @param rep The repetition index (0-indexed)
755      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
756      */
757     public XCN insertResponsibleObserver(int rep) throws HL7Exception { 
758         return (XCN) super.insertRepetition(16, rep);
759     }
760 
761 
762     /**
763      * Inserts a repetition of
764      * OBX-16: "Responsible Observer" at a specific index
765      *
766      * @param rep The repetition index (0-indexed)
767      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
768      */
769     public XCN insertObx16_ResponsibleObserver(int rep) throws HL7Exception { 
770         return (XCN) super.insertRepetition(16, rep);
771     }
772 
773 
774     /**
775      * Removes a repetition of
776      * OBX-16: "Responsible Observer" at a specific index
777      *
778      * @param rep The repetition index (0-indexed)
779      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
780      */
781     public XCN removeResponsibleObserver(int rep) throws HL7Exception { 
782         return (XCN) super.removeRepetition(16, rep);
783     }
784 
785 
786     /**
787      * Removes a repetition of
788      * OBX-16: "Responsible Observer" at a specific index
789      *
790      * @param rep The repetition index (0-indexed)
791      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
792      */
793     public XCN removeObx16_ResponsibleObserver(int rep) throws HL7Exception { 
794         return (XCN) super.removeRepetition(16, rep);
795     }
796 
797 
798 
799     /**
800      * Returns all repetitions of Observation Method (OBX-17).
801      */
802     public CE[] getObservationMethod() {
803     	CE[] retVal = this.getTypedField(17, new CE[0]);
804     	return retVal;
805     }
806 
807 
808     /**
809      * Returns all repetitions of Observation Method (OBX-17).
810      */
811     public CE[] getObx17_ObservationMethod() {
812     	CE[] retVal = this.getTypedField(17, new CE[0]);
813     	return retVal;
814     }
815 
816 
817     /**
818      * Returns a count of the current number of repetitions of Observation Method (OBX-17).
819      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
820      * it will return zero.
821      */
822     public int getObservationMethodReps() {
823     	return this.getReps(17);
824     }
825 
826 
827     /**
828      * Returns a specific repetition of
829      * OBX-17: "Observation Method" - creates it if necessary
830      *
831      * @param rep The repetition index (0-indexed)
832      */
833     public CE getObservationMethod(int rep) { 
834 		CE retVal = this.getTypedField(17, rep);
835 		return retVal;
836     }
837 
838     /**
839      * Returns a specific repetition of
840      * OBX-17: "Observation Method" - creates it if necessary
841      *
842      * @param rep The repetition index (0-indexed)
843      */
844     public CE getObx17_ObservationMethod(int rep) { 
845 		CE retVal = this.getTypedField(17, rep);
846 		return retVal;
847     }
848 
849     /**
850      * Returns a count of the current number of repetitions of Observation Method (OBX-17).
851      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
852      * it will return zero.
853      */
854     public int getObx17_ObservationMethodReps() {
855     	return this.getReps(17);
856     }
857 
858 
859     /**
860      * Inserts a repetition of
861      * OBX-17: "Observation Method" at a specific index
862      *
863      * @param rep The repetition index (0-indexed)
864      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
865      */
866     public CE insertObservationMethod(int rep) throws HL7Exception { 
867         return (CE) super.insertRepetition(17, rep);
868     }
869 
870 
871     /**
872      * Inserts a repetition of
873      * OBX-17: "Observation Method" at a specific index
874      *
875      * @param rep The repetition index (0-indexed)
876      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
877      */
878     public CE insertObx17_ObservationMethod(int rep) throws HL7Exception { 
879         return (CE) super.insertRepetition(17, rep);
880     }
881 
882 
883     /**
884      * Removes a repetition of
885      * OBX-17: "Observation Method" at a specific index
886      *
887      * @param rep The repetition index (0-indexed)
888      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
889      */
890     public CE removeObservationMethod(int rep) throws HL7Exception { 
891         return (CE) super.removeRepetition(17, rep);
892     }
893 
894 
895     /**
896      * Removes a repetition of
897      * OBX-17: "Observation Method" at a specific index
898      *
899      * @param rep The repetition index (0-indexed)
900      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
901      */
902     public CE removeObx17_ObservationMethod(int rep) throws HL7Exception { 
903         return (CE) super.removeRepetition(17, rep);
904     }
905 
906 
907 
908     /**
909      * Returns all repetitions of Equipment Instance Identifier (OBX-18).
910      */
911     public EI[] getEquipmentInstanceIdentifier() {
912     	EI[] retVal = this.getTypedField(18, new EI[0]);
913     	return retVal;
914     }
915 
916 
917     /**
918      * Returns all repetitions of Equipment Instance Identifier (OBX-18).
919      */
920     public EI[] getObx18_EquipmentInstanceIdentifier() {
921     	EI[] retVal = this.getTypedField(18, new EI[0]);
922     	return retVal;
923     }
924 
925 
926     /**
927      * Returns a count of the current number of repetitions of Equipment Instance Identifier (OBX-18).
928      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
929      * it will return zero.
930      */
931     public int getEquipmentInstanceIdentifierReps() {
932     	return this.getReps(18);
933     }
934 
935 
936     /**
937      * Returns a specific repetition of
938      * OBX-18: "Equipment Instance Identifier" - creates it if necessary
939      *
940      * @param rep The repetition index (0-indexed)
941      */
942     public EI getEquipmentInstanceIdentifier(int rep) { 
943 		EI retVal = this.getTypedField(18, rep);
944 		return retVal;
945     }
946 
947     /**
948      * Returns a specific repetition of
949      * OBX-18: "Equipment Instance Identifier" - creates it if necessary
950      *
951      * @param rep The repetition index (0-indexed)
952      */
953     public EI getObx18_EquipmentInstanceIdentifier(int rep) { 
954 		EI retVal = this.getTypedField(18, rep);
955 		return retVal;
956     }
957 
958     /**
959      * Returns a count of the current number of repetitions of Equipment Instance Identifier (OBX-18).
960      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
961      * it will return zero.
962      */
963     public int getObx18_EquipmentInstanceIdentifierReps() {
964     	return this.getReps(18);
965     }
966 
967 
968     /**
969      * Inserts a repetition of
970      * OBX-18: "Equipment Instance Identifier" at a specific index
971      *
972      * @param rep The repetition index (0-indexed)
973      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
974      */
975     public EI insertEquipmentInstanceIdentifier(int rep) throws HL7Exception { 
976         return (EI) super.insertRepetition(18, rep);
977     }
978 
979 
980     /**
981      * Inserts a repetition of
982      * OBX-18: "Equipment Instance Identifier" at a specific index
983      *
984      * @param rep The repetition index (0-indexed)
985      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
986      */
987     public EI insertObx18_EquipmentInstanceIdentifier(int rep) throws HL7Exception { 
988         return (EI) super.insertRepetition(18, rep);
989     }
990 
991 
992     /**
993      * Removes a repetition of
994      * OBX-18: "Equipment Instance Identifier" at a specific index
995      *
996      * @param rep The repetition index (0-indexed)
997      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
998      */
999     public EI removeEquipmentInstanceIdentifier(int rep) throws HL7Exception { 
1000         return (EI) super.removeRepetition(18, rep);
1001     }
1002 
1003 
1004     /**
1005      * Removes a repetition of
1006      * OBX-18: "Equipment Instance Identifier" at a specific index
1007      *
1008      * @param rep The repetition index (0-indexed)
1009      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1010      */
1011     public EI removeObx18_EquipmentInstanceIdentifier(int rep) throws HL7Exception { 
1012         return (EI) super.removeRepetition(18, rep);
1013     }
1014 
1015 
1016 
1017 
1018     /**
1019      * Returns
1020      * OBX-19: "Date/Time of the Analysis" - creates it if necessary
1021      */
1022     public TS getDateTimeOfTheAnalysis() { 
1023 		TS retVal = this.getTypedField(19, 0);
1024 		return retVal;
1025     }
1026     
1027     /**
1028      * Returns
1029      * OBX-19: "Date/Time of the Analysis" - creates it if necessary
1030      */
1031     public TS getObx19_DateTimeOfTheAnalysis() { 
1032 		TS retVal = this.getTypedField(19, 0);
1033 		return retVal;
1034     }
1035 
1036 
1037 
1038     /**
1039      * Returns
1040      * OBX-20: "Reserved for harmonization with V2.6" - creates it if necessary
1041      */
1042     public Varies getReservedForHarmonizationWithV26() { 
1043 		Varies retVal = this.getTypedField(20, 0);
1044 		return retVal;
1045     }
1046     
1047     /**
1048      * Returns
1049      * OBX-20: "Reserved for harmonization with V2.6" - creates it if necessary
1050      */
1051     public Varies getObx20_ReservedForHarmonizationWithV26() { 
1052 		Varies retVal = this.getTypedField(20, 0);
1053 		return retVal;
1054     }
1055 
1056 
1057 
1058     /**
1059      * Returns
1060      * OBX-21: "Reserved for harmonization with V2.6 Number 2" - creates it if necessary
1061      */
1062     public Varies getReservedForHarmonizationWithV26Number2() { 
1063 		Varies retVal = this.getTypedField(21, 0);
1064 		return retVal;
1065     }
1066     
1067     /**
1068      * Returns
1069      * OBX-21: "Reserved for harmonization with V2.6 Number 2" - creates it if necessary
1070      */
1071     public Varies getObx21_ReservedForHarmonizationWithV26Number2() { 
1072 		Varies retVal = this.getTypedField(21, 0);
1073 		return retVal;
1074     }
1075 
1076 
1077 
1078     /**
1079      * Returns
1080      * OBX-22: "Reserved for harmonization with V2.6 Number 3" - creates it if necessary
1081      */
1082     public Varies getReservedForHarmonizationWithV26Number3() { 
1083 		Varies retVal = this.getTypedField(22, 0);
1084 		return retVal;
1085     }
1086     
1087     /**
1088      * Returns
1089      * OBX-22: "Reserved for harmonization with V2.6 Number 3" - creates it if necessary
1090      */
1091     public Varies getObx22_ReservedForHarmonizationWithV26Number3() { 
1092 		Varies retVal = this.getTypedField(22, 0);
1093 		return retVal;
1094     }
1095 
1096 
1097 
1098     /**
1099      * Returns
1100      * OBX-23: "Performing Organization Name" - creates it if necessary
1101      */
1102     public XON getPerformingOrganizationName() { 
1103 		XON retVal = this.getTypedField(23, 0);
1104 		return retVal;
1105     }
1106     
1107     /**
1108      * Returns
1109      * OBX-23: "Performing Organization Name" - creates it if necessary
1110      */
1111     public XON getObx23_PerformingOrganizationName() { 
1112 		XON retVal = this.getTypedField(23, 0);
1113 		return retVal;
1114     }
1115 
1116 
1117 
1118     /**
1119      * Returns
1120      * OBX-24: "Performing Organization Address" - creates it if necessary
1121      */
1122     public XAD getPerformingOrganizationAddress() { 
1123 		XAD retVal = this.getTypedField(24, 0);
1124 		return retVal;
1125     }
1126     
1127     /**
1128      * Returns
1129      * OBX-24: "Performing Organization Address" - creates it if necessary
1130      */
1131     public XAD getObx24_PerformingOrganizationAddress() { 
1132 		XAD retVal = this.getTypedField(24, 0);
1133 		return retVal;
1134     }
1135 
1136 
1137 
1138     /**
1139      * Returns
1140      * OBX-25: "Performing Organization Medical Director" - creates it if necessary
1141      */
1142     public XCN getPerformingOrganizationMedicalDirector() { 
1143 		XCN retVal = this.getTypedField(25, 0);
1144 		return retVal;
1145     }
1146     
1147     /**
1148      * Returns
1149      * OBX-25: "Performing Organization Medical Director" - creates it if necessary
1150      */
1151     public XCN getObx25_PerformingOrganizationMedicalDirector() { 
1152 		XCN retVal = this.getTypedField(25, 0);
1153 		return retVal;
1154     }
1155 
1156 
1157 
1158 
1159 
1160     /** {@inheritDoc} */   
1161     protected Type createNewTypeWithoutReflection(int field) {
1162        switch (field) {
1163           case 0: return new SI(getMessage());
1164           case 1: return new ID(getMessage(), new Integer( 125 ));
1165           case 2: return new CE(getMessage());
1166           case 3: return new ST(getMessage());
1167           case 4: return new Varies(getMessage());
1168           case 5: return new CE(getMessage());
1169           case 6: return new ST(getMessage());
1170           case 7: return new IS(getMessage(), new Integer( 78 ));
1171           case 8: return new NM(getMessage());
1172           case 9: return new ID(getMessage(), new Integer( 80 ));
1173           case 10: return new ID(getMessage(), new Integer( 85 ));
1174           case 11: return new TS(getMessage());
1175           case 12: return new ST(getMessage());
1176           case 13: return new TS(getMessage());
1177           case 14: return new CE(getMessage());
1178           case 15: return new XCN(getMessage());
1179           case 16: return new CE(getMessage());
1180           case 17: return new EI(getMessage());
1181           case 18: return new TS(getMessage());
1182           case 19: return new Varies(getMessage());
1183           case 20: return new Varies(getMessage());
1184           case 21: return new Varies(getMessage());
1185           case 22: return new XON(getMessage());
1186           case 23: return new XAD(getMessage());
1187           case 24: return new XCN(getMessage());
1188           default: return null;
1189        }
1190    }
1191 
1192 
1193 }
1194