<?xml version="1.0" encoding="UTF-8" ?>
<!--
   Name: ReferenceSystemCodes.xsl
   Author:  Matthew J. McCready
   Date:  20111012
   Description:  XSLT stylesheet that puts in the correct code for the gmd:RS_Identifier/gmd:code element 
   Modification History:
      Initial   Date      Change Request ID   Description

-->


<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=" ReferenceSystemCodes" match="/">
<xsl:variable name="StateProjectionName" select="/MIF/Map_Projection_Name"/>

<xsl:choose>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Alabama'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Code for Albers Conical Equal Area for Alabama</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Alaska'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Alaska</xsl:element>
</xsl:element> 
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Arizona'">
<xsl:element name="gmd:code"> 
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Arizona</xsl:element>
</xsl:element>  
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Arkansas'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Arkansas</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for California'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for California</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Colorado'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Colorado</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Connecticut'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Connecticut</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Delaware'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Delaware</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for District of Columbia'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for District of Columbia</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Florida'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Florida</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Georgia'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Georgia</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Hawaii'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Hawaii</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Idaho'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Idaho</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Illinois'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Illinois</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Indiana'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Indiana</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Iowa'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Iowa</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Kansas'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Kansas</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Kentucky'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Kentucky</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Louisiana'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Louisiana</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Maine'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Maine</xsl:element>
</xsl:element> 
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Maryland'">
<xsl:element name="gmd:code"> 
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Maryland</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Massachusetts'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Massachusetts</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Michigan'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Michigan</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Minnesota'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Minnesota</xsl:element>
</xsl:element> 
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Mississippi'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Mississippi</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Missouri'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Missouri</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Montana'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Montana</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Nebraska'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Nebraska</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Nevada'">
<xsl:element name="gmd:code"> 
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Nevada</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for New Hampshire'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for New Hampshire</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for New Jersey'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for New Jersey</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for New Mexico'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for New Mexico</xsl:element>
</xsl:element> 
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for New York'">
<xsl:element name="gmd:code"> 
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for New York</xsl:element>
</xsl:element>  
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for North Carolina'">
<xsl:element name="gmd:code">  
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for North Carolina</xsl:element>
</xsl:element>   
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for North Dakota'">
<xsl:element name="gmd:code">   
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for North Dakota</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Ohio'">
<xsl:element name="gmd:code">    
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Ohio</xsl:element>
</xsl:element> 
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Oklahoma'">
<xsl:element name="gmd:code">     
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Oklahoma</xsl:element>
</xsl:element>  
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Oregon'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Oregon</xsl:element>
</xsl:element>   
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Pennsylvania'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Oregon</xsl:element>
</xsl:element>    
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Pennsylvania'">
<xsl:element name="gmd:code"> 
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Oregon</xsl:element>
</xsl:element>     
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Rhode Island'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Rhode Island</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for South Carolina'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for South Carolina</xsl:element>
</xsl:element> 
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for South Carolina'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for South Carolina</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for South Dakota'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for South Dakota</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for South Dakota'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for South Dakota</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Tennessee'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Tennessee</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Texas'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Texas</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Utah'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Utah</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Vermont'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Vermont</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Virginia'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Virginia</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Washington'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Washington</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for West Virginia'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for West Virginia</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Wisconsin'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Wisconsin</xsl:element>
</xsl:element> 
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Wyoming'">
<xsl:element name="gmd:code"> 
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Wyoming</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for American Samoa'">
<xsl:element name="gmd:code">  
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for American Samoa</xsl:element>
</xsl:element> 
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Guam'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Guam</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for N. Mariana Islands'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for N. Mariana Islands</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for Puerto Rico'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for Puerto Rico</xsl:element>
</xsl:element>
</xsl:when>

<xsl:when test="$StateProjectionName='Albers Conical Equal Area for U.S. Virgin Islands'">
<xsl:element name="gmd:code">
<xsl:element name="gco:CharacterString">Albers Conical Equal Area for U.S. Virgin Islands</xsl:element>
</xsl:element>
</xsl:when>

<xsl:otherwise>
<xsl:element name="gmd:code">
<xsl:attribute name="gco:nilReason">unknown</xsl:attribute>
</xsl:element>
</xsl:otherwise>

</xsl:choose>

</xsl:template>
</xsl:stylesheet>
