A straightforward recursive descent does the job:
<xsl:template match="ol">
<orderlist>
<xsl:apply-templates/>
</orderlist>
</xsl:template>
<xsl:template match="li">
<listitem>
<xsl:apply-templates/>
</listitem>
</xsl:template>
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference