<?xml version="1.0" encoding="UTF-8" ?>

<!--
   Name:  12_gmd:contentInfo.xsl
   Author:  Matthew J. McCready
   Date:  20110601
   Description:  XSLT stylesheet that provides the link to the feature catolog, which contains the entity and attribute information. This stylesheet is for files that contain the
                 Entity_and_Attribute_Overview MIF element. An EA file is not created for these MIF files. Instead, users are given a link to an existing Census publication.
   Modification History:
      Initial   Date      Change Request ID   Description
      MMC          07/07/2011                 Changed the contentInfo to gmd:contentInfo
      MMC          07/07/2011                 Created the featureCatalogueCitationDate template to handle the date under the CI_Citation package
                                               changed CI_Citation gmd:CI_Citation.
      MMC          07/07/2011                 Added the gco:CharacterString under the gmd:title element.
      MMC          12/04/2013                 Ensured that all calls to the ISO codelist have the correct URL.
        
-->


<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
        xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gco="http://www.isotc211.org/2005/gco">
        <xsl:output method="xml" version="1.0" encoding="ISO-8859-1" indent="yes"/>



        <xsl:template name="contentInfoOverview" match="/">
<xsl:comment>In the contentInfoOverview template</xsl:comment>
                <xsl:element name="gmd:contentInfo">
                        <xsl:element name="gmd:MD_FeatureCatalogueDescription">

                                
                                        <xsl:call-template name="includedWithDataset"/>
                                <!-- gmd:includedWithDataset -->
                                
                                <xsl:element name="gmd:featureTypes">

                                        <xsl:element name="gco:LocalName">
                                                <xsl:attribute name="codeSpace">unknown</xsl:attribute>
                                        </xsl:element><!-- gco:LocalName -->

                                </xsl:element><!-- gmd:featureTypes -->
                                

                                <xsl:element name="gmd:featureCatalogueCitation">
                                        <xsl:element name="gmd:CI_Citation">

                                                <xsl:element name="gmd:title">
                                                  <xsl:variable name="EAName" select="/MIF/Entity_and_Attribute_Detail_Citation"/>
                                                  

                                                  <xsl:if test="$EAName = 'http://www.census.gov/geo/www/2010census/GTC_10.pdf'">
                                                  
                                                  <xsl:element name="gco:CharacterString">Geographic Terms and Concepts </xsl:element>
                                                  </xsl:if>

                                                </xsl:element><!-- gmd:title -->
                                                

                                                <xsl:element name="gmd:date">
                                                  <xsl:element name="gmd:CI_Date">
                                                  <xsl:element name="gmd:date">
                                                  <xsl:call-template name="featureCatalogueCitationDate"/>
                                                  </xsl:element>
                                                  <!-- gmd:date -->

                                                  <!-- </xsl:element> -->
                                                  <!-- gco:Date -->

                                                  <xsl:element name="gmd:dateType">

                                                  <xsl:element name="gmd:CI_DateTypeCode">
                                                  <xsl:attribute name="codeList">http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode</xsl:attribute>
                                                  <xsl:attribute name="codeListValue">publication</xsl:attribute>
                                                  <xsl:attribute name="codeSpace">002</xsl:attribute>
                                                  </xsl:element><!-- gmd:CI_DateTypeCode -->

                                                  </xsl:element><!-- gmd:dateType -->
                                                  

                                                  <!-- </xsl:element> -->
                                                  <!-- gmd:date -->
                                                  </xsl:element>
                                                  <!-- gmd:CI_Date -->
                                                </xsl:element>
                                                <!-- gmd:date -->

                                                <xsl:if test="/MIF/Entity_and_Attribute_Overview">
                                                  <xsl:element name="gmd:otherCitationDetails">
                                                  <xsl:element name="gco:CharacterString">Entity and
                                                  Attribute Overview: <xsl:value-of
                                                  select="/MIF/Entity_and_Attribute_Overview"/>
                                                  </xsl:element>
                                                  <!-- gco:CharacterString -->
                                                  </xsl:element>
                                                  <!-- gmd:otherCitationDetails -->
                                                </xsl:if>



                                        </xsl:element>
                                        <!-- CI_Citation -->
                                </xsl:element>
                                <!-- gmd:featureCatalogueCitation -->




                                <xsl:element name="gmd:featureCatalogueCitation">
                                        <xsl:element name="gmd:CI_Citation">
<xsl:variable name="EAName" select="/MIF/Entity_and_Attribute_Detail_Citation"/>

                                                <xsl:element name="gmd:title">
                                                  
                                                  <xsl:if
                                                  test="$EAName = 'http://www.census.gov/geo/www/2010census/GTC_10.pdf'">
                                                  <xsl:element name="gco:CharacterString">Geographic
                                                  Terms and Concepts </xsl:element>
                                                  <!-- gco:CharacterString -->
                                                  </xsl:if>



                                                </xsl:element>
                                                <!-- gmd:title -->

                                                <xsl:element name="gmd:date">
                                                  <xsl:element name="gmd:CI_Date">
                                                  <xsl:element name="gmd:date">

                                                  <!-- <xsl:element name="gco:Date"> -->
                                                  <!-- <xsl:value-of select="/metadata/metainfo/metd"/> -->
                                                  <xsl:call-template
                                                  name="featureCatalogueCitationDate"/>
                                                  </xsl:element>
                                                  <!-- gmd:date -->

                                                  <!-- </xsl:element> -->
                                                  <!-- gco:Date -->

                                                  <xsl:element name="gmd:dateType">

                                                  <xsl:element name="gmd:CI_DateTypeCode">
                                                  <xsl:attribute name="codeList"
                                                  >http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode</xsl:attribute>
                                                  <xsl:attribute name="codeListValue"
                                                  >publication</xsl:attribute>
                                                  <xsl:attribute name="codeSpace"
                                                  >002</xsl:attribute>
                                                  </xsl:element>
                                                  <!-- gmd:CI_DateTypeCode -->

                                                  </xsl:element>
                                                  <!-- gmd:dateType -->

                                                  <!-- </xsl:element> -->
                                                  <!-- gmd:date -->
                                                  </xsl:element>
                                                  <!-- gmd:CI_Date -->
                                                </xsl:element>
                                                <!-- gmd:date -->

                                                <xsl:if
                                                  test="/MIF/Entity_and_Attribute_Detail_Citation">
                                                  <xsl:element name="gmd:otherCitationDetails">
                                                  <xsl:element name="gco:CharacterString">Entity and
                                                  Attribute Detail Citation Reference: 
                                                          
                                                          <xsl:choose>
                                                                  <xsl:when test="$EAName = 'http://www.census.gov/geo/www/2010census/GTC_10.pdf'">http://www.census.gov/geo/reference/pdfs/GTC_10.pdf  
                                                                  </xsl:when>
                                                                  <xsl:otherwise>
                                                                           <xsl:value-of
                                                  select="/MIF/Entity_and_Attribute_Detail_Citation"
                                                  />
                                                                  </xsl:otherwise>
                                                          </xsl:choose>
                                                         
                                                  </xsl:element>
                                                  <!-- gco:CharacterString -->
                                                  </xsl:element>
                                                  <!-- gmd:otherCitationDetails -->
                                                </xsl:if>

                                        </xsl:element>
                                        <!-- CI_Citation -->
                                </xsl:element>
                                <!-- gmd:featureCatalogueCitation -->


                        </xsl:element>
                        <!-- gmd:MD_FeatureCatalogueDescription -->
                </xsl:element>
                <!--  contentInfo -->

        </xsl:template>

        <xsl:template name="includedWithDataset">
                <xsl:choose>

                        <xsl:when test="/MIF/Entity_Type_Label">
                                <xsl:element name="gmd:includedWithDataset">
                                <xsl:element name="gco:Boolean">true</xsl:element>
                                        </xsl:element>
                        </xsl:when>
                        <xsl:when test="/MIF/Entity_and_Attribute_Overview">
                                <xsl:element name="gmd:complianceCode">
                                        <xsl:element name="gco:Boolean">false</xsl:element>
                                </xsl:element>
                                <xsl:element name="gmd:includedWithDataset">
                                <xsl:element name="gco:Boolean">false</xsl:element>
                                        </xsl:element>
                        </xsl:when>
                        <xsl:otherwise>
                                <xsl:element name="gmd:complianceCode">
                                        <xsl:element name="gco:Boolean">false</xsl:element>
                                </xsl:element>
                                <xsl:element name="gmd:includedWithDataset">
                                <xsl:element name="gco:Boolean">false</xsl:element>
                                        </xsl:element>
                        </xsl:otherwise>
                </xsl:choose>
        </xsl:template>

        <xsl:template name="featureCatalogueCitationDate">
                <xsl:variable name="MetDate" select="/MIF/Metadata_Date"/>
                <xsl:variable name="year" select="substring($MetDate,1,4)"/>
                <xsl:variable name="month" select="substring($MetDate,5,2)"/>
                <xsl:variable name="monthLength" select="string-length($month)"/>
                <xsl:variable name="day" select="substring($MetDate,7,2)"/>
                <xsl:variable name="dayLength" select="string-length($day)"/>

                <xsl:choose>
                        <xsl:when test="$dayLength>0">

                                <xsl:variable name="dateFormat"
                                        select="concat($year, '-',$month,'-',$day)"/>
                                <xsl:element name="gco:Date">
                                        <xsl:value-of select="$dateFormat"/>
                                </xsl:element>
                        </xsl:when>

                        <xsl:when test="$monthLength >0">
                                <xsl:variable name="dateFormat" select="concat($year, '-',$month)"/>
                                <xsl:element name="gco:Date">
                                        <xsl:value-of select="$dateFormat"/>
                                </xsl:element>
                        </xsl:when>
                        <xsl:otherwise>
                                <xsl:variable name="dateFormat" select="$year"/>
                                <xsl:element name="gco:Date">
                                        <xsl:value-of select="$dateFormat"/>
                                </xsl:element>

                        </xsl:otherwise>
                </xsl:choose>

        </xsl:template>


</xsl:stylesheet>
<!-- End Heere !!!!!!!!!!!!!!!!!!!!!!!!! -->
