Вероятно, проще всего начать с «преобразования идентификаторов XSLT», которое в исходном виде выглядит так:
<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Он в основном создает глубокую копию файла XML, что не очень интересно как таковое, но позволяет вам украшать определенные элементы во время этого.
В зависимости от того, как вы хотите, чтобы исходный HTML выглядел, вы можете украсить его, добавив конкретные шаблоны или изменив базовый рекурсивный шаблон для получения, скажем, вложенных <div>
элементов ... или <ul>
/ <li>
или что угодно.
Тогда это может быть простое начало:
<xsl:stylesheet version="3.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<ul>
<xsl:apply-templates select="*"/>
</ul>
</xsl:template>
<xsl:template match="@*|node()">
<li>
<xsl:value-of select="local-name()"/>
<xsl:if test="*">
<ul>
<xsl:apply-templates select="@*|node()"/>
</ul>
</xsl:if>
</li>
</xsl:template>
</xsl:stylesheet>
Тогда вы можете играть с чем угодно, сначала вам, вероятно, понадобится другой рендеринг для атрибутов, затем для ваших известных элементов и т. Д.