Improve text export.
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:output method="text" indent="no" encoding="UTF-8"/>
|
||||
<xsl:strip-space elements="*"/>
|
||||
<xsl:key name="refid" match="node" use="@ID"/>
|
||||
|
||||
<xsl:template match="/">
|
||||
@@ -22,10 +23,32 @@
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="node">
|
||||
<xsl:variable name="thisid" select="@ID"/>
|
||||
<xsl:call-template name="indent">
|
||||
<xsl:with-param name="string" select="'	'"/>
|
||||
<xsl:with-param name="times" select="count(ancestor::node())-2"/>
|
||||
</xsl:call-template>
|
||||
|
||||
<xsl:variable name="target" select="arrowlink/@DESTINATION"/>
|
||||
<xsl:number level="multiple" count="node" format="1"/>
|
||||
<xsl:text> </xsl:text><xsl:value-of select="@TEXT"/>
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="@TEXT"/>
|
||||
|
||||
<!-- Generate Link -->
|
||||
<xsl:if test="@LINK">
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:call-template name="indent">
|
||||
<xsl:with-param name="string" select="'	'"/>
|
||||
<xsl:with-param name="times" select="count(ancestor::node())-1"/>
|
||||
</xsl:call-template>
|
||||
<xsl:text>* Link: </xsl:text>
|
||||
<xsl:value-of select="@LINK"/>
|
||||
</xsl:if>
|
||||
|
||||
<!-- Generate Note -->
|
||||
<xsl:apply-templates select="richcontent[@TYPE='NOTE']"/>
|
||||
<xsl:text> </xsl:text>
|
||||
|
||||
<!-- Generate References -->
|
||||
<xsl:if test="arrowlink/@DESTINATION != ''">
|
||||
<xsl:text> (see:</xsl:text>
|
||||
<xsl:for-each select="key('refid', $target)">
|
||||
@@ -33,7 +56,30 @@
|
||||
</xsl:for-each>
|
||||
<xsl:text>)</xsl:text>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates select="node"/>
|
||||
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="richcontent[@TYPE='NOTE']">
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:call-template name="indent">
|
||||
<xsl:with-param name="string" select="'	'"/>
|
||||
<xsl:with-param name="times" select="count(ancestor::node())-2"/>
|
||||
</xsl:call-template>
|
||||
<xsl:text>* Note: </xsl:text>
|
||||
<xsl:apply-templates/>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template name="indent">
|
||||
<xsl:param name="string" select="''"/>
|
||||
<xsl:param name="times" select="1"/>
|
||||
|
||||
<xsl:if test="number($times) > 0">
|
||||
<xsl:value-of select="$string"/>
|
||||
<xsl:call-template name="indent">
|
||||
<xsl:with-param name="string" select="$string"/>
|
||||
<xsl:with-param name="times" select="$times - 1"/>
|
||||
</xsl:call-template>
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
|
Reference in New Issue
Block a user