<?xml version="1.0" encoding="UTF-8"?>
<!--
   Copyright 2004 The Apache Software Foundation
  
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
  
       http://www.apache.org/licenses/LICENSE-2.0
  
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<!-- $Id$ -->
<!DOCTYPE component-specification PUBLIC
  "-//Apache Software Foundation//Tapestry Specification 3.0//EN" 
  "http://jakarta.apache.org/tapestry/dtd/Tapestry_3_0.dtd">
	
<component-specification 
	class="org.apache.tapestry.components.Foreach" 
	allow-informal-parameters="yes">
	
  <description>
  Loops over a collection of source values.  May also emulate an element (like an Any
  component).
  </description>
	
  <parameter name="source" type="java.lang.Object" direction="in" required="yes">
    <description>
    The source of values, a Java collection or array.
    </description>
  </parameter>
  
  <parameter name="value" direction="custom">
    <description>
    If provided, then on each iteration, the value property is updated.
    </description>
  </parameter>
  
  <parameter name="index" type="int" direction="custom">
    <description>
    If provided, then the index of the loop is set on each iteration.
    </description>
  </parameter>
  
  <parameter name="element" type="java.lang.String" direction="in">
    <description>
    If provided, then the Foreach creates an element wrapping its content.
    Informal parameters become attributes of the element.
    </description>
  </parameter>
  
</component-specification>
