123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- <?xml version="1.0"?>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <!-- $Id: phpdoc_docs.xslt 1047 2005-07-27 18:08:10Z jsweat $ -->
-
- <xsl:output method="xml" indent="yes" cdata-section-elements="program-listing"/>
- <xsl:preserve-space elements="*"/>
-
- <xsl:template match="/">
- <refentry>
- <xsl:attribute name="id"><![CDATA[{@id}]]></xsl:attribute>
- <xsl:call-template name="named"/>
- <xsl:call-template name="synopsis"/>
- <![CDATA[{@toc}]]>
- <xsl:call-template name="body"/>
- </refentry>
- </xsl:template>
-
- <xsl:template name="named">
- <refnamediv>
- <refname><xsl:value-of select="/page/@here"/></refname>
- <refpurpose>
- <xsl:apply-templates select="//introduction/p/node()"/>
- </refpurpose>
- </refnamediv>
- </xsl:template>
-
- <xsl:template name="synopsis">
- <xsl:apply-templates select="//refsynopsisdiv"/>
- </xsl:template>
-
- <xsl:template name="body">
- <xsl:apply-templates select="//content/node()"/>
- </xsl:template>
-
- <xsl:template match="p">
- <para>
- <xsl:apply-templates/>
- </para>
- </xsl:template>
-
- <xsl:template match="table">
- <table frame="all">
- <xsl:attribute name="id"><![CDATA[{@id features}}]]></xsl:attribute>
- <xsl:apply-templates/>
- </table>
- </xsl:template>
-
- <xsl:template match="tr">
- <row>
- <xsl:apply-templates/>
- </row>
- </xsl:template>
-
- <xsl:template match="td">
- <entry>
- <xsl:apply-templates/>
- </entry>
- </xsl:template>
-
- <xsl:template match="php">
- <programlisting role="php"><xsl:text disable-output-escaping="yes"><</xsl:text>![CDATA[
- <xsl:call-template name="strip_strong">
- <xsl:with-param name="raw" select="."/>
- </xsl:call-template>
- ]]<xsl:text disable-output-escaping="yes">></xsl:text></programlisting>
- </xsl:template>
-
- <xsl:template match="code">
- <span class="new_code">
- <xsl:apply-templates/>
- </span>
- </xsl:template>
-
- <xsl:template match="section">
- <refsect1>
- <xsl:attribute name="id">{@id <xsl:value-of select="@name"/>}</xsl:attribute>
- <title><xsl:value-of select="@title"/></title>
- <xsl:apply-templates/>
- </refsect1>
- </xsl:template>
-
- <xsl:template match="introduction">
- </xsl:template>
-
- <xsl:template match="news">
- </xsl:template>
-
- <xsl:template match="a[@class = 'target']">
- <title><xsl:value-of select="h2"/></title>
- </xsl:template>
-
- <xsl:template match="a">
- <xsl:text><![CDATA[{@link ]]></xsl:text>
- <xsl:if test="@href">
- <xsl:value-of select="@href"/>
- </xsl:if>
- <xsl:if test="@local">
- <xsl:value-of select="."/><xsl:text>.html</xsl:text>
- </xsl:if>
- <xsl:text> </xsl:text>
- <xsl:apply-templates/>
- <xsl:text>}</xsl:text>
- </xsl:template>
-
- <xsl:template match="*">
- <xsl:copy>
- <xsl:for-each select="@*">
- <xsl:attribute name="{local-name(.)}"><xsl:value-of select="."/></xsl:attribute>
- </xsl:for-each>
- <xsl:apply-templates/>
- </xsl:copy>
- </xsl:template>
-
- <xsl:template name="strip_strong">
- <xsl:param name="raw"/>
- <xsl:choose>
- <xsl:when test="contains($raw, '<strong>') and contains($raw, '</strong>')">
- <xsl:value-of disable-output-escaping="yes" select="substring-before($raw, '<strong>')"/>
- <xsl:value-of disable-output-escaping="yes" select="substring-before(substring-after($raw, '<strong>'), '</strong>')"/>
- <xsl:call-template name="strip_strong">
- <xsl:with-param name="raw" select="substring-after($raw, '</strong>')"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise><xsl:value-of disable-output-escaping="yes" select="$raw"/></xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- </xsl:stylesheet>
|