001    package org.vmdb.hl7;
002    
003    /**
004     * <p><Title:> Extended Person Name XPN Element. </p>
005     * <p>Description: Network Connectivity For VMDB. </p>
006     * <p>Copyright: Copyright (c) 2002-2003. </p>
007     * <p>Company: Veterinary Medical Database (VMDB). </p>
008     * <p>The method names follow the convention established by other Element type
009     * classes.  Names follow the HL7 documentation.</p>
010     * <p>See the HL7 documentation for an explanation of each component.</p>
011     * @author Michael K. Martin
012     * @version 1.0
013     */
014    
015    public class XPNElement extends HL7Element {
016       private String sNm = "XPN";
017       private String sRl = "[FN][ST][ST][ST][ST][IS][ID][ID][CE][DR][ID]";
018    
019       /**
020        * Construct an Extended Person Name Element using the default name and type constants.
021        * @param iLevel One of the constants for specifying level as FIELD, COMPONENT, or
022        * SUBCOMPONENT.  Default FIELD.
023        */
024       public XPNElement( int iLevel ) {
025          super( iLevel );
026          setName( sNm );
027          setRule( sRl );
028          setType( "XPN" );
029       }
030    
031       /**
032        * Construct an Extended Person Name Element using the default name and type constants
033        * at the default level FIELD.
034        */
035       public XPNElement() {
036          super( FIELD );
037          setName( sNm );
038          setRule( sRl );
039          setType( "XPN" );
040       }
041    
042       public void setFamilyName( String sFamilyName ) {
043          HL7Element e = new SimpleElement( iLevel + 1 );
044          e.setType( "ST" );
045          e.setName( "XPN.1" );
046          e.setValue( sFamilyName );
047          try {
048             setComponent( e, 1 );
049          } catch( MalformedFieldException mfe ) {
050             mfe.printStackTrace();
051          }
052       }
053    
054       public String getFamilyName() {
055          HL7Element e = getComponent( 1 );
056          if( e != null )
057             return e.toString();
058          else
059             return "";
060       }
061    
062       public void setGivenName( String sGivenName ) {
063          HL7Element e = new SimpleElement( iLevel + 1 );
064          e.setType( "ST" );
065          e.setName( "XPN.2" );
066          e.setValue( sGivenName );
067          try {
068             setComponent( e, 2 );
069          } catch( MalformedFieldException mfe ) {
070             mfe.printStackTrace();
071          }
072       }
073    
074       public String getGivenName() {
075          HL7Element e = getComponent( 2 );
076          if( e != null )
077             return e.toString();
078          else
079             return "";
080       }
081    
082       public void setSecondGivenName( String sSecondGivenName ) {
083          HL7Element e = new SimpleElement( iLevel + 1 );
084          e.setType( "ST" );
085          e.setName( "XPN.3" );
086          e.setValue( sSecondGivenName );
087          try {
088             setComponent( e, 3 );
089          } catch( MalformedFieldException mfe ) {
090             mfe.printStackTrace();
091          }
092       }
093    
094       public String getSecondGivenName() {
095          HL7Element e = getComponent( 3 );
096          if( e != null )
097             return e.toString();
098          else
099             return "";
100       }
101    
102       public void setPrefix( String sPrefix ) {
103          HL7Element e = new SimpleElement( iLevel + 1 );
104          e.setType( "ST" );
105          e.setName( "XPN.4" );
106          e.setValue( sPrefix );
107          try {
108             setComponent( e, 4 );
109          } catch( MalformedFieldException mfe ) {
110             mfe.printStackTrace();
111          }
112       }
113    
114       public String getPrefix() {
115          HL7Element e = getComponent( 4 );
116          if( e != null )
117             return e.toString();
118          else
119             return "";
120       }
121    
122       public void setDegree( String sDegree ) {
123          HL7Element e = new SimpleElement( iLevel + 1 );
124          e.setType( "IS" );
125          e.setName( "XPN.5" );
126          e.setValue( sDegree );
127          try {
128             setComponent( e, 5 );
129          } catch( MalformedFieldException mfe ) {
130             mfe.printStackTrace();
131          }
132       }
133    
134       public String getDegree() {
135          HL7Element e = getComponent( 5 );
136          if( e != null )
137             return e.toString();
138          else
139             return "";
140       }
141    
142       public void setNameTypeCode( String sNameTypeCode ) {
143          HL7Element e = new SimpleElement( iLevel + 1 );
144          e.setType( "ID" );
145          e.setName( "XPN.6" );
146          e.setValue( sNameTypeCode );
147          try {
148             setComponent( e, 6 );
149          } catch( MalformedFieldException mfe ) {
150             mfe.printStackTrace();
151          }
152       }
153    
154       public String getNameTypeCode() {
155          HL7Element e = getComponent( 6 );
156          if( e != null )
157             return e.toString();
158          else
159             return "";
160       }
161    
162       public void setNameRepresentationCode( String sNameRepresentationCode ) {
163          HL7Element e = new SimpleElement( iLevel + 1 );
164          e.setType( "ID" );
165          e.setName( "XPN.7" );
166          e.setValue( sNameRepresentationCode );
167          try {
168             setComponent( e, 7 );
169          } catch( MalformedFieldException mfe ) {
170             mfe.printStackTrace();
171          }
172       }
173    
174       public String getNameRepresentationCode() {
175          HL7Element e = getComponent( 7 );
176          if( e != null )
177             return e.toString();
178          else
179             return "";
180       }
181    
182       public void setNameContext( CEElement ceNameContext ) {
183          ceNameContext.setName( "XPN.8" );
184          try {
185             setComponent( ceNameContext, 8 );
186          } catch( MalformedFieldException mfe ) {
187             mfe.printStackTrace();
188          }
189       }
190    
191       public CEElement getNameContext() {
192          return (CEElement)getComponent( 8 );
193       }
194    
195       public void setNameValidityRange( DRElement drNameValidityRange ) {
196          drNameValidityRange.setName( "XPN.9" );
197          try {
198             setComponent( drNameValidityRange, 9 );
199          } catch( MalformedFieldException mfe ) {
200             mfe.printStackTrace();
201          }
202       }
203    
204       public DRElement getNameValidityRange() {
205          return (DRElement)getComponent( 9 );
206       }
207    
208       public void setNameAssemblyOrder( String sNameAssemblyOrder ) {
209          HL7Element e = new SimpleElement( iLevel + 1 );
210          e.setType( "ID" );
211          e.setName( "XPN.10" );
212          e.setValue( sNameAssemblyOrder );
213          try {
214             setComponent( e, 10 );
215          } catch( MalformedFieldException mfe ) {
216             mfe.printStackTrace();
217          }
218       }
219    
220       public String getNameAssemblyOrder() {
221          HL7Element e = getComponent( 10 );
222          if( e != null )
223             return e.toString();
224          else
225             return "";
226       }
227    
228    } // End class XPNElement
229