For future reference, when needing to do simple arithmetic as you've proposed:
At 2002-10-16 17:15 -0700, Richard Lander wrote:
        <xslt:template match="section">
                <xslt:variable name="baseName" select="'H'"/>
                <xslt:variable name="currentHeading" select="title"/>
                <xslt:variable name="childHeading">
                        <xslt:value-of select="$baseName"/>
                        <xslt:value-of 
select="substring-after(title,$baseName) + 1"/>
                </xslt:variable>
... you may wish to replace this with something simpler like:
     <xslt:variable name="childHeading"
                    select="translate( title, '12345', '23456' )"/>
I've assumed no error checking on the name since your code didn't have any 
error checking.
I hope this helps.
................... Ken
--
G. Ken Holman               mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Crane Softwrights Ltd.        http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0  +1(613)489-0999 (F:-0995)
ISBN 0-13-065196-6                     Definitive XSLT and XPath
ISBN 0-13-140374-5                             Definitive XSL-FO
ISBN 1-894049-08-X Practical Transformation Using XSLT and XPath
ISBN 1-894049-10-1             Practical Formatting Using XSL-FO
Next public training:          2002-12-08,2003-02-03,06,03-03,06
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list