<?xml version="1.0" ?>
<!-- Style sheet generating the alphabetically ordered list -->
<!-- To learn about this file, visit:
		http://larve.net/people/hugo/2000/10/concerts/generation    -->
<!-- $Id: name-20001020.xsl 3064 2007-05-19 16:50:33Z larve $ -->
<!-- Copyright (c) 2000 Hugo Haas <hugo@larve.net> -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
                xmlns="http://www.w3.org/1999/xhtml">
<xsl:import href="format-concert-20001020.xsl"/>
<xsl:import href="header-footer.xsl"/>

<xsl:output
   method="xml"
   encoding="us-ascii"
   omit-xml-declaration="yes"
   doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" 
   doctype-system="http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-strict.dtd"
   indent="yes"
   />

<xsl:variable name="ucletters"
	      select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"/>
<xsl:variable name="lcletters"
	      select="'abcdefghijklmnopqrstuvwxyz'"/>

<xsl:template match="concerts">
  <html lang="en" xml:lang="en">
    <xsl:call-template name="head">
      <xsl:with-param name="what" select="'artist name'" />
    </xsl:call-template>
  <body>
    <h2>Concert Reviews: by artist name</h2>
    <xsl:call-template name="header"/>
    <xsl:variable name="artists" select="artist" />
    <xsl:variable name="ucletters"
		  select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'"/>
    <xsl:variable name="lcletters"
		  select="'abcdefghijklmnopqrstuvwxyz'"/>
    <p><small>Quick links:
      <xsl:for-each select="$artists">
        <xsl:sort select="translate(last, $lcletters, $ucletters)"/>
        <xsl:variable name="concerts" select="//concerts/concert
	         [child::artistref/attribute::ref=current()/attribute::ref
		 and @status='seen']"/>
        <xsl:if test="boolean($concerts)">
          <a href="#{@ref}"><xsl:value-of select="last"/></a>
          <xsl:if test="position()!=last()">
            <xsl:text> &#183; </xsl:text>
          </xsl:if>
        </xsl:if>
      </xsl:for-each>
    </small></p>
    <dl>
      <xsl:for-each select="$artists">
        <xsl:sort select="translate(last, $lcletters, $ucletters)"/>
        <xsl:variable name="concerts" select="//concerts/concert
	         [child::artistref/attribute::ref=current()/attribute::ref
		 and @status='seen']"/>
        <xsl:if test="boolean($concerts)">
        <dt id="{@ref}">
	  <xsl:variable name="name">
	    <xsl:choose>
	      <xsl:when test="boolean(first)">
	        <xsl:value-of select="concat(last, ', ', first)"/>
	      </xsl:when>
	      <xsl:when test="not(boolean(first))">
	        <xsl:value-of select="last"/>
	      </xsl:when>
	    </xsl:choose>
	  </xsl:variable>
	  <xsl:choose>
	    <xsl:when test='@lang!="en"'>
	      <span lang="{@lang}">
	      <xsl:value-of select="$name"/>
	      </span>
	    </xsl:when>
	    <xsl:when test='@lang="en"'>
	      <xsl:value-of select="$name"/>
	    </xsl:when>
	  </xsl:choose>
	  <xsl:if test="boolean(site) and site/attribute::official = 'true'">
	    <xsl:text> (</xsl:text>
	    <a href="{site}">
	      <xsl:text>official site</xsl:text>
	    </a>
	    <xsl:text>)</xsl:text>
	  </xsl:if>
	</dt>
	<dd>
	  <ul>
	    <xsl:for-each select="$concerts">
	      <xsl:sort select="date/year" data-type="number"
                        order="ascending"/>
	      <xsl:sort select="date/month" data-type="number"
                        order="ascending"/>
	      <xsl:sort select="date/day" data-type="number"
                        order="ascending"/>
	      <li>
		<xsl:call-template name="concert-entry"/>
	      </li>
	    </xsl:for-each>
	  </ul>
	</dd>
      </xsl:if>
      </xsl:for-each>
    </dl>
    <xsl:call-template name="footer"/>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>
