diff options
Diffstat (limited to 'helpcontent2/helpers/refactor.xsl')
-rw-r--r-- | helpcontent2/helpers/refactor.xsl | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/helpcontent2/helpers/refactor.xsl b/helpcontent2/helpers/refactor.xsl new file mode 100644 index 000000000..16341ca35 --- /dev/null +++ b/helpcontent2/helpers/refactor.xsl @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + --> + +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + +<xsl:output indent="yes" method="xml" version="1.0" encoding="UTF-8"/> + +<xsl:template match="/"> + <xsl:apply-templates/> +</xsl:template> + +<xsl:template match="node()|@*"> + <xsl:copy> + <xsl:apply-templates select="node()|@*"/> + </xsl:copy> +</xsl:template> + +<!-- PARAGRAPH --> +<xsl:template match="paragraph"> + <xsl:choose> + <xsl:when test="@role='heading'"> + <xsl:call-template name="insertheading"> + <xsl:with-param name="level" select="@level"/> + </xsl:call-template> + </xsl:when> + <xsl:when test="@role='note' or @role='tip' or @role='warning'"> + <xsl:call-template name="insertnote"> + <xsl:with-param name="type" select="@role" /> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:copy> + <xsl:apply-templates select="node()|@*"/> + </xsl:copy> + </xsl:otherwise> + </xsl:choose> +</xsl:template> +<!-- Insert a heading --> +<xsl:template name="insertheading"> + <xsl:param name="level" /> + <xsl:element name="{concat('h',$level)}"> + <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute> + <xsl:apply-templates /> + </xsl:element> +</xsl:template> +<!-- Insert Note, Warning, or Tip --> +<xsl:template name="insertnote"> + <xsl:param name="type" /> <!-- note, tip, or warning --> + <xsl:element name="{$type}"> + <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute> + <xsl:apply-templates /> + </xsl:element> +</xsl:template> + +</xsl:stylesheet> |