<?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">

<!--

    The contents of this file are subject to the license and copyright
    detailed in the LICENSE and NOTICE files at the root of the source
    tree and available online at

    http://www.dspace.org/license/

-->

<!--
  - DSpace JSP tag descriptions
  -->

<taglib>
  <tlibversion>1.0</tlibversion>
  <jspversion>2.0</jspversion>
  <shortname>dspace</shortname>
  <uri>http://www.dspace.org/dspace-tags.tld</uri>
  <info>DSpace JSP tags</info>

  <!--
    - dspace:layout tag - main tag for laying out pages.  If you specify a
    - that you want a "link" or "nolink" location bar, you can specify a
    - "parent" page using "parent" and "parentlink".  Otherwise, the page is
    - treated as a "top-level" page directly under the home page.
    -
    - Specify only ONE of 'title' or 'titlekey'.
    - Specify only ONE of 'parenttitle' or 'parenttitlekey'.
    -
    - title    - title of the page in text.  For backwards compatibility.
    - titlekey - message key from i18n dictionary file for page title
    - navbar  - type of navbar to be used, or "off".  The navbar is loaded from
    -           layout/navbar_XXX.jsp.  If this parameter is omitted, "default"
    -           is used (i.e. layout/navbar-default.jsp).
    - locbar  - specify whether to display location bar. should be one of four
    -           values, or the default of "auto" is used
    -                 off    - don't show a location bar
    -                 link   - show a location bar with links in it
    -                 nolink - show a location bar with no links
    -                 auto   - show community/collection from request (default)
    - parenttitle  - title of "parent" page, that is, the page one up in the
    -                site hierarchy.
    - parenttitlekey  - message key from i18n dictionary of "parent" page,
    -                   that is, the page one up in the site hierarchy.
    - parentlink - path to parent page - must be specified if "parent" specified
    - style   - page layout style.  Default is "default".  Page is loaded
    -            from layout/header-XXX.jsp and layout/footer-XXX.jsp.
    - noache  - if true, set apprpropriate headers to stop browsers caching
    -           the page (and possible back-button-related mishaps)
    -->
  <tag>
    <name>layout</name>
    <tagclass>org.dspace.app.webui.jsptag.LayoutTag</tagclass>
    <info>Lays out an HTML page</info>
    <attribute>
      <name>title</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>titlekey</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>navbar</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>locbar</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>parenttitle</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>parenttitlekey</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>parentlink</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>style</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>nocache</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>feedData</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>sidebar</name>
    <tagclass>org.dspace.app.webui.jsptag.SidebarTag</tagclass>
    <info>
      The contents of the tag are displayed in a column on the right-hand side
      of the page.can be used only must be included within a layout tag.
    </info>
  </tag>

  <tag>
    <name>date</name>
    <tagclass>org.dspace.app.webui.jsptag.DateTag</tagclass>
    <info>
      Displays a DCDate in a readable form
    </info>
    <attribute>
      <name>date</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>notime</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>include</name>
    <tagclass>org.dspace.app.webui.jsptag.IncludeTag</tagclass>
    <info>
      Obsolete, simple tag, similar to jsp:include.  In versions prior
      to DSpace 1.2, this tag would use the locally modified version of a JSP
      if one was installed in jsp/local.  As of 1.2, the build process now
      performs this function, however this tag is left in for backwards
      compatibility.
    </info>
    <attribute>
      <name>page</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>item</name>
    <tagclass>org.dspace.app.webui.jsptag.ItemTag</tagclass>
    <info>
      Tag for displaying an item.  "item" must always be an
      org.dspace.content.Item.  "style" should be "default" or "full", or can
      be omitted to use "default".  "collections" should be the array of
      collections the item is in, worked out beforehand to avoid the chance
      of an error occurring during display.  If collections is null, the
      collections the item is in aren't listed.
    </info>
    <attribute>
      <name>item</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>style</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>collections</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>
 
  <tag>
    <name>item-preview</name>
    <tagclass>org.dspace.app.webui.jsptag.ItemPreviewTag</tagclass>
    <info>
      Tag for displaying an item preview image.  "item" must always be an
      org.dspace.content.Item
    </info>
    <attribute>
      <name>item</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>itemlist</name>
    <tagclass>org.dspace.app.webui.jsptag.ItemListTag</tagclass>
    <info>
      Tag for displaying a list of items.  Specify highlightrow (starting
      from zero) if a row should be highlit.  Specify an emphcolumn of
      "date" or "title" to emphasise the contents of a column.
    </info>
    <attribute>
      <name>items</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>highlightrow</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>emphcolumn</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
      <attribute>
        <name>sortOption</name>
        <required>false</required>
        <rtexprvalue>true</rtexprvalue>
      </attribute>
      <attribute>
        <name>authorLimit</name>
        <required>false</required>
        <rtexprvalue>true</rtexprvalue>
      </attribute>
      <attribute>
          <name>linkToEdit</name>
          <required>false</required>
          <rtexprvalue>true</rtexprvalue>
      </attribute>
      <attribute>
          <name>disableCrossLinks</name>
          <required>false</required>
          <rtexprvalue>true</rtexprvalue>
      </attribute>
  </tag>

<tag>
    <name>browselist</name>
    <tagclass>org.dspace.app.webui.jsptag.BrowseListTag</tagclass>
    <info>
      Tag for displaying a list of items.  Specify highlightrow (starting
      from zero) if a row should be highlit.  Specify an emphcolumn of
      "date" or "title" to emphasise the contents of a column.
    </info>
    <attribute>
      <name>items</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>browseInfo</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>highlightrow</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>emphcolumn</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
        <name>linkToEdit</name>
        <required>false</required>
        <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
        <name>disableCrossLinks</name>
        <required>false</required>
        <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>


  <tag>
    <name>communitylist</name>
    <tagclass>org.dspace.app.webui.jsptag.CommunityListTag</tagclass>
    <info>
      Tag for displaying a list of communities.
    </info>
    <attribute>
      <name>communities</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>collectionlist</name>
    <tagclass>org.dspace.app.webui.jsptag.CollectionListTag</tagclass>
    <info>
      Tag for displaying a list of collections.
    </info>
    <attribute>
      <name>collections</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>popup</name>
    <tagclass>org.dspace.app.webui.jsptag.PopupTag</tagclass>
    <info>
      Tag for producing a popup window link.  Takes advantage of Javascript
      to produce a small window that is brought to the front every time
      a popup link is pressed.  If Javascript is not available, a simple
      HTML link is used as a fallback.  The contents of the tag are used as
      the text of the link.

      Additionally, this will link to the "local" version of the URL, if a
      locally modified version exists.

      FIXME: Currently supports a single popup window at a hardcoded size;
      extra attributes could be added at a later date (e.g. name, width, height)
    </info>
    <attribute>
      <name>page</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>selecteperson</name>
    <tagclass>org.dspace.app.webui.jsptag.SelectEPersonTag</tagclass>
    <info>
      Tag for producing an e-person select widget in a form.  Somewhat
      analogous to the HTML SELECT element.  An input
      field is produced with a button which pops up a window from which
      e-people can be selected.  Selected e-epeople are added to the field
      in the form.  If the selector is for multiple e-people, a 'remove
      selected from list' button is also added.

      On any form that has a selecteperson tag (only one allowed per page),
      you need to include the following Javascript code on all of the submit
      buttons, to ensure that the e-people IDs are posted and that the popup
      window is close:

      onclick="javascript:finishEPerson();"
    </info>
    <attribute>
      <name>multiple</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>selected</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>selectgroup</name>
    <tagclass>org.dspace.app.webui.jsptag.SelectGroupTag</tagclass>
    <info>
      Tag for producing a Group select widget in a form.  Somewhat
      analogous to the HTML SELECT element.  An input
      field is produced with a button which pops up a window from which
      groups can be selected.  Selected groups are added to the field
      in the form.  If the selector is for multiple groups, a 'remove
      selected from list' button is also added.

      On any form that has a selectgroup tag (only one allowed per page),
      you need to include the following Javascript code on all of the submit
      buttons, to ensure that the e-people IDs are posted and that the popup
      window is close:

      onclick="javascript:finishGroup();"
    </info>
    <attribute>
      <name>multiple</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    <attribute>
      <name>selected</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>

  <tag>
    <name>sfxlink</name>
    <tagclass>org.dspace.app.webui.jsptag.SFXLinkTag</tagclass>
    <info>
      Tag to display an SFX query for a particular item.  This just gives the
      query URL, it does not render an actual link.
    </info>
    <attribute>
      <name>item</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
  </tag>
  
  
    
  
  <tag>
    <name>controlledvocabulary</name>
    <tagclass>org.dspace.app.webui.jsptag.ControlledVocabularyTag</tagclass>
    <bodycontent>empty</bodycontent>
    <info>
    	Lays out a html tree with a set of controlled vocabularies.
    	This tag receives 3 possible parameters:
    		- filter
    			A filter specification to prune branches of the loaded vocabularies
    		- allowMultipleSelection
    			Specifies if we want to be able the select multiple terms
    			from the taxonomy. This will diplay checkboxes close to the 
    			vocabulary terms.
    		- vocabulary
    			The name of the vocabulary to be displayed. If no vocabulary
    			is provided, all existing taxonomies will be rendered and 
    			displayed.	
    </info>

   <attribute>
      <name>filter</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    

   <attribute>
      <name>allowMultipleSelection</name>
      <required>no</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    

   <attribute>
      <name>vocabulary</name>
      <required>no</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    	  
  </tag>  

  <tag>
    <name>access-setting</name>
    <tagclass>org.dspace.app.webui.jsptag.AccessSettingTag</tagclass>
    <bodycontent>empty</bodycontent>
    <info>
        Tag for display access setting elements. The "subInfo" is the SubmissionInfo
        to get an array of group that can be set as a target of the resource policy. 
        The "dso" is the DSpaceObject that the access settings target to. The "rp" is
        the resource policy. If the target is a specific resource policy, you must set
        "rp", othewise you must set "dso". The resource policy setting fields are are
        not display if "embargo" is true. The embargo date and reason are set as hidden
        fields if "hidden" is true. The "confirm and add policy" button is dislay
        if "addpolicy" is true;
    </info>

   <attribute>
      <name>subInfo</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    

   <attribute>
      <name>dso</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    

   <attribute>
      <name>rp</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    


   <attribute>
      <name>embargo</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    	  

   <attribute>
      <name>hidden</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    	  

   <attribute>
      <name>addpolicy</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    	  
  </tag>  

  <tag>
    <name>policieslist</name>
    <tagclass>org.dspace.app.webui.jsptag.PoliciesListTag</tagclass>
    <bodycontent>empty</bodycontent>
    <info>
        Tag for display policies list. The "policies" is an list of policies. 
    </info>

   <attribute>
      <name>policies</name>
      <required>true</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    

   <attribute>
      <name>showButton</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    
  </tag>  
  
   <tag>
      <name>tagcloud</name>
      <tagclass>org.dspace.app.webui.tagcloud.TagCloudTag</tagclass>
      <bodycontent>empty</bodycontent>
      <info>
        Tag for display tagcloud. 
      </info>
      <attribute>
         <name>parameters</name>
	  	<required>false</required>
	  	<rtexprvalue>true</rtexprvalue>
      </attribute>
      <attribute>
	 	<name>index</name>
	 	<required>true</required>
	 	<rtexprvalue>true</rtexprvalue>
      </attribute>
      <attribute>
	 	<name>scope</name>
	 	<required>true</required>
	 	<rtexprvalue>true</rtexprvalue>
      </attribute>
      <attribute>
	 	<name>data</name>
	 	<required>true</required>
	 	<rtexprvalue>true</rtexprvalue>
      </attribute>
      <attribute>
	 	<name>type</name>
	 	<required>false</required>
	 	<rtexprvalue>true</rtexprvalue>
      </attribute>
  </tag>

  <tag>
    <name>selectcollection</name>
    <tagclass>org.dspace.app.webui.jsptag.SelectCollectionTag</tagclass>
    <bodycontent>empty</bodycontent>
    <info>
        Tag for making collection select element with community heading
    </info>

   <attribute>
      <name>klass</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>    

   <attribute>
      <name>id</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>

   <attribute>
      <name>name</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>

   <attribute>
      <name>collection</name>
      <required>false</required>
      <rtexprvalue>true</rtexprvalue>
    </attribute>
    
  </tag>  

</taglib>
