<?xml version="1.0"?>
<!-- $Id: teams.xsl,v 1.13 2001/07/25 12:31:26 mdean Exp $ -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

  <xsl:output method="html"/>

  <xsl:template match="/">
    <title>DAML Task Signup by Team</title>
    <h1>DAML Task Signup by Team</h1>

    <p>
    This page lists the task(s) that each team signed up for during
    the July 2001 DAML PI Meeting.
    </p>
    <p>
    Please send updates or corrections to
    <a href="mailto:jhendler@darpa.mil">Jim Hendler</a>
    and
    <a href="mailto:mdean@bbn.com">Mike Dean</a>
    </p>

    <table border="1">
      <tr>
        <th><a href="http://www.daml.org/researchers">Team</a></th>
	<th>Task(s)</th>
      </tr>
      <xsl:for-each select="/root/Team">
        <xsl:sort select="@fragment"/>
        <tr>
          <td>
            <a>
              <xsl:attribute name="href">
                <xsl:value-of select="@uri"/>
              </xsl:attribute>
              <xsl:value-of select="@fragment"/>
            </a>
          </td>
          <td>
	    <ul>
              <xsl:for-each select="committedTo">
	        <li>
		  <xsl:choose>
	  	    <xsl:when test="*/name"> <!-- signup:Task or wishlist:Tool -->
		      <a>
                        <xsl:attribute name="href">
                          <xsl:value-of select="*/@uri"/>
                        </xsl:attribute>
                        <xsl:value-of select="*/name" disable-output-escaping="yes"/>
                      </a>
		    </xsl:when>
	            <xsl:when test="text()"> <!-- string -->
                      <xsl:value-of select="." disable-output-escaping="yes"/>
		    </xsl:when>
		    <xsl:otherwise>
		      <xsl:value-of select="*/@uri"/>
		    </xsl:otherwise>
		  </xsl:choose>	
                </li>
              </xsl:for-each>
            </ul>
          </td>
        </tr>
      </xsl:for-each>
    </table>

    <a name="colophon" />
    <h2>Colophon</h2>

    <p>
    This page was generated from
    <table border="1">
      <tr>
        <th>URI</th>
        <th>daml:versionInfo</th>
      </tr>
      <xsl:for-each select="/root/*/versionInfo">
        <tr>
          <td>
            <a>
              <xsl:attribute name="href">
                <xsl:value-of select="../@uri"/>
              </xsl:attribute>
              <xsl:value-of select="../@uri"/>
            </a>
          </td>
          <td>
            <xsl:value-of select="."/>
          </td>
        </tr>
      </xsl:for-each>
    </table>
    and possibly other inputs
    using 
    <a href="teams.xsl">teams.xsl</a>,
    a version of DAML XSLT,
    and
    <a href="genhtml.bat">genhtml.bat</a>.
    </p>
    <p>
    Lessons learned/relearned include:
    <ol>
      <li>DAML XSLT needs to accept multiple model inputs (unlike XML XSLT)</li>
      <li><code>daml:versionInfo</code> can be applied to any resource</li>
      <li>DAML XSLT needs to provide access to the URI associated with
          each node (e.g. <code>@uri</code> and <code>@fragment</code>)</li>
      <li>DAML XSLT should provide access to the URIs used as model inputs</li>
      <li>It can be very useful to be able to give a property either a
          xsd:string or object value (as also found in 
          <a href="http://www.dublincore.org">Dublin Core</a>).</li>
      <li>We don't have a great way of associating additional/elaboration information
          with a relation,
          e.g. linking to DAML Design Case Study and then indicating what
          the case study is about.  If we'd recognized this when designing
	  the ontology, we could have created an extra object
          to hold both link and a comment.  Reification is also a possibility,
	  though awkward and not consistently supported.</li>
    </ol>
    </p>	
    <hr />
    <!-- version -->
    <!-- <xsl:value-of select="date()"/> any other way to get this? -->
  </xsl:template>

</xsl:stylesheet>
