Mega Code Archive

 
Categories / XML / XSLT StyleSheet
 

Java extension

<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"   version="2.0" xmlns:FileReader="java:java.io.FileReader"   xmlns:BufferedReader="java:java.io.BufferedReader"   exclude-result-prefixes="FileReader BufferedReader">   <xsl:output indent="yes" />   <xsl:param name="filename" />   <xsl:template name="main">     <xsl:variable name="reader"       select="BufferedReader:new( FileReader:new($filename))" />     <xsl:call-template name="read-addresses">       <xsl:with-param name="reader" select="$reader" />     </xsl:call-template>   </xsl:template>   <xsl:template name="read-addresses">     <xsl:param name="reader" />     <xsl:variable name="line1"       select="BufferedReader:readLine($reader)" />     <xsl:if test="$line1 != '****'">       <xsl:variable name="line2"         select="BufferedReader:readLine($reader)" />       <xsl:variable name="line3"         select="BufferedReader:readLine($reader)" />       <xsl:variable name="line4"         select="BufferedReader:readLine($reader)" />       <xsl:variable name="line5"         select="BufferedReader:readLine($reader)" />       <label>         <address>           <xsl:value-of select="$line3" />           <br />           <xsl:value-of select="$line4" />           <br />         </address>         <recipient>           Attn:           <xsl:value-of select="$line2" />         </recipient>       </label>       <xsl:call-template name="read-addresses">         <xsl:with-param name="reader" select="$reader" />       </xsl:call-template>     </xsl:if>   </xsl:template> </xsl:stylesheet> Output: <?xml version="1.0" encoding="UTF-8"?>        XSLT     Java     C++     SQL     Oracle     Ava's Man