That will work a treat. going to go into abit clearer detail now to try and ask a secon quesiton... after the code.
as it stands i have...
Code:
<xsl:choose>
<xsl:when test="@id='2'">
<data12>
<xsl:choose>
<xsl:when test="AccessToOtherVehicles = 'NDOC'">D</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OOC'">Y</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OUM'">M</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OUV'">V</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'CC'">B</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'CCSU'">C</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'NAOV'">N</xsl:when>
</xsl:choose>
</data12>
</xsl:when>
<xsl:when test="@id='3'">
<data13>
<xsl:choose>
<xsl:when test="AccessToOtherVehicles = 'NDOC'">D</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OOC'">Y</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OUM'">M</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OUV'">V</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'CC'">B</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'CCSU'">C</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'NAOV'">N</xsl:when>
</xsl:choose>
</data13>
</xsl:when>
<xsl:when test="@id='4'">
<data14>
<xsl:choose>
<xsl:when test="AccessToOtherVehicles = 'NDOC'">D</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OOC'">Y</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OUM'">M</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OUV'">V</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'CC'">B</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'CCSU'">C</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'NAOV'">N</xsl:when>
</xsl:choose>
</data14>
</xsl:when>
<xsl:when test="@id='5'">
<xsl:message terminate="yes">
Error: They permit a maximum of 3 Additional drivers
</xsl:message>
</xsl:when>
</xsl:choose>
</xsl:for-each>
I wish to turn this into something using your previous post like...
Code:
<xsl:for-each select="$PCQRoot/Driver">
<xsl:element name="Data1{@id}">
<xsl:when test="AccessToOtherVehicles = 'NDOC'">D</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OOC'">Y</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OUM'">M</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'OUV'">V</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'CC'">B</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'CCSU'">C</xsl:when>
<xsl:when test="AccessToOtherVehicles = 'NAOV'">N</xsl:when>
</xsl:element>
</xsl:for-each>
However, the ID's are allways going to be 2,3,4. However the element varies from each template/forEach. in the above case the tags were data12,13,14. so the above worked. however later i need ID 2,3,4 to be output as Data18,19,20. and again as 54,55,56
How would i go about treating the data"XX" as a number and being able to add the ID to it?Can i simply say Data1{@id +6} or Data 16+{@id}