<?xml version="1.0"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You 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.
-->

<document>

 <properties>
  <title>Jelly Tag Reference (taglib:tag)</title>
 </properties>

  <body>

    <section name="Home Page">
      <p>See 
        <a href="http://commons.apache.org/jelly/libs/xxx/">http://commons.apache.org/jelly/libs/xxx/</a>
      </p>
    </section>

    <section name="Description">
      <p>
        This tag ...
      </p>
    </section>
    
    <section name="Attributes">
      <table>
        <tr>
          <th>Name</th>
          <th>Description</th>
          <th>Required</th>
        </tr>
        <tr>
          <td>...</td>
          <td>...</td>
          <td>...</td>
        </tr>
      </table>
    </section>
    
    <section name="Nested Elements">
      <table>
        <tr>
          <th>Name</th>
          <th>Description</th>
          <th>Required</th>
        </tr>
        <tr>
          <td>...</td>
          <td>...</td>
          <td>...</td>
        </tr>
      </table>
    </section>

    <section name="Examples">
      <source><![CDATA[
...
      ]]></source>
    </section>
    
  </body>
</document>