Эта таблица стилей:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="root">
<html>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="p">
<p>
<xsl:apply-templates/>
</p>
</xsl:template>
<xsl:template match="p/note" name="sup">
<sup>
<xsl:apply-templates/>
</sup>
</xsl:template>
<xsl:template match="notes/note">
<p>
<xsl:call-template name="sup"/>
</p>
</xsl:template>
<xsl:template match="nr">
<b style="margin-right:5px">
<xsl:apply-templates/>
</b>
</xsl:template>
</xsl:stylesheet>
Выход:
<html>
<body>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent<sup>1</sup> vel nisi non sapien venenatis vehicula. Nunc et dignissim ligula. Praesent aliquet nisl eget quam sollicitudin a faucibus eros dapibus. Aliquam cursus elit at tortor lacinia congue. Donec sit amet felis risus, a mollis ante. Integer sit amet massa sed metus semper cursus id id enim. Vestibulum felis nunc, pellentesque non lobortis et, porttitor eu libero. Curabitur eget nulla quam. Etiam erat arcu, vulputate sed volutpat consequat, adipiscing et tortor. Quisque imperdiet laoreet fermentum. Mauris ac felis vel lectus semper posuere. Etiam luctus augue et odio suscipit varius. Curabitur tincidunt purus quis tellus pretium imperdiet. In rhoncus rutrum orci, sed venenatis sem volutpat non. Curabitur tincidunt lacinia sem at luctus. Donec et diam eu massa interdum dapibus a et elit. Donec malesuada urna et nunc volutpat gravida.</p>
<p>Donec varius placerat venenatis. In neque sem, sollicitudin sed eleifend et, tristique eu turpis. Donec quis nisi lectus. Nullam gravida vestibulum arcu non aliquet. Nullam ut felis metus. Proin mollis tellus eu eros iaculis eget tristique leo fermentum. Pellentesque nec lorem vitae nibh eleifend euismod. Pellentesque nec gravida neque. Praesent mattis mi sed nisi sodales porta. Morbi risus mauris, convallis at condimentum a, interdum nec purus. Cras vulputate faucibus tempor. Aliquam eu dolor sed eros malesuada pharetra vitae vitae est. Suspendisse lacinia urna vitae mi bibendum quis<sup>2</sup> scelerisque augue tristique. Aenean at arcu tellus, eu placerat enim. Cras ultrices iaculis augue vitae pharetra. Praesent suscipit blandit scelerisque. Mauris et molestie purus. Vivamus volutpat enim sem, eget scelerisque turpis. Praesent viverra lectus in ipsum tristique blandit. Donec lobortis molestie purus, at feugiat leo rhoncus eget.</p>
<p>Vivamus eget convallis massa. Etiam convallis gravida tincidunt. Suspendisse tincidunt dignissim accumsan. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam commodo placerat egestas. Donec convallis sodales volutpat. Quisque dapibus lobortis augue sit amet rhoncus. Nulla sed sem nisl, in feugiat orci. Quisque vehicula iaculis nisi ut auctor. Integer molestie nisl eget diam pharetra interdum. Mauris aliquet, libero vel congue egestas, velit est pretium leo, luctus commodo risus diam sed odio. Nullam pretium blandit ligula, quis commodo massa rhoncus eu. Nunc in hendrerit mi. Cras quis orci ut metus lacinia eleifend id eu nisi. Nunc id varius diam. Aliquam eu porta velit. Curabitur eget<sup>3</sup> odio neque, et aliquam nisi.</p>
<p><sup><b style="margin-right:5px">1</b>Suspendisse tincidunt dignissim accumsan</sup></p>
<p><sup><b style="margin-right:5px">2</b>Nunc et dignissim ligula</sup></p>
<p><sup><b style="margin-right:5px">3</b>eget convallis massa</sup></p>
</body>
</html>
Рендер:
Lorem Ipsum Dolor Sit Amet, Concetetur Adipiscing Elit. Praesent 1 Vel Nisi Non Sapien Venenatis Vehicleula. Nunc et dignissim ligula. Престижный аликет нисл егет квам солидный в faucibus eros dapibus. Aliquam Cursus Elit на пытки Lacinia спорить. Donec sit amet felis risus, a mollis ante. Целое сит амет масса сэд метус сэмпер курс Vestibulum felis nunc, pellentesque non lobortis et al., Porttitor eu libero. Curabitur Eget Nulla Quam. Etiam erat arcu, vulputate sed volutpat consquat, adipiscing et tortor. Quisque Imperdiet Laoreet Fermentum. Mauris ac felis vel lectus semper posuere. Etiam luctus augue et odio suscipit varius. Curabitur tincidunt purus quis tellus pretium imperdiet. У rhoncus rutrum orci, sed venenatis sem volutpat non. Curabitur tincidunt lacinia sem в luctus. Donec et diam eu massa interdum dapibus a et elit. Donec malesuada urna et nunc volutpat gravida.
Donec varius placerat venenatis. В неофициальном порядке, sollicitudin sed eleifend et, tristique eu turpis. Donec quis nisi lectus. Nullam gravida vestibulum arcu non aliquet. Nullam Ut Felis Metus. Proin mollis tellus eu eros iaculis eget tristique leo fermentum. Pellentesque nec lorem vitae nibh eleifend euismod. Pellentesque nec gravida neque. Praesent Mattis Mi Sed Nisi Sodales Porta. Morbi risus mauris, conallis at condimentum a, interdum nec purus. Cras vulputate faucibus tempor. Aliquam eu dolor sed eros malesuada pharetra vitae est. Suspendisse lacinia urna vitae mi bibendum quis 2 Scelerisque augue tristique. Aenean в Arcu Tellus, ЕС Placerat Enim. Cras ultrices iaculis augu vitae pharetra. Пресент сусципит бландит скелериск. Mauris et molestie purus. Vivamus Volutpat Enim Sem, Eget Scelerisque Turpis. Пресент Виверра лектус в ипсум тристик бландит. Donec lobortis molestie purus, в feugiat leo rhoncus eget.
Vivamus Eget Convallis Massa. Etiam convallis gravida tincidunt. Suspendisse tincidunt dignissim accumsan. Lorem Ipsum Dolor Sit Amet, Concetetur Adipiscing Elit. Etiam Commodo Placerat Egestas. Donec convallis sodales volutpat. Вялый ягненок lobortis augue sit amet rhonus. Nulla sed sem nisl, в feugiat orci. Quisque vehicleula iaculis nisi ut auctor. Integer molestie nisl eget diam pharetra interdum. Mauris aliquet, libero vel congue egestas, Velit est pretium leo, luctus commodo risus diam sed odio. Nullam pretium blandit ligula, quis commodo massa rhoncus eu. Нун в хендрерит ми. Cras quis orci ut metus lacinia eleifend id eu nisi. Нун ид вариус диам. Aliquam eu porta Velit. Curabitur eget 3 odio neque, et aliquam nisi.
1Suspendisse tincidunt dignissim accumsan
2Nunc et dignissim ligula
3eget convallis massa
Кроме того, таблица стилей XSLT 2.0:
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="root">
<html>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="p|notes/note">
<p>
<xsl:next-match/>
</p>
</xsl:template>
<xsl:template match="note" name="sup">
<sup>
<xsl:apply-templates/>
</sup>
</xsl:template>
<xsl:template match="nr">
<b>
<xsl:apply-templates/>
</b>
<xsl:text> </xsl:text>
</xsl:template>
</xsl:stylesheet>