
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"
    xmlns:dd802="https://dd.eionet.europa.eu/namespace.jsp?ns_id=802" xmlns:dd820="https://dd.eionet.europa.eu/namespace.jsp?ns_id=820">
    <xsl:output method="html"/>

    <xsl:template match="/">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Agglomerations</title></head><body><h1>Agglomerations</h1><table border="1" style="border-collapse:collapse;">        <xsl:apply-templates select="dd802:Agglomerations/dd802:Row"/>
</table></body></html>    </xsl:template>

    <xsl:template match="dd802:Agglomerations/dd802:Row">
        <xsl:if test="position()=1">
            <xsl:call-template name="header"/>
        </xsl:if>
<tr><xsl:variable xmlns:xsl="http://www.w3.org/1999/XSL/Transform" name="row" select="."></xsl:variable>
<xsl:for-each xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select="$elementsMetadata/element">
   <xsl:variable name="elemIdentifier">
      <xsl:value-of select="identifier"></xsl:value-of>
   </xsl:variable>
   <xsl:variable name="multiValueSeparator">
      <xsl:call-template name="getSeparator">
         <xsl:with-param name="element" select="$elemIdentifier"></xsl:with-param>
      </xsl:call-template>
   </xsl:variable>
   <td>
      <xsl:choose>
         <xsl:when test="count($row/*[local-name()= $elemIdentifier])=0 or string-join($row/*[local-name()= $elemIdentifier ],'')=''"></xsl:when>
         <xsl:otherwise>
            <xsl:value-of select="string-join($row/*[local-name()= $elemIdentifier ],$multiValueSeparator)"></xsl:value-of>
         </xsl:otherwise>
      </xsl:choose>
   </td>
</xsl:for-each></tr></xsl:template>

<xsl:template name="header">
<tr>
<xsl:for-each xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select="$elementsMetadata/element"><th bgcolor="#87cefa"><xsl:value-of select="identifier" /> 
</th> 
</xsl:for-each></tr></xsl:template>

<xsl:template xmlns:xsl="http://www.w3.org/1999/XSL/Transform" name="getSeparator">
   <xsl:param name="element" select="''"></xsl:param>
   <xsl:value-of select="','"></xsl:value-of>
</xsl:template>
<xsl:variable xmlns:xsl="http://www.w3.org/1999/XSL/Transform" name="elementsMetadata">
   <element>
      <elementid>75959</elementid>
      <identifier>aggState</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>78988</elementid>
      <identifier>repCode</identifier>
      <parentNS>null</parentNS>
      <type>string</type>
      <length>16</length>
      <precision></precision>
   </element>
   <element>
      <elementid>78105</elementid>
      <identifier>aggCode</identifier>
      <parentNS>null</parentNS>
      <type>string</type>
      <length>32</length>
      <precision></precision>
   </element>
   <element>
      <elementid>80257</elementid>
      <identifier>aggName</identifier>
      <parentNS>null</parentNS>
      <type>string</type>
      <length>255</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75962</elementid>
      <identifier>aggNUTS</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>75984</elementid>
      <identifier>aggLatitude</identifier>
      <parentNS>820</parentNS>
      <type>decimal</type>
      <length>18</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75985</elementid>
      <identifier>aggLongitude</identifier>
      <parentNS>820</parentNS>
      <type>decimal</type>
      <length>18</length>
      <precision></precision>
   </element>
   <element>
      <elementid>76489</elementid>
      <identifier>aggGenerated</identifier>
      <parentNS>820</parentNS>
      <type>integer</type>
      <length>9</length>
      <precision></precision>
   </element>
   <element>
      <elementid>76487</elementid>
      <identifier>bigCityID</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>75987</elementid>
      <identifier>aggCalculation</identifier>
      <parentNS>820</parentNS>
      <type>string</type>
      <length>4096</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75988</elementid>
      <identifier>aggChanges</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>75989</elementid>
      <identifier>aggChangesComment</identifier>
      <parentNS>820</parentNS>
      <type>string</type>
      <length>4096</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75990</elementid>
      <identifier>aggPeriodOver</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>75991</elementid>
      <identifier>aggC1</identifier>
      <parentNS>820</parentNS>
      <type>decimal</type>
      <length>18</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75992</elementid>
      <identifier>aggMethodC1</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>75993</elementid>
      <identifier>aggC2</identifier>
      <parentNS>820</parentNS>
      <type>decimal</type>
      <length>18</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75994</elementid>
      <identifier>aggMethodC2</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>75995</elementid>
      <identifier>aggPercWithoutTreatment</identifier>
      <parentNS>820</parentNS>
      <type>decimal</type>
      <length>18</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75996</elementid>
      <identifier>aggMethodWithoutTreatment</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>75997</elementid>
      <identifier>aggPercPrimTreatment</identifier>
      <parentNS>820</parentNS>
      <type>decimal</type>
      <length>18</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75998</elementid>
      <identifier>aggPercSecTreatment</identifier>
      <parentNS>820</parentNS>
      <type>decimal</type>
      <length>18</length>
      <precision></precision>
   </element>
   <element>
      <elementid>75999</elementid>
      <identifier>aggPercStringentTreatment</identifier>
      <parentNS>820</parentNS>
      <type>decimal</type>
      <length>18</length>
      <precision></precision>
   </element>
   <element>
      <elementid>76000</elementid>
      <identifier>aggHaveRegistrationSystem</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76001</elementid>
      <identifier>aggExistMaintenancePlan</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76002</elementid>
      <identifier>aggPressureTest</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76003</elementid>
      <identifier>aggVideoInspections</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76004</elementid>
      <identifier>aggOtherMeasures</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76005</elementid>
      <identifier>aggExplanationOther</identifier>
      <parentNS>820</parentNS>
      <type>string</type>
      <length>4096</length>
      <precision></precision>
   </element>
   <element>
      <elementid>76006</elementid>
      <identifier>aggSewageNetwork</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76007</elementid>
      <identifier>aggBestTechnicalKnowledge</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76008</elementid>
      <identifier>aggDilutionRates</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76009</elementid>
      <identifier>aggCapacity</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76010</elementid>
      <identifier>aggAccOverflows</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>76011</elementid>
      <identifier>aggAccOverflowNumber</identifier>
      <parentNS>820</parentNS>
      <type>integer</type>
      <length>9</length>
      <precision></precision>
   </element>
   <element>
      <elementid>76012</elementid>
      <identifier>aggSewerOverflows_m3</identifier>
      <parentNS>820</parentNS>
      <type>integer</type>
      <length>9</length>
      <precision></precision>
   </element>
   <element>
      <elementid>76013</elementid>
      <identifier>aggSewerOverflows_pe</identifier>
      <parentNS>820</parentNS>
      <type>integer</type>
      <length>9</length>
      <precision></precision>
   </element>
   <element>
      <elementid>76014</elementid>
      <identifier>aggRemarks</identifier>
      <parentNS>820</parentNS>
      <type>string</type>
      <length>4096</length>
      <precision></precision>
   </element>
   <element>
      <elementid>76015</elementid>
      <identifier>aggForecast</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>78990</elementid>
      <identifier>aggBeginLife</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
   <element>
      <elementid>78991</elementid>
      <identifier>aggEndLife</identifier>
      <parentNS>820</parentNS>
      <type></type>
      <length></length>
      <precision></precision>
   </element>
</xsl:variable></xsl:stylesheet>
