Как я могу прочитать элемент / тег, как показано ниже - используя xsl + xpath, я пытаюсь отформатировать вывод xml, чтобы прочитать тег выравнивания из атрибута style, но я не могу понять это ... (последнее средство c #)
РЕДАКТИРОВАТЬ : Чтобы сделать мой ответ ясным, я мог бы прочитать много HTML-документов, у меня, скорее всего, будет список разрешенных тегов, которые мне нужно проанализировать, так что не все потребуется для анализатак как я использую xslt для преобразования документа в xml, я пишу свое решение, имея в виду только xsl + xpath, однако, если бы я использовал c # и linq (для перебора документа) - очевидно, это настроит всестили, тогда я преобразую свой документ с другими дополнениями.
<h1 style="text-align: right;">Another chapter</h1>
Мой Xsl:
<xsl:template match="h1">
<fo:block color="black" font-family="Arial, Verdana, sans-serif">
<xsl:call-template name="set-alignment"/>
</fo:block>
</xsl:template>
<xsl:template name="set-alignment">
<xsl:choose>
<xsl:when test="@align='left'">
<xsl:attribute name="text-align">start</xsl:attribute>
</xsl:when>
<xsl:when test="@align='center'">
<xsl:attribute name="text-align">center</xsl:attribute>
</xsl:when>
<xsl:when test="@align='right'">
<xsl:attribute name="text-align">end</xsl:attribute>
</xsl:when>
</xsl:choose>
</xsl:template>
Обратите внимание, что ниже определен только один стиль, но их может быть много ...(подчеркивание и т. д.)
Желаемый вывод:
<h1 text-align="start" text-decoration="underline" >Another chapter</h1>