<?xml version='1.0'?><!-- -*- mode: indented-text;-*- -->
<xsl:transform
    xmlns:xsl  ="http://www.w3.org/1999/XSL/Transform" version="1.0"
    xmlns:r    ="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    >

<xsl:variable
  name="RDF_ns"
  select='"http://www.w3.org/1999/02/22-rdf-syntax-ns#"'/>

<div xmlns="http://www.w3.org/1999/xhtml">

<p>get rid of RDF Collection syntactic sugar</p>

<address>Dan Connolly <br class=""/>
$Id: colSugar.xsl,v 1.1 2001/05/18 21:06:57 connolly Exp $</address>
</div>

<xsl:template match="r:Seq|r:Bag|r:Alt">
  <r:Description>
    <xsl:if test='@r:ID'>
      <xsl:attribute name="r:about">
        <xsl:value-of select='concat("#", @r:ID)'/>
      </xsl:attribute>
    </xsl:if>

    <r:type r:resource='{concat($RDF_ns, local-name())}'/>

    <xsl:call-template name="items">
      <xsl:with-param name="i" select='1'/>
    </xsl:call-template>
  </r:Description>
</xsl:template>

<xsl:template name="items">
  <xsl:param name="i"/>

  <xsl:variable name="item" select='r:li[$i]'/>

  <xsl:if test='$item'>
    <xsl:element name='{concat("r:_", string($i))}' namespace='{$RDF_ns}'>
      <xsl:choose>
        <xsl:when test='$item/@r:resource'>
          <xsl:attribute name="r:resource" namespace="{$RDF_ns}">
            <xsl:value-of select='$item/@r:resource'/>
          </xsl:attribute>
        </xsl:when>

        <xsl:otherwise>
          <xsl:message>@@not implemented</xsl:message>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:element>

    <xsl:call-template name="items">
      <xsl:with-param name="i" select='$i + 1'/>
    </xsl:call-template>

  </xsl:if>
</xsl:template>


<!-- identity transformation, taken from 
     http://www.w3.org/TR/xslt#copying
  -->
<xsl:template match="*">
  <xsl:element name="{name()}" namespace="{namespace-uri()}">
    <xsl:for-each select="@*">
      <xsl:attribute name="{name()}" namespace="{namespace-uri()}">
        <xsl:value-of select="."/>
      </xsl:attribute>
    </xsl:for-each>
    <xsl:apply-templates/>
  </xsl:element>
</xsl:template>

<xsl:template match="text()">
  <xsl:value-of select="."/>
</xsl:template>

<xsl:template match="comment()">
  <xsl:copy/>
</xsl:template>

</xsl:transform>
