View stylesheet

XML schema http://dd.eionet.europa.eu/schemas/ippc-wi_2014/dir20081ec_schema.xsd
Output type HTML
Description HTML report - IPPC factsheet 2012-2013
XSL file dir20081ec_2014_html.xsl (Last modified: 18 Sep 2014 11:42 )
<?xml version="1.0" encoding="UTF-8"?>

<!--
    Document   : dir20081ec_html_2014.xsl
    Created on : 19 August 2014, 15:05
    Author     : Rait Väli
    Description:
        Purpose of transformation follows.
-->

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns:xs="http://www.w3.org/2001/XMLSchema"
                version="2.0">

    <xsl:output method="html" encoding="utf-8"/>
    <xsl:param name="xml_folder_uri"/>
    <xsl:param name="envelopeurl" select="''"/>
    <xsl:param name="filename" select="''"/>

    <xsl:variable name="countrycode">
        <xsl:choose>
            <xsl:when test="string-length($envelopeurl)>0"><xsl:value-of select="document(concat($envelopeurl, '/xml'))/envelope/countrycode"/> </xsl:when>
            <xsl:otherwise></xsl:otherwise>
        </xsl:choose>
    </xsl:variable>

    <xsl:variable name="reportingdate">
        <xsl:choose>
            <xsl:when test="string-length($envelopeurl)>0"><xsl:value-of select="substring-before(document(concat($envelopeurl, '/xml'))/envelope/date, 'T')"/> </xsl:when>
            <xsl:otherwise></xsl:otherwise>
        </xsl:choose>
    </xsl:variable>

    <xsl:variable name="directiveid">20081ec</xsl:variable>

    <xsl:variable name="labels" select="document('https://svn.eionet.europa.eu/repositories/Reportnet/Dataflows/IPPC-WI-Directive/xml/dir20081ec_ippc/dir20081ec_labels-en.xml')/labels/labelSet[@xml:lang='en']"/>
    <!--<xsl:variable name="schema" select="document('http://dd.eionet.europa.eu/schemas/ippc-wi/dir20081ec_schema.xsd')/xs:schema"/>-->

    <xsl:template match="text()"/>

    <xsl:template match="response">
        <html>
            <head>
                <title>
                    Factsheet of IPPC questionnaire delivery
                </title>
                <style type="text/css">
                    table { border: 1px solid black; border-collapse: collapse; width:100%;}
                    table th, table td { text-align: left; border: 1px solid black; }
                    table caption { border: 1px solid black; font-weight: bold; height:32px;}
                    .tophead, .questionid { background-color:#CCCCCC; }
                    .newRow { background-color:#FCD5B4; height: 32px;}
                    table th{font-weight: bold; background-color:#F0FAFF; padding:3px;}
                    table td{padding:3px;}
                    table {margin-top:15px;}
                    .rowHeight {height:1.5em}
                    table table{margin-top:0em !important; padding:0px !important;}
                    .noMargin {margin-top:0em !important; padding:0px !important;}
                </style>
            </head>
            <body>
                <h1><xsl:value-of select="$labels/q-h1"/></h1>
                <table>
                    <tr>
                        <th>Reporting country</th>
                        <td><xsl:value-of select="$countrycode"/></td>
                    </tr>
                    <tr>
                        <th>CDR envelope</th>
                        <td><xsl:value-of select="$envelopeurl"/></td>
                    </tr>
                    <tr>
                        <th>File name</th>
                        <td><xsl:value-of select="$filename"/></td>
                    </tr>
                    <tr>
                        <th>Reporting date</th>
                        <td><xsl:value-of select="$reportingdate"/></td>
                    </tr>
                </table>

                <xsl:apply-templates/>
            </body>
        </html>
    </xsl:template>


    <xsl:template match="q-1">

        <h2><xsl:value-of select="$labels/q-general-notes-heading"/></h2>
        <table>
            <tr>
                <td><xsl:value-of select="$labels/q-general-notes-1"/></td>
            </tr>
        </table>
        <h2><xsl:value-of select="$labels/q-1"/></h2>
        <table>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-1-2"/>
                </th>
                <td>
                    <xsl:value-of select="./q-1-2"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-general-notes-heading"/>
                </th>
            </tr>
            <tr>
                <td colspan="2">
                    <xsl:value-of select="./q-1-2-r"/>
                </td>
            </tr>
        </table>
    </xsl:template>

    <xsl:template match="q-2">
        <h2><xsl:value-of select="$labels/q-2"/></h2>
        <table>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-2-1"/>
                </th>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-2-1-n"/>
                </th>
            </tr>

        </table>
        <table class="noMargin">
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-2-2"/>
                </th>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-2-2-n"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-2-2-n"/>
                </td>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-2-2-1"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-2-2-1"/>
                </td>
            </tr>
        </table>
    </xsl:template>

    <xsl:template match="q-3">
        <h2><xsl:value-of select="$labels/q-3"/></h2>
        <table>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-3-1"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-3-1"/>
                </td>
            </tr>
        </table>
    </xsl:template>

    <xsl:template match="q-4">
        <h2><xsl:value-of select="$labels/q-4"/></h2>
        <table>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-4-1"/>
                </th>
            </tr>
            <tr>
                <td class="rowHeight">
                    <xsl:value-of select="./q-4-1"/>
                </td>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-4-2"/>
                </th>
            </tr>
            <tr>
                <td class="rowHeight">
                    <xsl:value-of select="./q-4-2"/>
                </td>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-4-2-r"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-4-2-r"/>
                </td>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-4-2-1"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-4-2-1"/>
                </td>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-4-3"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-4-3"/>
                </td>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-4-3-1"/>
                </th>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-4-3-1-1"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-4-3-1/q-4-3-1-1"/>
                </td>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-4-3-1-2"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-4-3-1/q-4-3-1-2"/>
                </td>
            </tr>
        </table>
</xsl:template>


    <xsl:template match="q-5">
        <h2><xsl:value-of select="$labels/q-5"/></h2>
    <table>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-1"/>
            </th>
        </tr>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-1-1"/>
            </th>
        </tr>
        <tr>
            <td>
                <xsl:value-of select="./q-5-1/q-5-1-1"/>
            </td>
        </tr>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-1-2"/>
            </th>
        </tr>
        <tr>
            <td>
                <xsl:value-of select="./q-5-1/q-5-1-2"/>
            </td>
        </tr>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-1-3"/>
            </th>
        </tr>
        <tr>
            <td>
                <xsl:value-of select="./q-5-1/q-5-1-3"/>
            </td>
        </tr>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-2"/>
            </th>
        </tr>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-2-1"/>
            </th>
        </tr>
        <tr>
            <td>
                <xsl:value-of select="./q-5-2/q-5-2-1"/>
            </td>
        </tr>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-2-2"/>
            </th>
        </tr>
        <tr>
            <td>
                <xsl:value-of select="./q-5-2/q-5-2-2"/>
            </td>
        </tr>
    </table>
    <table class="noMargin">
        <tr>
            <th colspan="2">
                <xsl:value-of select="$labels/q-5-3"/>
            </th>
        </tr>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-3-1"/>
            </th>
            <td>
                <xsl:value-of select="./q-5-3/q-5-3-1"/>
            </td>
        </tr>
        <tr>
            <th colspan="2">
                <xsl:value-of select="$labels/q-5-3-1-1"/>
            </th>
        </tr>
        <tr>
            <td colspan="2">
                <xsl:value-of select="./q-5-3/q-5-3-1-1"/>
            </td>
        </tr>
        <tr>
            <th colspan="2">
                <xsl:value-of select="$labels/q-5-3-2"/>
            </th>
        </tr>
        <tr>
            <td colspan="2">
                <xsl:value-of select="./q-5-3/q-5-3-2"/>
            </td>
        </tr>
        <tr>
            <th colspan="2">
                <xsl:value-of select="$labels/q-5-3-3"/>
            </th>
        </tr>
        <tr>
            <td colspan="2" >
                <xsl:value-of select="./q-5-3/q-5-3-3"/>
            </td>
        </tr>
        <tr>
            <th colspan="2">
                <xsl:value-of select="$labels/q-5-3"/>
            </th>
        </tr>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-5-3-4"/>
            </th>
            <td>
                <xsl:value-of select="./q-5-3/q-5-3-4"/>
            </td>
        </tr>
        <tr>
            <th colspan="2">
                <xsl:value-of select="$labels/q-5-3-1-1"/>
            </th>
        </tr>
        <tr>
            <td colspan="2">
                <xsl:value-of select="./q-5-3/q-5-3-4-r"/>
            </td>
        </tr>
    </table>
    </xsl:template>

    <xsl:template match="q-8">
        <h2><xsl:value-of select="$labels/q-8"/></h2>
    <table>
        <tr>
            <th>
                <xsl:value-of select="$labels/q-8-1"/>
            </th>
            <td>
                <xsl:value-of select="./q-8-1"/>
            </td>
        </tr>
        <tr>
            <th colspan="2">
                <xsl:value-of select="$labels/q-8-1-r"/>
            </th>
        </tr>
        <tr>
            <td class="rowHeight" colspan="2">
                <xsl:value-of select="./q-8-1-r"/>
            </td>
        </tr>
        <tr>
            <th colspan="2">
                <xsl:value-of select="$labels/q-8-1-1"/>
            </th>
        </tr>
        <tr>
            <td colspan="2">
                <xsl:for-each select="./q-8-1-1-table/q-8-1-1-row">
                    <table class="noMargin">
                        <tr>
                            <th><xsl:value-of select="$labels/q-8-1-1-th-1"/></th>
                            <th><xsl:value-of select="$labels/q-8-1-1-th-2"/></th>
                            <th><xsl:value-of select="$labels/q-8-1-1-th-3"/></th>
                        </tr>
                        <tr>
                            <td><xsl:value-of select="./q-8-1-1-1"/></td>
                            <td><xsl:value-of select="./q-8-1-1-2"/></td>
                            <td><xsl:value-of select="./q-8-1-1-3"/></td>
                        </tr>
                    </table>
                </xsl:for-each>
            </td>
        </tr>
    </table>
    </xsl:template>

    <xsl:template match="q-9">
        <h2><xsl:value-of select="$labels/q-9"/></h2>
        <table>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-9-1"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-9-1"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-9-1-1"/>
                </th>
            </tr>
            <tr>
                <td>
                    <xsl:value-of select="./q-9-1-1"/>
                </td>
            </tr>
        </table>
    </xsl:template>
    <xsl:template match="q-10">
        <h2><xsl:value-of select="$labels/q-10"/></h2>
        <table>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-10-1"/>
                </th>
                <td>
                    <xsl:value-of select="./q-10-1"/>
                </td>
            </tr>
            <tr>
                <th  colspan="2">
                    <xsl:value-of select="$labels/q-10-1-1"/>
                </th>
            </tr>
            <tr>
                <td  colspan="2">
                    <xsl:value-of select="./q-10-1-1"/>
                </td>
            </tr>
            <tr>
                <th  colspan="2">
                    <xsl:value-of select="$labels/q-10-1-2"/>
                </th>
            </tr>
            <tr>
                <td  colspan="2">
                    <xsl:value-of select="./q-10-1-2"/>
                </td>
            </tr>
            <tr>
                <th  colspan="2">
                    <xsl:value-of select="$labels/q-10-2"/>
                </th>
            </tr>
            <tr>
                <td  colspan="2">
                    <xsl:value-of select="./q-10-2"/>
                </td>
            </tr>
            <tr>
                <th colspan="2" >
                    <xsl:value-of select="$labels/q-10-2-r"/>
                </th>
            </tr>
            <tr>
                <td  colspan="2">
                    <xsl:value-of select="./q-10-2-r"/>
                </td>
            </tr>

            <tr>
                <th  colspan="2">
                    <xsl:value-of select="$labels/q-10-2-1"/>
                </th>
            </tr>
            <tr>
                <td  colspan="2">
                    <xsl:value-of select="./q-10-2-1"/>
                </td>
            </tr>

            <tr>
                <th  colspan="2">
                    <xsl:value-of select="$labels/q-10-3"/>
                </th>
            </tr>
            <tr>
                <td  colspan="2">
                    <xsl:value-of select="./q-10-3"/>
                </td>
            </tr>

            <tr>
                <th  colspan="2">
                    <xsl:value-of select="$labels/q-10-3-1"/>
                </th>
            </tr>
            <tr>
                <td  colspan="2">
                    <xsl:value-of select="./q-10-3-1"/>
                </td>
            </tr>

            <tr>
                <th  colspan="2">
                    <xsl:value-of select="$labels/q-10-3-2"/>
                </th>
            </tr>
            <tr>
                <td  colspan="2">
                    <xsl:value-of select="./q-10-3-2"/>
                </td>
            </tr>
        </table>
    </xsl:template>
    <xsl:template match="q-11">
        <h2><xsl:value-of select="$labels/q-11"/></h2>
        <table>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-1"/>
                </th>

            </tr>
            <tr>
                <td colspan="2">
                    <table class="noMargin">
                        <xsl:choose>
                            <xsl:when test="./q-11-1/q-11-1-a='true'"><tr><td><xsl:value-of select="$labels/q-11-1-a"/> </td></tr></xsl:when>
                        </xsl:choose>
                        <xsl:choose>
                            <xsl:when test="./q-11-1/q-11-1-b='true'"><tr><td><xsl:value-of select="$labels/q-11-1-b"/> </td></tr></xsl:when>
                        </xsl:choose>
                        <xsl:choose>
                            <xsl:when test="./q-11-1/q-11-1-c='true'"><tr><td><xsl:value-of select="$labels/q-11-1-c"/> </td></tr></xsl:when>
                        </xsl:choose>
                        <xsl:choose>
                            <xsl:when test="./q-11-1/q-11-1-d='true'"><tr><td><xsl:value-of select="$labels/q-11-1-d"/> </td></tr></xsl:when>
                        </xsl:choose>

                    </table>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-1-r"/>
                </th>
            </tr>
            <tr>
                <td colspan="2">
                    <xsl:value-of select="./q-11-1-r"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-1-1"/>
                </th>
            </tr>
            <tr>
                <td colspan="2">
                    <xsl:value-of select="./q-11-1-1"/>
                </td>
            </tr>
            <tr>
                <th >
                    <xsl:value-of select="$labels/q-11-2"/>
                </th>
                <td><xsl:value-of select="./q-11-2"/></td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-2-1"/>
                </th>
            </tr>
            <tr>
                <td colspan="2">
                    <table  class="noMargin">
                        <xsl:choose>
                            <xsl:when test="./q-11-2-1/q-11-2-1-a='true'"><tr><td><xsl:value-of select="$labels/q-11-2-1-a"/> </td></tr></xsl:when>
                        </xsl:choose>
                        <xsl:choose>
                            <xsl:when test="./q-11-2-1/q-11-2-1-b='true'"><tr><td><xsl:value-of select="$labels/q-11-2-1-b"/> </td></tr></xsl:when>
                        </xsl:choose>
                        <xsl:choose>
                            <xsl:when test="./q-11-2-1/q-11-2-1-c='true'"><tr><td><xsl:value-of select="$labels/q-11-2-1-c"/> </td></tr></xsl:when>
                        </xsl:choose>
                        <xsl:choose>
                            <xsl:when test="./q-11-2-1/q-11-2-1-d='true'"><tr><td><xsl:value-of select="$labels/q-11-2-1-d"/> </td></tr></xsl:when>
                        </xsl:choose>
                        <xsl:choose>
                            <xsl:when test="./q-11-2-1/q-11-2-1-e='true'"><tr><td><xsl:value-of select="$labels/q-11-2-1-e"/> </td></tr></xsl:when>
                        </xsl:choose>
                    </table>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-2-1-r"/>
                </th>
            </tr>
            <tr>
                <td colspan="2">
                    <xsl:value-of select="./q-11-2-1-r"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-2-2"/>
                </th>
            </tr>
            <tr>
                <td colspan="2">
                    <xsl:value-of select="./q-11-2-2"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-3"/>
                </th>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-3-1"/>
                </th>
            </tr>
            <tr>
                <td colspan="2" class="rowHeight" >
                    <xsl:value-of select="./q-11-3/q-11-3-1"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-3-2"/>
                </th>
            </tr>
            <tr>
                <td colspan="2" class="rowHeight">
                    <xsl:value-of select="./q-11-3/q-11-3-2"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-3-3"/>
                </th>
            </tr>
            <tr>
                <td colspan="2" class="rowHeight">
                    <xsl:value-of select="./q-11-3/q-11-3-3"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-3-4"/>
                </th>
            </tr>
            <tr>
                <td colspan="2" class="rowHeight">
                    <xsl:value-of select="./q-11-3/q-11-3-4"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-11-3-5"/>
                </th>
            </tr>
            <tr>
                <td colspan="2" class="rowHeight">
                    <xsl:value-of select="./q-11-3/q-11-3-5"/>
                </td>
            </tr>
        </table>
    </xsl:template>

    <xsl:template match="q-13">
        <h2><xsl:value-of select="$labels/q-13"/></h2>
        <table>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-13-1"/>
                </th>
                <td class="rowHeight">
                    <xsl:value-of select="./q-13-1"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-13-1-1"/>
                </th>
            </tr>
            <tr>
                <td colspan="2" class="rowHeight">
                    <xsl:value-of select="./q-13-1-1"/>
                </td>
            </tr>
        </table>
    </xsl:template>

    <xsl:template match="q-15">
        <h2><xsl:value-of select="$labels/q-15"/></h2>
        <table>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-15-1"/>
                </th>
                <td class="rowHeight">
                    <xsl:value-of select="./q-15-1"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-15-1-1"/>
                </th>
            </tr>
            <tr>
                <td colspan="2" class="rowHeight">
                    <xsl:value-of select="./q-15-1-1"/>
                </td>
            </tr>
            <tr>
                <th>
                    <xsl:value-of select="$labels/q-15-2"/>
                </th>
                <td class="rowHeight">
                    <xsl:value-of select="./q-15-2"/>
                </td>
            </tr>
            <tr>
                <th colspan="2">
                    <xsl:value-of select="$labels/q-15-1-1"/>
                </th>
            </tr>
            <tr>
                <td colspan="2" class="rowHeight">
                    <xsl:value-of select="./q-15-2-1"/>
                </td>
            </tr>
        </table>
    </xsl:template>


</xsl:stylesheet>