<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
                        "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<!--
    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.  
-->

<!--
     JSPWiki tag libraries are defined here.

     Note that we support only the 1.1 spec for now,
     simply because there is no reason to break compatibility.
 -->
<taglib>
  <tlibversion>1.0</tlibversion>
  <jspversion>1.1</jspversion>
  <shortname>jspwiki</shortname>

  <tag>
    <name>AdminBeanIterator</name>
    <tagclass>org.apache.wiki.tags.AdminBeanIteratorTag</tagclass>
    <teiclass>org.apache.wiki.tags.AdminBeanIteratorInfo</teiclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>id</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>type</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>AttachmentsIterator</name>
    <tagclass>org.apache.wiki.tags.AttachmentsIteratorTag</tagclass>
    <teiclass>org.apache.wiki.tags.AttachmentsIteratorInfo</teiclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>id</name>
    </attribute>
  </tag>

  <tag>
    <name>Author</name>
    <tagclass>org.apache.wiki.tags.AuthorTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>BaseURL</name>
    <tagclass>org.apache.wiki.tags.BaseURLTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>Breadcrumbs</name>
    <tagclass>org.apache.wiki.tags.BreadcrumbsTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>maxpages</name>
       <required>false</required><!-- the default value is 10 -->
    </attribute>
    <attribute>
       <name>separator</name>
       <required>false</required><!-- the default value is " | " -->
    </attribute>
  </tag>

  <tag>
    <name>Calendar</name>
    <tagclass>org.apache.wiki.tags.CalendarTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>pageformat</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>urlformat</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>monthurlformat</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>CheckLock</name>
    <tagclass>org.apache.wiki.tags.CheckLockTag</tagclass>
    <teiclass>org.apache.wiki.tags.CheckLockInfo</teiclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>mode</name>
    </attribute>
    <attribute>
       <name>id</name>
    </attribute>
  </tag>

  <tag>
    <name>CheckRequestContext</name>
    <tagclass>org.apache.wiki.tags.CheckRequestContextTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>context</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>CheckVersion</name>
    <tagclass>org.apache.wiki.tags.CheckVersionTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>mode</name>
    </attribute>
  </tag>

  <tag>
    <name>CommentLink</name>
    <tagclass>org.apache.wiki.tags.CommentLinkTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>format</name>
    </attribute>
  </tag>

  <tag>
    <name>Content</name>
    <tagclass>org.apache.wiki.tags.ContentTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>view</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>diff</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>info</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>preview</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>conflict</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>find</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>prefs</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>error</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>edit</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>comment</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>ContentEncoding</name>
    <tagclass>org.apache.wiki.tags.ContentEncodingTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>DiffLink</name>
    <tagclass>org.apache.wiki.tags.DiffLinkTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>format</name>
    </attribute>
    <attribute>
       <name>version</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>newVersion</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>EditLink</name>
    <tagclass>org.apache.wiki.tags.EditLinkTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>format</name>
    </attribute>
    <attribute>
       <name>version</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>title</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>accesskey</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>Editor</name>
    <tagclass>org.apache.wiki.tags.EditorTag</tagclass>
    <bodycontent>JSP</bodycontent>
  </tag>

  <tag>
    <name>EditorIterator</name>
    <tagclass>org.apache.wiki.tags.EditorIteratorTag</tagclass>
    <teiclass>org.apache.wiki.tags.EditorIteratorInfo</teiclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>id</name>
    </attribute>
  </tag>

  <tag>
    <name>FeedDiscovery</name>
    <tagclass>org.apache.wiki.tags.FeedDiscoveryTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>HasAttachments</name>
    <tagclass>org.apache.wiki.tags.HasAttachmentsTag</tagclass>
    <bodycontent>JSP</bodycontent>
  </tag>

  <tag>
    <name>HistoryIterator</name>
    <tagclass>org.apache.wiki.tags.HistoryIteratorTag</tagclass>
    <teiclass>org.apache.wiki.tags.HistoryIteratorInfo</teiclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>id</name>
    </attribute>
  </tag>

  <tag>
    <name>IfNoSearchResults</name>
    <tagclass>org.apache.wiki.tags.IfNoSearchResultsTag</tagclass>
    <bodycontent>JSP</bodycontent>
  </tag>

  <tag>
    <name>Include</name>
    <tagclass>org.apache.wiki.tags.IncludeTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>IncludeResources</name>
    <tagclass>org.apache.wiki.tags.IncludeResourcesTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>type</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
   </tag>

  <tag>
    <name>InsertDiff</name>
    <tagclass>org.apache.wiki.tags.InsertDiffTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>InsertPage</name>
    <tagclass>org.apache.wiki.tags.InsertPageTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>mode</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>Link</name>
    <tagclass>org.apache.wiki.tags.LinkTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>format</name>
    </attribute>
    <attribute>
       <name>version</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>class</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>style</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>title</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>target</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>compareToVersion</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>rel</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
        <attribute>
       <name>jsp</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
        <attribute>
       <name>ref</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
        <attribute>
       <name>context</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>absolute</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>templatefile</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>accessKey</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>LinkTo</name>
    <tagclass>org.apache.wiki.tags.LinkToTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>format</name>
    </attribute>
    <attribute>
       <name>version</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>template</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>title</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>accesskey</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>LinkToParent</name>
    <tagclass>org.apache.wiki.tags.LinkToParentTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>format</name>
    </attribute>
    <attribute>
       <name>version</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>Messages</name>
    <tagclass>org.apache.wiki.tags.MessagesTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>action</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>div</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>prefix</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>topic</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>NextVersion</name>
    <tagclass>org.apache.wiki.tags.NextVersionTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>NoSuchPage</name>
    <tagclass>org.apache.wiki.tags.NoSuchPageTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>PageExists</name>
    <tagclass>org.apache.wiki.tags.PageExistsTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>PageInfoLink</name>
    <tagclass>org.apache.wiki.tags.PageInfoLinkTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>format</name>
    </attribute>
    <attribute>
       <name>title</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>accesskey</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>


  <tag>
    <name>PageDate</name>
    <tagclass>org.apache.wiki.tags.PageDateTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
        <name>format</name>
        <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>PageName</name>
    <tagclass>org.apache.wiki.tags.PageNameTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>PageSize</name>
    <tagclass>org.apache.wiki.tags.PageSizeTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>PageType</name>
    <tagclass>org.apache.wiki.tags.PageTypeTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>type</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>PageVersion</name>
    <tagclass>org.apache.wiki.tags.PageVersionTag</tagclass>
    <bodycontent>JSP</bodycontent>
  </tag>

  <tag>
    <name>Param</name>
    <tagclass>org.apache.wiki.tags.ParamTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>name</name>
       <required>true</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>value</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>ParentPageName</name>
    <tagclass>org.apache.wiki.tags.ParentPageNameTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>Permission</name>
    <tagclass>org.apache.wiki.tags.PermissionTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>permission</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>PreviousVersion</name>
    <tagclass>org.apache.wiki.tags.PreviousVersionTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>Plugin</name>
    <tagclass>org.apache.wiki.tags.PluginTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>plugin</name>
       <required>true</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>args</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>RequestResource</name>
    <tagclass>org.apache.wiki.tags.RequestResourceTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>type</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>resource</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>RSSLink</name>
    <tagclass>org.apache.wiki.tags.RSSLinkTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>RSSImageLink</name>
    <tagclass>org.apache.wiki.tags.RSSImageLinkTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>title</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>mode</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>SearchResultIterator</name>
    <tagclass>org.apache.wiki.tags.SearchResultIteratorTag</tagclass>
    <teiclass>org.apache.wiki.tags.SearchResultIteratorInfo</teiclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>id</name>
    </attribute>
    <attribute>
       <name>maxItems</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>list</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>start</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>SearchResults</name>
    <tagclass>org.apache.wiki.tags.SearchResultsTag</tagclass>
    <bodycontent>JSP</bodycontent>
  </tag>

  <tag>
    <name>SearchResultsSize</name>
    <tagclass>org.apache.wiki.tags.SearchResultsSizeTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>SetPagination</name>
    <tagclass>org.apache.wiki.tags.SetPaginationTag</tagclass>
    <bodycontent>empty</bodycontent>
    <info>Returns pagination string and cache it in the pageContext</info>
    <attribute>
       <name>start</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>total</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>pagesize</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>maxlinks</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>fmtkey</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>href</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>onclick</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>TabbedSection</name>
    <tagclass>org.apache.wiki.tags.TabbedSectionTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <info>A BodyTag for tabbed sections</info>
    <attribute>
      <name>defaultTab</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>Tab</name>
    <tagclass>org.apache.wiki.tags.TabTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <info>A Tag for a tab, which is a child of tabbedSection</info>
    <attribute>
      <name>id</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>title</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>accesskey</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>url</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>TemplateDir</name>
    <tagclass>org.apache.wiki.tags.TemplateDirTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>Translate</name>
    <tagclass>org.apache.wiki.tags.TranslateTag</tagclass>
    <bodycontent>JSP</bodycontent>
  </tag>

  <tag>
    <name>UploadLink</name>
    <tagclass>org.apache.wiki.tags.UploadLinkTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>page</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>format</name>
    </attribute>
  </tag>

  <tag>
    <name>UserName</name>
    <tagclass>org.apache.wiki.tags.UserNameTag</tagclass>
    <bodycontent>empty</bodycontent>
  </tag>

  <tag>
    <name>UserCheck</name>
    <tagclass>org.apache.wiki.tags.UserCheckTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>status</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>exists</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>UserProfile</name>
    <tagclass>org.apache.wiki.tags.UserProfileTag</tagclass>
    <bodycontent>JSP</bodycontent>
    <attribute>
       <name>property</name>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>Variable</name>
    <tagclass>org.apache.wiki.tags.VariableTag</tagclass>
    <bodycontent>empty</bodycontent>
    <attribute>
       <name>var</name>
       <required>true</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
       <name>default</name>
       <required>false</required>
       <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
      <name>Cookie</name>
      <tagclass>org.apache.wiki.tags.CookieTag</tagclass>
      <bodycontent>empty</bodycontent>
      <attribute>
          <name>name</name>
          <required>true</required>
          <rtexprvalue>false</rtexprvalue>
      </attribute>
      <attribute>
          <name>item</name>
          <required>false</required>
          <rtexprvalue>true</rtexprvalue>
      </attribute>
            <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>true</rtexprvalue>
      </attribute>
            <attribute>
          <name>var</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
      </attribute>
            <attribute>
          <name>scope</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
      </attribute>
            <attribute>
          <name>clear</name>
          <required>false</required>
          <rtexprvalue>true</rtexprvalue>
      </attribute>
  </tag>
</taglib>
