view xsls/news.xsls @ 76:4a4caa566120

Russian documentation import. Changes in module.dtd: <example> now allowed to contain <value> and <emphasis> elements (we need this to show important parts in examples), less strict checking of <directive> syntax (we don't want to fully document some directives, notably deprecated ones). Known issues: 1. <syntax> elements are preserved as is, they will require manual conversion (likely to some not-yet-existed format a la DocBook cmdsynopsis, as currently used one seems to be incomplete); 2. <value> no longer corresponds to replaceable content, and it's use in examples isn't correct; 3. <link doc="document#fragment"> doesn't work with current xslt, either should be supported or changed to <link doc="document" id="fragment">. The following files are intentionally omitted: maillists.xml (support.xml should be used instead), experimental.xml (obsolete), faq.xml (conflicts with existing one, needs discussion). Not yet linked to site.
author Maxim Dounin <mdounin@mdounin.ru>
date Tue, 11 Oct 2011 12:57:50 +0000
parents c007b57d617c
children ee725af08951
line wrap: on
line source

X:stylesheet {

X:output method="html" indent="no" encoding="utf-8";

X:strip-space elements = "*";

<!--
  -- a current directory of a XSLT script is where the script is stored,
  -- but not where XSLT processor has been started to run the script
  -->
X:param XML = "'../xml'";
X:param YEAR;

X:var SITE = "'http://nginx.org'";
X:var LINK = "/news/@link";

X:include href = "dirname.xslt";
X:include href = "link.xslt";
X:include href = "style.xslt";
X:include href = "body.xslt";
X:include href = "menu.xslt";
X:include href = "content.xslt";


X:template = "/news" {
    <html><head>

    <link rel="alternate" type="application/rss+xml"
          title="{@title}" href="{$SITE}/index.rss" />

    <title> !{@title} X:if "$YEAR" { X:text{: } !{$YEAR} } </title>

    !style ()

    </head>

    !body (lang="/news/@lang")

    </html>
}


X:template = "event" {

    X:var year = { !{substring(../event[position()=1]/@date, 1, 4)} }
    X:var y = { !{substring(@date, 1, 4)} }

    X:if "(not($YEAR) and ($year = $y or position() &lt; 11)) or $YEAR=$y" {
        <table width="100%">

        <tr>
        <td valign="top" align="right" width="15%">
            <a name="{@date}" /> !{@date} X:text {&#xA0;&#xA0;}
        </td>
        <td> !! "para"; </td>
        </tr>

        <tr><td colspan="2">
        X:text disable-output-escaping="yes" {&amp;nbsp;}
        </td></tr>

        </table>
    }
}


}