<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="RECORDS">
 <xsl:for-each select="./RECORD">

  <xsl:sort select="concat(YEAR, AUTHORS)" />

  <xsl:choose>
   <xsl:when test="REFERENCE_TYPE = 0"> <!-- Journal Article -->
   
     <xsl:for-each select="./AUTHORS/AUTHOR">
      <xsl:if test="position() != 1">
       <xsl:text>; </xsl:text>
      </xsl:if>
      <xsl:value-of select="." />
     </xsl:for-each>

     <xsl:text> </xsl:text>
     <xsl:if test="YEAR != ''">
      <xsl:value-of select="./YEAR" /><xsl:text>: </xsl:text>
     </xsl:if>
     <xsl:value-of select="./TITLE" />
     <xsl:text> - </xsl:text><xsl:value-of select="./SECONDARY_TITLE" />
     <xsl:if test="PLACE_PUBLISHED != ''">
      <xsl:text>, </xsl:text><xsl:value-of select="./PLACE_PUBLISHED" />
     </xsl:if>
     <xsl:text> </xsl:text>
     <xsl:if test="VOLUME != ''">
      <b><xsl:value-of select="./VOLUME" /></b>
     </xsl:if>
     <xsl:if test="NUMBER != ''">
      <xsl:text>(</xsl:text><xsl:value-of select="./NUMBER" /><xsl:text>)</xsl:text>
     </xsl:if>
     <xsl:if test="PAGES != ''">
      <xsl:text>: </xsl:text><xsl:value-of select="./PAGES" />
     </xsl:if>
   </xsl:when>

   <xsl:when test="REFERENCE_TYPE = 31"> <!-- Book Chapter -->
     <xsl:for-each select="./AUTHORS/AUTHOR">
      <xsl:if test="position() != 1">
       <xsl:text>; </xsl:text>
      </xsl:if>
      <xsl:value-of select="." />
     </xsl:for-each>
     <xsl:text> </xsl:text>
     <xsl:if test="YEAR != ''">
      <xsl:value-of select="./YEAR" /><xsl:text>: </xsl:text>
     </xsl:if>
     <xsl:value-of select="./TITLE" />
     <xsl:if test="PAGES != ''">
      <xsl:text>: </xsl:text><xsl:value-of select="./PAGES" />
     </xsl:if>
     <xsl:text> In: </xsl:text>
     <xsl:for-each select="./SECONDARY_AUTHORS/SECONDARY_AUTHOR">
      <xsl:if test="position() != 1">
       <xsl:text>; </xsl:text>
      </xsl:if>
      <xsl:value-of select="." />
     </xsl:for-each>
     <xsl:text> </xsl:text>
     <xsl:text> - </xsl:text><xsl:value-of select="./SECONDARY_TITLE" />
     <xsl:if test="PLACE_PUBLISHED != ''">
      <xsl:text>, </xsl:text><xsl:value-of select="./PLACE_PUBLISHED" /><xsl:text> </xsl:text>
     </xsl:if>
     <xsl:if test="VOLUME != ''">
      <b><xsl:value-of select="./VOLUME" /></b>
     </xsl:if>
    <xsl:if test="EDITION != ''">
      <xsl:text> </xsl:text><xsl:value-of select="EDITION" />
     </xsl:if>
   </xsl:when>

   <xsl:when test="REFERENCE_TYPE = 2"> <!-- Thesis -->
     <xsl:for-each select="./AUTHORS/AUTHOR">
      <xsl:if test="position() != 1">
       <xsl:text>; </xsl:text>
      </xsl:if>
      <xsl:value-of select="." />
     </xsl:for-each>
     <xsl:text> </xsl:text>
     <xsl:if test="YEAR != ''">
      <xsl:value-of select="./YEAR" /><xsl:text>: </xsl:text>
     </xsl:if>
     <xsl:value-of select="./TITLE" />
     <xsl:text> - </xsl:text><xsl:value-of select="./SECONDARY_TITLE" />
     <xsl:if test="PLACE_PUBLISHED != ''">
      <xsl:value-of select="./PLACE_PUBLISHED" />
     </xsl:if>
     <xsl:text>, </xsl:text>
     <xsl:if test="PUBLISHER != ''">
      <xsl:value-of select="PUBLISHER" />
     </xsl:if>
     <xsl:if test="PAGES != ''">
      <xsl:text>: </xsl:text><xsl:value-of select="./PAGES" />
     </xsl:if>
   </xsl:when>

   <xsl:when test="REFERENCE_TYPE = 3"> <!-- Conference Paper -->
     <xsl:for-each select="./AUTHORS/AUTHOR">
      <xsl:if test="position() != 1">
       <xsl:text>; </xsl:text>
      </xsl:if>
      <xsl:value-of select="." />
     </xsl:for-each>
     <xsl:text> </xsl:text>
     <xsl:if test="YEAR != ''">
      <xsl:value-of select="./YEAR" /><xsl:text>: </xsl:text>
     </xsl:if>
     <xsl:value-of select="./TITLE" />
     <xsl:text> - </xsl:text><xsl:value-of select="./SECONDARY_TITLE" />
     <xsl:if test="PLACE_PUBLISHED != ''">
      <xsl:text>, </xsl:text>
      <xsl:value-of select="./PLACE_PUBLISHED" />
     </xsl:if>
     <xsl:text> - </xsl:text>
     <xsl:if test="TERTIARY_TITLE != ''">
      <xsl:value-of select="TERTIARY_TITLE" />
     </xsl:if>
     <xsl:if test="VOLUME != ''">
      <xsl:text> </xsl:text>
      <b><xsl:value-of select="./VOLUME" /></b>
     </xsl:if>
     <xsl:if test="PAGES != ''">
      <xsl:text>: </xsl:text><xsl:value-of select="./PAGES" />
     </xsl:if>
   </xsl:when>

   <xsl:otherwise>
    <xsl:value-of select="./REFERENCE_TYPE" /><xsl:text> Nicht definiert!</xsl:text>
   </xsl:otherwise>
  </xsl:choose>

  <br /><br />

 </xsl:for-each>
</xsl:template>

</xsl:stylesheet>
