diff options
-rw-r--r-- | source/99_result/stream.xsl | 20 | ||||
-rw-r--r-- | utility/xhtml.xsl | 4 |
2 files changed, 22 insertions, 2 deletions
diff --git a/source/99_result/stream.xsl b/source/99_result/stream.xsl index 5469ff4..19fc539 100644 --- a/source/99_result/stream.xsl +++ b/source/99_result/stream.xsl @@ -59,6 +59,26 @@ </div> </xsl:template> +<xsl:template match="a" mode="xhtml"> + <xsl:choose> + <xsl:when test="(@class = 'footnote') or (@class = 'reversefootnote')"> + <xsl:element name="{local-name()}" namespace="http://www.w3.org/1999/xhtml"> + <xsl:copy-of select="@class"/> + <xsl:attribute name="href"> + <xsl:value-of select="concat('/article/', ancestor::entry/@handle, '/', @href)"/> + </xsl:attribute> + <xsl:apply-templates select="node()" mode="xhtml"/> + </xsl:element> + </xsl:when> + <xsl:otherwise> + <xsl:element name="{local-name()}" namespace="http://www.w3.org/1999/xhtml"> + <xsl:copy-of select="@*"/> + <xsl:apply-templates select="node()" mode="xhtml"/> + </xsl:element> + </xsl:otherwise> + </xsl:choose> +</xsl:template> + <xsl:template match="articles/entry" mode="resolve"> <h2> <xsl:text>ยป </xsl:text> diff --git a/utility/xhtml.xsl b/utility/xhtml.xsl index 2f54975..00f1ef2 100644 --- a/utility/xhtml.xsl +++ b/utility/xhtml.xsl @@ -12,13 +12,13 @@ </xsl:template> <xsl:template match="span" mode="xhtml"> - <span> + <xsl:element name="{local-name()}" namespace="http://www.w3.org/1999/xhtml"> <xsl:copy-of select="@*"/> <xsl:apply-templates select="node()" mode="xhtml"/> <xsl:if test="not(node())"> <xsl:comment></xsl:comment> </xsl:if> - </span> + </xsl:element> </xsl:template> <xsl:template match="comment() | processing-instruction()" mode="xhtml"> |