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.v28.segment;
35  
36  // import ca.uhn.hl7v2.model.v28.group.*;
37  import ca.uhn.hl7v2.model.v28.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> </b>
54       * <li>OBX-3: Observation Identifier (CWE) <b> </b>
55       * <li>OBX-4: Observation Sub-ID (ST) <b> </b>
56       * <li>OBX-5: Observation Value (Varies) <b>optional repeating</b>
57       * <li>OBX-6: Units (CWE) <b>optional </b>
58       * <li>OBX-7: References Range (ST) <b>optional </b>
59       * <li>OBX-8: Interpretation Codes (CWE) <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 (DTM) <b>optional </b>
64       * <li>OBX-13: User Defined Access Checks (ST) <b>optional </b>
65       * <li>OBX-14: Date/Time of the Observation (DTM) <b>optional </b>
66       * <li>OBX-15: Producer's ID (CWE) <b>optional </b>
67       * <li>OBX-16: Responsible Observer (XCN) <b>optional repeating</b>
68       * <li>OBX-17: Observation Method (CWE) <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 (DTM) <b>optional </b>
71       * <li>OBX-20: Observation Site (CWE) <b>optional repeating</b>
72       * <li>OBX-21: Observation Instance Identifier (EI) <b>optional </b>
73       * <li>OBX-22: Mood Code (CNE) <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       * <li>OBX-26: Patient Results Release Category (ID) <b>optional </b>
78       * <li>OBX-27: Root Cause (CWE) <b>optional </b>
79       * <li>OBX-28: Local Process Control (CWE) <b>optional repeating</b>
80   * </ul>
81   */
82  @SuppressWarnings("unused")
83  public class OBX extends AbstractSegment {
84  
85      /** 
86       * Creates a new OBX segment
87       */
88      public OBX(Group parent, ModelClassFactory factory) {
89         super(parent, factory);
90         init(factory);
91      }
92  
93      private void init(ModelClassFactory factory) {
94         try {
95                                    this.add(SI.class, false, 1, 4, new Object[]{ getMessage() }, "Set ID - OBX");
96                                                this.add(ID.class, true, 1, 3, new Object[]{ getMessage(), new Integer(125) }, "Value Type");
97                                    this.add(CWE.class, true, 1, 0, new Object[]{ getMessage() }, "Observation Identifier");
98                                    this.add(ST.class, true, 1, 0, new Object[]{ getMessage() }, "Observation Sub-ID");
99                                    this.add(Varies.class, false, 0, 0, new Object[]{ getMessage() }, "Observation Value");
100                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Units");
101                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "References Range");
102                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Interpretation Codes");
103                                   this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Probability");
104                                               this.add(ID.class, false, 0, 2, new Object[]{ getMessage(), new Integer(80) }, "Nature of Abnormal Test");
105                                               this.add(ID.class, true, 1, 1, new Object[]{ getMessage(), new Integer(85) }, "Observation Result Status");
106                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Effective Date of Reference Range");
107                                   this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "User Defined Access Checks");
108                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Date/Time of the Observation");
109                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Producer's ID");
110                                   this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Responsible Observer");
111                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Observation Method");
112                                   this.add(EI.class, false, 0, 0, new Object[]{ getMessage() }, "Equipment Instance Identifier");
113                                   this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Date/Time of the Analysis");
114                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Observation Site");
115                                   this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Observation Instance Identifier");
116                                   this.add(CNE.class, false, 1, 0, new Object[]{ getMessage() }, "Mood Code");
117                                   this.add(XON.class, false, 1, 0, new Object[]{ getMessage() }, "Performing Organization Name");
118                                   this.add(XAD.class, false, 1, 0, new Object[]{ getMessage() }, "Performing Organization Address");
119                                   this.add(XCN.class, false, 1, 0, new Object[]{ getMessage() }, "Performing Organization Medical Director");
120                                               this.add(ID.class, false, 1, 10, new Object[]{ getMessage(), new Integer(909) }, "Patient Results Release Category");
121                                   this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Root Cause");
122                                   this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Local Process Control");
123        } catch(HL7Exception e) {
124           log.error("Unexpected error creating OBX - this is probably a bug in the source code generator.", e);
125        }
126     }
127 
128 
129 
130     /**
131      * Returns
132      * OBX-1: "Set ID - OBX" - creates it if necessary
133      */
134     public SI getSetIDOBX() { 
135 		SI retVal = this.getTypedField(1, 0);
136 		return retVal;
137     }
138     
139     /**
140      * Returns
141      * OBX-1: "Set ID - OBX" - creates it if necessary
142      */
143     public SI getObx1_SetIDOBX() { 
144 		SI retVal = this.getTypedField(1, 0);
145 		return retVal;
146     }
147 
148 
149 
150     /**
151      * Returns
152      * OBX-2: "Value Type" - creates it if necessary
153      */
154     public ID getValueType() { 
155 		ID retVal = this.getTypedField(2, 0);
156 		return retVal;
157     }
158     
159     /**
160      * Returns
161      * OBX-2: "Value Type" - creates it if necessary
162      */
163     public ID getObx2_ValueType() { 
164 		ID retVal = this.getTypedField(2, 0);
165 		return retVal;
166     }
167 
168 
169 
170     /**
171      * Returns
172      * OBX-3: "Observation Identifier" - creates it if necessary
173      */
174     public CWE getObservationIdentifier() { 
175 		CWE retVal = this.getTypedField(3, 0);
176 		return retVal;
177     }
178     
179     /**
180      * Returns
181      * OBX-3: "Observation Identifier" - creates it if necessary
182      */
183     public CWE getObx3_ObservationIdentifier() { 
184 		CWE retVal = this.getTypedField(3, 0);
185 		return retVal;
186     }
187 
188 
189 
190     /**
191      * Returns
192      * OBX-4: "Observation Sub-ID" - creates it if necessary
193      */
194     public ST getObservationSubID() { 
195 		ST retVal = this.getTypedField(4, 0);
196 		return retVal;
197     }
198     
199     /**
200      * Returns
201      * OBX-4: "Observation Sub-ID" - creates it if necessary
202      */
203     public ST getObx4_ObservationSubID() { 
204 		ST retVal = this.getTypedField(4, 0);
205 		return retVal;
206     }
207 
208 
209     /**
210      * Returns all repetitions of Observation Value (OBX-5).
211      */
212     public Varies[] getObservationValue() {
213     	Varies[] retVal = this.getTypedField(5, new Varies[0]);
214     	return retVal;
215     }
216 
217 
218     /**
219      * Returns all repetitions of Observation Value (OBX-5).
220      */
221     public Varies[] getObx5_ObservationValue() {
222     	Varies[] retVal = this.getTypedField(5, new Varies[0]);
223     	return retVal;
224     }
225 
226 
227     /**
228      * Returns a count of the current number of repetitions of Observation Value (OBX-5).
229      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
230      * it will return zero.
231      */
232     public int getObservationValueReps() {
233     	return this.getReps(5);
234     }
235 
236 
237     /**
238      * Returns a specific repetition of
239      * OBX-5: "Observation Value" - creates it if necessary
240      *
241      * @param rep The repetition index (0-indexed)
242      */
243     public Varies getObservationValue(int rep) { 
244 		Varies retVal = this.getTypedField(5, rep);
245 		return retVal;
246     }
247 
248     /**
249      * Returns a specific repetition of
250      * OBX-5: "Observation Value" - creates it if necessary
251      *
252      * @param rep The repetition index (0-indexed)
253      */
254     public Varies getObx5_ObservationValue(int rep) { 
255 		Varies retVal = this.getTypedField(5, rep);
256 		return retVal;
257     }
258 
259     /**
260      * Returns a count of the current number of repetitions of Observation Value (OBX-5).
261      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
262      * it will return zero.
263      */
264     public int getObx5_ObservationValueReps() {
265     	return this.getReps(5);
266     }
267 
268 
269     /**
270      * Inserts a repetition of
271      * OBX-5: "Observation Value" at a specific index
272      *
273      * @param rep The repetition index (0-indexed)
274      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
275      */
276     public Varies insertObservationValue(int rep) throws HL7Exception { 
277         return (Varies) super.insertRepetition(5, rep);
278     }
279 
280 
281     /**
282      * Inserts a repetition of
283      * OBX-5: "Observation Value" 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 Varies insertObx5_ObservationValue(int rep) throws HL7Exception { 
289         return (Varies) super.insertRepetition(5, rep);
290     }
291 
292 
293     /**
294      * Removes a repetition of
295      * OBX-5: "Observation Value" 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 Varies removeObservationValue(int rep) throws HL7Exception { 
301         return (Varies) super.removeRepetition(5, rep);
302     }
303 
304 
305     /**
306      * Removes a repetition of
307      * OBX-5: "Observation Value" 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 Varies removeObx5_ObservationValue(int rep) throws HL7Exception { 
313         return (Varies) super.removeRepetition(5, rep);
314     }
315 
316 
317 
318 
319     /**
320      * Returns
321      * OBX-6: "Units" - creates it if necessary
322      */
323     public CWE getUnits() { 
324 		CWE retVal = this.getTypedField(6, 0);
325 		return retVal;
326     }
327     
328     /**
329      * Returns
330      * OBX-6: "Units" - creates it if necessary
331      */
332     public CWE getObx6_Units() { 
333 		CWE retVal = this.getTypedField(6, 0);
334 		return retVal;
335     }
336 
337 
338 
339     /**
340      * Returns
341      * OBX-7: "References Range" - creates it if necessary
342      */
343     public ST getReferencesRange() { 
344 		ST retVal = this.getTypedField(7, 0);
345 		return retVal;
346     }
347     
348     /**
349      * Returns
350      * OBX-7: "References Range" - creates it if necessary
351      */
352     public ST getObx7_ReferencesRange() { 
353 		ST retVal = this.getTypedField(7, 0);
354 		return retVal;
355     }
356 
357 
358     /**
359      * Returns all repetitions of Interpretation Codes (OBX-8).
360      */
361     public CWE[] getInterpretationCodes() {
362     	CWE[] retVal = this.getTypedField(8, new CWE[0]);
363     	return retVal;
364     }
365 
366 
367     /**
368      * Returns all repetitions of Interpretation Codes (OBX-8).
369      */
370     public CWE[] getObx8_InterpretationCodes() {
371     	CWE[] retVal = this.getTypedField(8, new CWE[0]);
372     	return retVal;
373     }
374 
375 
376     /**
377      * Returns a count of the current number of repetitions of Interpretation Codes (OBX-8).
378      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
379      * it will return zero.
380      */
381     public int getInterpretationCodesReps() {
382     	return this.getReps(8);
383     }
384 
385 
386     /**
387      * Returns a specific repetition of
388      * OBX-8: "Interpretation Codes" - creates it if necessary
389      *
390      * @param rep The repetition index (0-indexed)
391      */
392     public CWE getInterpretationCodes(int rep) { 
393 		CWE retVal = this.getTypedField(8, rep);
394 		return retVal;
395     }
396 
397     /**
398      * Returns a specific repetition of
399      * OBX-8: "Interpretation Codes" - creates it if necessary
400      *
401      * @param rep The repetition index (0-indexed)
402      */
403     public CWE getObx8_InterpretationCodes(int rep) { 
404 		CWE retVal = this.getTypedField(8, rep);
405 		return retVal;
406     }
407 
408     /**
409      * Returns a count of the current number of repetitions of Interpretation Codes (OBX-8).
410      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
411      * it will return zero.
412      */
413     public int getObx8_InterpretationCodesReps() {
414     	return this.getReps(8);
415     }
416 
417 
418     /**
419      * Inserts a repetition of
420      * OBX-8: "Interpretation Codes" at a specific index
421      *
422      * @param rep The repetition index (0-indexed)
423      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
424      */
425     public CWE insertInterpretationCodes(int rep) throws HL7Exception { 
426         return (CWE) super.insertRepetition(8, rep);
427     }
428 
429 
430     /**
431      * Inserts a repetition of
432      * OBX-8: "Interpretation Codes" at a specific index
433      *
434      * @param rep The repetition index (0-indexed)
435      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
436      */
437     public CWE insertObx8_InterpretationCodes(int rep) throws HL7Exception { 
438         return (CWE) super.insertRepetition(8, rep);
439     }
440 
441 
442     /**
443      * Removes a repetition of
444      * OBX-8: "Interpretation Codes" at a specific index
445      *
446      * @param rep The repetition index (0-indexed)
447      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
448      */
449     public CWE removeInterpretationCodes(int rep) throws HL7Exception { 
450         return (CWE) super.removeRepetition(8, rep);
451     }
452 
453 
454     /**
455      * Removes a repetition of
456      * OBX-8: "Interpretation Codes" at a specific index
457      *
458      * @param rep The repetition index (0-indexed)
459      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
460      */
461     public CWE removeObx8_InterpretationCodes(int rep) throws HL7Exception { 
462         return (CWE) super.removeRepetition(8, rep);
463     }
464 
465 
466 
467 
468     /**
469      * Returns
470      * OBX-9: "Probability" - creates it if necessary
471      */
472     public NM getProbability() { 
473 		NM retVal = this.getTypedField(9, 0);
474 		return retVal;
475     }
476     
477     /**
478      * Returns
479      * OBX-9: "Probability" - creates it if necessary
480      */
481     public NM getObx9_Probability() { 
482 		NM retVal = this.getTypedField(9, 0);
483 		return retVal;
484     }
485 
486 
487     /**
488      * Returns all repetitions of Nature of Abnormal Test (OBX-10).
489      */
490     public ID[] getNatureOfAbnormalTest() {
491     	ID[] retVal = this.getTypedField(10, new ID[0]);
492     	return retVal;
493     }
494 
495 
496     /**
497      * Returns all repetitions of Nature of Abnormal Test (OBX-10).
498      */
499     public ID[] getObx10_NatureOfAbnormalTest() {
500     	ID[] retVal = this.getTypedField(10, new ID[0]);
501     	return retVal;
502     }
503 
504 
505     /**
506      * Returns a count of the current number of repetitions of Nature of Abnormal Test (OBX-10).
507      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
508      * it will return zero.
509      */
510     public int getNatureOfAbnormalTestReps() {
511     	return this.getReps(10);
512     }
513 
514 
515     /**
516      * Returns a specific repetition of
517      * OBX-10: "Nature of Abnormal Test" - creates it if necessary
518      *
519      * @param rep The repetition index (0-indexed)
520      */
521     public ID getNatureOfAbnormalTest(int rep) { 
522 		ID retVal = this.getTypedField(10, rep);
523 		return retVal;
524     }
525 
526     /**
527      * Returns a specific repetition of
528      * OBX-10: "Nature of Abnormal Test" - creates it if necessary
529      *
530      * @param rep The repetition index (0-indexed)
531      */
532     public ID getObx10_NatureOfAbnormalTest(int rep) { 
533 		ID retVal = this.getTypedField(10, rep);
534 		return retVal;
535     }
536 
537     /**
538      * Returns a count of the current number of repetitions of Nature of Abnormal Test (OBX-10).
539      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
540      * it will return zero.
541      */
542     public int getObx10_NatureOfAbnormalTestReps() {
543     	return this.getReps(10);
544     }
545 
546 
547     /**
548      * Inserts a repetition of
549      * OBX-10: "Nature of Abnormal Test" at a specific index
550      *
551      * @param rep The repetition index (0-indexed)
552      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
553      */
554     public ID insertNatureOfAbnormalTest(int rep) throws HL7Exception { 
555         return (ID) super.insertRepetition(10, rep);
556     }
557 
558 
559     /**
560      * Inserts a repetition of
561      * OBX-10: "Nature of Abnormal Test" at a specific index
562      *
563      * @param rep The repetition index (0-indexed)
564      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
565      */
566     public ID insertObx10_NatureOfAbnormalTest(int rep) throws HL7Exception { 
567         return (ID) super.insertRepetition(10, rep);
568     }
569 
570 
571     /**
572      * Removes a repetition of
573      * OBX-10: "Nature of Abnormal Test" at a specific index
574      *
575      * @param rep The repetition index (0-indexed)
576      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
577      */
578     public ID removeNatureOfAbnormalTest(int rep) throws HL7Exception { 
579         return (ID) super.removeRepetition(10, rep);
580     }
581 
582 
583     /**
584      * Removes a repetition of
585      * OBX-10: "Nature of Abnormal Test" at a specific index
586      *
587      * @param rep The repetition index (0-indexed)
588      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
589      */
590     public ID removeObx10_NatureOfAbnormalTest(int rep) throws HL7Exception { 
591         return (ID) super.removeRepetition(10, rep);
592     }
593 
594 
595 
596 
597     /**
598      * Returns
599      * OBX-11: "Observation Result Status" - creates it if necessary
600      */
601     public ID getObservationResultStatus() { 
602 		ID retVal = this.getTypedField(11, 0);
603 		return retVal;
604     }
605     
606     /**
607      * Returns
608      * OBX-11: "Observation Result Status" - creates it if necessary
609      */
610     public ID getObx11_ObservationResultStatus() { 
611 		ID retVal = this.getTypedField(11, 0);
612 		return retVal;
613     }
614 
615 
616 
617     /**
618      * Returns
619      * OBX-12: "Effective Date of Reference Range" - creates it if necessary
620      */
621     public DTM getEffectiveDateOfReferenceRange() { 
622 		DTM retVal = this.getTypedField(12, 0);
623 		return retVal;
624     }
625     
626     /**
627      * Returns
628      * OBX-12: "Effective Date of Reference Range" - creates it if necessary
629      */
630     public DTM getObx12_EffectiveDateOfReferenceRange() { 
631 		DTM retVal = this.getTypedField(12, 0);
632 		return retVal;
633     }
634 
635 
636 
637     /**
638      * Returns
639      * OBX-13: "User Defined Access Checks" - creates it if necessary
640      */
641     public ST getUserDefinedAccessChecks() { 
642 		ST retVal = this.getTypedField(13, 0);
643 		return retVal;
644     }
645     
646     /**
647      * Returns
648      * OBX-13: "User Defined Access Checks" - creates it if necessary
649      */
650     public ST getObx13_UserDefinedAccessChecks() { 
651 		ST retVal = this.getTypedField(13, 0);
652 		return retVal;
653     }
654 
655 
656 
657     /**
658      * Returns
659      * OBX-14: "Date/Time of the Observation" - creates it if necessary
660      */
661     public DTM getDateTimeOfTheObservation() { 
662 		DTM retVal = this.getTypedField(14, 0);
663 		return retVal;
664     }
665     
666     /**
667      * Returns
668      * OBX-14: "Date/Time of the Observation" - creates it if necessary
669      */
670     public DTM getObx14_DateTimeOfTheObservation() { 
671 		DTM retVal = this.getTypedField(14, 0);
672 		return retVal;
673     }
674 
675 
676 
677     /**
678      * Returns
679      * OBX-15: "Producer's ID" - creates it if necessary
680      */
681     public CWE getProducerSID() { 
682 		CWE retVal = this.getTypedField(15, 0);
683 		return retVal;
684     }
685     
686     /**
687      * Returns
688      * OBX-15: "Producer's ID" - creates it if necessary
689      */
690     public CWE getObx15_ProducerSID() { 
691 		CWE retVal = this.getTypedField(15, 0);
692 		return retVal;
693     }
694 
695 
696     /**
697      * Returns all repetitions of Responsible Observer (OBX-16).
698      */
699     public XCN[] getResponsibleObserver() {
700     	XCN[] retVal = this.getTypedField(16, new XCN[0]);
701     	return retVal;
702     }
703 
704 
705     /**
706      * Returns all repetitions of Responsible Observer (OBX-16).
707      */
708     public XCN[] getObx16_ResponsibleObserver() {
709     	XCN[] retVal = this.getTypedField(16, new XCN[0]);
710     	return retVal;
711     }
712 
713 
714     /**
715      * Returns a count of the current number of repetitions of Responsible Observer (OBX-16).
716      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
717      * it will return zero.
718      */
719     public int getResponsibleObserverReps() {
720     	return this.getReps(16);
721     }
722 
723 
724     /**
725      * Returns a specific repetition of
726      * OBX-16: "Responsible Observer" - creates it if necessary
727      *
728      * @param rep The repetition index (0-indexed)
729      */
730     public XCN getResponsibleObserver(int rep) { 
731 		XCN retVal = this.getTypedField(16, rep);
732 		return retVal;
733     }
734 
735     /**
736      * Returns a specific repetition of
737      * OBX-16: "Responsible Observer" - creates it if necessary
738      *
739      * @param rep The repetition index (0-indexed)
740      */
741     public XCN getObx16_ResponsibleObserver(int rep) { 
742 		XCN retVal = this.getTypedField(16, rep);
743 		return retVal;
744     }
745 
746     /**
747      * Returns a count of the current number of repetitions of Responsible Observer (OBX-16).
748      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
749      * it will return zero.
750      */
751     public int getObx16_ResponsibleObserverReps() {
752     	return this.getReps(16);
753     }
754 
755 
756     /**
757      * Inserts a repetition of
758      * OBX-16: "Responsible Observer" at a specific index
759      *
760      * @param rep The repetition index (0-indexed)
761      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
762      */
763     public XCN insertResponsibleObserver(int rep) throws HL7Exception { 
764         return (XCN) super.insertRepetition(16, rep);
765     }
766 
767 
768     /**
769      * Inserts a repetition of
770      * OBX-16: "Responsible Observer" at a specific index
771      *
772      * @param rep The repetition index (0-indexed)
773      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
774      */
775     public XCN insertObx16_ResponsibleObserver(int rep) throws HL7Exception { 
776         return (XCN) super.insertRepetition(16, rep);
777     }
778 
779 
780     /**
781      * Removes a repetition of
782      * OBX-16: "Responsible Observer" at a specific index
783      *
784      * @param rep The repetition index (0-indexed)
785      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
786      */
787     public XCN removeResponsibleObserver(int rep) throws HL7Exception { 
788         return (XCN) super.removeRepetition(16, rep);
789     }
790 
791 
792     /**
793      * Removes a repetition of
794      * OBX-16: "Responsible Observer" at a specific index
795      *
796      * @param rep The repetition index (0-indexed)
797      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
798      */
799     public XCN removeObx16_ResponsibleObserver(int rep) throws HL7Exception { 
800         return (XCN) super.removeRepetition(16, rep);
801     }
802 
803 
804 
805     /**
806      * Returns all repetitions of Observation Method (OBX-17).
807      */
808     public CWE[] getObservationMethod() {
809     	CWE[] retVal = this.getTypedField(17, new CWE[0]);
810     	return retVal;
811     }
812 
813 
814     /**
815      * Returns all repetitions of Observation Method (OBX-17).
816      */
817     public CWE[] getObx17_ObservationMethod() {
818     	CWE[] retVal = this.getTypedField(17, new CWE[0]);
819     	return retVal;
820     }
821 
822 
823     /**
824      * Returns a count of the current number of repetitions of Observation Method (OBX-17).
825      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
826      * it will return zero.
827      */
828     public int getObservationMethodReps() {
829     	return this.getReps(17);
830     }
831 
832 
833     /**
834      * Returns a specific repetition of
835      * OBX-17: "Observation Method" - creates it if necessary
836      *
837      * @param rep The repetition index (0-indexed)
838      */
839     public CWE getObservationMethod(int rep) { 
840 		CWE retVal = this.getTypedField(17, rep);
841 		return retVal;
842     }
843 
844     /**
845      * Returns a specific repetition of
846      * OBX-17: "Observation Method" - creates it if necessary
847      *
848      * @param rep The repetition index (0-indexed)
849      */
850     public CWE getObx17_ObservationMethod(int rep) { 
851 		CWE retVal = this.getTypedField(17, rep);
852 		return retVal;
853     }
854 
855     /**
856      * Returns a count of the current number of repetitions of Observation Method (OBX-17).
857      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
858      * it will return zero.
859      */
860     public int getObx17_ObservationMethodReps() {
861     	return this.getReps(17);
862     }
863 
864 
865     /**
866      * Inserts a repetition of
867      * OBX-17: "Observation Method" at a specific index
868      *
869      * @param rep The repetition index (0-indexed)
870      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
871      */
872     public CWE insertObservationMethod(int rep) throws HL7Exception { 
873         return (CWE) super.insertRepetition(17, rep);
874     }
875 
876 
877     /**
878      * Inserts a repetition of
879      * OBX-17: "Observation Method" at a specific index
880      *
881      * @param rep The repetition index (0-indexed)
882      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
883      */
884     public CWE insertObx17_ObservationMethod(int rep) throws HL7Exception { 
885         return (CWE) super.insertRepetition(17, rep);
886     }
887 
888 
889     /**
890      * Removes a repetition of
891      * OBX-17: "Observation Method" at a specific index
892      *
893      * @param rep The repetition index (0-indexed)
894      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
895      */
896     public CWE removeObservationMethod(int rep) throws HL7Exception { 
897         return (CWE) super.removeRepetition(17, rep);
898     }
899 
900 
901     /**
902      * Removes a repetition of
903      * OBX-17: "Observation Method" at a specific index
904      *
905      * @param rep The repetition index (0-indexed)
906      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
907      */
908     public CWE removeObx17_ObservationMethod(int rep) throws HL7Exception { 
909         return (CWE) super.removeRepetition(17, rep);
910     }
911 
912 
913 
914     /**
915      * Returns all repetitions of Equipment Instance Identifier (OBX-18).
916      */
917     public EI[] getEquipmentInstanceIdentifier() {
918     	EI[] retVal = this.getTypedField(18, new EI[0]);
919     	return retVal;
920     }
921 
922 
923     /**
924      * Returns all repetitions of Equipment Instance Identifier (OBX-18).
925      */
926     public EI[] getObx18_EquipmentInstanceIdentifier() {
927     	EI[] retVal = this.getTypedField(18, new EI[0]);
928     	return retVal;
929     }
930 
931 
932     /**
933      * Returns a count of the current number of repetitions of Equipment Instance Identifier (OBX-18).
934      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
935      * it will return zero.
936      */
937     public int getEquipmentInstanceIdentifierReps() {
938     	return this.getReps(18);
939     }
940 
941 
942     /**
943      * Returns a specific repetition of
944      * OBX-18: "Equipment Instance Identifier" - creates it if necessary
945      *
946      * @param rep The repetition index (0-indexed)
947      */
948     public EI getEquipmentInstanceIdentifier(int rep) { 
949 		EI retVal = this.getTypedField(18, rep);
950 		return retVal;
951     }
952 
953     /**
954      * Returns a specific repetition of
955      * OBX-18: "Equipment Instance Identifier" - creates it if necessary
956      *
957      * @param rep The repetition index (0-indexed)
958      */
959     public EI getObx18_EquipmentInstanceIdentifier(int rep) { 
960 		EI retVal = this.getTypedField(18, rep);
961 		return retVal;
962     }
963 
964     /**
965      * Returns a count of the current number of repetitions of Equipment Instance Identifier (OBX-18).
966      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
967      * it will return zero.
968      */
969     public int getObx18_EquipmentInstanceIdentifierReps() {
970     	return this.getReps(18);
971     }
972 
973 
974     /**
975      * Inserts a repetition of
976      * OBX-18: "Equipment Instance Identifier" at a specific index
977      *
978      * @param rep The repetition index (0-indexed)
979      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
980      */
981     public EI insertEquipmentInstanceIdentifier(int rep) throws HL7Exception { 
982         return (EI) super.insertRepetition(18, rep);
983     }
984 
985 
986     /**
987      * Inserts a repetition of
988      * OBX-18: "Equipment Instance Identifier" at a specific index
989      *
990      * @param rep The repetition index (0-indexed)
991      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
992      */
993     public EI insertObx18_EquipmentInstanceIdentifier(int rep) throws HL7Exception { 
994         return (EI) super.insertRepetition(18, rep);
995     }
996 
997 
998     /**
999      * Removes a repetition of
1000      * OBX-18: "Equipment Instance Identifier" at a specific index
1001      *
1002      * @param rep The repetition index (0-indexed)
1003      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1004      */
1005     public EI removeEquipmentInstanceIdentifier(int rep) throws HL7Exception { 
1006         return (EI) super.removeRepetition(18, rep);
1007     }
1008 
1009 
1010     /**
1011      * Removes a repetition of
1012      * OBX-18: "Equipment Instance Identifier" at a specific index
1013      *
1014      * @param rep The repetition index (0-indexed)
1015      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1016      */
1017     public EI removeObx18_EquipmentInstanceIdentifier(int rep) throws HL7Exception { 
1018         return (EI) super.removeRepetition(18, rep);
1019     }
1020 
1021 
1022 
1023 
1024     /**
1025      * Returns
1026      * OBX-19: "Date/Time of the Analysis" - creates it if necessary
1027      */
1028     public DTM getDateTimeOfTheAnalysis() { 
1029 		DTM retVal = this.getTypedField(19, 0);
1030 		return retVal;
1031     }
1032     
1033     /**
1034      * Returns
1035      * OBX-19: "Date/Time of the Analysis" - creates it if necessary
1036      */
1037     public DTM getObx19_DateTimeOfTheAnalysis() { 
1038 		DTM retVal = this.getTypedField(19, 0);
1039 		return retVal;
1040     }
1041 
1042 
1043     /**
1044      * Returns all repetitions of Observation Site (OBX-20).
1045      */
1046     public CWE[] getObservationSite() {
1047     	CWE[] retVal = this.getTypedField(20, new CWE[0]);
1048     	return retVal;
1049     }
1050 
1051 
1052     /**
1053      * Returns all repetitions of Observation Site (OBX-20).
1054      */
1055     public CWE[] getObx20_ObservationSite() {
1056     	CWE[] retVal = this.getTypedField(20, new CWE[0]);
1057     	return retVal;
1058     }
1059 
1060 
1061     /**
1062      * Returns a count of the current number of repetitions of Observation Site (OBX-20).
1063      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1064      * it will return zero.
1065      */
1066     public int getObservationSiteReps() {
1067     	return this.getReps(20);
1068     }
1069 
1070 
1071     /**
1072      * Returns a specific repetition of
1073      * OBX-20: "Observation Site" - creates it if necessary
1074      *
1075      * @param rep The repetition index (0-indexed)
1076      */
1077     public CWE getObservationSite(int rep) { 
1078 		CWE retVal = this.getTypedField(20, rep);
1079 		return retVal;
1080     }
1081 
1082     /**
1083      * Returns a specific repetition of
1084      * OBX-20: "Observation Site" - creates it if necessary
1085      *
1086      * @param rep The repetition index (0-indexed)
1087      */
1088     public CWE getObx20_ObservationSite(int rep) { 
1089 		CWE retVal = this.getTypedField(20, rep);
1090 		return retVal;
1091     }
1092 
1093     /**
1094      * Returns a count of the current number of repetitions of Observation Site (OBX-20).
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 getObx20_ObservationSiteReps() {
1099     	return this.getReps(20);
1100     }
1101 
1102 
1103     /**
1104      * Inserts a repetition of
1105      * OBX-20: "Observation Site" at a specific index
1106      *
1107      * @param rep The repetition index (0-indexed)
1108      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1109      */
1110     public CWE insertObservationSite(int rep) throws HL7Exception { 
1111         return (CWE) super.insertRepetition(20, rep);
1112     }
1113 
1114 
1115     /**
1116      * Inserts a repetition of
1117      * OBX-20: "Observation Site" at a specific index
1118      *
1119      * @param rep The repetition index (0-indexed)
1120      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1121      */
1122     public CWE insertObx20_ObservationSite(int rep) throws HL7Exception { 
1123         return (CWE) super.insertRepetition(20, rep);
1124     }
1125 
1126 
1127     /**
1128      * Removes a repetition of
1129      * OBX-20: "Observation Site" at a specific index
1130      *
1131      * @param rep The repetition index (0-indexed)
1132      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1133      */
1134     public CWE removeObservationSite(int rep) throws HL7Exception { 
1135         return (CWE) super.removeRepetition(20, rep);
1136     }
1137 
1138 
1139     /**
1140      * Removes a repetition of
1141      * OBX-20: "Observation Site" at a specific index
1142      *
1143      * @param rep The repetition index (0-indexed)
1144      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1145      */
1146     public CWE removeObx20_ObservationSite(int rep) throws HL7Exception { 
1147         return (CWE) super.removeRepetition(20, rep);
1148     }
1149 
1150 
1151 
1152 
1153     /**
1154      * Returns
1155      * OBX-21: "Observation Instance Identifier" - creates it if necessary
1156      */
1157     public EI getObservationInstanceIdentifier() { 
1158 		EI retVal = this.getTypedField(21, 0);
1159 		return retVal;
1160     }
1161     
1162     /**
1163      * Returns
1164      * OBX-21: "Observation Instance Identifier" - creates it if necessary
1165      */
1166     public EI getObx21_ObservationInstanceIdentifier() { 
1167 		EI retVal = this.getTypedField(21, 0);
1168 		return retVal;
1169     }
1170 
1171 
1172 
1173     /**
1174      * Returns
1175      * OBX-22: "Mood Code" - creates it if necessary
1176      */
1177     public CNE getMoodCode() { 
1178 		CNE retVal = this.getTypedField(22, 0);
1179 		return retVal;
1180     }
1181     
1182     /**
1183      * Returns
1184      * OBX-22: "Mood Code" - creates it if necessary
1185      */
1186     public CNE getObx22_MoodCode() { 
1187 		CNE retVal = this.getTypedField(22, 0);
1188 		return retVal;
1189     }
1190 
1191 
1192 
1193     /**
1194      * Returns
1195      * OBX-23: "Performing Organization Name" - creates it if necessary
1196      */
1197     public XON getPerformingOrganizationName() { 
1198 		XON retVal = this.getTypedField(23, 0);
1199 		return retVal;
1200     }
1201     
1202     /**
1203      * Returns
1204      * OBX-23: "Performing Organization Name" - creates it if necessary
1205      */
1206     public XON getObx23_PerformingOrganizationName() { 
1207 		XON retVal = this.getTypedField(23, 0);
1208 		return retVal;
1209     }
1210 
1211 
1212 
1213     /**
1214      * Returns
1215      * OBX-24: "Performing Organization Address" - creates it if necessary
1216      */
1217     public XAD getPerformingOrganizationAddress() { 
1218 		XAD retVal = this.getTypedField(24, 0);
1219 		return retVal;
1220     }
1221     
1222     /**
1223      * Returns
1224      * OBX-24: "Performing Organization Address" - creates it if necessary
1225      */
1226     public XAD getObx24_PerformingOrganizationAddress() { 
1227 		XAD retVal = this.getTypedField(24, 0);
1228 		return retVal;
1229     }
1230 
1231 
1232 
1233     /**
1234      * Returns
1235      * OBX-25: "Performing Organization Medical Director" - creates it if necessary
1236      */
1237     public XCN getPerformingOrganizationMedicalDirector() { 
1238 		XCN retVal = this.getTypedField(25, 0);
1239 		return retVal;
1240     }
1241     
1242     /**
1243      * Returns
1244      * OBX-25: "Performing Organization Medical Director" - creates it if necessary
1245      */
1246     public XCN getObx25_PerformingOrganizationMedicalDirector() { 
1247 		XCN retVal = this.getTypedField(25, 0);
1248 		return retVal;
1249     }
1250 
1251 
1252 
1253     /**
1254      * Returns
1255      * OBX-26: "Patient Results Release Category" - creates it if necessary
1256      */
1257     public ID getPatientResultsReleaseCategory() { 
1258 		ID retVal = this.getTypedField(26, 0);
1259 		return retVal;
1260     }
1261     
1262     /**
1263      * Returns
1264      * OBX-26: "Patient Results Release Category" - creates it if necessary
1265      */
1266     public ID getObx26_PatientResultsReleaseCategory() { 
1267 		ID retVal = this.getTypedField(26, 0);
1268 		return retVal;
1269     }
1270 
1271 
1272 
1273     /**
1274      * Returns
1275      * OBX-27: "Root Cause" - creates it if necessary
1276      */
1277     public CWE getRootCause() { 
1278 		CWE retVal = this.getTypedField(27, 0);
1279 		return retVal;
1280     }
1281     
1282     /**
1283      * Returns
1284      * OBX-27: "Root Cause" - creates it if necessary
1285      */
1286     public CWE getObx27_RootCause() { 
1287 		CWE retVal = this.getTypedField(27, 0);
1288 		return retVal;
1289     }
1290 
1291 
1292     /**
1293      * Returns all repetitions of Local Process Control (OBX-28).
1294      */
1295     public CWE[] getLocalProcessControl() {
1296     	CWE[] retVal = this.getTypedField(28, new CWE[0]);
1297     	return retVal;
1298     }
1299 
1300 
1301     /**
1302      * Returns all repetitions of Local Process Control (OBX-28).
1303      */
1304     public CWE[] getObx28_LocalProcessControl() {
1305     	CWE[] retVal = this.getTypedField(28, new CWE[0]);
1306     	return retVal;
1307     }
1308 
1309 
1310     /**
1311      * Returns a count of the current number of repetitions of Local Process Control (OBX-28).
1312      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1313      * it will return zero.
1314      */
1315     public int getLocalProcessControlReps() {
1316     	return this.getReps(28);
1317     }
1318 
1319 
1320     /**
1321      * Returns a specific repetition of
1322      * OBX-28: "Local Process Control" - creates it if necessary
1323      *
1324      * @param rep The repetition index (0-indexed)
1325      */
1326     public CWE getLocalProcessControl(int rep) { 
1327 		CWE retVal = this.getTypedField(28, rep);
1328 		return retVal;
1329     }
1330 
1331     /**
1332      * Returns a specific repetition of
1333      * OBX-28: "Local Process Control" - creates it if necessary
1334      *
1335      * @param rep The repetition index (0-indexed)
1336      */
1337     public CWE getObx28_LocalProcessControl(int rep) { 
1338 		CWE retVal = this.getTypedField(28, rep);
1339 		return retVal;
1340     }
1341 
1342     /**
1343      * Returns a count of the current number of repetitions of Local Process Control (OBX-28).
1344      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1345      * it will return zero.
1346      */
1347     public int getObx28_LocalProcessControlReps() {
1348     	return this.getReps(28);
1349     }
1350 
1351 
1352     /**
1353      * Inserts a repetition of
1354      * OBX-28: "Local Process Control" at a specific index
1355      *
1356      * @param rep The repetition index (0-indexed)
1357      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1358      */
1359     public CWE insertLocalProcessControl(int rep) throws HL7Exception { 
1360         return (CWE) super.insertRepetition(28, rep);
1361     }
1362 
1363 
1364     /**
1365      * Inserts a repetition of
1366      * OBX-28: "Local Process Control" at a specific index
1367      *
1368      * @param rep The repetition index (0-indexed)
1369      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1370      */
1371     public CWE insertObx28_LocalProcessControl(int rep) throws HL7Exception { 
1372         return (CWE) super.insertRepetition(28, rep);
1373     }
1374 
1375 
1376     /**
1377      * Removes a repetition of
1378      * OBX-28: "Local Process Control" at a specific index
1379      *
1380      * @param rep The repetition index (0-indexed)
1381      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1382      */
1383     public CWE removeLocalProcessControl(int rep) throws HL7Exception { 
1384         return (CWE) super.removeRepetition(28, rep);
1385     }
1386 
1387 
1388     /**
1389      * Removes a repetition of
1390      * OBX-28: "Local Process Control" at a specific index
1391      *
1392      * @param rep The repetition index (0-indexed)
1393      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1394      */
1395     public CWE removeObx28_LocalProcessControl(int rep) throws HL7Exception { 
1396         return (CWE) super.removeRepetition(28, rep);
1397     }
1398 
1399 
1400 
1401 
1402 
1403 
1404     /** {@inheritDoc} */   
1405     protected Type createNewTypeWithoutReflection(int field) {
1406        switch (field) {
1407           case 0: return new SI(getMessage());
1408           case 1: return new ID(getMessage(), new Integer( 125 ));
1409           case 2: return new CWE(getMessage());
1410           case 3: return new ST(getMessage());
1411           case 4: return new Varies(getMessage());
1412           case 5: return new CWE(getMessage());
1413           case 6: return new ST(getMessage());
1414           case 7: return new CWE(getMessage());
1415           case 8: return new NM(getMessage());
1416           case 9: return new ID(getMessage(), new Integer( 80 ));
1417           case 10: return new ID(getMessage(), new Integer( 85 ));
1418           case 11: return new DTM(getMessage());
1419           case 12: return new ST(getMessage());
1420           case 13: return new DTM(getMessage());
1421           case 14: return new CWE(getMessage());
1422           case 15: return new XCN(getMessage());
1423           case 16: return new CWE(getMessage());
1424           case 17: return new EI(getMessage());
1425           case 18: return new DTM(getMessage());
1426           case 19: return new CWE(getMessage());
1427           case 20: return new EI(getMessage());
1428           case 21: return new CNE(getMessage());
1429           case 22: return new XON(getMessage());
1430           case 23: return new XAD(getMessage());
1431           case 24: return new XCN(getMessage());
1432           case 25: return new ID(getMessage(), new Integer( 909 ));
1433           case 26: return new CWE(getMessage());
1434           case 27: return new CWE(getMessage());
1435           default: return null;
1436        }
1437    }
1438 
1439 
1440 }
1441