I don't know what you intend to do with the <xsl:with-param> but what I understand from the tutorial it is used to pass parameters to a template. So you should call a template before that, or insert a template between the tags.
I think for this you have to include
<xsl:call-template name="ABC">
<xsl:with-param......></xsl:with-param>
</xsl:call-template>
and one
<xsl:template name="ABC">
<xsl:param ...... />
............ do what ever you need .........
</xsl:template>
cheers,
Mahesh