DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14083>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14083

Exception in thread "main" java.lang.ClassFormatError: html2wml (Code of a metho





------- Additional Comments From [EMAIL PROTECTED]  2002-11-05 04:45 -------
hi,
     Thanx for all ur suggestions. i am trying to convert an html file to wml 
using xsl stlye sheet. the XSLTC code is as follows :

// Core Java imports
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Properties;

public class XSLTest{
        public static void main(String[] args ){

                XMLUtilities xmlutil = new XMLUtilities();

                  //String xmldocFilename     = "testhtml.html";
                  String xmldocFilename     = "login.html";
                  File stylesheet = new File(xmldocFilename);
                  //String stylesheetFilename = "testWml.xslt";
                  //String stylesheetFilename = "foo.xsl";
                  String stylesheetFilename = "html2wml.xsl";

                        try{
                          org.apache.xalan.xsltc.Translet translet = 
xmlutil.compileStylesheet(stylesheetFilename);

                          if( translet == null ) {
                                        System.out.println( "Translet is 
null" );
                          }

                          xmldocFilename = stylesheet.toURL().toString();


                          org.apache.xalan.xsltc.dom.DOMImpl dom = 
xmlutil.getDOM(xmldocFilename);

                          if( dom == null ) {
                                                System.out.println( "dom is 
null" );
                          }

                          xmlutil.doTransform(translet, dom);

                          }catch(Exception e){
                                System.out.println("Error : " + e);
                          }

        }

}

the XMLUtilities class code is as follows ....


// TraX related imports
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import javax.xml.transform.Templates;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.stream.StreamResult;
import org.apache.xalan.xsltc.runtime.AbstractTranslet;
import org.apache.xalan.xsltc.TransletException;

// Xalan related
import org.apache.xalan.xsltc.compiler.Constants;
import org.apache.xalan.xsltc.compiler.XSLTC;
import org.apache.xalan.xsltc.dom.DOMImpl;
import org.apache.xalan.xsltc.dom.DTDMonitor;
import org.apache.xalan.xsltc.runtime.DefaultSAXOutputHandler;
import org.apache.xalan.xsltc.runtime.TextOutput;
import org.apache.xalan.xsltc.TransletException;
import org.apache.xalan.xsltc.Translet;

// sax related
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;

// Core Java imports
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Properties;


public class XMLUtilities{

        public Translet compileStylesheet(String stylesheetName)
                                throws MalformedURLException, 
ClassNotFoundException,InstantiationException,IllegalAccessException {
                        Translet retval = null;

                        String key = "javax.xml.transform.TransformerFactory";
                        String value 
= "org.apache.xalan.xsltc.trax.TransformerFactoryImpl";
                        Properties props = System.getProperties();
                        props.put(key, value);
                        System.setProperties(props);

                        String transletName = stylesheetName.substring( 0, 
stylesheetName.indexOf( '.' ) );
                        try {

                          XSLTC xsltc = new XSLTC();
                          xsltc.init();
                          File stylesheet = new File(stylesheetName);
                          System.out.println("Compiler output : " + 
xsltc.compile(stylesheet.toURL()));
                          Class clazz = Class.forName(transletName);
                          retval = (Translet)clazz.newInstance();

                        } //end of try block

                        catch (MalformedURLException e) {
                         //System.out.println("Could not create URL to 
stylesheet file: " +      stylesheetName + " : " + e.getMessage());
                          //System.exit(1);
                          throw e;
                        }
                        catch (ClassNotFoundException e) {
                          //System.out.println("Could not find class file: " +  
transletName + ".class . : " + e.getMessage() );
                          //System.exit(1);
                          throw e;
                        }
                        catch (InstantiationException e) {
                          //System.out.println("Could not instantiate class 
file: " + transletName + ".class . : " + e.getMessage());
                          //System.exit(1);
                          throw e;
                        }
                        catch (IllegalAccessException e) {
                          //System.out.println("Could not instantiate class 
file: " + transletName + ".class, illegal access. : " + e.getMessage());
                          //System.exit(1);
                          throw e;
                        }
                        return retval;
          }// end of function

          public DTDMonitor _dtdMonitor = null;

        public XMLReader getReader(String xmldocname)
        throws ParserConfigurationException, SAXException//, IOException
        {
                final SAXParserFactory factory = SAXParserFactory.newInstance();
                try {
                  factory.setFeature(Constants.NAMESPACE_FEATURE, true);
                }
                catch (Exception e) {
                  factory.setNamespaceAware(true);
                }
                final DOMImpl dom = new DOMImpl();
                dom.setDocumentURI(xmldocname);
                XMLReader reader = null;
                SAXParser parser = null;
                //_dtdMonitor = new DTDMonitor();
                try {
                        parser = factory.newSAXParser();
                        reader = parser.getXMLReader();
                        reader.setContentHandler(dom.getBuilder());
                        //_dtdMonitor.handleDTD(reader);
                        //reader.parse(xmldocname);
                }
                catch (ParserConfigurationException e) {
                  //System.out.println("SAX Parser is not configured 
properly.\n"+                              e.getMessage());
                  //System.exit(1);
                  throw e;
                }
                catch (SAXException e ) {
                 // System.out.println("SAX Parser could not be created.\n"+
                                      e.getMessage());
                  //System.exit(1);
                  throw e;
                }
                /*
                catch (IOException e ) {
                  //System.out.println("XML Reader could not read xml 
document '"+                              xmldocname + "'," + e.getMessage());
                  //System.exit(1);
                  throw e;
                }
                */
                return reader;

        }

        public DOMImpl getDOM(String xmldocname)
        throws ParserConfigurationException, SAXException,IOException
        {

                final SAXParserFactory factory = SAXParserFactory.newInstance();
                try {
                  factory.setFeature(Constants.NAMESPACE_FEATURE, true);
                }
                catch (Exception e) {
                  factory.setNamespaceAware(true);
                }


                final DOMImpl dom = new DOMImpl();
                dom.setDocumentURI(xmldocname);

                XMLReader reader = null;
                SAXParser parser = null;

                _dtdMonitor = new DTDMonitor();
                try {
                  parser = factory.newSAXParser();
                  reader = parser.getXMLReader();
                  reader.setContentHandler(dom.getBuilder());
                  //reader = getReader(xmldocname);
                  _dtdMonitor.handleDTD(reader);
                  reader.parse(xmldocname);
                }
                catch (ParserConfigurationException e) {
                  //System.out.println("SAX Parser is not configured 
properly.\n"+                              e.getMessage());
                  //System.exit(1);
                  throw e;
                }
                catch (SAXException e ) {
                 // System.out.println("SAX Parser could not be created.\n"+
                                      e.getMessage());
                  //System.exit(1);
                  throw e;
                }
                catch (IOException e ) {
                  //System.out.println("XML Reader could not read xml 
document '"+                              xmldocname + "'," + e.getMessage());
                  //System.exit(1);
                  throw e;
                }
                return dom;
        }

    public void doTransform(Translet translet, DOMImpl dom)
    throws IOException, TransletException
    {
            DefaultSAXOutputHandler outputhandlr = null;
            TextOutput textoutput = null;
            try {
              outputhandlr= new DefaultSAXOutputHandler(System.out, "utf-8");
              textoutput = new TextOutput(outputhandlr, "utf-8");
            }
            catch (IOException e) {
              //System.out.println("Could not create SAX Output Handler."+
                                  e.getMessage());
              //System.exit(1);
              throw e;
            }

            // for XSL keys
            AbstractTranslet absTranslet = (AbstractTranslet)translet;
            absTranslet.setIndexSize(dom.getSize());
            _dtdMonitor.buildIdIndex(dom, 0, absTranslet);

            try {
              absTranslet.transform(dom, textoutput);
            }
            catch (TransletException e) {
              //System.out.println("Could not transform XML document."+
                                  e.getMessage());
              //System.exit(1);
              throw e;
            }
  }

}

and the xsl stylesheet is as follows..

<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; version="1.0"> 
<xsl:output method="xml" />

<!--html2wml.xsl For translating XHTML to WML                      -->
<!--Copyright (C) 2001  Paul Howard [EMAIL PROTECTED]          -->

<!--This program is free software; you can redistribute it and/or  -->
<!--modify it under the terms of the GNU General Public License    -->
<!--as published by the Free Software Foundation; either version 2 -->
<!--of the License, or (at your option) any later version.         -->

<!--This program is distributed in the hope that it will be useful,-->
<!--but WITHOUT ANY WARRANTY; without even the implied warranty of -->
<!--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  -->
<!--GNU General Public License for more details.                   -->

        <xsl:variable name="chosenURL">                                 <!--
Global variable for passing selected URL to card-->
                <xsl:value-of select="@href"/>
        </xsl:variable>


        <xsl:template match="html">                                     <!--
Template match check for <html> tag-->

          <xsl:text disable-output-escaping="yes">
                        &lt;!DOCTYPE wml PUBLIC '-//WAPFORUM//DTD WML 1.2//EN'  
        <!--WML preamble-->
                        'http://www.wapforum.org/DTD/wml_1.2.xml' >
          </xsl:text>
          <wml>
                <xsl:element name="card">                                       
        <!--Results card-->
                        <xsl:attribute name="id">Results</xsl:attribute>
                        <xsl:attribute name="title"><xsl:value-of 
select="head/title"/></xsl:attribute>
                        <xsl:apply-templates/>
                </xsl:element>
                <xsl:element name="card">                                       
        <!--Second card for the hyperlinks-->
                        <xsl:attribute name="id">card2</xsl:attribute>
                        <xsl:attribute name="title">Hyperlink</xsl:attribute>
                        <p>
                                <a href="enter.wml">URL</a>
                                <xsl:value-of select="$chosenURL"/>             
        <!--URL stored in card2-->
                        </p>
                </xsl:element>
          </wml>
        </xsl:template>

        <xsl:template match="script"/>

        <xsl:template match="head"/>

        <xsl:template match="body">
                <xsl:apply-templates/>
        </xsl:template>



        <xsl:template match="frameset"><p align="center"><b>Frames 
found</b></p><p align="center"><b>please select...</b></p>              <!--
Head of a Frame presenting card-->
                <xsl:apply-templates/>
        </xsl:template>

        <xsl:template match="frame">            <!--Option to select a frame-->
          <xsl:for-each select="."><p>Goto:<a href="#card2"><xsl:value-of 
select="@name"/></a></p>
          </xsl:for-each>
          <xsl:for-each select=".">
                <xsl:variable name="chosenSRC">                                 
        <!--Variable instantiated for the frame's name-->
                        <xsl:value-of select="@src"/>
                </xsl:variable>
                <xsl:variable name="hyperlink">                                 
        <!--Variable instantiated for the URL frame refers to--> 
                        <xsl:value-of select="card2"/>
                </xsl:variable>
          </xsl:for-each>
        </xsl:template>

        <xsl:template match="noframes">                                         
        <!--Tests for parental nodes, are we in a p tag if not, create one-->

          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>


        <xsl:template match="h1">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template> 

        <xsl:template match="h2">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="h3">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="h4">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="h5">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="h6">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>


        <xsl:template match="p[.='&#160;']">                                    
        <!--Template for handling '&nbsp' paragraphs--> 
          <xsl:variable name="alignment">                                       
        <!--Variable to see how source is aligned-->
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">                                   
        <!--Check for alignment followed by the parental check-->
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="center"></p>                                          
        <!--Creates a centrally aligned empty paragraph-->
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">                                   
        <!--Check for middle alignment followed by the parental check-->
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="right"></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="left"></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template>

        <xsl:template match="div[.='&#160;']">                                  
        <!--Template for empty div tags--> 
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="center"></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="right"></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="left"></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template>

        <xsl:template match="td[.='&#160;']">                                   
        <!--Template for empty table data  --> 
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="center"></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="right"></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p align="left"></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
            </xsl:when>
            <xsl:otherwise>
                <p></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template>


        <xsl:template match="p">                                                
        <!--p tag template-->
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template>                 
        <xsl:template match="center">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template> 

        <xsl:template match="pre">                                              
        <!--pre handler that can also dictate alignment-->
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template>                 

        <xsl:template match="address">                                          
        <!--address template handler-->
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>


        <xsl:template match="table">                                            
        <!--table template handler-->
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template> 

        <xsl:template match="tbody">                                            
        <!--table body handler that can take alignment attributes-->
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template> 

        <xsl:template match="th">
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template> 

        <xsl:template match="dt">
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template> 

        <xsl:template match="dd">
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template>

        <xsl:template match="td">
          <xsl:variable name="lineup">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$lineup='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup='middle'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>

          <xsl:if test="$lineup='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template> 

        <xsl:template match="tr">
          <xsl:variable name="lineup">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$lineup='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template>


        <xsl:template match="li">
          <xsl:variable name="alignment">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$alignment='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$alignment=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template>                 

        <xsl:template match="div">
          <xsl:variable name="lineup">
                <xsl:value-of select="@align"/>
          </xsl:variable>
          <xsl:if test="$lineup='center'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="center"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup='right'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="right"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup='left'">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p align="left"><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
          <xsl:if test="$lineup=''">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
          </xsl:if>
        </xsl:template> 

        <xsl:template match="u">                                                
        <!--No styles necessary but u will now be recognised as a parental node-
->
           <xsl:apply-templates/>
        </xsl:template>

        <xsl:template match="ul">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template> 

        <xsl:template match="font">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="blockquote">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="small">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="big">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="layer">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="ilayer">
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="strong">
          <xsl:choose>
            <xsl:when test="ancestor::a">                                       
                <!--WML does not allow a b tag to be made in an a tag, so we 
check all its full ancestory-->
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:when test="parent::a">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <b><xsl:apply-templates/></b>
            </xsl:when>
            <xsl:otherwise>
                <p><b><xsl:apply-templates/></b></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="em">                                               
                <!--WML does not allow an i tag to be made within itself or an 
a tag, so we check its full ancestory-->
          <xsl:choose>
            <xsl:when test="ancestor::a">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:when test="parent::a">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:when test="ancestor::em">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:when test="parent::a">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <i><xsl:apply-templates/></i>
            </xsl:when>
            <xsl:otherwise>
                <p><i><xsl:apply-templates/></i></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

        <xsl:template match="form">                                             
                <!--Form template which could be expanded to present WML forms--
>
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::a or parent::blockquote or 
parent::ul or parent::font or parent::strong or parent:: em or parent::p or 
parent::li or parent::pre or parent::div or parent::h1 or parent::h2 or 
parent::h3 or parent::h4 or parent::h5 or parent::h6 or parent::frameset or 
parent::th or parent::iframe or parent::span or parent::tt or parent::dt or 
parent::dd or parent::tr or parent::ol or parent::address or parent::nobr">
                <xsl:apply-templates/>
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:apply-templates/></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template> 

        <xsl:template match="a">                                                
                <!--The a match template-->
          <xsl:choose>
            <xsl:when test="parent::big or parent::sup or parent::td or 
parent::noscript or parent::form or parent::center or parent::table or 
parent::tbody or parent::td or parent::th or parent::blockquote or parent::ul 
or parent::font or parent::strong or parent:: em or parent::p or parent::li or 
parent::pre or parent::div or parent::h1 or parent::h2 or parent::h3 or 
parent::h4 or parent::h5 or parent::h6 or parent::frameset or parent::th or 
parent::iframe or parent::span or parent::tt or parent::dt or parent::dd or 
parent::tr or parent::ol or parent::address or parent::nobr">
              <xsl:for-each select="."><a href="#card2"><xsl:value-of 
select="@href"/></a>
                <xsl:variable name="chosenURL">
                        <xsl:value-of select="@href"/>
                </xsl:variable>
                <xsl:variable name="hyperlink"> 
                        <xsl:value-of select="card2"/>
                </xsl:variable>
              </xsl:for-each>
            </xsl:when>
            <xsl:when test="parent::a">                                         
                <!--A check to make sure an a node isnt nested in itself-->
            </xsl:when>
            <xsl:otherwise>
                <p><xsl:for-each select="."><a href="#card2"><xsl:value-of 
select="@href"/><xsl:apply-templates/></a>
                <xsl:variable name="chosenURL">
                        <xsl:value-of select="@href"/>
                </xsl:variable>
                <xsl:variable name="hyperlink"> 
                        <xsl:value-of select="card2"/>
                </xsl:variable>
                </xsl:for-each></p>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template> 

        <xsl:template match="img">                                              
                <!--img presents the src for an image if the image is a link 
ie. has parent::p-->
          <xsl:choose>
            <xsl:when test="parent::a">
                <xsl:value-of select="@src"/>
            </xsl:when>
            <xsl:otherwise>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:template>

</xsl:stylesheet>

can anyone pls try to solve my problem. sorry for the delay in giving the 
inputs as we had series of holiday in our company and also i had some other 
serious work to do..
     any help in this regard will be welcome.

Reply via email to