001/*
002 * This class is an auto-generated source file for a HAPI
003 * HL7 v2.x standard structure class.
004 *
005 * For more information, visit: http://hl7api.sourceforge.net/
006 * 
007 * The contents of this file are subject to the Mozilla Public License Version 1.1 
008 * (the "License"); you may not use this file except in compliance with the License. 
009 * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
010 * Software distributed under the License is distributed on an "AS IS" basis, 
011 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
012 * specific language governing rights and limitations under the License. 
013 * 
014 * The Original Code is "[file_name]".  Description: 
015 * "[one_line_description]" 
016 * 
017 * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
018 * 2012.  All Rights Reserved. 
019 * 
020 * Contributor(s): ______________________________________. 
021 * 
022 * Alternatively, the contents of this file may be used under the terms of the 
023 * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
024 * applicable instead of those above.  If you wish to allow use of your version of this 
025 * file only under the terms of the GPL and not to allow others to use your version 
026 * of this file under the MPL, indicate your decision by deleting  the provisions above 
027 * and replace  them with the notice and other provisions required by the GPL License.  
028 * If you do not delete the provisions above, a recipient may use your version of 
029 * this file under either the MPL or the GPL. 
030 * 
031 */
032
033
034package ca.uhn.hl7v2.model.v22.segment;
035
036// import ca.uhn.hl7v2.model.v22.group.*;
037import ca.uhn.hl7v2.model.v22.datatype.*;
038import ca.uhn.hl7v2.HL7Exception;
039import ca.uhn.hl7v2.parser.ModelClassFactory;
040import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
041import ca.uhn.hl7v2.model.AbstractMessage;
042import ca.uhn.hl7v2.model.Group;
043import ca.uhn.hl7v2.model.Type;
044import ca.uhn.hl7v2.model.AbstractSegment;
045import ca.uhn.hl7v2.model.Varies;
046
047
048/**
049 *<p>Represents an HL7 PR1 message segment (PROCEDURES). 
050 * This segment has the following fields:</p>
051 * <ul>
052     * <li>PR1-1: Set ID - procedure (SI) <b> </b>
053     * <li>PR1-2: Procedure coding method (ID) <b> repeating</b>
054     * <li>PR1-3: Procedure code (ID) <b> repeating</b>
055     * <li>PR1-4: Procedure description (ST) <b>optional repeating</b>
056     * <li>PR1-5: Procedure date / time (TS) <b> </b>
057     * <li>PR1-6: Procedure type (ID) <b> </b>
058     * <li>PR1-7: Procedure minutes (NM) <b>optional </b>
059     * <li>PR1-8: Anesthesiologist (CN) <b>optional </b>
060     * <li>PR1-9: Anesthesia code (ID) <b>optional </b>
061     * <li>PR1-10: Anesthesia minutes (NM) <b>optional </b>
062     * <li>PR1-11: Surgeon (CN) <b>optional </b>
063     * <li>PR1-12: Procedure Practitioner (CM_PRACTITIONER) <b>optional repeating</b>
064     * <li>PR1-13: Consent code (ID) <b>optional </b>
065     * <li>PR1-14: Procedure priority (NM) <b>optional </b>
066 * </ul>
067 */
068@SuppressWarnings("unused")
069public class PR1 extends AbstractSegment {
070
071    /** 
072     * Creates a new PR1 segment
073     */
074    public PR1(Group parent, ModelClassFactory factory) {
075       super(parent, factory);
076       init(factory);
077    }
078
079    private void init(ModelClassFactory factory) {
080       try {
081                                  this.add(SI.class, true, 1, 4, new Object[]{ getMessage() }, "Set ID - procedure");
082                                              this.add(ID.class, true, 0, 2, new Object[]{ getMessage(), new Integer(89) }, "Procedure coding method");
083                                              this.add(ID.class, true, 0, 10, new Object[]{ getMessage(), new Integer(88) }, "Procedure code");
084                                  this.add(ST.class, false, 0, 40, new Object[]{ getMessage() }, "Procedure description");
085                                  this.add(TS.class, true, 1, 26, new Object[]{ getMessage() }, "Procedure date / time");
086                                              this.add(ID.class, true, 1, 2, new Object[]{ getMessage(), new Integer(90) }, "Procedure type");
087                                  this.add(NM.class, false, 1, 4, new Object[]{ getMessage() }, "Procedure minutes");
088                                  this.add(CN.class, false, 1, 60, new Object[]{ getMessage() }, "Anesthesiologist");
089                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(19) }, "Anesthesia code");
090                                  this.add(NM.class, false, 1, 4, new Object[]{ getMessage() }, "Anesthesia minutes");
091                                  this.add(CN.class, false, 1, 60, new Object[]{ getMessage() }, "Surgeon");
092                                  this.add(CM_PRACTITIONER.class, false, 0, 60, new Object[]{ getMessage() }, "Procedure Practitioner");
093                                              this.add(ID.class, false, 1, 2, new Object[]{ getMessage(), new Integer(59) }, "Consent code");
094                                  this.add(NM.class, false, 1, 2, new Object[]{ getMessage() }, "Procedure priority");
095       } catch(HL7Exception e) {
096          log.error("Unexpected error creating PR1 - this is probably a bug in the source code generator.", e);
097       }
098    }
099
100
101
102    /**
103     * Returns
104     * PR1-1: "Set ID - procedure" - creates it if necessary
105     */
106    public SI getSetIDProcedure() { 
107                SI retVal = this.getTypedField(1, 0);
108                return retVal;
109    }
110    
111    /**
112     * Returns
113     * PR1-1: "Set ID - procedure" - creates it if necessary
114     */
115    public SI getPr11_SetIDProcedure() { 
116                SI retVal = this.getTypedField(1, 0);
117                return retVal;
118    }
119
120
121    /**
122     * Returns all repetitions of Procedure coding method (PR1-2).
123     */
124    public ID[] getProcedureCodingMethod() {
125        ID[] retVal = this.getTypedField(2, new ID[0]);
126        return retVal;
127    }
128
129
130    /**
131     * Returns all repetitions of Procedure coding method (PR1-2).
132     */
133    public ID[] getPr12_ProcedureCodingMethod() {
134        ID[] retVal = this.getTypedField(2, new ID[0]);
135        return retVal;
136    }
137
138
139    /**
140     * Returns a count of the current number of repetitions of Procedure coding method (PR1-2).
141     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
142     * it will return zero.
143     */
144    public int getProcedureCodingMethodReps() {
145        return this.getReps(2);
146    }
147
148
149    /**
150     * Returns a specific repetition of
151     * PR1-2: "Procedure coding method" - creates it if necessary
152     *
153     * @param rep The repetition index (0-indexed)
154     */
155    public ID getProcedureCodingMethod(int rep) { 
156                ID retVal = this.getTypedField(2, rep);
157                return retVal;
158    }
159
160    /**
161     * Returns a specific repetition of
162     * PR1-2: "Procedure coding method" - creates it if necessary
163     *
164     * @param rep The repetition index (0-indexed)
165     */
166    public ID getPr12_ProcedureCodingMethod(int rep) { 
167                ID retVal = this.getTypedField(2, rep);
168                return retVal;
169    }
170
171    /**
172     * Returns a count of the current number of repetitions of Procedure coding method (PR1-2).
173     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
174     * it will return zero.
175     */
176    public int getPr12_ProcedureCodingMethodReps() {
177        return this.getReps(2);
178    }
179
180
181    /**
182     * Inserts a repetition of
183     * PR1-2: "Procedure coding method" at a specific index
184     *
185     * @param rep The repetition index (0-indexed)
186     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
187     */
188    public ID insertProcedureCodingMethod(int rep) throws HL7Exception { 
189        return (ID) super.insertRepetition(2, rep);
190    }
191
192
193    /**
194     * Inserts a repetition of
195     * PR1-2: "Procedure coding method" at a specific index
196     *
197     * @param rep The repetition index (0-indexed)
198     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
199     */
200    public ID insertPr12_ProcedureCodingMethod(int rep) throws HL7Exception { 
201        return (ID) super.insertRepetition(2, rep);
202    }
203
204
205    /**
206     * Removes a repetition of
207     * PR1-2: "Procedure coding method" at a specific index
208     *
209     * @param rep The repetition index (0-indexed)
210     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
211     */
212    public ID removeProcedureCodingMethod(int rep) throws HL7Exception { 
213        return (ID) super.removeRepetition(2, rep);
214    }
215
216
217    /**
218     * Removes a repetition of
219     * PR1-2: "Procedure coding method" at a specific index
220     *
221     * @param rep The repetition index (0-indexed)
222     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
223     */
224    public ID removePr12_ProcedureCodingMethod(int rep) throws HL7Exception { 
225        return (ID) super.removeRepetition(2, rep);
226    }
227
228
229
230    /**
231     * Returns all repetitions of Procedure code (PR1-3).
232     */
233    public ID[] getProcedureCode() {
234        ID[] retVal = this.getTypedField(3, new ID[0]);
235        return retVal;
236    }
237
238
239    /**
240     * Returns all repetitions of Procedure code (PR1-3).
241     */
242    public ID[] getPr13_ProcedureCode() {
243        ID[] retVal = this.getTypedField(3, new ID[0]);
244        return retVal;
245    }
246
247
248    /**
249     * Returns a count of the current number of repetitions of Procedure code (PR1-3).
250     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
251     * it will return zero.
252     */
253    public int getProcedureCodeReps() {
254        return this.getReps(3);
255    }
256
257
258    /**
259     * Returns a specific repetition of
260     * PR1-3: "Procedure code" - creates it if necessary
261     *
262     * @param rep The repetition index (0-indexed)
263     */
264    public ID getProcedureCode(int rep) { 
265                ID retVal = this.getTypedField(3, rep);
266                return retVal;
267    }
268
269    /**
270     * Returns a specific repetition of
271     * PR1-3: "Procedure code" - creates it if necessary
272     *
273     * @param rep The repetition index (0-indexed)
274     */
275    public ID getPr13_ProcedureCode(int rep) { 
276                ID retVal = this.getTypedField(3, rep);
277                return retVal;
278    }
279
280    /**
281     * Returns a count of the current number of repetitions of Procedure code (PR1-3).
282     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
283     * it will return zero.
284     */
285    public int getPr13_ProcedureCodeReps() {
286        return this.getReps(3);
287    }
288
289
290    /**
291     * Inserts a repetition of
292     * PR1-3: "Procedure code" at a specific index
293     *
294     * @param rep The repetition index (0-indexed)
295     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
296     */
297    public ID insertProcedureCode(int rep) throws HL7Exception { 
298        return (ID) super.insertRepetition(3, rep);
299    }
300
301
302    /**
303     * Inserts a repetition of
304     * PR1-3: "Procedure code" at a specific index
305     *
306     * @param rep The repetition index (0-indexed)
307     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
308     */
309    public ID insertPr13_ProcedureCode(int rep) throws HL7Exception { 
310        return (ID) super.insertRepetition(3, rep);
311    }
312
313
314    /**
315     * Removes a repetition of
316     * PR1-3: "Procedure code" at a specific index
317     *
318     * @param rep The repetition index (0-indexed)
319     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
320     */
321    public ID removeProcedureCode(int rep) throws HL7Exception { 
322        return (ID) super.removeRepetition(3, rep);
323    }
324
325
326    /**
327     * Removes a repetition of
328     * PR1-3: "Procedure code" at a specific index
329     *
330     * @param rep The repetition index (0-indexed)
331     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
332     */
333    public ID removePr13_ProcedureCode(int rep) throws HL7Exception { 
334        return (ID) super.removeRepetition(3, rep);
335    }
336
337
338
339    /**
340     * Returns all repetitions of Procedure description (PR1-4).
341     */
342    public ST[] getProcedureDescription() {
343        ST[] retVal = this.getTypedField(4, new ST[0]);
344        return retVal;
345    }
346
347
348    /**
349     * Returns all repetitions of Procedure description (PR1-4).
350     */
351    public ST[] getPr14_ProcedureDescription() {
352        ST[] retVal = this.getTypedField(4, new ST[0]);
353        return retVal;
354    }
355
356
357    /**
358     * Returns a count of the current number of repetitions of Procedure description (PR1-4).
359     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
360     * it will return zero.
361     */
362    public int getProcedureDescriptionReps() {
363        return this.getReps(4);
364    }
365
366
367    /**
368     * Returns a specific repetition of
369     * PR1-4: "Procedure description" - creates it if necessary
370     *
371     * @param rep The repetition index (0-indexed)
372     */
373    public ST getProcedureDescription(int rep) { 
374                ST retVal = this.getTypedField(4, rep);
375                return retVal;
376    }
377
378    /**
379     * Returns a specific repetition of
380     * PR1-4: "Procedure description" - creates it if necessary
381     *
382     * @param rep The repetition index (0-indexed)
383     */
384    public ST getPr14_ProcedureDescription(int rep) { 
385                ST retVal = this.getTypedField(4, rep);
386                return retVal;
387    }
388
389    /**
390     * Returns a count of the current number of repetitions of Procedure description (PR1-4).
391     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
392     * it will return zero.
393     */
394    public int getPr14_ProcedureDescriptionReps() {
395        return this.getReps(4);
396    }
397
398
399    /**
400     * Inserts a repetition of
401     * PR1-4: "Procedure description" at a specific index
402     *
403     * @param rep The repetition index (0-indexed)
404     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
405     */
406    public ST insertProcedureDescription(int rep) throws HL7Exception { 
407        return (ST) super.insertRepetition(4, rep);
408    }
409
410
411    /**
412     * Inserts a repetition of
413     * PR1-4: "Procedure description" at a specific index
414     *
415     * @param rep The repetition index (0-indexed)
416     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
417     */
418    public ST insertPr14_ProcedureDescription(int rep) throws HL7Exception { 
419        return (ST) super.insertRepetition(4, rep);
420    }
421
422
423    /**
424     * Removes a repetition of
425     * PR1-4: "Procedure description" at a specific index
426     *
427     * @param rep The repetition index (0-indexed)
428     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
429     */
430    public ST removeProcedureDescription(int rep) throws HL7Exception { 
431        return (ST) super.removeRepetition(4, rep);
432    }
433
434
435    /**
436     * Removes a repetition of
437     * PR1-4: "Procedure description" at a specific index
438     *
439     * @param rep The repetition index (0-indexed)
440     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
441     */
442    public ST removePr14_ProcedureDescription(int rep) throws HL7Exception { 
443        return (ST) super.removeRepetition(4, rep);
444    }
445
446
447
448
449    /**
450     * Returns
451     * PR1-5: "Procedure date / time" - creates it if necessary
452     */
453    public TS getProcedureDateTime() { 
454                TS retVal = this.getTypedField(5, 0);
455                return retVal;
456    }
457    
458    /**
459     * Returns
460     * PR1-5: "Procedure date / time" - creates it if necessary
461     */
462    public TS getPr15_ProcedureDateTime() { 
463                TS retVal = this.getTypedField(5, 0);
464                return retVal;
465    }
466
467
468
469    /**
470     * Returns
471     * PR1-6: "Procedure type" - creates it if necessary
472     */
473    public ID getProcedureType() { 
474                ID retVal = this.getTypedField(6, 0);
475                return retVal;
476    }
477    
478    /**
479     * Returns
480     * PR1-6: "Procedure type" - creates it if necessary
481     */
482    public ID getPr16_ProcedureType() { 
483                ID retVal = this.getTypedField(6, 0);
484                return retVal;
485    }
486
487
488
489    /**
490     * Returns
491     * PR1-7: "Procedure minutes" - creates it if necessary
492     */
493    public NM getProcedureMinutes() { 
494                NM retVal = this.getTypedField(7, 0);
495                return retVal;
496    }
497    
498    /**
499     * Returns
500     * PR1-7: "Procedure minutes" - creates it if necessary
501     */
502    public NM getPr17_ProcedureMinutes() { 
503                NM retVal = this.getTypedField(7, 0);
504                return retVal;
505    }
506
507
508
509    /**
510     * Returns
511     * PR1-8: "Anesthesiologist" - creates it if necessary
512     */
513    public CN getAnesthesiologist() { 
514                CN retVal = this.getTypedField(8, 0);
515                return retVal;
516    }
517    
518    /**
519     * Returns
520     * PR1-8: "Anesthesiologist" - creates it if necessary
521     */
522    public CN getPr18_Anesthesiologist() { 
523                CN retVal = this.getTypedField(8, 0);
524                return retVal;
525    }
526
527
528
529    /**
530     * Returns
531     * PR1-9: "Anesthesia code" - creates it if necessary
532     */
533    public ID getAnesthesiaCode() { 
534                ID retVal = this.getTypedField(9, 0);
535                return retVal;
536    }
537    
538    /**
539     * Returns
540     * PR1-9: "Anesthesia code" - creates it if necessary
541     */
542    public ID getPr19_AnesthesiaCode() { 
543                ID retVal = this.getTypedField(9, 0);
544                return retVal;
545    }
546
547
548
549    /**
550     * Returns
551     * PR1-10: "Anesthesia minutes" - creates it if necessary
552     */
553    public NM getAnesthesiaMinutes() { 
554                NM retVal = this.getTypedField(10, 0);
555                return retVal;
556    }
557    
558    /**
559     * Returns
560     * PR1-10: "Anesthesia minutes" - creates it if necessary
561     */
562    public NM getPr110_AnesthesiaMinutes() { 
563                NM retVal = this.getTypedField(10, 0);
564                return retVal;
565    }
566
567
568
569    /**
570     * Returns
571     * PR1-11: "Surgeon" - creates it if necessary
572     */
573    public CN getSurgeon() { 
574                CN retVal = this.getTypedField(11, 0);
575                return retVal;
576    }
577    
578    /**
579     * Returns
580     * PR1-11: "Surgeon" - creates it if necessary
581     */
582    public CN getPr111_Surgeon() { 
583                CN retVal = this.getTypedField(11, 0);
584                return retVal;
585    }
586
587
588    /**
589     * Returns all repetitions of Procedure Practitioner (PR1-12).
590     */
591    public CM_PRACTITIONER[] getProcedurePractitioner() {
592        CM_PRACTITIONER[] retVal = this.getTypedField(12, new CM_PRACTITIONER[0]);
593        return retVal;
594    }
595
596
597    /**
598     * Returns all repetitions of Procedure Practitioner (PR1-12).
599     */
600    public CM_PRACTITIONER[] getPr112_ProcedurePractitioner() {
601        CM_PRACTITIONER[] retVal = this.getTypedField(12, new CM_PRACTITIONER[0]);
602        return retVal;
603    }
604
605
606    /**
607     * Returns a count of the current number of repetitions of Procedure Practitioner (PR1-12).
608     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
609     * it will return zero.
610     */
611    public int getProcedurePractitionerReps() {
612        return this.getReps(12);
613    }
614
615
616    /**
617     * Returns a specific repetition of
618     * PR1-12: "Procedure Practitioner" - creates it if necessary
619     *
620     * @param rep The repetition index (0-indexed)
621     */
622    public CM_PRACTITIONER getProcedurePractitioner(int rep) { 
623                CM_PRACTITIONER retVal = this.getTypedField(12, rep);
624                return retVal;
625    }
626
627    /**
628     * Returns a specific repetition of
629     * PR1-12: "Procedure Practitioner" - creates it if necessary
630     *
631     * @param rep The repetition index (0-indexed)
632     */
633    public CM_PRACTITIONER getPr112_ProcedurePractitioner(int rep) { 
634                CM_PRACTITIONER retVal = this.getTypedField(12, rep);
635                return retVal;
636    }
637
638    /**
639     * Returns a count of the current number of repetitions of Procedure Practitioner (PR1-12).
640     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
641     * it will return zero.
642     */
643    public int getPr112_ProcedurePractitionerReps() {
644        return this.getReps(12);
645    }
646
647
648    /**
649     * Inserts a repetition of
650     * PR1-12: "Procedure Practitioner" 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 CM_PRACTITIONER insertProcedurePractitioner(int rep) throws HL7Exception { 
656        return (CM_PRACTITIONER) super.insertRepetition(12, rep);
657    }
658
659
660    /**
661     * Inserts a repetition of
662     * PR1-12: "Procedure Practitioner" at a specific index
663     *
664     * @param rep The repetition index (0-indexed)
665     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
666     */
667    public CM_PRACTITIONER insertPr112_ProcedurePractitioner(int rep) throws HL7Exception { 
668        return (CM_PRACTITIONER) super.insertRepetition(12, rep);
669    }
670
671
672    /**
673     * Removes a repetition of
674     * PR1-12: "Procedure Practitioner" at a specific index
675     *
676     * @param rep The repetition index (0-indexed)
677     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
678     */
679    public CM_PRACTITIONER removeProcedurePractitioner(int rep) throws HL7Exception { 
680        return (CM_PRACTITIONER) super.removeRepetition(12, rep);
681    }
682
683
684    /**
685     * Removes a repetition of
686     * PR1-12: "Procedure Practitioner" at a specific index
687     *
688     * @param rep The repetition index (0-indexed)
689     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
690     */
691    public CM_PRACTITIONER removePr112_ProcedurePractitioner(int rep) throws HL7Exception { 
692        return (CM_PRACTITIONER) super.removeRepetition(12, rep);
693    }
694
695
696
697
698    /**
699     * Returns
700     * PR1-13: "Consent code" - creates it if necessary
701     */
702    public ID getConsentCode() { 
703                ID retVal = this.getTypedField(13, 0);
704                return retVal;
705    }
706    
707    /**
708     * Returns
709     * PR1-13: "Consent code" - creates it if necessary
710     */
711    public ID getPr113_ConsentCode() { 
712                ID retVal = this.getTypedField(13, 0);
713                return retVal;
714    }
715
716
717
718    /**
719     * Returns
720     * PR1-14: "Procedure priority" - creates it if necessary
721     */
722    public NM getProcedurePriority() { 
723                NM retVal = this.getTypedField(14, 0);
724                return retVal;
725    }
726    
727    /**
728     * Returns
729     * PR1-14: "Procedure priority" - creates it if necessary
730     */
731    public NM getPr114_ProcedurePriority() { 
732                NM retVal = this.getTypedField(14, 0);
733                return retVal;
734    }
735
736
737
738
739
740    /** {@inheritDoc} */   
741    protected Type createNewTypeWithoutReflection(int field) {
742       switch (field) {
743          case 0: return new SI(getMessage());
744          case 1: return new ID(getMessage(), new Integer( 89 ));
745          case 2: return new ID(getMessage(), new Integer( 88 ));
746          case 3: return new ST(getMessage());
747          case 4: return new TS(getMessage());
748          case 5: return new ID(getMessage(), new Integer( 90 ));
749          case 6: return new NM(getMessage());
750          case 7: return new CN(getMessage());
751          case 8: return new ID(getMessage(), new Integer( 19 ));
752          case 9: return new NM(getMessage());
753          case 10: return new CN(getMessage());
754          case 11: return new CM_PRACTITIONER(getMessage());
755          case 12: return new ID(getMessage(), new Integer( 59 ));
756          case 13: return new NM(getMessage());
757          default: return null;
758       }
759   }
760
761
762}
763