1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
   | <?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 
	<xsl:output method="text"/>
 
<xsl:template match="/">
 
	public class <xsl:value-of select="classes/@name"/>
	{
		<xsl:apply-templates select="//attribut" mode="instanceVariable"/>
 
		public <xsl:value-of select="classes/@name"/>()
		{
		}
 
		<xsl:apply-templates select="//attribut" mode="accessor"/>
		<xsl:apply-templates select="//attribut" mode="mutator"/>
	}
</xsl:template>
 
<xsl:template match="Import">
	import <xsl:value-of select="."/>;
</xsl:template>
 
<xsl:template match="attribut" mode="instanceVariable">
		private <xsl:value-of select="@type"/><xsl:text> </xsl:text><xsl:value-of select="@name"/>;
</xsl:template>
 
<xsl:template match="attribut" mode="accessor">
		public <xsl:value-of select="@type"/> get<xsl:call-template name="initCap">
					<xsl:with-param name="x" select="@name"/>
				</xsl:call-template>()
		{
			return <xsl:value-of select="@name"/>;
		}
</xsl:template>
 
<xsl:template match="attribut" mode="mutator">
		public void set<xsl:call-template name="initCap">
					<xsl:with-param name="x" select="@name"/>
				</xsl:call-template>(<xsl:value-of select="@type"/> the<xsl:call-template name="initCap">
					<xsl:with-param name="x" select="@name"/>
				</xsl:call-template>)
		{
			<xsl:value-of select="@name"/> = the<xsl:call-template name="initCap">
				<xsl:with-param name="x" select="@name"/>
			</xsl:call-template>;
		}
</xsl:template>
 
<xsl:template name="initCap">
	<xsl:param name="x"/>
	<xsl:value-of select="translate(substring($x,1,1)
							,'abcdefghijklmnopqrstuvwxyz'
							,'ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/>
	<xsl:value-of select="substring($x,2)"/>
</xsl:template>
 
 
</xsl:stylesheet> | 
Partager