001    /*
002     * This class is an auto-generated source file for a HAPI
003     * HL7 v2.x standard structure class.
004     *
005     * For more information, visit: http://hl7api.sourceforge.net/
006     */
007    
008    package ca.uhn.hl7v2.model.v24.segment;
009    
010    // import ca.uhn.hl7v2.model.v24.group.*;
011    import ca.uhn.hl7v2.model.v24.datatype.*;
012    import ca.uhn.log.HapiLogFactory;
013    import ca.uhn.hl7v2.HL7Exception;
014    import ca.uhn.hl7v2.parser.ModelClassFactory;
015    import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
016    import ca.uhn.hl7v2.model.AbstractMessage;
017    import ca.uhn.hl7v2.model.Group;
018    import ca.uhn.hl7v2.model.Type;
019    import ca.uhn.hl7v2.model.AbstractSegment;
020    import ca.uhn.hl7v2.model.Varies;
021    
022    /**
023     *<p>Represents an HL7 OM1 message segment (General Segment). 
024     * This segment has the following fields:</p>
025     * <ul>
026         * <li>OM1-1: Sequence Number - Test/ Observation Master File (NM) <b> </b>
027         * <li>OM1-2: Producer's Service/Test/Observation ID (CE) <b> </b>
028         * <li>OM1-3: Permitted Data Types (ID) <b>optional repeating</b>
029         * <li>OM1-4: Specimen Required (ID) <b> </b>
030         * <li>OM1-5: Producer ID (CE) <b> </b>
031         * <li>OM1-6: Observation Description (TX) <b>optional </b>
032         * <li>OM1-7: Other Service/Test/Observation IDs for the Observation (CE) <b>optional </b>
033         * <li>OM1-8: Other Names (ST) <b> repeating</b>
034         * <li>OM1-9: Preferred Report Name for the Observation (ST) <b>optional </b>
035         * <li>OM1-10: Preferred Short Name or Mnemonic for Observation (ST) <b>optional </b>
036         * <li>OM1-11: Preferred Long Name for the Observation (ST) <b>optional </b>
037         * <li>OM1-12: Orderability (ID) <b>optional </b>
038         * <li>OM1-13: Identity of Instrument Used to Perform this Study (CE) <b>optional repeating</b>
039         * <li>OM1-14: Coded Representation of Method (CE) <b>optional repeating</b>
040         * <li>OM1-15: Portable Device Indicator (ID) <b>optional </b>
041         * <li>OM1-16: Observation Producing Department/Section (CE) <b>optional repeating</b>
042         * <li>OM1-17: Telephone Number of Section (XTN) <b>optional </b>
043         * <li>OM1-18: Nature of Service/Test/Observation (IS) <b> </b>
044         * <li>OM1-19: Report Subheader (CE) <b>optional </b>
045         * <li>OM1-20: Report Display Order (ST) <b>optional </b>
046         * <li>OM1-21: Date/Time Stamp for any change in Definition for the Observation (TS) <b>optional </b>
047         * <li>OM1-22: Effective Date/Time of Change (TS) <b>optional </b>
048         * <li>OM1-23: Typical Turn-Around Time (NM) <b>optional </b>
049         * <li>OM1-24: Processing Time (NM) <b>optional </b>
050         * <li>OM1-25: Processing Priority (ID) <b>optional repeating</b>
051         * <li>OM1-26: Reporting Priority (ID) <b>optional </b>
052         * <li>OM1-27: Outside Site(s) Where Observation may be Performed (CE) <b>optional repeating</b>
053         * <li>OM1-28: Address of Outside Site(s) (XAD) <b>optional repeating</b>
054         * <li>OM1-29: Phone Number of Outside Site (XTN) <b>optional </b>
055         * <li>OM1-30: Confidentiality Code (IS) <b>optional </b>
056         * <li>OM1-31: Observations Required to Interpret the Observation (CE) <b>optional </b>
057         * <li>OM1-32: Interpretation of Observations (TX) <b>optional </b>
058         * <li>OM1-33: Contraindications to Observations (CE) <b>optional </b>
059         * <li>OM1-34: Reflex Tests/Observations (CE) <b>optional repeating</b>
060         * <li>OM1-35: Rules that Trigger Reflex Testing (TX) <b>optional </b>
061         * <li>OM1-36: Fixed Canned Message (CE) <b>optional </b>
062         * <li>OM1-37: Patient Preparation (TX) <b>optional </b>
063         * <li>OM1-38: Procedure Medication (CE) <b>optional </b>
064         * <li>OM1-39: Factors that may Affect Affect the Observation (TX) <b>optional </b>
065         * <li>OM1-40: Service/Test/Observation Performance Schedule (ST) <b>optional repeating</b>
066         * <li>OM1-41: Description of Test Methods (TX) <b>optional </b>
067         * <li>OM1-42: Kind of Quantity Observed (CE) <b>optional </b>
068         * <li>OM1-43: Point Versus Interval (CE) <b>optional </b>
069         * <li>OM1-44: Challenge Information (TX) <b>optional </b>
070         * <li>OM1-45: Relationship Modifier (CE) <b>optional </b>
071         * <li>OM1-46: Target Anatomic Site Of Test (CE) <b>optional </b>
072         * <li>OM1-47: Modality Of Imaging Measurement (CE) <b>optional </b>
073     * </ul>
074     */
075    public class OM1 extends AbstractSegment {
076    
077        /** 
078         * Creates a new OM1 segment
079         */
080        public OM1(Group parent, ModelClassFactory factory) {
081           super(parent, factory);
082           init(factory);
083        }
084    
085        private void init(ModelClassFactory factory) {
086           try {
087                                      this.add(NM.class, true, 1, 4, new Object[]{ getMessage(), new Integer(0) }, "Sequence Number - Test/ Observation Master File");
088                                      this.add(CE.class, true, 1, 250, new Object[]{ getMessage(), new Integer(9999) }, "Producer's Service/Test/Observation ID");
089                                      this.add(ID.class, false, 0, 12, new Object[]{ getMessage() }, "Permitted Data Types");
090                                      this.add(ID.class, true, 1, 1, new Object[]{ getMessage() }, "Specimen Required");
091                                      this.add(CE.class, true, 1, 250, new Object[]{ getMessage(), new Integer(9999) }, "Producer ID");
092                                      this.add(TX.class, false, 1, 200, new Object[]{ getMessage(), new Integer(0) }, "Observation Description");
093                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(9999) }, "Other Service/Test/Observation IDs for the Observation");
094                                      this.add(ST.class, true, 0, 200, new Object[]{ getMessage(), new Integer(0) }, "Other Names");
095                                      this.add(ST.class, false, 1, 30, new Object[]{ getMessage(), new Integer(0) }, "Preferred Report Name for the Observation");
096                                      this.add(ST.class, false, 1, 8, new Object[]{ getMessage(), new Integer(0) }, "Preferred Short Name or Mnemonic for Observation");
097                                      this.add(ST.class, false, 1, 200, new Object[]{ getMessage(), new Integer(0) }, "Preferred Long Name for the Observation");
098                                      this.add(ID.class, false, 1, 1, new Object[]{ getMessage() }, "Orderability");
099                                      this.add(CE.class, false, 0, 250, new Object[]{ getMessage(), new Integer(9999) }, "Identity of Instrument Used to Perform this Study");
100                                      this.add(CE.class, false, 0, 250, new Object[]{ getMessage(), new Integer(9999) }, "Coded Representation of Method");
101                                      this.add(ID.class, false, 1, 1, new Object[]{ getMessage() }, "Portable Device Indicator");
102                                      this.add(CE.class, false, 0, 250, new Object[]{ getMessage(), new Integer(9999) }, "Observation Producing Department/Section");
103                                      this.add(XTN.class, false, 1, 250, new Object[]{ getMessage(), new Integer(0) }, "Telephone Number of Section");
104                                      this.add(IS.class, true, 1, 1, new Object[]{ getMessage() }, "Nature of Service/Test/Observation");
105                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(9999) }, "Report Subheader");
106                                      this.add(ST.class, false, 1, 20, new Object[]{ getMessage(), new Integer(0) }, "Report Display Order");
107                                      this.add(TS.class, false, 1, 26, new Object[]{ getMessage(), new Integer(0) }, "Date/Time Stamp for any change in Definition for the Observation");
108                                      this.add(TS.class, false, 1, 26, new Object[]{ getMessage(), new Integer(0) }, "Effective Date/Time of Change");
109                                      this.add(NM.class, false, 1, 20, new Object[]{ getMessage(), new Integer(0) }, "Typical Turn-Around Time");
110                                      this.add(NM.class, false, 1, 20, new Object[]{ getMessage(), new Integer(0) }, "Processing Time");
111                                      this.add(ID.class, false, 0, 40, new Object[]{ getMessage() }, "Processing Priority");
112                                      this.add(ID.class, false, 1, 5, new Object[]{ getMessage() }, "Reporting Priority");
113                                      this.add(CE.class, false, 0, 250, new Object[]{ getMessage(), new Integer(9999) }, "Outside Site(s) Where Observation may be Performed");
114                                      this.add(XAD.class, false, 0, 1000, new Object[]{ getMessage(), new Integer(0) }, "Address of Outside Site(s)");
115                                      this.add(XTN.class, false, 1, 400, new Object[]{ getMessage(), new Integer(0) }, "Phone Number of Outside Site");
116                                      this.add(IS.class, false, 1, 1, new Object[]{ getMessage() }, "Confidentiality Code");
117                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(9999) }, "Observations Required to Interpret the Observation");
118                                      this.add(TX.class, false, 1, 65536, new Object[]{ getMessage(), new Integer(0) }, "Interpretation of Observations");
119                                      this.add(CE.class, false, 1, 65536, new Object[]{ getMessage(), new Integer(9999) }, "Contraindications to Observations");
120                                      this.add(CE.class, false, 0, 250, new Object[]{ getMessage(), new Integer(9999) }, "Reflex Tests/Observations");
121                                      this.add(TX.class, false, 1, 80, new Object[]{ getMessage(), new Integer(0) }, "Rules that Trigger Reflex Testing");
122                                      this.add(CE.class, false, 1, 65536, new Object[]{ getMessage(), new Integer(9999) }, "Fixed Canned Message");
123                                      this.add(TX.class, false, 1, 200, new Object[]{ getMessage(), new Integer(0) }, "Patient Preparation");
124                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(9999) }, "Procedure Medication");
125                                      this.add(TX.class, false, 1, 200, new Object[]{ getMessage(), new Integer(0) }, "Factors that may Affect Affect the Observation");
126                                      this.add(ST.class, false, 0, 60, new Object[]{ getMessage(), new Integer(0) }, "Service/Test/Observation Performance Schedule");
127                                      this.add(TX.class, false, 1, 65536, new Object[]{ getMessage(), new Integer(0) }, "Description of Test Methods");
128                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(254) }, "Kind of Quantity Observed");
129                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(255) }, "Point Versus Interval");
130                                      this.add(TX.class, false, 1, 200, new Object[]{ getMessage(), new Integer(256) }, "Challenge Information");
131                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(258) }, "Relationship Modifier");
132                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(9999) }, "Target Anatomic Site Of Test");
133                                      this.add(CE.class, false, 1, 250, new Object[]{ getMessage(), new Integer(259) }, "Modality Of Imaging Measurement");
134           } catch(HL7Exception e) {
135              HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected error creating OM1 - this is probably a bug in the source code generator.", e);
136           }
137        }
138    
139    
140    
141        /**
142         * Returns
143         * OM1-1: "Sequence Number - Test/ Observation Master File" - creates it if necessary
144         */
145        public NM getSequenceNumberTestObservationMasterFile() { 
146            NM ret = null;
147            try {
148                Type t = this.getField(1, 0);
149                ret = (NM)t;
150            } catch (ClassCastException cce) {
151                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
152                throw new RuntimeException(cce);
153            } catch (HL7Exception he) {
154                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
155                throw new RuntimeException(he);
156            }
157            return ret;
158        }
159    
160    
161        /**
162         * Returns
163         * OM1-1: "Sequence Number - Test/ Observation Master File" - creates it if necessary
164         */
165        public NM getOm11_SequenceNumberTestObservationMasterFile() { 
166            NM ret = null;
167            try {
168                Type t = this.getField(1, 0);
169                ret = (NM)t;
170            } catch (ClassCastException cce) {
171                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
172                throw new RuntimeException(cce);
173            } catch (HL7Exception he) {
174                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
175                throw new RuntimeException(he);
176            }
177            return ret;
178        }
179    
180    
181    
182        /**
183         * Returns
184         * OM1-2: "Producer's Service/Test/Observation ID" - creates it if necessary
185         */
186        public CE getProducerSServiceTestObservationID() { 
187            CE ret = null;
188            try {
189                Type t = this.getField(2, 0);
190                ret = (CE)t;
191            } catch (ClassCastException cce) {
192                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
193                throw new RuntimeException(cce);
194            } catch (HL7Exception he) {
195                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
196                throw new RuntimeException(he);
197            }
198            return ret;
199        }
200    
201    
202        /**
203         * Returns
204         * OM1-2: "Producer's Service/Test/Observation ID" - creates it if necessary
205         */
206        public CE getOm12_ProducerSServiceTestObservationID() { 
207            CE ret = null;
208            try {
209                Type t = this.getField(2, 0);
210                ret = (CE)t;
211            } catch (ClassCastException cce) {
212                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
213                throw new RuntimeException(cce);
214            } catch (HL7Exception he) {
215                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
216                throw new RuntimeException(he);
217            }
218            return ret;
219        }
220    
221    
222        /**
223         * Returns all repetitions of Permitted Data Types (OM1-3).
224         */
225        public ID[] getPermittedDataTypes() {
226            ID[] ret = null;
227            try {
228                Type[] t = this.getField(3);  
229                ret = new ID[t.length];
230                for (int i = 0; i < ret.length; i++) {
231                    ret[i] = (ID)t[i];
232                }
233            } catch (ClassCastException cce) {
234                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
235                throw new RuntimeException(cce);
236            } catch (HL7Exception he) {
237                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
238                throw new RuntimeException(he);
239            }
240            return ret;
241        }
242    
243    
244        /**
245         * Returns a count of the current number of repetitions of Permitted Data Types (OM1-3).
246         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
247         * it will return zero.
248         */
249        public int getPermittedDataTypesReps() {
250            ID[] ret = null;
251            try {
252                Type[] t = this.getField(3);
253                return t.length;  
254            } catch (ClassCastException cce) {
255                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
256                throw new RuntimeException(cce);
257            } catch (HL7Exception he) {
258                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
259                throw new RuntimeException(he);
260            }
261        }
262    
263    
264        /**
265         * Returns a specific repetition of
266         * OM1-3: "Permitted Data Types" - creates it if necessary
267         *
268         * @param rep The repetition index (0-indexed)
269         */
270        public ID getPermittedDataTypes(int rep) { 
271            ID ret = null;
272            try {
273                Type t = this.getField(3, rep);
274                ret = (ID)t;
275            } catch (ClassCastException cce) {
276                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
277                throw new RuntimeException(cce);
278            } catch (HL7Exception he) {
279                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
280                throw new RuntimeException(he);
281            }
282            return ret;
283        }
284    
285        /**
286         * Returns a specific repetition of
287         * OM1-3: "Permitted Data Types" - creates it if necessary
288         *
289         * @param rep The repetition index (0-indexed)
290         */
291        public ID getOm13_PermittedDataTypes(int rep) { 
292            ID ret = null;
293            try {
294                Type t = this.getField(3, rep);
295                ret = (ID)t;
296            } catch (ClassCastException cce) {
297                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
298                throw new RuntimeException(cce);
299            } catch (HL7Exception he) {
300                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
301                throw new RuntimeException(he);
302            }
303            return ret;
304        }
305    
306    
307        /**
308         * Returns a count of the current number of repetitions of Permitted Data Types (OM1-3).
309         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
310         * it will return zero.
311         */
312        public int getOm13_PermittedDataTypesReps() {
313            ID[] ret = null;
314            try {
315                Type[] t = this.getField(3);
316                return t.length;  
317            } catch (ClassCastException cce) {
318                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
319                throw new RuntimeException(cce);
320            } catch (HL7Exception he) {
321                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
322                throw new RuntimeException(he);
323            }
324        }
325    
326    
327    
328        /**
329         * Inserts a repetition of
330         * OM1-3: "Permitted Data Types" at a specific index
331         *
332         * @param rep The repetition index (0-indexed)
333         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
334         */
335        public ID insertPermittedDataTypes(int rep) throws HL7Exception { 
336            return (ID) super.insertRepetition(3, rep);
337        }
338    
339    
340    
341        /**
342         * Inserts a repetition of
343         * OM1-3: "Permitted Data Types" at a specific index
344         *
345         * @param rep The repetition index (0-indexed)
346         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
347         */
348        public ID insertOm13_PermittedDataTypes(int rep) throws HL7Exception { 
349            return (ID) super.insertRepetition(3, rep);
350        }
351    
352    
353        /**
354         * Removes a repetition of
355         * OM1-3: "Permitted Data Types" at a specific index
356         *
357         * @param rep The repetition index (0-indexed)
358         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
359         */
360        public ID removePermittedDataTypes(int rep) throws HL7Exception { 
361            return (ID) super.removeRepetition(3, rep);
362        }
363    
364    
365        /**
366         * Removes a repetition of
367         * OM1-3: "Permitted Data Types" at a specific index
368         *
369         * @param rep The repetition index (0-indexed)
370         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
371         */
372        public ID removeOm13_PermittedDataTypes(int rep) throws HL7Exception { 
373            return (ID) super.removeRepetition(3, rep);
374        }
375    
376    
377    
378    
379        /**
380         * Returns
381         * OM1-4: "Specimen Required" - creates it if necessary
382         */
383        public ID getSpecimenRequired() { 
384            ID ret = null;
385            try {
386                Type t = this.getField(4, 0);
387                ret = (ID)t;
388            } catch (ClassCastException cce) {
389                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
390                throw new RuntimeException(cce);
391            } catch (HL7Exception he) {
392                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
393                throw new RuntimeException(he);
394            }
395            return ret;
396        }
397    
398    
399        /**
400         * Returns
401         * OM1-4: "Specimen Required" - creates it if necessary
402         */
403        public ID getOm14_SpecimenRequired() { 
404            ID ret = null;
405            try {
406                Type t = this.getField(4, 0);
407                ret = (ID)t;
408            } catch (ClassCastException cce) {
409                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
410                throw new RuntimeException(cce);
411            } catch (HL7Exception he) {
412                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
413                throw new RuntimeException(he);
414            }
415            return ret;
416        }
417    
418    
419    
420        /**
421         * Returns
422         * OM1-5: "Producer ID" - creates it if necessary
423         */
424        public CE getProducerID() { 
425            CE ret = null;
426            try {
427                Type t = this.getField(5, 0);
428                ret = (CE)t;
429            } catch (ClassCastException cce) {
430                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
431                throw new RuntimeException(cce);
432            } catch (HL7Exception he) {
433                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
434                throw new RuntimeException(he);
435            }
436            return ret;
437        }
438    
439    
440        /**
441         * Returns
442         * OM1-5: "Producer ID" - creates it if necessary
443         */
444        public CE getOm15_ProducerID() { 
445            CE ret = null;
446            try {
447                Type t = this.getField(5, 0);
448                ret = (CE)t;
449            } catch (ClassCastException cce) {
450                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
451                throw new RuntimeException(cce);
452            } catch (HL7Exception he) {
453                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
454                throw new RuntimeException(he);
455            }
456            return ret;
457        }
458    
459    
460    
461        /**
462         * Returns
463         * OM1-6: "Observation Description" - creates it if necessary
464         */
465        public TX getObservationDescription() { 
466            TX ret = null;
467            try {
468                Type t = this.getField(6, 0);
469                ret = (TX)t;
470            } catch (ClassCastException cce) {
471                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
472                throw new RuntimeException(cce);
473            } catch (HL7Exception he) {
474                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
475                throw new RuntimeException(he);
476            }
477            return ret;
478        }
479    
480    
481        /**
482         * Returns
483         * OM1-6: "Observation Description" - creates it if necessary
484         */
485        public TX getOm16_ObservationDescription() { 
486            TX ret = null;
487            try {
488                Type t = this.getField(6, 0);
489                ret = (TX)t;
490            } catch (ClassCastException cce) {
491                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
492                throw new RuntimeException(cce);
493            } catch (HL7Exception he) {
494                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
495                throw new RuntimeException(he);
496            }
497            return ret;
498        }
499    
500    
501    
502        /**
503         * Returns
504         * OM1-7: "Other Service/Test/Observation IDs for the Observation" - creates it if necessary
505         */
506        public CE getOtherServiceTestObservationIDsForTheObservation() { 
507            CE ret = null;
508            try {
509                Type t = this.getField(7, 0);
510                ret = (CE)t;
511            } catch (ClassCastException cce) {
512                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
513                throw new RuntimeException(cce);
514            } catch (HL7Exception he) {
515                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
516                throw new RuntimeException(he);
517            }
518            return ret;
519        }
520    
521    
522        /**
523         * Returns
524         * OM1-7: "Other Service/Test/Observation IDs for the Observation" - creates it if necessary
525         */
526        public CE getOm17_OtherServiceTestObservationIDsForTheObservation() { 
527            CE ret = null;
528            try {
529                Type t = this.getField(7, 0);
530                ret = (CE)t;
531            } catch (ClassCastException cce) {
532                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
533                throw new RuntimeException(cce);
534            } catch (HL7Exception he) {
535                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
536                throw new RuntimeException(he);
537            }
538            return ret;
539        }
540    
541    
542        /**
543         * Returns all repetitions of Other Names (OM1-8).
544         */
545        public ST[] getOtherNames() {
546            ST[] ret = null;
547            try {
548                Type[] t = this.getField(8);  
549                ret = new ST[t.length];
550                for (int i = 0; i < ret.length; i++) {
551                    ret[i] = (ST)t[i];
552                }
553            } catch (ClassCastException cce) {
554                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
555                throw new RuntimeException(cce);
556            } catch (HL7Exception he) {
557                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
558                throw new RuntimeException(he);
559            }
560            return ret;
561        }
562    
563    
564        /**
565         * Returns a count of the current number of repetitions of Other Names (OM1-8).
566         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
567         * it will return zero.
568         */
569        public int getOtherNamesReps() {
570            ST[] ret = null;
571            try {
572                Type[] t = this.getField(8);
573                return t.length;  
574            } catch (ClassCastException cce) {
575                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
576                throw new RuntimeException(cce);
577            } catch (HL7Exception he) {
578                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
579                throw new RuntimeException(he);
580            }
581        }
582    
583    
584        /**
585         * Returns a specific repetition of
586         * OM1-8: "Other Names" - creates it if necessary
587         *
588         * @param rep The repetition index (0-indexed)
589         */
590        public ST getOtherNames(int rep) { 
591            ST ret = null;
592            try {
593                Type t = this.getField(8, rep);
594                ret = (ST)t;
595            } catch (ClassCastException cce) {
596                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
597                throw new RuntimeException(cce);
598            } catch (HL7Exception he) {
599                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
600                throw new RuntimeException(he);
601            }
602            return ret;
603        }
604    
605        /**
606         * Returns a specific repetition of
607         * OM1-8: "Other Names" - creates it if necessary
608         *
609         * @param rep The repetition index (0-indexed)
610         */
611        public ST getOm18_OtherNames(int rep) { 
612            ST ret = null;
613            try {
614                Type t = this.getField(8, rep);
615                ret = (ST)t;
616            } catch (ClassCastException cce) {
617                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
618                throw new RuntimeException(cce);
619            } catch (HL7Exception he) {
620                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
621                throw new RuntimeException(he);
622            }
623            return ret;
624        }
625    
626    
627        /**
628         * Returns a count of the current number of repetitions of Other Names (OM1-8).
629         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
630         * it will return zero.
631         */
632        public int getOm18_OtherNamesReps() {
633            ST[] ret = null;
634            try {
635                Type[] t = this.getField(8);
636                return t.length;  
637            } catch (ClassCastException cce) {
638                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
639                throw new RuntimeException(cce);
640            } catch (HL7Exception he) {
641                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
642                throw new RuntimeException(he);
643            }
644        }
645    
646    
647    
648        /**
649         * Inserts a repetition of
650         * OM1-8: "Other Names" at a specific index
651         *
652         * @param rep The repetition index (0-indexed)
653         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
654         */
655        public ST insertOtherNames(int rep) throws HL7Exception { 
656            return (ST) super.insertRepetition(8, rep);
657        }
658    
659    
660    
661        /**
662         * Inserts a repetition of
663         * OM1-8: "Other Names" at a specific index
664         *
665         * @param rep The repetition index (0-indexed)
666         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
667         */
668        public ST insertOm18_OtherNames(int rep) throws HL7Exception { 
669            return (ST) super.insertRepetition(8, rep);
670        }
671    
672    
673        /**
674         * Removes a repetition of
675         * OM1-8: "Other Names" at a specific index
676         *
677         * @param rep The repetition index (0-indexed)
678         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
679         */
680        public ST removeOtherNames(int rep) throws HL7Exception { 
681            return (ST) super.removeRepetition(8, rep);
682        }
683    
684    
685        /**
686         * Removes a repetition of
687         * OM1-8: "Other Names" at a specific index
688         *
689         * @param rep The repetition index (0-indexed)
690         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
691         */
692        public ST removeOm18_OtherNames(int rep) throws HL7Exception { 
693            return (ST) super.removeRepetition(8, rep);
694        }
695    
696    
697    
698    
699        /**
700         * Returns
701         * OM1-9: "Preferred Report Name for the Observation" - creates it if necessary
702         */
703        public ST getPreferredReportNameForTheObservation() { 
704            ST ret = null;
705            try {
706                Type t = this.getField(9, 0);
707                ret = (ST)t;
708            } catch (ClassCastException cce) {
709                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
710                throw new RuntimeException(cce);
711            } catch (HL7Exception he) {
712                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
713                throw new RuntimeException(he);
714            }
715            return ret;
716        }
717    
718    
719        /**
720         * Returns
721         * OM1-9: "Preferred Report Name for the Observation" - creates it if necessary
722         */
723        public ST getOm19_PreferredReportNameForTheObservation() { 
724            ST ret = null;
725            try {
726                Type t = this.getField(9, 0);
727                ret = (ST)t;
728            } catch (ClassCastException cce) {
729                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
730                throw new RuntimeException(cce);
731            } catch (HL7Exception he) {
732                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
733                throw new RuntimeException(he);
734            }
735            return ret;
736        }
737    
738    
739    
740        /**
741         * Returns
742         * OM1-10: "Preferred Short Name or Mnemonic for Observation" - creates it if necessary
743         */
744        public ST getPreferredShortNameOrMnemonicForObservation() { 
745            ST ret = null;
746            try {
747                Type t = this.getField(10, 0);
748                ret = (ST)t;
749            } catch (ClassCastException cce) {
750                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
751                throw new RuntimeException(cce);
752            } catch (HL7Exception he) {
753                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
754                throw new RuntimeException(he);
755            }
756            return ret;
757        }
758    
759    
760        /**
761         * Returns
762         * OM1-10: "Preferred Short Name or Mnemonic for Observation" - creates it if necessary
763         */
764        public ST getOm110_PreferredShortNameOrMnemonicForObservation() { 
765            ST ret = null;
766            try {
767                Type t = this.getField(10, 0);
768                ret = (ST)t;
769            } catch (ClassCastException cce) {
770                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
771                throw new RuntimeException(cce);
772            } catch (HL7Exception he) {
773                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
774                throw new RuntimeException(he);
775            }
776            return ret;
777        }
778    
779    
780    
781        /**
782         * Returns
783         * OM1-11: "Preferred Long Name for the Observation" - creates it if necessary
784         */
785        public ST getPreferredLongNameForTheObservation() { 
786            ST ret = null;
787            try {
788                Type t = this.getField(11, 0);
789                ret = (ST)t;
790            } catch (ClassCastException cce) {
791                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
792                throw new RuntimeException(cce);
793            } catch (HL7Exception he) {
794                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
795                throw new RuntimeException(he);
796            }
797            return ret;
798        }
799    
800    
801        /**
802         * Returns
803         * OM1-11: "Preferred Long Name for the Observation" - creates it if necessary
804         */
805        public ST getOm111_PreferredLongNameForTheObservation() { 
806            ST ret = null;
807            try {
808                Type t = this.getField(11, 0);
809                ret = (ST)t;
810            } catch (ClassCastException cce) {
811                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
812                throw new RuntimeException(cce);
813            } catch (HL7Exception he) {
814                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
815                throw new RuntimeException(he);
816            }
817            return ret;
818        }
819    
820    
821    
822        /**
823         * Returns
824         * OM1-12: "Orderability" - creates it if necessary
825         */
826        public ID getOrderability() { 
827            ID ret = null;
828            try {
829                Type t = this.getField(12, 0);
830                ret = (ID)t;
831            } catch (ClassCastException cce) {
832                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
833                throw new RuntimeException(cce);
834            } catch (HL7Exception he) {
835                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
836                throw new RuntimeException(he);
837            }
838            return ret;
839        }
840    
841    
842        /**
843         * Returns
844         * OM1-12: "Orderability" - creates it if necessary
845         */
846        public ID getOm112_Orderability() { 
847            ID ret = null;
848            try {
849                Type t = this.getField(12, 0);
850                ret = (ID)t;
851            } catch (ClassCastException cce) {
852                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
853                throw new RuntimeException(cce);
854            } catch (HL7Exception he) {
855                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
856                throw new RuntimeException(he);
857            }
858            return ret;
859        }
860    
861    
862        /**
863         * Returns all repetitions of Identity of Instrument Used to Perform this Study (OM1-13).
864         */
865        public CE[] getIdentityOfInstrumentUsedToPerformThisStudy() {
866            CE[] ret = null;
867            try {
868                Type[] t = this.getField(13);  
869                ret = new CE[t.length];
870                for (int i = 0; i < ret.length; i++) {
871                    ret[i] = (CE)t[i];
872                }
873            } catch (ClassCastException cce) {
874                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
875                throw new RuntimeException(cce);
876            } catch (HL7Exception he) {
877                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
878                throw new RuntimeException(he);
879            }
880            return ret;
881        }
882    
883    
884        /**
885         * Returns a count of the current number of repetitions of Identity of Instrument Used to Perform this Study (OM1-13).
886         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
887         * it will return zero.
888         */
889        public int getIdentityOfInstrumentUsedToPerformThisStudyReps() {
890            CE[] ret = null;
891            try {
892                Type[] t = this.getField(13);
893                return t.length;  
894            } catch (ClassCastException cce) {
895                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
896                throw new RuntimeException(cce);
897            } catch (HL7Exception he) {
898                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
899                throw new RuntimeException(he);
900            }
901        }
902    
903    
904        /**
905         * Returns a specific repetition of
906         * OM1-13: "Identity of Instrument Used to Perform this Study" - creates it if necessary
907         *
908         * @param rep The repetition index (0-indexed)
909         */
910        public CE getIdentityOfInstrumentUsedToPerformThisStudy(int rep) { 
911            CE ret = null;
912            try {
913                Type t = this.getField(13, rep);
914                ret = (CE)t;
915            } catch (ClassCastException cce) {
916                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
917                throw new RuntimeException(cce);
918            } catch (HL7Exception he) {
919                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
920                throw new RuntimeException(he);
921            }
922            return ret;
923        }
924    
925        /**
926         * Returns a specific repetition of
927         * OM1-13: "Identity of Instrument Used to Perform this Study" - creates it if necessary
928         *
929         * @param rep The repetition index (0-indexed)
930         */
931        public CE getOm113_IdentityOfInstrumentUsedToPerformThisStudy(int rep) { 
932            CE ret = null;
933            try {
934                Type t = this.getField(13, rep);
935                ret = (CE)t;
936            } catch (ClassCastException cce) {
937                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
938                throw new RuntimeException(cce);
939            } catch (HL7Exception he) {
940                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
941                throw new RuntimeException(he);
942            }
943            return ret;
944        }
945    
946    
947        /**
948         * Returns a count of the current number of repetitions of Identity of Instrument Used to Perform this Study (OM1-13).
949         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
950         * it will return zero.
951         */
952        public int getOm113_IdentityOfInstrumentUsedToPerformThisStudyReps() {
953            CE[] ret = null;
954            try {
955                Type[] t = this.getField(13);
956                return t.length;  
957            } catch (ClassCastException cce) {
958                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
959                throw new RuntimeException(cce);
960            } catch (HL7Exception he) {
961                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
962                throw new RuntimeException(he);
963            }
964        }
965    
966    
967    
968        /**
969         * Inserts a repetition of
970         * OM1-13: "Identity of Instrument Used to Perform this Study" 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 CE insertIdentityOfInstrumentUsedToPerformThisStudy(int rep) throws HL7Exception { 
976            return (CE) super.insertRepetition(13, rep);
977        }
978    
979    
980    
981        /**
982         * Inserts a repetition of
983         * OM1-13: "Identity of Instrument Used to Perform this Study" at a specific index
984         *
985         * @param rep The repetition index (0-indexed)
986         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
987         */
988        public CE insertOm113_IdentityOfInstrumentUsedToPerformThisStudy(int rep) throws HL7Exception { 
989            return (CE) super.insertRepetition(13, rep);
990        }
991    
992    
993        /**
994         * Removes a repetition of
995         * OM1-13: "Identity of Instrument Used to Perform this Study" at a specific index
996         *
997         * @param rep The repetition index (0-indexed)
998         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
999         */
1000        public CE removeIdentityOfInstrumentUsedToPerformThisStudy(int rep) throws HL7Exception { 
1001            return (CE) super.removeRepetition(13, rep);
1002        }
1003    
1004    
1005        /**
1006         * Removes a repetition of
1007         * OM1-13: "Identity of Instrument Used to Perform this Study" at a specific index
1008         *
1009         * @param rep The repetition index (0-indexed)
1010         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1011         */
1012        public CE removeOm113_IdentityOfInstrumentUsedToPerformThisStudy(int rep) throws HL7Exception { 
1013            return (CE) super.removeRepetition(13, rep);
1014        }
1015    
1016    
1017    
1018        /**
1019         * Returns all repetitions of Coded Representation of Method (OM1-14).
1020         */
1021        public CE[] getCodedRepresentationOfMethod() {
1022            CE[] ret = null;
1023            try {
1024                Type[] t = this.getField(14);  
1025                ret = new CE[t.length];
1026                for (int i = 0; i < ret.length; i++) {
1027                    ret[i] = (CE)t[i];
1028                }
1029            } catch (ClassCastException cce) {
1030                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1031                throw new RuntimeException(cce);
1032            } catch (HL7Exception he) {
1033                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1034                throw new RuntimeException(he);
1035            }
1036            return ret;
1037        }
1038    
1039    
1040        /**
1041         * Returns a count of the current number of repetitions of Coded Representation of Method (OM1-14).
1042         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1043         * it will return zero.
1044         */
1045        public int getCodedRepresentationOfMethodReps() {
1046            CE[] ret = null;
1047            try {
1048                Type[] t = this.getField(14);
1049                return t.length;  
1050            } catch (ClassCastException cce) {
1051                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1052                throw new RuntimeException(cce);
1053            } catch (HL7Exception he) {
1054                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1055                throw new RuntimeException(he);
1056            }
1057        }
1058    
1059    
1060        /**
1061         * Returns a specific repetition of
1062         * OM1-14: "Coded Representation of Method" - creates it if necessary
1063         *
1064         * @param rep The repetition index (0-indexed)
1065         */
1066        public CE getCodedRepresentationOfMethod(int rep) { 
1067            CE ret = null;
1068            try {
1069                Type t = this.getField(14, rep);
1070                ret = (CE)t;
1071            } catch (ClassCastException cce) {
1072                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1073                throw new RuntimeException(cce);
1074            } catch (HL7Exception he) {
1075                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1076                throw new RuntimeException(he);
1077            }
1078            return ret;
1079        }
1080    
1081        /**
1082         * Returns a specific repetition of
1083         * OM1-14: "Coded Representation of Method" - creates it if necessary
1084         *
1085         * @param rep The repetition index (0-indexed)
1086         */
1087        public CE getOm114_CodedRepresentationOfMethod(int rep) { 
1088            CE ret = null;
1089            try {
1090                Type t = this.getField(14, rep);
1091                ret = (CE)t;
1092            } catch (ClassCastException cce) {
1093                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1094                throw new RuntimeException(cce);
1095            } catch (HL7Exception he) {
1096                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1097                throw new RuntimeException(he);
1098            }
1099            return ret;
1100        }
1101    
1102    
1103        /**
1104         * Returns a count of the current number of repetitions of Coded Representation of Method (OM1-14).
1105         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1106         * it will return zero.
1107         */
1108        public int getOm114_CodedRepresentationOfMethodReps() {
1109            CE[] ret = null;
1110            try {
1111                Type[] t = this.getField(14);
1112                return t.length;  
1113            } catch (ClassCastException cce) {
1114                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1115                throw new RuntimeException(cce);
1116            } catch (HL7Exception he) {
1117                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1118                throw new RuntimeException(he);
1119            }
1120        }
1121    
1122    
1123    
1124        /**
1125         * Inserts a repetition of
1126         * OM1-14: "Coded Representation of Method" at a specific index
1127         *
1128         * @param rep The repetition index (0-indexed)
1129         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1130         */
1131        public CE insertCodedRepresentationOfMethod(int rep) throws HL7Exception { 
1132            return (CE) super.insertRepetition(14, rep);
1133        }
1134    
1135    
1136    
1137        /**
1138         * Inserts a repetition of
1139         * OM1-14: "Coded Representation of Method" at a specific index
1140         *
1141         * @param rep The repetition index (0-indexed)
1142         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1143         */
1144        public CE insertOm114_CodedRepresentationOfMethod(int rep) throws HL7Exception { 
1145            return (CE) super.insertRepetition(14, rep);
1146        }
1147    
1148    
1149        /**
1150         * Removes a repetition of
1151         * OM1-14: "Coded Representation of Method" at a specific index
1152         *
1153         * @param rep The repetition index (0-indexed)
1154         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1155         */
1156        public CE removeCodedRepresentationOfMethod(int rep) throws HL7Exception { 
1157            return (CE) super.removeRepetition(14, rep);
1158        }
1159    
1160    
1161        /**
1162         * Removes a repetition of
1163         * OM1-14: "Coded Representation of Method" at a specific index
1164         *
1165         * @param rep The repetition index (0-indexed)
1166         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1167         */
1168        public CE removeOm114_CodedRepresentationOfMethod(int rep) throws HL7Exception { 
1169            return (CE) super.removeRepetition(14, rep);
1170        }
1171    
1172    
1173    
1174    
1175        /**
1176         * Returns
1177         * OM1-15: "Portable Device Indicator" - creates it if necessary
1178         */
1179        public ID getPortableDeviceIndicator() { 
1180            ID ret = null;
1181            try {
1182                Type t = this.getField(15, 0);
1183                ret = (ID)t;
1184            } catch (ClassCastException cce) {
1185                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1186                throw new RuntimeException(cce);
1187            } catch (HL7Exception he) {
1188                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1189                throw new RuntimeException(he);
1190            }
1191            return ret;
1192        }
1193    
1194    
1195        /**
1196         * Returns
1197         * OM1-15: "Portable Device Indicator" - creates it if necessary
1198         */
1199        public ID getOm115_PortableDeviceIndicator() { 
1200            ID ret = null;
1201            try {
1202                Type t = this.getField(15, 0);
1203                ret = (ID)t;
1204            } catch (ClassCastException cce) {
1205                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1206                throw new RuntimeException(cce);
1207            } catch (HL7Exception he) {
1208                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1209                throw new RuntimeException(he);
1210            }
1211            return ret;
1212        }
1213    
1214    
1215        /**
1216         * Returns all repetitions of Observation Producing Department/Section (OM1-16).
1217         */
1218        public CE[] getObservationProducingDepartmentSection() {
1219            CE[] ret = null;
1220            try {
1221                Type[] t = this.getField(16);  
1222                ret = new CE[t.length];
1223                for (int i = 0; i < ret.length; i++) {
1224                    ret[i] = (CE)t[i];
1225                }
1226            } catch (ClassCastException cce) {
1227                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1228                throw new RuntimeException(cce);
1229            } catch (HL7Exception he) {
1230                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1231                throw new RuntimeException(he);
1232            }
1233            return ret;
1234        }
1235    
1236    
1237        /**
1238         * Returns a count of the current number of repetitions of Observation Producing Department/Section (OM1-16).
1239         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1240         * it will return zero.
1241         */
1242        public int getObservationProducingDepartmentSectionReps() {
1243            CE[] ret = null;
1244            try {
1245                Type[] t = this.getField(16);
1246                return t.length;  
1247            } catch (ClassCastException cce) {
1248                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1249                throw new RuntimeException(cce);
1250            } catch (HL7Exception he) {
1251                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1252                throw new RuntimeException(he);
1253            }
1254        }
1255    
1256    
1257        /**
1258         * Returns a specific repetition of
1259         * OM1-16: "Observation Producing Department/Section" - creates it if necessary
1260         *
1261         * @param rep The repetition index (0-indexed)
1262         */
1263        public CE getObservationProducingDepartmentSection(int rep) { 
1264            CE ret = null;
1265            try {
1266                Type t = this.getField(16, rep);
1267                ret = (CE)t;
1268            } catch (ClassCastException cce) {
1269                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1270                throw new RuntimeException(cce);
1271            } catch (HL7Exception he) {
1272                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1273                throw new RuntimeException(he);
1274            }
1275            return ret;
1276        }
1277    
1278        /**
1279         * Returns a specific repetition of
1280         * OM1-16: "Observation Producing Department/Section" - creates it if necessary
1281         *
1282         * @param rep The repetition index (0-indexed)
1283         */
1284        public CE getOm116_ObservationProducingDepartmentSection(int rep) { 
1285            CE ret = null;
1286            try {
1287                Type t = this.getField(16, rep);
1288                ret = (CE)t;
1289            } catch (ClassCastException cce) {
1290                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1291                throw new RuntimeException(cce);
1292            } catch (HL7Exception he) {
1293                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1294                throw new RuntimeException(he);
1295            }
1296            return ret;
1297        }
1298    
1299    
1300        /**
1301         * Returns a count of the current number of repetitions of Observation Producing Department/Section (OM1-16).
1302         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1303         * it will return zero.
1304         */
1305        public int getOm116_ObservationProducingDepartmentSectionReps() {
1306            CE[] ret = null;
1307            try {
1308                Type[] t = this.getField(16);
1309                return t.length;  
1310            } catch (ClassCastException cce) {
1311                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1312                throw new RuntimeException(cce);
1313            } catch (HL7Exception he) {
1314                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1315                throw new RuntimeException(he);
1316            }
1317        }
1318    
1319    
1320    
1321        /**
1322         * Inserts a repetition of
1323         * OM1-16: "Observation Producing Department/Section" at a specific index
1324         *
1325         * @param rep The repetition index (0-indexed)
1326         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1327         */
1328        public CE insertObservationProducingDepartmentSection(int rep) throws HL7Exception { 
1329            return (CE) super.insertRepetition(16, rep);
1330        }
1331    
1332    
1333    
1334        /**
1335         * Inserts a repetition of
1336         * OM1-16: "Observation Producing Department/Section" at a specific index
1337         *
1338         * @param rep The repetition index (0-indexed)
1339         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1340         */
1341        public CE insertOm116_ObservationProducingDepartmentSection(int rep) throws HL7Exception { 
1342            return (CE) super.insertRepetition(16, rep);
1343        }
1344    
1345    
1346        /**
1347         * Removes a repetition of
1348         * OM1-16: "Observation Producing Department/Section" at a specific index
1349         *
1350         * @param rep The repetition index (0-indexed)
1351         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1352         */
1353        public CE removeObservationProducingDepartmentSection(int rep) throws HL7Exception { 
1354            return (CE) super.removeRepetition(16, rep);
1355        }
1356    
1357    
1358        /**
1359         * Removes a repetition of
1360         * OM1-16: "Observation Producing Department/Section" at a specific index
1361         *
1362         * @param rep The repetition index (0-indexed)
1363         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1364         */
1365        public CE removeOm116_ObservationProducingDepartmentSection(int rep) throws HL7Exception { 
1366            return (CE) super.removeRepetition(16, rep);
1367        }
1368    
1369    
1370    
1371    
1372        /**
1373         * Returns
1374         * OM1-17: "Telephone Number of Section" - creates it if necessary
1375         */
1376        public XTN getTelephoneNumberOfSection() { 
1377            XTN ret = null;
1378            try {
1379                Type t = this.getField(17, 0);
1380                ret = (XTN)t;
1381            } catch (ClassCastException cce) {
1382                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1383                throw new RuntimeException(cce);
1384            } catch (HL7Exception he) {
1385                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1386                throw new RuntimeException(he);
1387            }
1388            return ret;
1389        }
1390    
1391    
1392        /**
1393         * Returns
1394         * OM1-17: "Telephone Number of Section" - creates it if necessary
1395         */
1396        public XTN getOm117_TelephoneNumberOfSection() { 
1397            XTN ret = null;
1398            try {
1399                Type t = this.getField(17, 0);
1400                ret = (XTN)t;
1401            } catch (ClassCastException cce) {
1402                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1403                throw new RuntimeException(cce);
1404            } catch (HL7Exception he) {
1405                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1406                throw new RuntimeException(he);
1407            }
1408            return ret;
1409        }
1410    
1411    
1412    
1413        /**
1414         * Returns
1415         * OM1-18: "Nature of Service/Test/Observation" - creates it if necessary
1416         */
1417        public IS getNatureOfServiceTestObservation() { 
1418            IS ret = null;
1419            try {
1420                Type t = this.getField(18, 0);
1421                ret = (IS)t;
1422            } catch (ClassCastException cce) {
1423                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1424                throw new RuntimeException(cce);
1425            } catch (HL7Exception he) {
1426                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1427                throw new RuntimeException(he);
1428            }
1429            return ret;
1430        }
1431    
1432    
1433        /**
1434         * Returns
1435         * OM1-18: "Nature of Service/Test/Observation" - creates it if necessary
1436         */
1437        public IS getOm118_NatureOfServiceTestObservation() { 
1438            IS ret = null;
1439            try {
1440                Type t = this.getField(18, 0);
1441                ret = (IS)t;
1442            } catch (ClassCastException cce) {
1443                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1444                throw new RuntimeException(cce);
1445            } catch (HL7Exception he) {
1446                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1447                throw new RuntimeException(he);
1448            }
1449            return ret;
1450        }
1451    
1452    
1453    
1454        /**
1455         * Returns
1456         * OM1-19: "Report Subheader" - creates it if necessary
1457         */
1458        public CE getReportSubheader() { 
1459            CE ret = null;
1460            try {
1461                Type t = this.getField(19, 0);
1462                ret = (CE)t;
1463            } catch (ClassCastException cce) {
1464                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1465                throw new RuntimeException(cce);
1466            } catch (HL7Exception he) {
1467                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1468                throw new RuntimeException(he);
1469            }
1470            return ret;
1471        }
1472    
1473    
1474        /**
1475         * Returns
1476         * OM1-19: "Report Subheader" - creates it if necessary
1477         */
1478        public CE getOm119_ReportSubheader() { 
1479            CE ret = null;
1480            try {
1481                Type t = this.getField(19, 0);
1482                ret = (CE)t;
1483            } catch (ClassCastException cce) {
1484                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1485                throw new RuntimeException(cce);
1486            } catch (HL7Exception he) {
1487                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1488                throw new RuntimeException(he);
1489            }
1490            return ret;
1491        }
1492    
1493    
1494    
1495        /**
1496         * Returns
1497         * OM1-20: "Report Display Order" - creates it if necessary
1498         */
1499        public ST getReportDisplayOrder() { 
1500            ST ret = null;
1501            try {
1502                Type t = this.getField(20, 0);
1503                ret = (ST)t;
1504            } catch (ClassCastException cce) {
1505                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1506                throw new RuntimeException(cce);
1507            } catch (HL7Exception he) {
1508                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1509                throw new RuntimeException(he);
1510            }
1511            return ret;
1512        }
1513    
1514    
1515        /**
1516         * Returns
1517         * OM1-20: "Report Display Order" - creates it if necessary
1518         */
1519        public ST getOm120_ReportDisplayOrder() { 
1520            ST ret = null;
1521            try {
1522                Type t = this.getField(20, 0);
1523                ret = (ST)t;
1524            } catch (ClassCastException cce) {
1525                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1526                throw new RuntimeException(cce);
1527            } catch (HL7Exception he) {
1528                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1529                throw new RuntimeException(he);
1530            }
1531            return ret;
1532        }
1533    
1534    
1535    
1536        /**
1537         * Returns
1538         * OM1-21: "Date/Time Stamp for any change in Definition for the Observation" - creates it if necessary
1539         */
1540        public TS getDateTimeStampForAnyChangeInDefinitionForTheObservation() { 
1541            TS ret = null;
1542            try {
1543                Type t = this.getField(21, 0);
1544                ret = (TS)t;
1545            } catch (ClassCastException cce) {
1546                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1547                throw new RuntimeException(cce);
1548            } catch (HL7Exception he) {
1549                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1550                throw new RuntimeException(he);
1551            }
1552            return ret;
1553        }
1554    
1555    
1556        /**
1557         * Returns
1558         * OM1-21: "Date/Time Stamp for any change in Definition for the Observation" - creates it if necessary
1559         */
1560        public TS getOm121_DateTimeStampForAnyChangeInDefinitionForTheObservation() { 
1561            TS ret = null;
1562            try {
1563                Type t = this.getField(21, 0);
1564                ret = (TS)t;
1565            } catch (ClassCastException cce) {
1566                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1567                throw new RuntimeException(cce);
1568            } catch (HL7Exception he) {
1569                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1570                throw new RuntimeException(he);
1571            }
1572            return ret;
1573        }
1574    
1575    
1576    
1577        /**
1578         * Returns
1579         * OM1-22: "Effective Date/Time of Change" - creates it if necessary
1580         */
1581        public TS getEffectiveDateTimeOfChange() { 
1582            TS ret = null;
1583            try {
1584                Type t = this.getField(22, 0);
1585                ret = (TS)t;
1586            } catch (ClassCastException cce) {
1587                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1588                throw new RuntimeException(cce);
1589            } catch (HL7Exception he) {
1590                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1591                throw new RuntimeException(he);
1592            }
1593            return ret;
1594        }
1595    
1596    
1597        /**
1598         * Returns
1599         * OM1-22: "Effective Date/Time of Change" - creates it if necessary
1600         */
1601        public TS getOm122_EffectiveDateTimeOfChange() { 
1602            TS ret = null;
1603            try {
1604                Type t = this.getField(22, 0);
1605                ret = (TS)t;
1606            } catch (ClassCastException cce) {
1607                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1608                throw new RuntimeException(cce);
1609            } catch (HL7Exception he) {
1610                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1611                throw new RuntimeException(he);
1612            }
1613            return ret;
1614        }
1615    
1616    
1617    
1618        /**
1619         * Returns
1620         * OM1-23: "Typical Turn-Around Time" - creates it if necessary
1621         */
1622        public NM getTypicalTurnAroundTime() { 
1623            NM ret = null;
1624            try {
1625                Type t = this.getField(23, 0);
1626                ret = (NM)t;
1627            } catch (ClassCastException cce) {
1628                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1629                throw new RuntimeException(cce);
1630            } catch (HL7Exception he) {
1631                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1632                throw new RuntimeException(he);
1633            }
1634            return ret;
1635        }
1636    
1637    
1638        /**
1639         * Returns
1640         * OM1-23: "Typical Turn-Around Time" - creates it if necessary
1641         */
1642        public NM getOm123_TypicalTurnAroundTime() { 
1643            NM ret = null;
1644            try {
1645                Type t = this.getField(23, 0);
1646                ret = (NM)t;
1647            } catch (ClassCastException cce) {
1648                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1649                throw new RuntimeException(cce);
1650            } catch (HL7Exception he) {
1651                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1652                throw new RuntimeException(he);
1653            }
1654            return ret;
1655        }
1656    
1657    
1658    
1659        /**
1660         * Returns
1661         * OM1-24: "Processing Time" - creates it if necessary
1662         */
1663        public NM getProcessingTime() { 
1664            NM ret = null;
1665            try {
1666                Type t = this.getField(24, 0);
1667                ret = (NM)t;
1668            } catch (ClassCastException cce) {
1669                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1670                throw new RuntimeException(cce);
1671            } catch (HL7Exception he) {
1672                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1673                throw new RuntimeException(he);
1674            }
1675            return ret;
1676        }
1677    
1678    
1679        /**
1680         * Returns
1681         * OM1-24: "Processing Time" - creates it if necessary
1682         */
1683        public NM getOm124_ProcessingTime() { 
1684            NM ret = null;
1685            try {
1686                Type t = this.getField(24, 0);
1687                ret = (NM)t;
1688            } catch (ClassCastException cce) {
1689                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1690                throw new RuntimeException(cce);
1691            } catch (HL7Exception he) {
1692                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1693                throw new RuntimeException(he);
1694            }
1695            return ret;
1696        }
1697    
1698    
1699        /**
1700         * Returns all repetitions of Processing Priority (OM1-25).
1701         */
1702        public ID[] getProcessingPriority() {
1703            ID[] ret = null;
1704            try {
1705                Type[] t = this.getField(25);  
1706                ret = new ID[t.length];
1707                for (int i = 0; i < ret.length; i++) {
1708                    ret[i] = (ID)t[i];
1709                }
1710            } catch (ClassCastException cce) {
1711                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1712                throw new RuntimeException(cce);
1713            } catch (HL7Exception he) {
1714                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1715                throw new RuntimeException(he);
1716            }
1717            return ret;
1718        }
1719    
1720    
1721        /**
1722         * Returns a count of the current number of repetitions of Processing Priority (OM1-25).
1723         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1724         * it will return zero.
1725         */
1726        public int getProcessingPriorityReps() {
1727            ID[] ret = null;
1728            try {
1729                Type[] t = this.getField(25);
1730                return t.length;  
1731            } catch (ClassCastException cce) {
1732                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1733                throw new RuntimeException(cce);
1734            } catch (HL7Exception he) {
1735                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1736                throw new RuntimeException(he);
1737            }
1738        }
1739    
1740    
1741        /**
1742         * Returns a specific repetition of
1743         * OM1-25: "Processing Priority" - creates it if necessary
1744         *
1745         * @param rep The repetition index (0-indexed)
1746         */
1747        public ID getProcessingPriority(int rep) { 
1748            ID ret = null;
1749            try {
1750                Type t = this.getField(25, rep);
1751                ret = (ID)t;
1752            } catch (ClassCastException cce) {
1753                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1754                throw new RuntimeException(cce);
1755            } catch (HL7Exception he) {
1756                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1757                throw new RuntimeException(he);
1758            }
1759            return ret;
1760        }
1761    
1762        /**
1763         * Returns a specific repetition of
1764         * OM1-25: "Processing Priority" - creates it if necessary
1765         *
1766         * @param rep The repetition index (0-indexed)
1767         */
1768        public ID getOm125_ProcessingPriority(int rep) { 
1769            ID ret = null;
1770            try {
1771                Type t = this.getField(25, rep);
1772                ret = (ID)t;
1773            } catch (ClassCastException cce) {
1774                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1775                throw new RuntimeException(cce);
1776            } catch (HL7Exception he) {
1777                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1778                throw new RuntimeException(he);
1779            }
1780            return ret;
1781        }
1782    
1783    
1784        /**
1785         * Returns a count of the current number of repetitions of Processing Priority (OM1-25).
1786         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1787         * it will return zero.
1788         */
1789        public int getOm125_ProcessingPriorityReps() {
1790            ID[] ret = null;
1791            try {
1792                Type[] t = this.getField(25);
1793                return t.length;  
1794            } catch (ClassCastException cce) {
1795                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1796                throw new RuntimeException(cce);
1797            } catch (HL7Exception he) {
1798                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1799                throw new RuntimeException(he);
1800            }
1801        }
1802    
1803    
1804    
1805        /**
1806         * Inserts a repetition of
1807         * OM1-25: "Processing Priority" at a specific index
1808         *
1809         * @param rep The repetition index (0-indexed)
1810         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1811         */
1812        public ID insertProcessingPriority(int rep) throws HL7Exception { 
1813            return (ID) super.insertRepetition(25, rep);
1814        }
1815    
1816    
1817    
1818        /**
1819         * Inserts a repetition of
1820         * OM1-25: "Processing Priority" at a specific index
1821         *
1822         * @param rep The repetition index (0-indexed)
1823         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1824         */
1825        public ID insertOm125_ProcessingPriority(int rep) throws HL7Exception { 
1826            return (ID) super.insertRepetition(25, rep);
1827        }
1828    
1829    
1830        /**
1831         * Removes a repetition of
1832         * OM1-25: "Processing Priority" at a specific index
1833         *
1834         * @param rep The repetition index (0-indexed)
1835         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1836         */
1837        public ID removeProcessingPriority(int rep) throws HL7Exception { 
1838            return (ID) super.removeRepetition(25, rep);
1839        }
1840    
1841    
1842        /**
1843         * Removes a repetition of
1844         * OM1-25: "Processing Priority" at a specific index
1845         *
1846         * @param rep The repetition index (0-indexed)
1847         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1848         */
1849        public ID removeOm125_ProcessingPriority(int rep) throws HL7Exception { 
1850            return (ID) super.removeRepetition(25, rep);
1851        }
1852    
1853    
1854    
1855    
1856        /**
1857         * Returns
1858         * OM1-26: "Reporting Priority" - creates it if necessary
1859         */
1860        public ID getReportingPriority() { 
1861            ID ret = null;
1862            try {
1863                Type t = this.getField(26, 0);
1864                ret = (ID)t;
1865            } catch (ClassCastException cce) {
1866                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1867                throw new RuntimeException(cce);
1868            } catch (HL7Exception he) {
1869                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1870                throw new RuntimeException(he);
1871            }
1872            return ret;
1873        }
1874    
1875    
1876        /**
1877         * Returns
1878         * OM1-26: "Reporting Priority" - creates it if necessary
1879         */
1880        public ID getOm126_ReportingPriority() { 
1881            ID ret = null;
1882            try {
1883                Type t = this.getField(26, 0);
1884                ret = (ID)t;
1885            } catch (ClassCastException cce) {
1886                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1887                throw new RuntimeException(cce);
1888            } catch (HL7Exception he) {
1889                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1890                throw new RuntimeException(he);
1891            }
1892            return ret;
1893        }
1894    
1895    
1896        /**
1897         * Returns all repetitions of Outside Site(s) Where Observation may be Performed (OM1-27).
1898         */
1899        public CE[] getOutsideSiteSWhereObservationMayBePerformed() {
1900            CE[] ret = null;
1901            try {
1902                Type[] t = this.getField(27);  
1903                ret = new CE[t.length];
1904                for (int i = 0; i < ret.length; i++) {
1905                    ret[i] = (CE)t[i];
1906                }
1907            } catch (ClassCastException cce) {
1908                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1909                throw new RuntimeException(cce);
1910            } catch (HL7Exception he) {
1911                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1912                throw new RuntimeException(he);
1913            }
1914            return ret;
1915        }
1916    
1917    
1918        /**
1919         * Returns a count of the current number of repetitions of Outside Site(s) Where Observation may be Performed (OM1-27).
1920         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1921         * it will return zero.
1922         */
1923        public int getOutsideSiteSWhereObservationMayBePerformedReps() {
1924            CE[] ret = null;
1925            try {
1926                Type[] t = this.getField(27);
1927                return t.length;  
1928            } catch (ClassCastException cce) {
1929                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1930                throw new RuntimeException(cce);
1931            } catch (HL7Exception he) {
1932                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1933                throw new RuntimeException(he);
1934            }
1935        }
1936    
1937    
1938        /**
1939         * Returns a specific repetition of
1940         * OM1-27: "Outside Site(s) Where Observation may be Performed" - creates it if necessary
1941         *
1942         * @param rep The repetition index (0-indexed)
1943         */
1944        public CE getOutsideSiteSWhereObservationMayBePerformed(int rep) { 
1945            CE ret = null;
1946            try {
1947                Type t = this.getField(27, rep);
1948                ret = (CE)t;
1949            } catch (ClassCastException cce) {
1950                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1951                throw new RuntimeException(cce);
1952            } catch (HL7Exception he) {
1953                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1954                throw new RuntimeException(he);
1955            }
1956            return ret;
1957        }
1958    
1959        /**
1960         * Returns a specific repetition of
1961         * OM1-27: "Outside Site(s) Where Observation may be Performed" - creates it if necessary
1962         *
1963         * @param rep The repetition index (0-indexed)
1964         */
1965        public CE getOm127_OutsideSiteSWhereObservationMayBePerformed(int rep) { 
1966            CE ret = null;
1967            try {
1968                Type t = this.getField(27, rep);
1969                ret = (CE)t;
1970            } catch (ClassCastException cce) {
1971                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1972                throw new RuntimeException(cce);
1973            } catch (HL7Exception he) {
1974                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1975                throw new RuntimeException(he);
1976            }
1977            return ret;
1978        }
1979    
1980    
1981        /**
1982         * Returns a count of the current number of repetitions of Outside Site(s) Where Observation may be Performed (OM1-27).
1983         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1984         * it will return zero.
1985         */
1986        public int getOm127_OutsideSiteSWhereObservationMayBePerformedReps() {
1987            CE[] ret = null;
1988            try {
1989                Type[] t = this.getField(27);
1990                return t.length;  
1991            } catch (ClassCastException cce) {
1992                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
1993                throw new RuntimeException(cce);
1994            } catch (HL7Exception he) {
1995                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
1996                throw new RuntimeException(he);
1997            }
1998        }
1999    
2000    
2001    
2002        /**
2003         * Inserts a repetition of
2004         * OM1-27: "Outside Site(s) Where Observation may be Performed" at a specific index
2005         *
2006         * @param rep The repetition index (0-indexed)
2007         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2008         */
2009        public CE insertOutsideSiteSWhereObservationMayBePerformed(int rep) throws HL7Exception { 
2010            return (CE) super.insertRepetition(27, rep);
2011        }
2012    
2013    
2014    
2015        /**
2016         * Inserts a repetition of
2017         * OM1-27: "Outside Site(s) Where Observation may be Performed" at a specific index
2018         *
2019         * @param rep The repetition index (0-indexed)
2020         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2021         */
2022        public CE insertOm127_OutsideSiteSWhereObservationMayBePerformed(int rep) throws HL7Exception { 
2023            return (CE) super.insertRepetition(27, rep);
2024        }
2025    
2026    
2027        /**
2028         * Removes a repetition of
2029         * OM1-27: "Outside Site(s) Where Observation may be Performed" at a specific index
2030         *
2031         * @param rep The repetition index (0-indexed)
2032         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2033         */
2034        public CE removeOutsideSiteSWhereObservationMayBePerformed(int rep) throws HL7Exception { 
2035            return (CE) super.removeRepetition(27, rep);
2036        }
2037    
2038    
2039        /**
2040         * Removes a repetition of
2041         * OM1-27: "Outside Site(s) Where Observation may be Performed" at a specific index
2042         *
2043         * @param rep The repetition index (0-indexed)
2044         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2045         */
2046        public CE removeOm127_OutsideSiteSWhereObservationMayBePerformed(int rep) throws HL7Exception { 
2047            return (CE) super.removeRepetition(27, rep);
2048        }
2049    
2050    
2051    
2052        /**
2053         * Returns all repetitions of Address of Outside Site(s) (OM1-28).
2054         */
2055        public XAD[] getAddressOfOutsideSiteS() {
2056            XAD[] ret = null;
2057            try {
2058                Type[] t = this.getField(28);  
2059                ret = new XAD[t.length];
2060                for (int i = 0; i < ret.length; i++) {
2061                    ret[i] = (XAD)t[i];
2062                }
2063            } catch (ClassCastException cce) {
2064                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2065                throw new RuntimeException(cce);
2066            } catch (HL7Exception he) {
2067                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2068                throw new RuntimeException(he);
2069            }
2070            return ret;
2071        }
2072    
2073    
2074        /**
2075         * Returns a count of the current number of repetitions of Address of Outside Site(s) (OM1-28).
2076         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2077         * it will return zero.
2078         */
2079        public int getAddressOfOutsideSiteSReps() {
2080            XAD[] ret = null;
2081            try {
2082                Type[] t = this.getField(28);
2083                return t.length;  
2084            } catch (ClassCastException cce) {
2085                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2086                throw new RuntimeException(cce);
2087            } catch (HL7Exception he) {
2088                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2089                throw new RuntimeException(he);
2090            }
2091        }
2092    
2093    
2094        /**
2095         * Returns a specific repetition of
2096         * OM1-28: "Address of Outside Site(s)" - creates it if necessary
2097         *
2098         * @param rep The repetition index (0-indexed)
2099         */
2100        public XAD getAddressOfOutsideSiteS(int rep) { 
2101            XAD ret = null;
2102            try {
2103                Type t = this.getField(28, rep);
2104                ret = (XAD)t;
2105            } catch (ClassCastException cce) {
2106                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2107                throw new RuntimeException(cce);
2108            } catch (HL7Exception he) {
2109                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2110                throw new RuntimeException(he);
2111            }
2112            return ret;
2113        }
2114    
2115        /**
2116         * Returns a specific repetition of
2117         * OM1-28: "Address of Outside Site(s)" - creates it if necessary
2118         *
2119         * @param rep The repetition index (0-indexed)
2120         */
2121        public XAD getOm128_AddressOfOutsideSiteS(int rep) { 
2122            XAD ret = null;
2123            try {
2124                Type t = this.getField(28, rep);
2125                ret = (XAD)t;
2126            } catch (ClassCastException cce) {
2127                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2128                throw new RuntimeException(cce);
2129            } catch (HL7Exception he) {
2130                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2131                throw new RuntimeException(he);
2132            }
2133            return ret;
2134        }
2135    
2136    
2137        /**
2138         * Returns a count of the current number of repetitions of Address of Outside Site(s) (OM1-28).
2139         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2140         * it will return zero.
2141         */
2142        public int getOm128_AddressOfOutsideSiteSReps() {
2143            XAD[] ret = null;
2144            try {
2145                Type[] t = this.getField(28);
2146                return t.length;  
2147            } catch (ClassCastException cce) {
2148                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2149                throw new RuntimeException(cce);
2150            } catch (HL7Exception he) {
2151                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2152                throw new RuntimeException(he);
2153            }
2154        }
2155    
2156    
2157    
2158        /**
2159         * Inserts a repetition of
2160         * OM1-28: "Address of Outside Site(s)" at a specific index
2161         *
2162         * @param rep The repetition index (0-indexed)
2163         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2164         */
2165        public XAD insertAddressOfOutsideSiteS(int rep) throws HL7Exception { 
2166            return (XAD) super.insertRepetition(28, rep);
2167        }
2168    
2169    
2170    
2171        /**
2172         * Inserts a repetition of
2173         * OM1-28: "Address of Outside Site(s)" at a specific index
2174         *
2175         * @param rep The repetition index (0-indexed)
2176         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2177         */
2178        public XAD insertOm128_AddressOfOutsideSiteS(int rep) throws HL7Exception { 
2179            return (XAD) super.insertRepetition(28, rep);
2180        }
2181    
2182    
2183        /**
2184         * Removes a repetition of
2185         * OM1-28: "Address of Outside Site(s)" at a specific index
2186         *
2187         * @param rep The repetition index (0-indexed)
2188         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2189         */
2190        public XAD removeAddressOfOutsideSiteS(int rep) throws HL7Exception { 
2191            return (XAD) super.removeRepetition(28, rep);
2192        }
2193    
2194    
2195        /**
2196         * Removes a repetition of
2197         * OM1-28: "Address of Outside Site(s)" at a specific index
2198         *
2199         * @param rep The repetition index (0-indexed)
2200         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2201         */
2202        public XAD removeOm128_AddressOfOutsideSiteS(int rep) throws HL7Exception { 
2203            return (XAD) super.removeRepetition(28, rep);
2204        }
2205    
2206    
2207    
2208    
2209        /**
2210         * Returns
2211         * OM1-29: "Phone Number of Outside Site" - creates it if necessary
2212         */
2213        public XTN getPhoneNumberOfOutsideSite() { 
2214            XTN ret = null;
2215            try {
2216                Type t = this.getField(29, 0);
2217                ret = (XTN)t;
2218            } catch (ClassCastException cce) {
2219                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2220                throw new RuntimeException(cce);
2221            } catch (HL7Exception he) {
2222                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2223                throw new RuntimeException(he);
2224            }
2225            return ret;
2226        }
2227    
2228    
2229        /**
2230         * Returns
2231         * OM1-29: "Phone Number of Outside Site" - creates it if necessary
2232         */
2233        public XTN getOm129_PhoneNumberOfOutsideSite() { 
2234            XTN ret = null;
2235            try {
2236                Type t = this.getField(29, 0);
2237                ret = (XTN)t;
2238            } catch (ClassCastException cce) {
2239                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2240                throw new RuntimeException(cce);
2241            } catch (HL7Exception he) {
2242                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2243                throw new RuntimeException(he);
2244            }
2245            return ret;
2246        }
2247    
2248    
2249    
2250        /**
2251         * Returns
2252         * OM1-30: "Confidentiality Code" - creates it if necessary
2253         */
2254        public IS getConfidentialityCode() { 
2255            IS ret = null;
2256            try {
2257                Type t = this.getField(30, 0);
2258                ret = (IS)t;
2259            } catch (ClassCastException cce) {
2260                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2261                throw new RuntimeException(cce);
2262            } catch (HL7Exception he) {
2263                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2264                throw new RuntimeException(he);
2265            }
2266            return ret;
2267        }
2268    
2269    
2270        /**
2271         * Returns
2272         * OM1-30: "Confidentiality Code" - creates it if necessary
2273         */
2274        public IS getOm130_ConfidentialityCode() { 
2275            IS ret = null;
2276            try {
2277                Type t = this.getField(30, 0);
2278                ret = (IS)t;
2279            } catch (ClassCastException cce) {
2280                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2281                throw new RuntimeException(cce);
2282            } catch (HL7Exception he) {
2283                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2284                throw new RuntimeException(he);
2285            }
2286            return ret;
2287        }
2288    
2289    
2290    
2291        /**
2292         * Returns
2293         * OM1-31: "Observations Required to Interpret the Observation" - creates it if necessary
2294         */
2295        public CE getObservationsRequiredToInterpretTheObservation() { 
2296            CE ret = null;
2297            try {
2298                Type t = this.getField(31, 0);
2299                ret = (CE)t;
2300            } catch (ClassCastException cce) {
2301                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2302                throw new RuntimeException(cce);
2303            } catch (HL7Exception he) {
2304                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2305                throw new RuntimeException(he);
2306            }
2307            return ret;
2308        }
2309    
2310    
2311        /**
2312         * Returns
2313         * OM1-31: "Observations Required to Interpret the Observation" - creates it if necessary
2314         */
2315        public CE getOm131_ObservationsRequiredToInterpretTheObservation() { 
2316            CE ret = null;
2317            try {
2318                Type t = this.getField(31, 0);
2319                ret = (CE)t;
2320            } catch (ClassCastException cce) {
2321                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2322                throw new RuntimeException(cce);
2323            } catch (HL7Exception he) {
2324                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2325                throw new RuntimeException(he);
2326            }
2327            return ret;
2328        }
2329    
2330    
2331    
2332        /**
2333         * Returns
2334         * OM1-32: "Interpretation of Observations" - creates it if necessary
2335         */
2336        public TX getInterpretationOfObservations() { 
2337            TX ret = null;
2338            try {
2339                Type t = this.getField(32, 0);
2340                ret = (TX)t;
2341            } catch (ClassCastException cce) {
2342                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2343                throw new RuntimeException(cce);
2344            } catch (HL7Exception he) {
2345                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2346                throw new RuntimeException(he);
2347            }
2348            return ret;
2349        }
2350    
2351    
2352        /**
2353         * Returns
2354         * OM1-32: "Interpretation of Observations" - creates it if necessary
2355         */
2356        public TX getOm132_InterpretationOfObservations() { 
2357            TX ret = null;
2358            try {
2359                Type t = this.getField(32, 0);
2360                ret = (TX)t;
2361            } catch (ClassCastException cce) {
2362                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2363                throw new RuntimeException(cce);
2364            } catch (HL7Exception he) {
2365                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2366                throw new RuntimeException(he);
2367            }
2368            return ret;
2369        }
2370    
2371    
2372    
2373        /**
2374         * Returns
2375         * OM1-33: "Contraindications to Observations" - creates it if necessary
2376         */
2377        public CE getContraindicationsToObservations() { 
2378            CE ret = null;
2379            try {
2380                Type t = this.getField(33, 0);
2381                ret = (CE)t;
2382            } catch (ClassCastException cce) {
2383                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2384                throw new RuntimeException(cce);
2385            } catch (HL7Exception he) {
2386                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2387                throw new RuntimeException(he);
2388            }
2389            return ret;
2390        }
2391    
2392    
2393        /**
2394         * Returns
2395         * OM1-33: "Contraindications to Observations" - creates it if necessary
2396         */
2397        public CE getOm133_ContraindicationsToObservations() { 
2398            CE ret = null;
2399            try {
2400                Type t = this.getField(33, 0);
2401                ret = (CE)t;
2402            } catch (ClassCastException cce) {
2403                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2404                throw new RuntimeException(cce);
2405            } catch (HL7Exception he) {
2406                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2407                throw new RuntimeException(he);
2408            }
2409            return ret;
2410        }
2411    
2412    
2413        /**
2414         * Returns all repetitions of Reflex Tests/Observations (OM1-34).
2415         */
2416        public CE[] getReflexTestsObservations() {
2417            CE[] ret = null;
2418            try {
2419                Type[] t = this.getField(34);  
2420                ret = new CE[t.length];
2421                for (int i = 0; i < ret.length; i++) {
2422                    ret[i] = (CE)t[i];
2423                }
2424            } catch (ClassCastException cce) {
2425                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2426                throw new RuntimeException(cce);
2427            } catch (HL7Exception he) {
2428                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2429                throw new RuntimeException(he);
2430            }
2431            return ret;
2432        }
2433    
2434    
2435        /**
2436         * Returns a count of the current number of repetitions of Reflex Tests/Observations (OM1-34).
2437         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2438         * it will return zero.
2439         */
2440        public int getReflexTestsObservationsReps() {
2441            CE[] ret = null;
2442            try {
2443                Type[] t = this.getField(34);
2444                return t.length;  
2445            } catch (ClassCastException cce) {
2446                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2447                throw new RuntimeException(cce);
2448            } catch (HL7Exception he) {
2449                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2450                throw new RuntimeException(he);
2451            }
2452        }
2453    
2454    
2455        /**
2456         * Returns a specific repetition of
2457         * OM1-34: "Reflex Tests/Observations" - creates it if necessary
2458         *
2459         * @param rep The repetition index (0-indexed)
2460         */
2461        public CE getReflexTestsObservations(int rep) { 
2462            CE ret = null;
2463            try {
2464                Type t = this.getField(34, rep);
2465                ret = (CE)t;
2466            } catch (ClassCastException cce) {
2467                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2468                throw new RuntimeException(cce);
2469            } catch (HL7Exception he) {
2470                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2471                throw new RuntimeException(he);
2472            }
2473            return ret;
2474        }
2475    
2476        /**
2477         * Returns a specific repetition of
2478         * OM1-34: "Reflex Tests/Observations" - creates it if necessary
2479         *
2480         * @param rep The repetition index (0-indexed)
2481         */
2482        public CE getOm134_ReflexTestsObservations(int rep) { 
2483            CE ret = null;
2484            try {
2485                Type t = this.getField(34, rep);
2486                ret = (CE)t;
2487            } catch (ClassCastException cce) {
2488                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2489                throw new RuntimeException(cce);
2490            } catch (HL7Exception he) {
2491                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2492                throw new RuntimeException(he);
2493            }
2494            return ret;
2495        }
2496    
2497    
2498        /**
2499         * Returns a count of the current number of repetitions of Reflex Tests/Observations (OM1-34).
2500         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2501         * it will return zero.
2502         */
2503        public int getOm134_ReflexTestsObservationsReps() {
2504            CE[] ret = null;
2505            try {
2506                Type[] t = this.getField(34);
2507                return t.length;  
2508            } catch (ClassCastException cce) {
2509                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2510                throw new RuntimeException(cce);
2511            } catch (HL7Exception he) {
2512                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2513                throw new RuntimeException(he);
2514            }
2515        }
2516    
2517    
2518    
2519        /**
2520         * Inserts a repetition of
2521         * OM1-34: "Reflex Tests/Observations" at a specific index
2522         *
2523         * @param rep The repetition index (0-indexed)
2524         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2525         */
2526        public CE insertReflexTestsObservations(int rep) throws HL7Exception { 
2527            return (CE) super.insertRepetition(34, rep);
2528        }
2529    
2530    
2531    
2532        /**
2533         * Inserts a repetition of
2534         * OM1-34: "Reflex Tests/Observations" at a specific index
2535         *
2536         * @param rep The repetition index (0-indexed)
2537         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2538         */
2539        public CE insertOm134_ReflexTestsObservations(int rep) throws HL7Exception { 
2540            return (CE) super.insertRepetition(34, rep);
2541        }
2542    
2543    
2544        /**
2545         * Removes a repetition of
2546         * OM1-34: "Reflex Tests/Observations" at a specific index
2547         *
2548         * @param rep The repetition index (0-indexed)
2549         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2550         */
2551        public CE removeReflexTestsObservations(int rep) throws HL7Exception { 
2552            return (CE) super.removeRepetition(34, rep);
2553        }
2554    
2555    
2556        /**
2557         * Removes a repetition of
2558         * OM1-34: "Reflex Tests/Observations" at a specific index
2559         *
2560         * @param rep The repetition index (0-indexed)
2561         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2562         */
2563        public CE removeOm134_ReflexTestsObservations(int rep) throws HL7Exception { 
2564            return (CE) super.removeRepetition(34, rep);
2565        }
2566    
2567    
2568    
2569    
2570        /**
2571         * Returns
2572         * OM1-35: "Rules that Trigger Reflex Testing" - creates it if necessary
2573         */
2574        public TX getRulesThatTriggerReflexTesting() { 
2575            TX ret = null;
2576            try {
2577                Type t = this.getField(35, 0);
2578                ret = (TX)t;
2579            } catch (ClassCastException cce) {
2580                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2581                throw new RuntimeException(cce);
2582            } catch (HL7Exception he) {
2583                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2584                throw new RuntimeException(he);
2585            }
2586            return ret;
2587        }
2588    
2589    
2590        /**
2591         * Returns
2592         * OM1-35: "Rules that Trigger Reflex Testing" - creates it if necessary
2593         */
2594        public TX getOm135_RulesThatTriggerReflexTesting() { 
2595            TX ret = null;
2596            try {
2597                Type t = this.getField(35, 0);
2598                ret = (TX)t;
2599            } catch (ClassCastException cce) {
2600                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2601                throw new RuntimeException(cce);
2602            } catch (HL7Exception he) {
2603                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2604                throw new RuntimeException(he);
2605            }
2606            return ret;
2607        }
2608    
2609    
2610    
2611        /**
2612         * Returns
2613         * OM1-36: "Fixed Canned Message" - creates it if necessary
2614         */
2615        public CE getFixedCannedMessage() { 
2616            CE ret = null;
2617            try {
2618                Type t = this.getField(36, 0);
2619                ret = (CE)t;
2620            } catch (ClassCastException cce) {
2621                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2622                throw new RuntimeException(cce);
2623            } catch (HL7Exception he) {
2624                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2625                throw new RuntimeException(he);
2626            }
2627            return ret;
2628        }
2629    
2630    
2631        /**
2632         * Returns
2633         * OM1-36: "Fixed Canned Message" - creates it if necessary
2634         */
2635        public CE getOm136_FixedCannedMessage() { 
2636            CE ret = null;
2637            try {
2638                Type t = this.getField(36, 0);
2639                ret = (CE)t;
2640            } catch (ClassCastException cce) {
2641                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2642                throw new RuntimeException(cce);
2643            } catch (HL7Exception he) {
2644                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2645                throw new RuntimeException(he);
2646            }
2647            return ret;
2648        }
2649    
2650    
2651    
2652        /**
2653         * Returns
2654         * OM1-37: "Patient Preparation" - creates it if necessary
2655         */
2656        public TX getPatientPreparation() { 
2657            TX ret = null;
2658            try {
2659                Type t = this.getField(37, 0);
2660                ret = (TX)t;
2661            } catch (ClassCastException cce) {
2662                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2663                throw new RuntimeException(cce);
2664            } catch (HL7Exception he) {
2665                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2666                throw new RuntimeException(he);
2667            }
2668            return ret;
2669        }
2670    
2671    
2672        /**
2673         * Returns
2674         * OM1-37: "Patient Preparation" - creates it if necessary
2675         */
2676        public TX getOm137_PatientPreparation() { 
2677            TX ret = null;
2678            try {
2679                Type t = this.getField(37, 0);
2680                ret = (TX)t;
2681            } catch (ClassCastException cce) {
2682                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2683                throw new RuntimeException(cce);
2684            } catch (HL7Exception he) {
2685                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2686                throw new RuntimeException(he);
2687            }
2688            return ret;
2689        }
2690    
2691    
2692    
2693        /**
2694         * Returns
2695         * OM1-38: "Procedure Medication" - creates it if necessary
2696         */
2697        public CE getProcedureMedication() { 
2698            CE ret = null;
2699            try {
2700                Type t = this.getField(38, 0);
2701                ret = (CE)t;
2702            } catch (ClassCastException cce) {
2703                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2704                throw new RuntimeException(cce);
2705            } catch (HL7Exception he) {
2706                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2707                throw new RuntimeException(he);
2708            }
2709            return ret;
2710        }
2711    
2712    
2713        /**
2714         * Returns
2715         * OM1-38: "Procedure Medication" - creates it if necessary
2716         */
2717        public CE getOm138_ProcedureMedication() { 
2718            CE ret = null;
2719            try {
2720                Type t = this.getField(38, 0);
2721                ret = (CE)t;
2722            } catch (ClassCastException cce) {
2723                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2724                throw new RuntimeException(cce);
2725            } catch (HL7Exception he) {
2726                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2727                throw new RuntimeException(he);
2728            }
2729            return ret;
2730        }
2731    
2732    
2733    
2734        /**
2735         * Returns
2736         * OM1-39: "Factors that may Affect Affect the Observation" - creates it if necessary
2737         */
2738        public TX getFactorsThatMayAffectAffectTheObservation() { 
2739            TX ret = null;
2740            try {
2741                Type t = this.getField(39, 0);
2742                ret = (TX)t;
2743            } catch (ClassCastException cce) {
2744                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2745                throw new RuntimeException(cce);
2746            } catch (HL7Exception he) {
2747                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2748                throw new RuntimeException(he);
2749            }
2750            return ret;
2751        }
2752    
2753    
2754        /**
2755         * Returns
2756         * OM1-39: "Factors that may Affect Affect the Observation" - creates it if necessary
2757         */
2758        public TX getOm139_FactorsThatMayAffectAffectTheObservation() { 
2759            TX ret = null;
2760            try {
2761                Type t = this.getField(39, 0);
2762                ret = (TX)t;
2763            } catch (ClassCastException cce) {
2764                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2765                throw new RuntimeException(cce);
2766            } catch (HL7Exception he) {
2767                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2768                throw new RuntimeException(he);
2769            }
2770            return ret;
2771        }
2772    
2773    
2774        /**
2775         * Returns all repetitions of Service/Test/Observation Performance Schedule (OM1-40).
2776         */
2777        public ST[] getServiceTestObservationPerformanceSchedule() {
2778            ST[] ret = null;
2779            try {
2780                Type[] t = this.getField(40);  
2781                ret = new ST[t.length];
2782                for (int i = 0; i < ret.length; i++) {
2783                    ret[i] = (ST)t[i];
2784                }
2785            } catch (ClassCastException cce) {
2786                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2787                throw new RuntimeException(cce);
2788            } catch (HL7Exception he) {
2789                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2790                throw new RuntimeException(he);
2791            }
2792            return ret;
2793        }
2794    
2795    
2796        /**
2797         * Returns a count of the current number of repetitions of Service/Test/Observation Performance Schedule (OM1-40).
2798         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2799         * it will return zero.
2800         */
2801        public int getServiceTestObservationPerformanceScheduleReps() {
2802            ST[] ret = null;
2803            try {
2804                Type[] t = this.getField(40);
2805                return t.length;  
2806            } catch (ClassCastException cce) {
2807                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2808                throw new RuntimeException(cce);
2809            } catch (HL7Exception he) {
2810                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2811                throw new RuntimeException(he);
2812            }
2813        }
2814    
2815    
2816        /**
2817         * Returns a specific repetition of
2818         * OM1-40: "Service/Test/Observation Performance Schedule" - creates it if necessary
2819         *
2820         * @param rep The repetition index (0-indexed)
2821         */
2822        public ST getServiceTestObservationPerformanceSchedule(int rep) { 
2823            ST ret = null;
2824            try {
2825                Type t = this.getField(40, rep);
2826                ret = (ST)t;
2827            } catch (ClassCastException cce) {
2828                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2829                throw new RuntimeException(cce);
2830            } catch (HL7Exception he) {
2831                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2832                throw new RuntimeException(he);
2833            }
2834            return ret;
2835        }
2836    
2837        /**
2838         * Returns a specific repetition of
2839         * OM1-40: "Service/Test/Observation Performance Schedule" - creates it if necessary
2840         *
2841         * @param rep The repetition index (0-indexed)
2842         */
2843        public ST getOm140_ServiceTestObservationPerformanceSchedule(int rep) { 
2844            ST ret = null;
2845            try {
2846                Type t = this.getField(40, rep);
2847                ret = (ST)t;
2848            } catch (ClassCastException cce) {
2849                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2850                throw new RuntimeException(cce);
2851            } catch (HL7Exception he) {
2852                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2853                throw new RuntimeException(he);
2854            }
2855            return ret;
2856        }
2857    
2858    
2859        /**
2860         * Returns a count of the current number of repetitions of Service/Test/Observation Performance Schedule (OM1-40).
2861         * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
2862         * it will return zero.
2863         */
2864        public int getOm140_ServiceTestObservationPerformanceScheduleReps() {
2865            ST[] ret = null;
2866            try {
2867                Type[] t = this.getField(40);
2868                return t.length;  
2869            } catch (ClassCastException cce) {
2870                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2871                throw new RuntimeException(cce);
2872            } catch (HL7Exception he) {
2873                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2874                throw new RuntimeException(he);
2875            }
2876        }
2877    
2878    
2879    
2880        /**
2881         * Inserts a repetition of
2882         * OM1-40: "Service/Test/Observation Performance Schedule" at a specific index
2883         *
2884         * @param rep The repetition index (0-indexed)
2885         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2886         */
2887        public ST insertServiceTestObservationPerformanceSchedule(int rep) throws HL7Exception { 
2888            return (ST) super.insertRepetition(40, rep);
2889        }
2890    
2891    
2892    
2893        /**
2894         * Inserts a repetition of
2895         * OM1-40: "Service/Test/Observation Performance Schedule" at a specific index
2896         *
2897         * @param rep The repetition index (0-indexed)
2898         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2899         */
2900        public ST insertOm140_ServiceTestObservationPerformanceSchedule(int rep) throws HL7Exception { 
2901            return (ST) super.insertRepetition(40, rep);
2902        }
2903    
2904    
2905        /**
2906         * Removes a repetition of
2907         * OM1-40: "Service/Test/Observation Performance Schedule" at a specific index
2908         *
2909         * @param rep The repetition index (0-indexed)
2910         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2911         */
2912        public ST removeServiceTestObservationPerformanceSchedule(int rep) throws HL7Exception { 
2913            return (ST) super.removeRepetition(40, rep);
2914        }
2915    
2916    
2917        /**
2918         * Removes a repetition of
2919         * OM1-40: "Service/Test/Observation Performance Schedule" at a specific index
2920         *
2921         * @param rep The repetition index (0-indexed)
2922         * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
2923         */
2924        public ST removeOm140_ServiceTestObservationPerformanceSchedule(int rep) throws HL7Exception { 
2925            return (ST) super.removeRepetition(40, rep);
2926        }
2927    
2928    
2929    
2930    
2931        /**
2932         * Returns
2933         * OM1-41: "Description of Test Methods" - creates it if necessary
2934         */
2935        public TX getDescriptionOfTestMethods() { 
2936            TX ret = null;
2937            try {
2938                Type t = this.getField(41, 0);
2939                ret = (TX)t;
2940            } catch (ClassCastException cce) {
2941                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2942                throw new RuntimeException(cce);
2943            } catch (HL7Exception he) {
2944                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2945                throw new RuntimeException(he);
2946            }
2947            return ret;
2948        }
2949    
2950    
2951        /**
2952         * Returns
2953         * OM1-41: "Description of Test Methods" - creates it if necessary
2954         */
2955        public TX getOm141_DescriptionOfTestMethods() { 
2956            TX ret = null;
2957            try {
2958                Type t = this.getField(41, 0);
2959                ret = (TX)t;
2960            } catch (ClassCastException cce) {
2961                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2962                throw new RuntimeException(cce);
2963            } catch (HL7Exception he) {
2964                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2965                throw new RuntimeException(he);
2966            }
2967            return ret;
2968        }
2969    
2970    
2971    
2972        /**
2973         * Returns
2974         * OM1-42: "Kind of Quantity Observed" - creates it if necessary
2975         */
2976        public CE getKindOfQuantityObserved() { 
2977            CE ret = null;
2978            try {
2979                Type t = this.getField(42, 0);
2980                ret = (CE)t;
2981            } catch (ClassCastException cce) {
2982                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
2983                throw new RuntimeException(cce);
2984            } catch (HL7Exception he) {
2985                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
2986                throw new RuntimeException(he);
2987            }
2988            return ret;
2989        }
2990    
2991    
2992        /**
2993         * Returns
2994         * OM1-42: "Kind of Quantity Observed" - creates it if necessary
2995         */
2996        public CE getOm142_KindOfQuantityObserved() { 
2997            CE ret = null;
2998            try {
2999                Type t = this.getField(42, 0);
3000                ret = (CE)t;
3001            } catch (ClassCastException cce) {
3002                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3003                throw new RuntimeException(cce);
3004            } catch (HL7Exception he) {
3005                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3006                throw new RuntimeException(he);
3007            }
3008            return ret;
3009        }
3010    
3011    
3012    
3013        /**
3014         * Returns
3015         * OM1-43: "Point Versus Interval" - creates it if necessary
3016         */
3017        public CE getPointVersusInterval() { 
3018            CE ret = null;
3019            try {
3020                Type t = this.getField(43, 0);
3021                ret = (CE)t;
3022            } catch (ClassCastException cce) {
3023                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3024                throw new RuntimeException(cce);
3025            } catch (HL7Exception he) {
3026                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3027                throw new RuntimeException(he);
3028            }
3029            return ret;
3030        }
3031    
3032    
3033        /**
3034         * Returns
3035         * OM1-43: "Point Versus Interval" - creates it if necessary
3036         */
3037        public CE getOm143_PointVersusInterval() { 
3038            CE ret = null;
3039            try {
3040                Type t = this.getField(43, 0);
3041                ret = (CE)t;
3042            } catch (ClassCastException cce) {
3043                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3044                throw new RuntimeException(cce);
3045            } catch (HL7Exception he) {
3046                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3047                throw new RuntimeException(he);
3048            }
3049            return ret;
3050        }
3051    
3052    
3053    
3054        /**
3055         * Returns
3056         * OM1-44: "Challenge Information" - creates it if necessary
3057         */
3058        public TX getChallengeInformation() { 
3059            TX ret = null;
3060            try {
3061                Type t = this.getField(44, 0);
3062                ret = (TX)t;
3063            } catch (ClassCastException cce) {
3064                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3065                throw new RuntimeException(cce);
3066            } catch (HL7Exception he) {
3067                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3068                throw new RuntimeException(he);
3069            }
3070            return ret;
3071        }
3072    
3073    
3074        /**
3075         * Returns
3076         * OM1-44: "Challenge Information" - creates it if necessary
3077         */
3078        public TX getOm144_ChallengeInformation() { 
3079            TX ret = null;
3080            try {
3081                Type t = this.getField(44, 0);
3082                ret = (TX)t;
3083            } catch (ClassCastException cce) {
3084                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3085                throw new RuntimeException(cce);
3086            } catch (HL7Exception he) {
3087                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3088                throw new RuntimeException(he);
3089            }
3090            return ret;
3091        }
3092    
3093    
3094    
3095        /**
3096         * Returns
3097         * OM1-45: "Relationship Modifier" - creates it if necessary
3098         */
3099        public CE getRelationshipModifier() { 
3100            CE ret = null;
3101            try {
3102                Type t = this.getField(45, 0);
3103                ret = (CE)t;
3104            } catch (ClassCastException cce) {
3105                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3106                throw new RuntimeException(cce);
3107            } catch (HL7Exception he) {
3108                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3109                throw new RuntimeException(he);
3110            }
3111            return ret;
3112        }
3113    
3114    
3115        /**
3116         * Returns
3117         * OM1-45: "Relationship Modifier" - creates it if necessary
3118         */
3119        public CE getOm145_RelationshipModifier() { 
3120            CE ret = null;
3121            try {
3122                Type t = this.getField(45, 0);
3123                ret = (CE)t;
3124            } catch (ClassCastException cce) {
3125                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3126                throw new RuntimeException(cce);
3127            } catch (HL7Exception he) {
3128                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3129                throw new RuntimeException(he);
3130            }
3131            return ret;
3132        }
3133    
3134    
3135    
3136        /**
3137         * Returns
3138         * OM1-46: "Target Anatomic Site Of Test" - creates it if necessary
3139         */
3140        public CE getTargetAnatomicSiteOfTest() { 
3141            CE ret = null;
3142            try {
3143                Type t = this.getField(46, 0);
3144                ret = (CE)t;
3145            } catch (ClassCastException cce) {
3146                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3147                throw new RuntimeException(cce);
3148            } catch (HL7Exception he) {
3149                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3150                throw new RuntimeException(he);
3151            }
3152            return ret;
3153        }
3154    
3155    
3156        /**
3157         * Returns
3158         * OM1-46: "Target Anatomic Site Of Test" - creates it if necessary
3159         */
3160        public CE getOm146_TargetAnatomicSiteOfTest() { 
3161            CE ret = null;
3162            try {
3163                Type t = this.getField(46, 0);
3164                ret = (CE)t;
3165            } catch (ClassCastException cce) {
3166                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3167                throw new RuntimeException(cce);
3168            } catch (HL7Exception he) {
3169                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3170                throw new RuntimeException(he);
3171            }
3172            return ret;
3173        }
3174    
3175    
3176    
3177        /**
3178         * Returns
3179         * OM1-47: "Modality Of Imaging Measurement" - creates it if necessary
3180         */
3181        public CE getModalityOfImagingMeasurement() { 
3182            CE ret = null;
3183            try {
3184                Type t = this.getField(47, 0);
3185                ret = (CE)t;
3186            } catch (ClassCastException cce) {
3187                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3188                throw new RuntimeException(cce);
3189            } catch (HL7Exception he) {
3190                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3191                throw new RuntimeException(he);
3192            }
3193            return ret;
3194        }
3195    
3196    
3197        /**
3198         * Returns
3199         * OM1-47: "Modality Of Imaging Measurement" - creates it if necessary
3200         */
3201        public CE getOm147_ModalityOfImagingMeasurement() { 
3202            CE ret = null;
3203            try {
3204                Type t = this.getField(47, 0);
3205                ret = (CE)t;
3206            } catch (ClassCastException cce) {
3207                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", cce);
3208                throw new RuntimeException(cce);
3209            } catch (HL7Exception he) {
3210                HapiLogFactory.getHapiLog(this.getClass()).error("Unexpected problem obtaining field value.  This is a bug.", he);
3211                throw new RuntimeException(he);
3212            }
3213            return ret;
3214        }
3215    
3216    
3217    
3218    
3219    
3220        /** {@inheritDoc} */   
3221        protected Type createNewTypeWithoutReflection(int field) {
3222           switch (field) {
3223              case 0: return new NM(getMessage());
3224              case 1: return new CE(getMessage());
3225              case 2: return new ID(getMessage(), new Integer( 125 ));
3226              case 3: return new ID(getMessage(), new Integer( 136 ));
3227              case 4: return new CE(getMessage());
3228              case 5: return new TX(getMessage());
3229              case 6: return new CE(getMessage());
3230              case 7: return new ST(getMessage());
3231              case 8: return new ST(getMessage());
3232              case 9: return new ST(getMessage());
3233              case 10: return new ST(getMessage());
3234              case 11: return new ID(getMessage(), new Integer( 136 ));
3235              case 12: return new CE(getMessage());
3236              case 13: return new CE(getMessage());
3237              case 14: return new ID(getMessage(), new Integer( 136 ));
3238              case 15: return new CE(getMessage());
3239              case 16: return new XTN(getMessage());
3240              case 17: return new IS(getMessage(), new Integer( 174 ));
3241              case 18: return new CE(getMessage());
3242              case 19: return new ST(getMessage());
3243              case 20: return new TS(getMessage());
3244              case 21: return new TS(getMessage());
3245              case 22: return new NM(getMessage());
3246              case 23: return new NM(getMessage());
3247              case 24: return new ID(getMessage(), new Integer( 168 ));
3248              case 25: return new ID(getMessage(), new Integer( 169 ));
3249              case 26: return new CE(getMessage());
3250              case 27: return new XAD(getMessage());
3251              case 28: return new XTN(getMessage());
3252              case 29: return new IS(getMessage(), new Integer( 177 ));
3253              case 30: return new CE(getMessage());
3254              case 31: return new TX(getMessage());
3255              case 32: return new CE(getMessage());
3256              case 33: return new CE(getMessage());
3257              case 34: return new TX(getMessage());
3258              case 35: return new CE(getMessage());
3259              case 36: return new TX(getMessage());
3260              case 37: return new CE(getMessage());
3261              case 38: return new TX(getMessage());
3262              case 39: return new ST(getMessage());
3263              case 40: return new TX(getMessage());
3264              case 41: return new CE(getMessage());
3265              case 42: return new CE(getMessage());
3266              case 43: return new TX(getMessage());
3267              case 44: return new CE(getMessage());
3268              case 45: return new CE(getMessage());
3269              case 46: return new CE(getMessage());
3270              default: return null;
3271           }
3272       }
3273    
3274    
3275    }
3276