XML schema |
http://dd.eionet.europa.eu/schemas/ied/IEDQuestionnaire.xsd
|
---|---|
Output type | HTML |
Description | HTML report |
XSL file | ied-html.xsl (Last modified: 27 Jan 2015 08:28 ) |
<?xml version="1.0" encoding="UTF-8"?> <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" indent="yes" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" omit-xml-declaration="yes"/> <xsl:param name="envelopeurl" select="''"/> <xsl:param name="filename" select="''"/> <xsl:variable name="countrycode"> <xsl:choose> <xsl:when test="string-length($envelopeurl)>0 and starts-with($envelopeurl, 'http')"><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 and starts-with($envelopeurl, 'http')"><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="schema" select="document('http://dd.eionet.europa.eu/schemas/ied/IEDQuestionnaire.xsd')/xs:schema"/> <xsl:variable name="labels" select="document('http://converters.eionet.europa.eu/xmlfile/ied-labels.xml')/labels"/> <xsl:variable name="codelists" select="document('http://converters.eionet.europa.eu/xmlfile/ied-codelists-en.xml')/IEDCodelists"/> <!-- parameters for testing at localhost <xsl:variable name="codelists" select="document('../xml/languages/ied-codelists-en.xml')/IEDCodelists" /> <xsl:variable name="labels" select="document('../xml/ied-labels.xml')/labels"/> --> <xsl:template match="/"> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <title>IED Annex I questionnaire</title> <meta content="text/html; charset=utf-8"/> <style type="text/css"> body { font-size: 80%; font-family: verdana, helvetica, arial, sans-serif; color: #333; margin-left:30px; } h1 { font-size: 160%; color: #315076; text-align: center; padding-bottom: 0.5em; font-style: italic; } h2 { font-size: 130%; border-bottom: 1px solid #999999; font-style: italic; margin-left:-25px; } h3{ font-size: 110%; color: #315076; margin-left:-25px; } h4{ font-size: 110%; color: #315076; margin-top: 10px; margin-bottom: 5px; } caption { display: none; font-family: vardana, verdana, helvetica, arial, sans-serif; text-align: left; font-size: 150%; } table { border-collapse: collapse; } th, td{ padding: 0.5em 0.5em 0.5em 0.5em; text-align:left; border: 1px solid #bbb; } th { background-color: #f9f8f6; } table.datatable { width: 100%; } table.question{ margin-top: 13px; } table.question th, table.question td{ vertical-align: top; border: none; } table.question th{ font-size: 105%; color: #315076; background-color: transparent; padding-left: 0; } table.second{ margin-top: 5px; } .sub { font-size: 0.8em; } sup { font-size: 0.8em; font-style: italic; color: #777; } .note{ font-size: 0.8em; color: #315076; } .value { background-color: #ffffe0; } .disabled td{ background-color:lightgrey; } .italicTableHeading{ font-style: italic; color: black; margin-left: 1em; } </style> </head> <body> <h1> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'Questionnaire-title'"/> </xsl:call-template> </h1> <table> <tr> <xsl:call-template name="getLabelTd"> <xsl:with-param name="labelName" select="'Reporting country'"/> </xsl:call-template> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="$countrycode"/> </xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'CDR envelope'"/></xsl:call-template> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="$envelopeurl"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'File name'"/></xsl:call-template> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="$filename"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'Reporting date'"/></xsl:call-template> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="$reportingdate"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'reporting-language'"/></xsl:call-template> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="/IEDQuestionnaire/@xml:lang"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'reporting-year'"/></xsl:call-template> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="/IEDQuestionnaire/@year"/></xsl:call-template> </tr> </table> <xsl:apply-templates /> </body> </html> </xsl:template> <xsl:template match="NonCompliance"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question1-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question1-1a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_1"/></xsl:call-template> </tr> </table> </xsl:template> <xsl:template match="PermitConditions"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question2-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question2-2a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question2-2b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question2-2.1'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_2_1"/></xsl:call-template> </tr> <xsl:for-each select="q_2_1_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question2-2.2'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_2_2"/></xsl:call-template> </tr> <xsl:for-each select="q_2_2_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> </table> </xsl:template> <xsl:template match="EmissionLimitValues"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question3-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question3-3a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question3-3b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question3-3.1'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_3_1"/></xsl:call-template> </tr> <xsl:for-each select="q_3_1_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question3-3.2'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_3_2"/></xsl:call-template> </tr> <xsl:for-each select="q_3_2_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question3-3.3'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_3_3"/></xsl:call-template> </tr> <xsl:for-each select="q_3_3_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question3-3.4'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_3_4"/></xsl:call-template> </tr> <xsl:for-each select="q_3_4_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question3-3.5'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_3_5"/></xsl:call-template> </tr> <xsl:for-each select="q_3_5_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> </table> </xsl:template> <xsl:template match="MonitoringRequirements"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question4-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question4-4a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question4-4b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question4-4.1'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_4_1"/></xsl:call-template> </tr> <xsl:for-each select="q_4_1_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question4-4.2'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_4_2"/></xsl:call-template> </tr> <xsl:for-each select="q_4_2_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question4-4.3'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_4_3"/></xsl:call-template> </tr> <xsl:for-each select="q_4_3_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> </table> </xsl:template> <xsl:template match="GeneralBindingRules"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question5-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question5'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_5_yesNo"/></xsl:call-template> </tr> </table> <xsl:if test="q_5_yesNo='yes'" > <table> <tr> <th> <xsl:call-template name="getLabel"><xsl:with-param name="labelName" select="'question5-5.1'"/></xsl:call-template> </th> <th> <xsl:call-template name="getLabel"><xsl:with-param name="labelName" select="'question5-5.1a'"/></xsl:call-template> </th> <th> <xsl:call-template name="getLabel"><xsl:with-param name="labelName" select="'question5-5.1b'"/></xsl:call-template> </th> </tr> <xsl:for-each select="QuestionRow"> <tr> <xsl:call-template name="getListTd"> <xsl:with-param name="elem" select="q_5_1"/> <xsl:with-param name="elementType" select="'Annex1Activities'"/> </xsl:call-template> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="q_5_1a"/> </xsl:call-template> <xsl:call-template name="getListTd"> <xsl:with-param name="elem" select="q_5_1b"/> <xsl:with-param name="elementType" select="'Pollutant'"/> </xsl:call-template> </tr> </xsl:for-each> </table> <table> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question5-5.2'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_5_2"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question5-5.3'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_5_3"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question5-5.4'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_5_4"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question5-5.5'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_5_5"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question5-5.6'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_5_6"/></xsl:call-template> </tr> </table> </xsl:if> </xsl:template> <xsl:template match="DevelopmentsInBAT"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question6-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question6-6.1'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_6_1"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question6-6.2'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_6_2"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question6-6.2a'"/></xsl:call-template> </tr> <tr> <!-- TODO maybe it is better idea to indent sub question answers --> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_6_2a"/></xsl:call-template> </tr> </table> </xsl:template> <xsl:template match="ReconsiderationAndUpdatingPermits"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question7-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question7-7a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question7-7b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question7-7.1'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_7_1"/></xsl:call-template> </tr> <xsl:for-each select="q_7_1_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question7-7.2'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_7_2"/></xsl:call-template> </tr> <xsl:for-each select="q_7_2_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question7-7.3'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_7_3"/></xsl:call-template> </tr> <xsl:for-each select="q_7_3_links"> <tr> <xsl:call-template name="getValueTd"> <xsl:with-param name="elem" select="url"/> <xsl:with-param name="isLink" select="true()"/> </xsl:call-template> </tr> </xsl:for-each> </table> </xsl:template> <xsl:template match="SiteClosure"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question8-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.1'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_8_1"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.1a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getListTd"> <xsl:with-param name="elem" select="q_8_1a"/> <xsl:with-param name="elementType" select="'Annex1Activities'"/> </xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.1b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_8_1b"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.1c'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_8_1c"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.1d'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_8_1d"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.2a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_8_2a"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.2b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_8_2b"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.2c'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_8_2c"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question8-8.2d'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_8_2d"/></xsl:call-template> </tr> </table> </xsl:template> <xsl:template match="EnvironmentalInspections"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question9-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.1'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_1"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.1a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_1a"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.1b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_1b"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.1c'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_1c"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.2'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_2"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.2a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_2a"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.2b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_2b"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.2c'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_2c"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.3'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_3"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.3a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_3a"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.3b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_3b"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.4'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getListTd"> <xsl:with-param name="elem" select="q_9_4"/> <xsl:with-param name="elementType" select="'InspectionCircumstances'"/> </xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.5'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_5"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.5a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_5a"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.5b'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_5b"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.5c'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_5c"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question9-9.6'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_9_6"/></xsl:call-template> </tr> </table> </xsl:template> <xsl:template match="AccessToInformationAndPublicParticipation"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question10-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question10-10.1'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_10_1"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question10-10.2'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_10_2"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question10-10.3'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_10_3_yesNo"/></xsl:call-template> </tr> <xsl:if test="q_10_3_yesNo='yes'" > <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question10-10.3a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_10_3a"/></xsl:call-template> </tr> </xsl:if> </table> </xsl:template> <xsl:template match="EmergingTechniques"> <h2> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'question11-heading'"/> </xsl:call-template> </h2> <table class="table table-hover table-bordered"> <tr> <xsl:call-template name="getLabelTd"><xsl:with-param name="labelName" select="'question11-11a'"/></xsl:call-template> </tr> <tr> <xsl:call-template name="getValueTd"><xsl:with-param name="elem" select="q_11"/></xsl:call-template> </tr> </table> </xsl:template> <!-- Method Definitions --> <xsl:template name="getLabel" > <xsl:param name="labelName"/> <!--<xsl:param name="lang" select="'en'"/>--> <xsl:variable name="labelValue" select="$labels/*[local-name() = $labelName]"/> <xsl:choose> <xsl:when test="string-length($labelValue) > 0"> <xsl:choose> <xsl:when test="contains($labelValue,'{{reportingYear}}')"> <xsl:value-of select="replace($labelValue,'\{\{reportingYear\}\}', string(../@year))"/> </xsl:when> <xsl:otherwise><xsl:value-of select="$labelValue"/></xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:value-of select="$labelName"/> </xsl:otherwise> </xsl:choose> </xsl:template> <xsl:template name="getLabelTd" > <xsl:param name="labelName"/> <!--<xsl:param name="lang" select="'en'"/>--> <td> <xsl:call-template name="getLabel"><xsl:with-param name="labelName" select="$labelName"/></xsl:call-template> </td> </xsl:template> <xsl:template name="getValueTd"> <xsl:param name="elem"/> <xsl:param name="elementType" select="''"/> <xsl:param name="colspan" select="0"/> <xsl:param name="isLink" select="false()"/> <xsl:variable name="codelistName"> <xsl:if test="not(starts-with($elementType, 'String') or starts-with($elementType, 'Memo') or starts-with($elementType, 'Decimal') or starts-with($elementType, 'Integer')) and count($schema/xs:simpleType[@name = $elementType]//xs:enumeration[@value = $elem]) > 0"> <xsl:value-of select="$elementType"/> </xsl:if> </xsl:variable> <td> <xsl:attribute name="class"> <xsl:value-of select="concat('value td-',position())"/> </xsl:attribute> <xsl:if test="$colspan > 0"> <xsl:attribute name="colspan" select="$colspan"/> </xsl:if> <xsl:variable name="elemValue"> <xsl:choose> <xsl:when test="string-length($codelistName) > 0"> <xsl:value-of select="$schema/xs:simpleType[@name = $elementType]//xs:enumeration[@value = $elem]/xs:annotation/xs:documentation"/> </xsl:when> <xsl:when test="string($elem)='yes'">Yes</xsl:when> <xsl:when test="string($elem)='no'">No</xsl:when> <!-- detect disabled fields --> <xsl:otherwise><xsl:value-of select="$elem"/></xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:choose> <xsl:when test="string($elemValue) = 'true'"> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'yes'"/> </xsl:call-template> </xsl:when> <xsl:when test="string($elemValue) = 'false'"> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'no'"/> </xsl:call-template></xsl:when> <xsl:otherwise> <xsl:choose> <xsl:when test="$isLink = true() and starts-with($elemValue, 'http')"> <xsl:element name="a"> <xsl:attribute name="href"> <xsl:value-of select="$elemValue"/> </xsl:attribute> <xsl:value-of select="$elemValue"/> </xsl:element> </xsl:when> <xsl:when test="$isLink = true() and starts-with($elemValue, 'www')"> <xsl:element name="a"> <xsl:attribute name="href"> <xsl:text>http://</xsl:text> <xsl:value-of select="$elemValue"/> </xsl:attribute> <xsl:value-of select="$elemValue"/> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:call-template name="break"> <xsl:with-param name="text" select="$elemValue"/> </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:otherwise> </xsl:choose> </td> </xsl:template> <xsl:template name="getListTd"> <xsl:param name="elem"/> <xsl:param name="elementType" select="''"/> <xsl:param name="colspan" select="0"/> <xsl:variable name="codelistName"> <xsl:if test="string-length($elementType) > 0"> <xsl:value-of select="$elementType"/> </xsl:if> </xsl:variable> <td> <xsl:attribute name="class"> <xsl:value-of select="concat('value td-',position())"/> </xsl:attribute> <xsl:if test="$colspan > 0"> <xsl:attribute name="colspan" select="$colspan"/> </xsl:if> <ul> <xsl:for-each select="$elem/*"> <xsl:if test="string-length(.) > 0"> <li> <xsl:variable name="arrayElement"> <xsl:value-of select="."/> </xsl:variable> <xsl:variable name="elemValue"> <xsl:choose> <!-- <xsl:when test="string-length($codelistName) > 0"> <xsl:value-of select="$schema/xs:simpleType[@name = $elementType]//xs:enumeration[@value = $arrayElement]/xs:annotation/xs:documentation"/> </xsl:when> --> <xsl:when test="$arrayElement/text()='yes'">Yes</xsl:when> <xsl:when test="$arrayElement/text()='no'">No</xsl:when> <!-- detect disabled fields --> <xsl:otherwise><xsl:value-of select="$arrayElement"/></xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:choose> <xsl:when test="string($elemValue) = 'true'"> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'yes'"/> </xsl:call-template> </xsl:when> <xsl:when test="string($elemValue) = 'false'"> <xsl:call-template name="getLabel"> <xsl:with-param name="labelName" select="'no'"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:variable name="labelValue" select="$codelists/*[local-name()=$codelistName]/descendant::item[code = $elemValue]/label"/> <xsl:choose> <xsl:when test="string-length($labelValue) > 0"> <xsl:value-of select="$labelValue"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="$elemValue"/> </xsl:otherwise> </xsl:choose> </xsl:otherwise> </xsl:choose> </li> </xsl:if> </xsl:for-each> </ul> </td> </xsl:template> <!-- Replaces line breaks with <br/> tags --> <xsl:template name="break"> <xsl:param name="text" select="."/> <xsl:choose> <xsl:when test="contains($text, ' ')"> <xsl:value-of select="substring-before($text, ' ')" /> <br/> <xsl:call-template name="break"> <xsl:with-param name="text" select="substring-after($text, ' ')" /> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:value-of select="$text"/> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet>
European Environment Agency
Kgs. Nytorv 6, DK-1050 Copenhagen K, Denmark