Index: docs/dev/metacat/Makefile
===================================================================
--- docs/dev/metacat/Makefile	(revision 6870)
+++ docs/dev/metacat/Makefile	(nonexistent)
@@ -1,99 +0,0 @@
-# Makefile for Sphinx documentation
-#
-
-# You can set these variables from the command line.
-SPHINXOPTS    =
-SPHINXBUILD   = sphinx-build
-PAPER         =
-BUILDDIR      = build
-GRAPHVIZ      = /opt/local/bin/dot
-
-# Internal variables.
-PAPEROPT_a4     = -D latex_paper_size=a4
-PAPEROPT_letter = -D latex_paper_size=letter
-ALLSPHINXOPTS   = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
-
-.PHONY: help clean html dirhtml pickle json htmlhelp qthelp latex changes linkcheck doctest pdf
-
-help:
-	@echo "Please use \`make <target>' where <target> is one of"
-	@echo "  html      to make standalone HTML files"
-	@echo "  dirhtml   to make HTML files named index.html in directories"
-	@echo "  pickle    to make pickle files"
-	@echo "  json      to make JSON files"
-	@echo "  htmlhelp  to make HTML files and a HTML help project"
-	@echo "  qthelp    to make HTML files and a qthelp project"
-	@echo "  latex     to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
-	@echo "  changes   to make an overview of all changed/added/deprecated items"
-	@echo "  linkcheck to check all external links for integrity"
-	@echo "  doctest   to run all doctests embedded in the documentation (if enabled)"
-	@echo "  pdf       to make PDF files"
-
-clean:
-	-rm -rf $(BUILDDIR)/*
-
-plantuml:
-	GRAPHVIZ_DOT=$(GRAPHVIZ) plantuml source 
-
-html: 
-	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
-	@echo
-	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
-
-dirhtml:
-	$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
-	@echo
-	@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
-
-pickle:
-	$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
-	@echo
-	@echo "Build finished; now you can process the pickle files."
-
-json:
-	$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
-	@echo
-	@echo "Build finished; now you can process the JSON files."
-
-pdf:
-	$(SPHINXBUILD) -b pdf $(ALLSPHINXOPTS) $(BUILDDIR)/pdf
-	@echo
-	@echo "Build finished. The PDF files are in $(BUILDDIR)/pdf."
-
-htmlhelp:
-	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
-	@echo
-	@echo "Build finished; now you can run HTML Help Workshop with the" \
-	      ".hhp project file in $(BUILDDIR)/htmlhelp."
-
-qthelp:
-	$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
-	@echo
-	@echo "Build finished; now you can run "qcollectiongenerator" with the" \
-	      ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
-	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/DataONEArchitecture.qhcp"
-	@echo "To view the help file:"
-	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/DataONEArchitecture.qhc"
-
-latex:
-	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
-	@echo
-	@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
-	@echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
-	      "run these through (pdf)latex."
-
-changes:
-	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
-	@echo
-	@echo "The overview file is in $(BUILDDIR)/changes."
-
-linkcheck:
-	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
-	@echo
-	@echo "Link check complete; look for any errors in the above output " \
-	      "or in $(BUILDDIR)/linkcheck/output.txt."
-
-doctest:
-	$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
-	@echo "Testing of doctests in the sources finished, look at the " \
-	      "results in $(BUILDDIR)/doctest/output.txt."
Index: docs/dev/metacat/source/harvester.rst
===================================================================
--- docs/dev/metacat/source/harvester.rst	(revision 6870)
+++ docs/dev/metacat/source/harvester.rst	(nonexistent)
@@ -1,642 +0,0 @@
-Harvester and Harvest List Editor
-=================================
-
-Metacat's Harvester is an optional feature that can be used to automatically 
-retrieve EML documents from one or more custom data management system (e.g., 
-SRB or PostgreSQL) and to insert (or update) those documents to the home 
-repository. The local sites control when they are harvested, and which documents 
-are harvested. 
-
-For example, the Long Term Ecological Research Network (LTER) uses the Metacat 
-Harvester to create a centralized repository of data stored on twenty-six 
-different sites that store EML metadata, but that use different data management 
-systems. Once the data have been harvested and placed into a centralized 
-repository, they are replicated to the KNB network, exposing the information 
-to an even larger scientific community.
-
-Once the Harvester is properly configured, listed documents are retrieved and 
-uploaded on a regularly scheduled basis. You must configure both the home 
-Metacat and the remote sites (aka the "harvest sites") before using this 
-feature. Local sites must also provide the Metacat server with a list of 
-documents that should be harvested.
-
-Configuring Harvester
----------------------
-Before you can use the Harvester to retrieve documents, you must configure the 
-feature using the settings in the metacat.properties file. Note that you must 
-also configure each site that the Harvester will connect to and retrieve 
-documents from (see section 7.2 for details). 
-
-The Harvester configuration information is managed in the metacat.properties 
-file, which is located at:: 
-
-  <CONTEXT_DIR>/WEB_INF/metacat.properties
-
-The Harvester properties are grouped together and begin after the comment line:: 
-
-  # Harvester properties
-
-To configure Harvester, edit the metacat.properties and set appropriate values 
-for the harvesterAdministrator and smtpServer property. You may also wish to 
-customize the other Harvester paramaters, each discussed in the table below. 
-
-Harvester Properties and their Functions
-----------------------------------------
-
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-| Property                           | Description and Values                                                                          | |
-+====================================+=================================================================================================+=+
-| connectToMetacat                   | Determine whether Harvester should connect to Metacat to upload retrieved documents.            | |
-|                                    | Set to true (the default) under most circumstances. To test whether Harvester can               | |
-|                                    | retrieve documents from a site without actually connecting to Metacat                           | |
-|                                    | to upload the documents, set the value to false.                                                | |
-|                                    |                                                                                                 | |
-|                                    | Values: true/false                                                                              | |
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-| delay                              | The number of hours that Harvester will wait before beginning its first harvest.                | |
-|                                    | For example, if Harvester is run at 1:00 p.m., and the delay is set to 12,                      | |
-|                                    | Harvester will begin its first harvest at 1:00 a.m.                                             | |
-|                                    |                                                                                                 | |
-|                                    | Default: 0                                                                                      | |
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-| harvesterAdministrator             | The email address of the Harvester Administrator. Harvester will send                           | |
-|                                    | email reports to this address after every harvest. Enter multiple email addresses by separating | |
-|                                    | each address with a comma or semicolon (e.g., name1@abc.edu,name2@abc.edu).                     | |
-|                                    |                                                                                                 | |
-|                                    | Values: An email address, or multiple email addresses separated by commas or semi-colons        | |
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-| logPeriod                          | The number of days to retain Harvester log entries. Harvester log entries                       | |
-|                                    | record information such as which documents were harvested, from which sites,                    | |
-|                                    | and whether any errors were encountered during the harvest. Log entries older                   | |
-|                                    | than logPeriod number of days are purged from the database at the end of each harvest.          | |
-|                                    |                                                                                                 | |
-|                                    | Default: 90                                                                                     | |
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-| maxHarvests                        | The maximum number of harvests that Harvester should execute before                             | |
-|                                    | shutting down. If the value of maxHarvests is set to 0 or a                                     | |
-|                                    | negative number, Harvester will execute indefinitely.                                           | |
-|                                    |                                                                                                 | |
-|                                    | Default: 0                                                                                      | |
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-| period                             | The number of hours between harvests. Harvester will run a new harvest                          | |
-|                                    | every specified period of hours (either indefinitely or until the maximum                       | |
-|                                    | number of harvests have run, depending on the value of maxHarvests).                            | |
-|                                    |                                                                                                 | |
-|                                    | Default: 24                                                                                     | |
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-| smtpServer                         | The SMTP server that Harvester uses for sending email messages to the                           | |
-|                                    | Harvester Administrator and Site Contacts.                                                      | |
-|                                    | (e.g., somehost.institution.edu). Note that the default value only works                        | |
-|                                    | if the Harvester host machine is configured as a SMTP server.                                   | |
-|                                    |                                                                                                 | |
-|                                    | Default: localhost                                                                              | |
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-| Harvester Operation Properties     | The Harvester Operation properties are used by Harvester to report information                  | |
-| (GetDocError, GetDocSuccess, etc.) | about performed operations for inclusion in log entries and email messages.                     | |
-|                                    | Under most circumstances the values of these properties should not be modified.                 | |
-+------------------------------------+-------------------------------------------------------------------------------------------------+-+
-
-Configuring a Harvest Site (Instructions for Site Contact)
-----------------------------------------------------------
-
-After Metacat's Harvester has been configured, remote sites can register and 
-send information about which files should be retrieved. Each remote site must 
-have a site contact who is responsible for registering the site and creating a 
-list of EML files to harvest (the "Harvest List"), as well as for reviewing 
-harvest reports. The site contact can unregister the site from the Harvester 
-at any time.
-
-To use Harvester:
-
-1. Register with Harvester
-2. Compose a Harvest List (you will likely wish to use the Harvest List Editor)
-3. Prepare your EML Documents for Harvest
-4. Review the Harvester Reports
-
-Register with Harvester
-~~~~~~~~~~~~~~~~~~~~~~~
-
-To register a remote site with Harvester, the Site Contact should log in to 
-Metacat's Harvester Registration page and enter information about the site and 
-how it should be harvested. 
-
-1. Using a Web browser, log in to Metacat's Harvester Registration page. 
-   The Harvester Registration page is inside the skins directory. For example, 
-   if the Metacat server that you wish to register with resides at the following URL: 
-
-   ::
-   
-     http://somehost.somelocation.edu:8080/knb/index.jsp
-
-   then the Harvester Registration page would be accessed at: 
-
-   ::
-   
-     http://somehost.somelocation.edu:8080/knb/style/skins/knb/harvesterRegistrationLogin.jsp
-
-.. figure:: images/screenshots/image065.jpg
-   :align: center
-   
-   Metacat's Harvester Registration page.
-
-2. Enter your Metacat account information and click Submit to log in to your 
-   Metacat from the Harvester Registration page.
-
-   Note: In some cases, you may need to log in to an anonymous "site" account 
-   rather than your personal account so that the registered data will not appear 
-   to have been registered by a single user. For example, an information 
-   manager (jones) who is registering data created by a team of scientists 
-   (jones, smith, and barney) from the Georgia Coastal Ecosystems site  might 
-   log in to a dedicated account (named with the site's acronym, "GCE") to 
-   indicate that the registered data is from the entire site rather than "jones". 
-
-3. Enter information about your site and how often you want to schedule harvests 
-   and then click the Register button (Figure 7.2). The Harvest List URL should 
-   point to the location of the Harvest List, which is an XML file that lists 
-   the documents to harvest. If you do not yet have a Harvest List, please see 
-   the next section for more information about creating one.
-   
-.. figure:: images/screenshots/image067.jpg
-   :align: center
-   
-   Enter information about your site and how often you want to schedule harvests.
-
-The example settings in the previous figure instruct Harvester to harvest 
-documents from the site once every two weeks. The Harvester will access the 
-site's Harvest List at URL "http://somehost.institution.edu/~myname/harvestList.xml", 
-and will send email reports to the Site Contact at email address 
-"myname@institution.edu". Note that you can enter multiple email addresses by 
-separating each address with a comma or a semi-colon. For example, 
-"myname@institution.edu,anothername@institution.edu"
-
-Compose a Harvest List (The Harvest List Editor)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The Harvest List is an XML file that contains a list of documents to be harvested. 
-The list is created by the site contact and stored on the site contact's site 
-at the location specified during the Harvester registration process (see 
-previous section for details). The list can be generated by hand, or you can 
-use Metacat's Harvest List Editor to automatically generate and structure the 
-list to conform to the required XML schema (displayed in figure at the end of 
-this section). In this section we will look at what information is required when 
-building a Harvest List, and how to configure and use the Harvest List Editor. 
-Note that you must have a source distribution of Metacat in order to use the 
-Harvest List Editor.
-
-The Harvest List contains information that helps Metacat identify and retrieve 
-each specified EML file. Each document in the list must be described with a 
-docid, documentType, and documentURL (see table).
-
-Table: Information that must be included in the Harvest List about each EML file
-+--------------+-------------------------------------------------------------------------------------------------+
-| Item         | Description                                                                                     |
-+==============+=================================================================================================+
-| docid        | The docid uniquely identifies each EML document. Each docid consists of three elements:         |
-|              |                                                                                                 |
-|              | ``scope`` The document group to which the document belongs                                      |
-|              | ``identifier``  A number that uniquely identifies the document within the scope.                |
-|              | ``revision`` Anumber that indicates the current revision.                                       |
-|              |                                                                                                 |
-|              | For example, a valid docid could be: demoDocument.1.5, where demoDocument represents            |
-|              | the scope, 1 the identifier, and 5 the revision number.                                         |
-+--------------+-------------------------------------------------------------------------------------------------+
-| documentType | The documentType identifies the type of document as EML                                         |
-|              | e.g., "eml://ecoinformatics.org/eml-2.0.0".                                                     |
-+--------------+-------------------------------------------------------------------------------------------------+
-| documentURL  | The documentURL specifies a place where Harvester can locate and retrieve the                   |
-|              | document via HTTP. The Metacat Harvester must be given read access to the contents at this URL. |
-|              | e.g. "http://www.lternet.edu/~dcosta/document1.xml".                                            |
-+--------------+-------------------------------------------------------------------------------------------------+
-
-The example Harvest List below contains two <document> elements that specify the 
-information that Harvester needs to retrieve a pair of EML documents and 
-upload them to Metacat.
-
-::
-
-
-  <!-- Example Harvest List -->
-  <?xml version="1.0" encoding="UTF-8" ?>
-  <hrv:harvestList xmlns:hrv="eml://ecoinformatics.org/harvestList" >
-    <document>
-        <docid>
-            <scope>demoDocument</scope>
-            <identifier>1</identifier>
-            <revision>5</revision>
-        </docid>
-        <documentType>eml://ecoinformatics.org/eml-2.0.0</documentType>
-        <documentURL>http://www.lternet.edu/~dcosta/document1.xml</documentURL>
-    </document>
-    <document>
-        <docid>
-            <scope>demoDocument</scope>
-            <identifier>2</identifier>
-            <revision>1</revision>
-        </docid>
-        <documentType>eml://ecoinformatics.org/eml-2.0.0</documentType>
-        <documentURL>http://www.lternet.edu/~dcosta/document2.xml</documentURL>
-    </document>
-  </hrv:harvestList>
-
-Rather than formatting the list by hand, you may wish to use Metacat's Harvest 
-List Editor to compose and edit it. The Harvest List Editor displays a Harvest 
-List as a table of rows and fields. Each table row corresponds to 
-a single <document> element in the corresponding Harvest List file (i.e., one 
-EML document). The row numbers are used only for visual reference and are 
-not editable.
-
-To add a new document to the Harvest List, enter values for all five editable 
-fields (all fields except the "Row #" field). Partially filled-in rows will 
-cause errors that will result in an invalid Harvest List. 
-
-The buttons at the bottom of the Editor can be used to Cut, Copy, and Paste 
-rows from one location to another. Select a row and click the desired button, 
-or paste the default values (which are specified in the Editor's configuration 
-file, discussed later in this section) into the currently selected row by 
-clicking the Paste Defaults button. Note: Only one row can be selected at any 
-given time: all cut, copy, and paste operations work on only a single row 
-rather than on a range of rows. 
-
-To run the Harvest List Editor, from the terminal on which the Metacat 
-source code is installed: 
-      
-1. Open a system command window or terminal window. 
-2. Set the METACAT_HOME environment variable to the value of the Metacat 
-   installation directory. Some examples follow: 
-
-   On Windows: 
-
-   ::
-   
-     set METACAT_HOME=C:\somePath\knb
-
-   On Linux/Unix (bash shell): 
-   
-   ::
-   
-     export METACAT_HOME=/home/somePath/metacat
-
-3. cd to the following directory: 
-
-   On Windows: 
-   
-   ::
-   
-     cd %METACAT_HOME%\lib\harvester
-
-   On Linux/Unix: 
-
-   ::
-   
-     cd $METACAT_HOME/lib/harvester
-
-4. Run the appropriate Harvester shell script, as determined by the operating system: 
-
-   On Windows: 
-   
-   ::
-   
-     runHarvestListEditor.bat
-
-   On Linux/Unix: 
-
-   ::
-   
-     sh runHarvestListEditor.sh
-
-   The Harvest List Editor will open. 
-
-If you would like to customize the Harvest List Editor (e.g., specify a 
-default list to open automatically whenever the editor is opened and/or 
-default values), create a file called .harvestListEditor (note the leading 
-dot character). Use a plain text editor to create the file and place the file 
-in the Site Contact's home directory. To determine the home directory, open a 
-system command window or terminal window and type the following: 
-
-On Windows: 
-
-::
-
-  echo %USERPROFILE%
-
-On Linux/Unix: 
-
-::
-
-  echo $HOME
-
-The configuration file contains a number of optional properties that can make 
-using the Editor more convenient. A sample configure file is displayed below, and 
-more information about each configuration property is contained in the table.
-
-A sample .harvestListEditor configuration file
-
-::
-
-  defaultHarvestList=C:/temp/harvestList.xml
-  defaultScope=demo_document
-  defaultIdentifier=1
-  defaultRevision=1
-  defaultDocumentURL=http://www.lternet.edu/~dcosta/
-  defaultDocumentType=eml://ecoinformatics.org/eml-2.0.0
-
-Harvest List Editor Configuration Properties
-
-+---------------------+----------------------------------------------------------------------------------------------+
-| Property            | Description                                                                                  |
-+=====================+==============================================================================================+
-| defaultHarvestList  | The location of a Harvest List file that the Editor will                                     |
-|                     | automatically open for editing on startup. Set this property                                 |
-|                     | to the path to the Harvest List file that you expect to edit most frequently.                |
-|                     |                                                                                              |
-|                     | Examples:                                                                                    |
-|                     | ``/home/jdoe/public_html/harvestList.xml``                                                   |
-|                     | ``C:/temp/harvestList.xml``                                                                  |
-+---------------------+----------------------------------------------------------------------------------------------+
-| defaultScope        | The value pasted into the Editor's Scope field when the Paste                                |
-|                     | Defaults button is clicked. The Scope field should contain                                   |
-|                     | a symbolic identifier that indicates the family of documents                                 |
-|                     | to which the EML document belongs.                                                           |
-|                     |                                                                                              |
-|                     | Example:   xyz_dataset                                                                       |
-|                     | Default:    dataset                                                                          |
-+---------------------+----------------------------------------------------------------------------------------------+
-| defaultIdentifer    | The value pasted into the Editor's Identifier field when the                                 |
-|                     | Paste Defaults button is clicked. The Scope field should contain                             |
-|                     | a numeric value indicating the identifier for this particular EML document within the Scope. |
-+---------------------+----------------------------------------------------------------------------------------------+
-| defaultRevision     | The value pasted into the Editor's Revision field when the Paste Defaults button             |
-|                     | is clicked. The Scope field should contain a numeric value indicating the                    |
-|                     | revision number of this EML document within the Scope and Identifier.                        |
-|                     |                                                                                              |
-|                     | Example:   2                                                                                 |
-|                     | Default:    1                                                                                |
-+---------------------+----------------------------------------------------------------------------------------------+
-| defaultDocumentType | The document type specification pasted into the                                              |
-|                     | Editor's DocumentType field when the Paste Defaults button is clicked.                       |
-|                     |                                                                                              |
-|                     | Default: ``eml://ecoinformatics.org/eml-2.0.0``                                              |
-+---------------------+----------------------------------------------------------------------------------------------+
-| defaultDocumentURL  | The URL or partial URL pasted into the Editor's URL field                                    |
-|                     | when the Paste Defaults button is clicked. Typically, this                                   |
-|                     | value is set to the portion of the URL shared by all harvested EML documents.                |
-|                     |                                                                                              |
-|                     | Example:                                                                                     |
-|                     | ``http://somehost.institution.edu/somepath/``                                                |
-|                     | Default: ``http://``                                                                         |
-+---------------------+----------------------------------------------------------------------------------------------+
-
-
-XML Schema for Harvest Lists
-
-::
-
-  <?xml version="1.0" encoding="UTF-8"?>
-  <!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by Matt Jones (NCEAS) -->
-  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:hrv="eml://ecoinformatics.org/harvestList" xmlns="eml://ecoinformatics.org/harvestList" targetNamespace="eml://ecoinformatics.org/harvestList" elementFormDefault="unqualified" attributeFormDefault="unqualified">
-  <xs:annotation>
-    <xs:documentation>This module defines the required information for the harvester to collect documents from the local site. The local system containing this document must give the Metacat Harvester read access to this document.</xs:documentation>
-  </xs:annotation>
-  <xs:annotation>
-    <xs:appinfo>
-      <tooltip/>
-      <summary/>
-      <description/>
-    </xs:appinfo>
-  </xs:annotation>
-  <xs:element name="harvestList">
-    <xs:annotation>
-      <xs:documentation>This represents the local document information that is used to inform the Harvester of the docid, document type, and location of the document to be harvested.</xs:documentation>
-    </xs:annotation>
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="document" maxOccurs="unbounded">
-          <xs:complexType>
-            <xs:sequence>
-              <xs:element name="docid">
-                <xs:annotation>
-                  <xs:documentation>The complete document identifier to be used by metacat.  The docid is a compound element that gives a scope for the identifier, an integer local identifer that is unique within that scope, and a revision.  Each revision is assumed to specify a unique, non-changing document, so once a particular revision is harvested, there is no need for it to be harvested again.  To trigger a harvest of a document that has been updated, increment the revision number for that identifier.</xs:documentation>
-                </xs:annotation>
-                <xs:complexType>
-                  <xs:sequence>
-                    <xs:element name="scope" type="xs:string">
-                      <xs:annotation>
-                        <xs:documentation>The system prefix of a metacat docid that defines the scope within which the identifier is unique.</xs:documentation>
-                      </xs:annotation>
-                    </xs:element>
-                    <xs:element name="identifier" type="xs:long">
-                      <xs:annotation>
-                        <xs:documentation>The local (site specific) portion of the identifier (docid) that is unique within the context of the scope.</xs:documentation>
-                      </xs:annotation>
-                    </xs:element>
-                    <xs:element name="revision" type="xs:long">
-                      <xs:annotation>
-                        <xs:documentation>The revision identifier for this document, indicating a unique document version.</xs:documentation>
-                      </xs:annotation>
-                    </xs:element>
-                  </xs:sequence>
-                </xs:complexType>
-              </xs:element>
-              <xs:element name="documentType" type="xs:string">
-                <xs:annotation>
-                  <xs:documentation>The type of document to be harvested, indicated by a namespace string, formal public identifier, mime type, or other type indicator.   </xs:documentation>
-                </xs:annotation>
-              </xs:element>
-              <xs:element name="documentURL" type="xs:anyURI">
-                <xs:annotation>
-                  <xs:documentation>The documentURL field contains the URL of the document to be harvested. The Metacat Harvester must be given read access to the contents at this URL.</xs:documentation>
-                </xs:annotation>
-              </xs:element>
-            </xs:sequence>
-          </xs:complexType>
-        </xs:element>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  </xs:schema>
-
-Prepare EML Documents for Harvest
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-To prepare a set of EML documents for harvest, ensure that the following is true for each document: 
-
-* The document contains valid EML 
-* The document is specified in a ``<document>`` element in the site's Harvest List
-* The file resides at the location specified by its URL in the Harvest List 
-
-Review Harvester Reports
-~~~~~~~~~~~~~~~~~~~~~~~~
-Harvester sends an email report to the Site Contact after every scheduled site 
-harvest. The report contains information about the performed operations, such 
-as which EML documents were harvested and whether any errors were encountered. 
-Errors are indicated by operations that display a status value of 1; a status 
-value of 0 indicates that the operation completed successfully. 
-
-When errors are reported, the Site Contact should try to determine whether the 
-source of the error is something that can be corrected at the site. Common 
-causes of errors include:
-
-* a document URL specified in the Harvest List does not match the location of the actual EML file on the disk 
-* the Harvest List does not contain valid XML as specified in the harvestList.xsd schema 
-* the URL to the Harvest List (specified during registration) does not match the actual location of the Harvest List on the disk 
-* an EML document that Harvester attempted to upload to Metacat does not contain valid EML 
-
-If the Site Contact is unable to determine the cause of the error and its 
-resolution, he or she should contact the Harvester Administrator for assistance. 
-
-Unregister with Harvester
-~~~~~~~~~~~~~~~~~~~~~~~~~
-To discontinue harvests, the Site Contact must unregister with Harvester. 
-To unregister:
-
-1. Using a Web browser, log in to Metacat's Harvester Registration page. 
-   The Harvester Registration page is inside the skins directory. For example, 
-   if the Metacat server that you wish to register with resides at the 
-   following URL: 
-
-   ::
-   
-     http://somehost.somelocation.edu:8080/knb/index.jsp
-
-   then the Harvester Registration page would be accessed at: 
-
-   ::
-
-     http://somehost.somelocation.edu:8080/knb/style/skins/knb/harvesterRegistrationLogin.html
-
-2. Enter and submit your Metacat account information. On the subsequent screen, 
-   click Unregister to remove your site and discontinue harvests. 
-
-Running Harvester
------------------
-The Harvester can be run as a servlet or in a command window. Under most 
-circumstances, Harvester is best run continuously as a background servlet 
-process. However, if you expect to use Harvester infrequently, or if wish only 
-to test that Harvester is functioning, it may desirable to run it from a 
-command window.
-
-Running Harvester as a Servlet
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-To run Harvester as a servlet (from a source code installation):
-
-1. Remove the comment symbols around the HarvesterServlet entry in the source 
-   code. The HarvesterServlet entry is located in the ``lib/web.xml.tomcatN`` 
-   file, where tomcatN corresponds to the version of Tomcat you are running. 
-   For example, if you are running Tomcat 6, edit file lib/web.xml.tomcat6. 
-
-   ::
-   
-     <!--
-     <servlet>
-       <servlet-name>HarvesterServlet</servlet-name>
-       <servlet-class>edu.ucsb.nceas.metacat.harvesterClient.HarvesterServlet</servlet-class>
-       <init-param>
-       <param-name>debug</param-name>
-       <param-value>1</param-value>
-       </init-param>
-       <init-param>
-       <param-name>listings</param-name>
-       <param-value>true</param-value>
-       </init-param>
-       <load-on-startup>1</load-on-startup>
-     </servlet>
-     -->
-
-2. Save the edited file. 
-3. Shut down Tomcat. 
-4. Redeploy Metacat by running the following two Ant commands from the 
-   top-level directory of your Metacat installation: 
-
-   ::
-   
-     ant cleanweb
-     ant install
-
-5. Restart Tomcat. Note that you will have to edit the ``metacat.properties`` 
-   file to specify harvester settings.
-
-About thirty seconds after you restart Tomcat, the Harvester servlet will 
-start executing. The first harvest will occur after the number of hours 
-specified in the metacat.properties file. The servlet will continue running 
-new harvests until the maximum number of harvests have been completed, or until 
-Tomcat shuts down (harvest frequency and maximum number of harvests are also 
-set in the Harvester properties). 
-
-Running Harvester in a Command Window
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-To run Harvester in a Command Window:
- 
-1. Open a system command window or terminal window. 
-2. Set the ``METACAT_HOME`` environment variable to the value of the 
-   Metacat installation directory. 
-
-   On Windows: 
-
-   ::
-   
-     set METACAT_HOME=C:\somePath\metacat
-
-   On Linux/Unix (bash shell): 
-
-   ::
-   
-     export METACAT_HOME=/home/somePath/metacat
-
-3. cd to the following directory: 
-
-   On Windows: 
-
-   ::
-   
-     cd %METACAT_HOME%\lib\harvester
-
-   On Linux/Unix: 
-
-   ::
-   
-     cd $METACAT_HOME/lib/harvester
-
-4. Run the appropriate Harvester shell script, as determined by the operating system: 
-
-   On Windows: 
-
-   ::
-   
-     runHarvester.bat
-
-   On Linux/Unix: 
-
-   ::
-   
-     sh runHarvester.sh
-
-The Harvester application will start executing. The first harvest will occur 
-after the number of hours specified in the ``metacat.properties file``. The 
-servlet will continue running new harvests until the maximum number of harvests 
-have been completed, or until you interrupt the process by hitting CTRL/C in 
-the command window (harvest frequency and maximum number of harvests are also 
-set in the Harvester properties). 
-
-Reviewing Harvest Reports
--------------------------
-Harvester sends an email report to the Harvester Administrator after every 
-harvest. The report contains information about the performed operations, such 
-as which sites were harvested as well as which EML documents were harvested 
-and whether any errors were encountered. Errors are indicated by operations 
-that display a status value of 1; a status value of 0 indicates that the 
-operation completed successfully. 
-
-The Harvester Administrator should review the report, paying particularly 
-close attention to any reported errors and accompanying error messages. When 
-errors are reported at a particular site, the Harvester Administrator should 
-contact the Site Contact to determine the source of the error and its 
-resolution. Common causes of errors include:
-
-* a document URL specified in the Harvest List does not match the location of the actual EML file on the disk 
-* the Harvest List does not contain valid XML as specified in the harvestList.xsd schema 
-* the URL to the Harvest List (specified during registration) does not match the actual location of the Harvest List on the disk 
-* an EML document that Harvester attempted to upload to Metacat does not contain valid EML 
-
-Errors that are independent of a particular site may indicate a problem with 
-Harvester itself, Metacat, or the database connection. Refer to the error 
-message to determine the source of the error and its resolution. 
-
Index: docs/dev/metacat/source/identifiers.rst
===================================================================
--- docs/dev/metacat/source/identifiers.rst	(revision 6870)
+++ docs/dev/metacat/source/identifiers.rst	(nonexistent)
@@ -1,249 +0,0 @@
-.. raw:: latex
-
-  \newpage
-  
-
-Identifier Management
-=====================
-
-.. index:: Identifiers
-
-Author
-  Matthew B. Jones
-
-Date
-  - 20100301 [MBJ] Initial draft of Identifier documentation
-
-Goal
-  Extend Metacat to support identifiers with arbitrary syntax
-
-Summary 
-  Metacat currently supports identifier strings called 'docids' that have
-  the syntax 'scope.object.revision', such as 'foo.34.1' (we will refer to
-  these as 'LocalIDs'). We now want Metacat to support identifiers that are 
-  arbitrary strings, but still enforce uniqueness and proper revision
-  handling (refer to these as GUIDs).  Metacat must be able to accept 
-  these strings as identifiers for all CRUD operations, and reference them 
-  in search results.
-
-Identifier Resolution
----------------------
-Because Metacat uses LocalIDs throughout the code for references to objects,
-and that LocalID has a constrained structure that includes semantics about
-revisions in the identifier, it is difficult to wholesale replace it with
-less-constrained string identifiers without re-writing much of Metacat.
-Thus, our alternate strategy is to wrap the Metacat APIs with a
-identifier resolution layer that keeps track of the unconstrained GUIDs and
-maps them to constrained local identifiers which are used internally within
-Metacat. The basic identifer table model is shown in Figure 1, while the
-basic strategy for retrieving an object is shown in Figure 2, creating an 
-object is shown in Figure 3, updating an object in Figure 4, and deleting
-an object is shown in Figure 5.
-
-
-Identifier Table Structure
-~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. figure:: images/identifiers.png
-
-   Figure 1. Table structure for identifiers.
-
-..
-  This block defines the table structure diagram referenced above.
-  @startuml images/identifiers.png
-
-  identifiers "*" -- "1" xml_documents
-
-  identifiers : String identifier
-  identifiers : String docid
-  identifiers : Integer rev
-
-  xml_documents : String docid
-  xml_documents : String rev
-
-  note right of identifiers
-    "identifiers.(docid,rev) is a foreign key into xml_documents"
-  end note
-  @enduml
-
-.. raw:: latex
-
-  \newpage
-
-.. raw:: pdf
-
-  PageBreak
-
-
-Handling document read operations
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-An overview of the process needed to read an object using a GUID.
-
-
-.. figure:: images/guid_read.png
-
-   Figure 2. Basic handling for string identifiers (GUIDs) as mapped to
-   docids (LocalIDs) to retrieve an object.
-
-..
-  @startuml images/guid_read.png
-  !include plantuml.conf
-  actor User
-  participant "Client" as app_client << Application >>
-  participant "CRUD API" as c_crud << MetacatRestServlet >>
-  participant "Identifier Manager" as ident_man << IdentifierManager >>
-  participant "Handler" as handler << MetacatHandler >>
-  User -> app_client
-  app_client -> c_crud: get(token, GUID)
-  c_crud -> ident_man: getLocalID(GUID)
-  c_crud <-- ident_man: localID
-  c_crud -> handler: handleReadAction(localID)
-  c_crud <-- handler: object
-  c_crud --> app_client: object
-  
-  @enduml
-
-Handling document create operations
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-An overview of the process needed to create an object using a GUID.
-
-.. figure:: images/guid_insert.png
-
-   Figure 3. Basic handling for string identifiers (GUIDs) as mapped to
-   docids (LocalIDs) to create an object.
-
-..
-  @startuml images/guid_insert.png
-  !include plantuml.conf
-  actor User
-  participant "Client" as app_client << Application >>
-  participant "CRUD API" as c_crud << MetacatRestServlet >>
-  participant "Identifier Manager" as ident_man << IdentifierManager >>
-  participant "Handler" as handler << MetacatHandler >>
-  User -> app_client
-  app_client -> c_crud: create(token, GUID, object, sysmeta)
-  c_crud -> ident_man: identifierExists(GUID)
-  c_crud <-- ident_man: T or F 
-  alt identifierExists == "F"
-      c_crud -> ident_man: mapToLocalId(GUID)
-      c_crud <-- ident_man: localID
-      c_crud -> handler: handleInsertAction(localID)
-      c_crud <-- handler: success
-      note right of c_crud
-        "Also need to address how to handle the sysmeta information wrt insertion methods"
-      end note
-      app_client <-- c_crud: success
-  else identifierExists == "T"
-      app_client <-- c_crud: IdentifierNotUnique
-  end
-  @enduml
-
-Handling document update operations
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-An overview of the process needed to update an object using a GUID.
-
-.. figure:: images/guid_update.png
-
-   Figure 4. Basic handling for string identifiers (GUIDs) as mapped to
-   docids (LocalIDs) to update an object.
-
-..
-  @startuml images/guid_update.png
-  !include plantuml.conf
-  actor User
-  participant "Client" as app_client << Application >>
-  participant "CRUD API" as c_crud << MetacatRestServlet >>
-  participant "Identifier Manager" as ident_man << IdentifierManager >>
-  participant "Handler" as handler << MetacatHandler >>
-  User -> app_client
-  app_client -> c_crud: update(token, GUID, object, obsoletedGUID, sysmeta)
-
-  c_crud -> ident_man: identifierExists(obsoletedGUID)
-  c_crud <-- ident_man: T or F 
-  alt identifierExists == "T"
-
-      c_crud -> ident_man: identifierExists(GUID)
-      c_crud <-- ident_man: T or F 
-      alt identifierExists == "F"
-          c_crud -> ident_man: mapToLocalId(GUID, obsoletedGUID)
-          c_crud <-- ident_man: localID
-          c_crud -> handler: handleUpdateAction(localID)
-          c_crud <-- handler: success
-          note right of c_crud
-            "Also need to address how to handle the sysmeta information wrt update methods"
-          end note
-          app_client <-- c_crud: success
-      else identifierExists == "T"
-          app_client <-- c_crud: IdentifierNotUnique
-      end
-  else identifierExists == "F"
-      app_client <-- c_crud: NotFound
-  end
-  @enduml
-
-Handling document delete operations
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-An overview of the process needed to delete an object using a GUID.
-
-.. figure:: images/guid_delete.png
-
-   Figure 5. Basic handling for string identifiers (GUIDs) as mapped to
-   docids (LocalIDs) to delete an object.
-
-..
-  @startuml images/guid_delete.png
-  !include plantuml.conf
-  actor User
-  participant "Client" as app_client << Application >>
-  participant "CRUD API" as c_crud << MetacatRestServlet >>
-  participant "Identifier Manager" as ident_man << IdentifierManager >>
-  participant "Handler" as handler << MetacatHandler >>
-  User -> app_client
-  app_client -> c_crud: delete(token, GUID)
-  c_crud -> ident_man: identifierExists(GUID)
-  c_crud <-- ident_man: T or F 
-  alt identifierExists == "T"
-      c_crud -> ident_man: mapToLocalId(GUID)
-      c_crud <-- ident_man: localID
-      c_crud -> handler: handleDeleteAction(localID)
-      c_crud <-- handler: success
-      app_client <-- c_crud: success
-  else identifierExists == "F"
-      app_client <-- c_crud: NotFound
-  end
-  @enduml
-
-..
-  This block defines the interaction diagram referenced above.
-  startuml images/01_interaction.png
-    !include plantuml.conf
-    actor User
-    participant "Client" as app_client << Application >>
-    User -> app_client
-
-    participant "CRUD API" as c_crud << Coordinating Node >>
-    activate c_crud
-    app_client -> c_crud: resolve(GUID, auth_token)
-    participant "Authorization API" as c_authorize << Coordinating Node >>
-    c_crud -> c_authorize: isAuth(auth_token, GUID)
-    participant "Verify API" as c_ver << Coordinating Node >>
-    c_authorize -> c_ver: isValidToken (token)
-    c_authorize <-- c_ver: T or F
-    c_crud <-- c_authorize: T or F
-    app_client <-- c_crud: handle_list
-    deactivate c_crud
-
-    participant "CRUD API" as m_crud << Member Node >>
-    activate m_crud
-    app_client -> m_crud: get(auth_token, handle)
-    participant "Server Authentication API" as m_authenticate << Member Node >>
-    m_crud -> m_authenticate: isAuth(auth_token, GUID)
-    m_crud <-- m_authenticate: T or F
-    m_crud -> m_crud: log(get, UserID, GUID)
-    app_client <-- m_crud: object or unauth or doesNotExist
-    deactivate m_crud
-  enduml

Property changes on: docs/dev/metacat/source/identifiers.rst
___________________________________________________________________
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Index: docs/dev/metacat/source/conf.py
===================================================================
--- docs/dev/metacat/source/conf.py	(revision 6870)
+++ docs/dev/metacat/source/conf.py	(nonexistent)
@@ -1,196 +0,0 @@
-# -*- coding: utf-8 -*-
-#
-# Metacat documentation build configuration file, created by
-# sphinx-quickstart on Mon Mar  1 14:16:16 2010.
-#
-# This file is execfile()d with the current directory set to its containing dir.
-#
-# Note that not all possible configuration values are present in this
-# autogenerated file.
-#
-# All configuration values have a default; values that are commented out
-# serve to show the default.
-
-import sys, os
-
-# If extensions (or modules to document with autodoc) are in another directory,
-# add these directories to sys.path here. If the directory is relative to the
-# documentation root, use os.path.abspath to make it absolute, like shown here.
-#sys.path.append(os.path.abspath('.'))
-
-# -- General configuration -----------------------------------------------------
-
-# Add any Sphinx extension module names here, as strings. They can be extensions
-# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
-extensions = []
-
-# Add any paths that contain templates here, relative to this directory.
-templates_path = ['_templates']
-
-# The suffix of source filenames.
-source_suffix = '.rst'
-
-# The encoding of source files.
-#source_encoding = 'utf-8'
-
-# The master toctree document.
-master_doc = 'index'
-
-# General information about the project.
-project = u'Metacat'
-copyright = u'2012, Regents of the University of California'
-
-# The version info for the project you're documenting, acts as replacement for
-# |version| and |release|, also used in various other places throughout the
-# built documents.
-#
-# The short X.Y version.
-version = '2.0'
-# The full version, including alpha/beta/rc tags.
-release = '2.0.0'
-
-# The language for content autogenerated by Sphinx. Refer to documentation
-# for a list of supported languages.
-#language = None
-
-# There are two options for replacing |today|: either, you set today to some
-# non-false value, then it is used:
-#today = ''
-# Else, today_fmt is used as the format for a strftime call.
-#today_fmt = '%B %d, %Y'
-
-# List of documents that shouldn't be included in the build.
-#unused_docs = []
-
-# List of directories, relative to source directory, that shouldn't be searched
-# for source files.
-exclude_trees = []
-
-# The reST default role (used for this markup: `text`) to use for all documents.
-#default_role = None
-
-# If true, '()' will be appended to :func: etc. cross-reference text.
-#add_function_parentheses = True
-
-# If true, the current module name will be prepended to all description
-# unit titles (such as .. function::).
-#add_module_names = True
-
-# If true, sectionauthor and moduleauthor directives will be shown in the
-# output. They are ignored by default.
-#show_authors = False
-
-# The name of the Pygments (syntax highlighting) style to use.
-pygments_style = 'sphinx'
-
-# A list of ignored prefixes for module index sorting.
-#modindex_common_prefix = []
-
-
-# -- Options for HTML output ---------------------------------------------------
-
-# The theme to use for HTML and HTML Help pages.  Major themes that come with
-# Sphinx are currently 'default' and 'sphinxdoc'.
-#html_theme = 'default'
-html_theme = 'readable'
-
-# Theme options are theme-specific and customize the look and feel of a theme
-# further.  For a list of options available for each theme, see the
-# documentation.
-#html_theme_options = {}
-
-# Add any paths that contain custom themes here, relative to this directory.
-html_theme_path = ['themes',]
-
-# The name for this set of Sphinx documents.  If None, it defaults to
-# "<project> v<release> documentation".
-#html_title = None
-
-# A shorter title for the navigation bar.  Default is the same as html_title.
-#html_short_title = None
-
-# The name of an image file (relative to this directory) to place at the top
-# of the sidebar.
-#html_logo = None
-
-# The name of an image file (within the static path) to use as favicon of the
-# docs.  This file should be a Windows icon file (.ico) being 16x16 or 32x32
-# pixels large.
-#html_favicon = None
-
-# Add any paths that contain custom static files (such as style sheets) here,
-# relative to this directory. They are copied after the builtin static files,
-# so a file named "default.css" will overwrite the builtin "default.css".
-html_static_path = ['_static']
-
-# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
-# using the given strftime format.
-#html_last_updated_fmt = '%b %d, %Y'
-
-# If true, SmartyPants will be used to convert quotes and dashes to
-# typographically correct entities.
-#html_use_smartypants = True
-
-# Custom sidebar templates, maps document names to template names.
-#html_sidebars = {}
-
-# Additional templates that should be rendered to pages, maps page names to
-# template names.
-#html_additional_pages = {}
-
-# If false, no module index is generated.
-html_use_modindex = False
-html_domain_indices = False
-
-# If false, no index is generated.
-#html_use_index = True
-
-# If true, the index is split into individual pages for each letter.
-#html_split_index = False
-
-# If true, links to the reST sources are added to the pages.
-#html_show_sourcelink = True
-
-# If true, an OpenSearch description file will be output, and all pages will
-# contain a <link> tag referring to it.  The value of this option must be the
-# base URL from which the finished HTML is served.
-#html_use_opensearch = ''
-
-# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
-#html_file_suffix = ''
-
-# Output file base name for HTML help builder.
-htmlhelp_basename = 'Metacatdoc'
-
-
-# -- Options for LaTeX output --------------------------------------------------
-
-# The paper size ('letter' or 'a4').
-#latex_paper_size = 'letter'
-
-# The font size ('10pt', '11pt' or '12pt').
-#latex_font_size = '10pt'
-
-# Grouping the document tree into LaTeX files. List of tuples
-# (source start file, target name, title, author, documentclass [howto/manual]).
-latex_documents = [
-  ('index', 'Metacat.tex', u'Metacat Documentation',
-   u'Matthew B. Jones', 'manual'),
-]
-
-# The name of an image file (relative to this directory) to place at the top of
-# the title page.
-#latex_logo = None
-
-# For "manual" documents, if this is true, then toplevel headings are parts,
-# not chapters.
-#latex_use_parts = False
-
-# Additional stuff for the LaTeX preamble.
-#latex_preamble = ''
-
-# Documents to append as an appendix to all manuals.
-#latex_appendices = []
-
-# If false, no module index is generated.
-#latex_use_modindex = True
Index: docs/dev/metacat/source/event-logging.rst
===================================================================
--- docs/dev/metacat/source/event-logging.rst	(revision 6870)
+++ docs/dev/metacat/source/event-logging.rst	(nonexistent)
@@ -1,88 +0,0 @@
-Event Logging
-=============
-
-Metacat keeps an internal log of events (such as insertions, updates, deletes, 
-and reads) that can be accessed with the getlog action. Using the getlog action, 
-event reports can be output from Metacat in XML format, and/or customized to 
-include only certain events: events from a particular IP address, user, event 
-type, or that occurred after a specified start date or before an end date. 
-
-The following URL is used to return the basic log—an XML-formatted log of all 
-events since the log was initiated::
-
-  http://some.metacat.host/context/metacat?action=getlog 
-
-Note that you must be logged in to Metacat using the HTTP interface or you 
-will get an error message. For more information about logging in, please see 
-Logging In with the HTTP Interface.
-
-::
-
-  <!-- Example of XML Log -->
-  <?xml version="1.0"?>
-  <log>
-  <logEntry><entryid>44</entryid><ipAddress>34.237.20.142</ipAddress><principal>uid=jones,
-  o=NCEAS,dc=ecoinformatics,dc=org</principal><docid>esa.2.1</docid><event>insert</event>
-  <dateLogged>2004-09-08 19:08:18.16</dateLogged></logEntry>
-  <logEntry><entryid>47</entryid><ipAddress>34.237.20.142</ipAddress><principal>uid=jones,o=NCEAS,
-  dc=ecoinformatics,dc=org</principal><docid>esa.3.1</docid><event>insert</event><dateLogged>2004-
-  09-14 19:50:40.61</dateLogged></logEntry>
-  </log>
-
-The basic log can be quite extensive. To subset the report, restrict the 
-matching events using parameters. Query parameters can be combined to further 
-restrict the report.
-
-+-----------+-----------------------------------------------------+
-| Parameter | Description and Values                              |
-+===========+=====================================================+
-| ipAddress | Restrict the report to this IP Address (repeatable) |
-+-----------+-----------------------------------------------------+
-| principal | Restrict the report to this user (repeatable)       |
-+-----------+-----------------------------------------------------+
-| docid     | Restrict the report to this docid (repeatable)      |
-+-----------+-----------------------------------------------------+
-| event     | Restrict the report to this event type (repeatable) |
-|           | Values: insert, update, delete, read                |
-+-----------+-----------------------------------------------------+
-| start     | Restrict the report to events after this date       |
-|           | Value: YYYY-MM-DD+hh:mm:ss                          |
-+-----------+-----------------------------------------------------+
-| end       | Restrict the report to events before this date.     |
-|           | Value: YYYY-MM-DD+hh:mm:ss                          |
-+-----------+-----------------------------------------------------+
-
-To view only the 'read' events, use a URL like::
-
-  http://some.metacat.host/context/metacat?action=getlog&event=read
-
-
-To view only the events for a particular IP address, use a URL like::
-
-  http://some.metacat.host/context/metacat?action=getlog&ipaddress=107.9.1.31
-
-
-To view only the events for a given user, use a URL like::
-
-  http://some.metacat.host/context/metacat?action=getlog&principal=uid=johndoe,o=NCEAS,dc=ecoinformatics,dc=org 
-
-
-To view only the events for a particular document, use a URL like::
-
-  http://some.metacat.host/context/metacat?action=getlog&docid=knb.5.1 
-
-
-To view only the events after a given date, use a URL like::
-
-  http://some.metacat.host/context/metacat?action=getlog&start=2004-09-15+12:00:00
-
-
-To view only the events before a given date, use a URL like::
-
-  http://some.metacat.host/context/metacat?action=getlog&end=2004-09-15+12:00:00
-
-
-To view the 'insert' events for September 2004 (i.e., to combine parameters) use a URL like::
-
-  http://some.metacat.host/context/metacat?action=getlog&event=insert&start=2004-09-01+12:00:00&end=2004-09-30+23:59:59 
-
Index: docs/dev/metacat/source/install.rst
===================================================================
--- docs/dev/metacat/source/install.rst	(revision 6870)
+++ docs/dev/metacat/source/install.rst	(nonexistent)
@@ -1,1006 +0,0 @@
-Downloading and Installing Metacat
-==================================
-
-Instructions for both Linux and Windows systems are included in this section.
-
-.. contents::
-
-System Requirements
--------------------
-In addition to meeting the recommended system requirements, the server on which
-you wish to install Metacat must have the following software installed and
-running correctly:
-
-* PostgreSQL_ (or another SQL92-compliant RDBMS like Oracle_) 
-* `Apache Ant`_ (if building from source)
-* `Apache Tomcat`_ 
-* `Apache HTTPD Server`_ (recommended)
-
-  * In order to use the Metacat Registry (and for a more robust Web-serving environment in general), the Apache Web server should be installed with Tomcat and the two should be integrated. See the installing Apache for more information.
-
-* `Java 6`_ (Note: Java 5 is deprecated)
-
-.. _PostgreSQL: http://www.postgresql.org/
-
-.. _Oracle: http://www.oracle.com/
-
-.. _Apache Ant: http://ant.apache.org/
-
-.. _Apache Tomcat: http://tomcat.apache.org/
-
-.. _Apache HTTPD Server: http://httpd.apache.org/
-
-.. _Java 6: http://www.oracle.com/technetwork/java/javaee/overview/index.html
-
-System requirements for running Metacat:
-
-.. NOTE::
-
-   Check these system requirements
-
-* a server running an SQL92-compliant database (PostgreSQL_ recommended) 
-* at least 128MB RAM
-* a Pentium III processor (or higher)
-* 11 MB disk space (Note: The amount of disk space required depends on the size of your RDBMS tablespace (which should be at least 10 MB; however, Metacat itself requires only about 140 MB of free space after installation).
-
-
-Installing on Linux
--------------------
-This section contains instructions for downloading and installing Metacat on 
-Linux systems. As Mac OS X is based on BSD Unix, these Linux instructions can
-be adapted to also work on Mac OS X (although the exact commands for
-downloading and installing packages will differ due to the different package
-management approaches on the Mac).
-
-Quick Start Overview
-~~~~~~~~~~~~~~~~~~~~
-For the impatient or those who have already installed Metacat and know what
-they are doing, here are the steps needed to install Metacat. Detailed
-instructions for each step are in the next section.
-
-1. Download and install prerequisites (`Java 6`_, `Apache Tomcat`_ 6, PostgreSQL_, `Apache HTTPD Server`_)
-2. Create a database in PostgreSQL named 'metacat' and authorize access to it in ``pb_hba.conf`` for the user 'metacat'
-3. Log in to PostgreSQL and create the 'metacat' user
-4. Download Metacat from the `Metacat Download Page`_ and extract the archive
-5. ``sudo mkdir /var/metacat; sudo chown -R <tomcat_user> /var/metacat``
-6. ``sudo cp <metacat_package_dir>/knb.war <tomcat_app_dir>``
-7. ``sudo /etc/init.d/tomcat6 restart``
-8. Configure Metacat through the Web interface
-
-.. _Metacat Download Page: http://knb.ecoinformatics.org/software/metacat/
-
-Downloading Metacat
-~~~~~~~~~~~~~~~~~~~
-Before installing Metacat, please ensure that all required software is
-installed and running correctly. To obtain a Metacat WAR file, which is needed
-for installation, download one of the following: 
-
-* the Metacat installer, which has a pre-built WAR file,
-* the Metacat source distribution, which must be built in order to create a WAR file, 
-* the Metacat source code from SVN. You must build the source code in order to create a WAR file. 
-
-Instructions for all three options are discussed below. Note that downloading
-the installer (described in the next section) is the simplest way to get
-started. 
-
-Download the Metacat Installer
-..............................
-Downloading the Metacat Installer is the simplest way to get started with the
-application. To download the installer: 
-
-1.  Browse to the `Metacat Download Page`_. In the Metacat section, select the link to the "GZIP file" (the link should look like: metacat-bin-X.X.X.tar.gz, where X.X.X is the latest version of Metacat e.g., 1.9.0) 
-2.  Save the file locally. 
-3.  Extract the Metacat package files by typing:
-
-::
-
-  tar -xvzf metacat-bin-X.X.X.tar.gz
-
-You should see a WAR file and several supporting files (Table 2.1). The
-extraction location will be referred to as the ``<metacat_package_dir>`` for the
-remainder of this documentation.
-
-================== ===========================================================
-File               Description
-================== ===========================================================
-knb.war            The Metacat Web archive file (WAR) 
-knb                The Web definition file used by Apache on Ubuntu/Debian 
-                   Linux systems. 
-knb.ssl            The SSL definition file used by Apache on Ubuntu/Debian 
-                   Linux systems.
-jk.conf            The JkMount configuration file used by Apache on 
-                   Ubuntu/Debian Linux systems. 
-workers.properties The workers definition file used by Apache on Ubuntu/Debian 
-                   Linux systems. 
-authority          The optional LSID Server application WAR
-================== ===========================================================
-
-
-Download Metacat Source Code
-............................
-To get the Metacat source distribution:
-
-1. Browse to the `Metacat Download Page`_. In the Metacat section, select the link to the Metacat Source code (it will look something like this: metacat-src-X.X.X.tar.gz, where X.X.X is the latest version of Metacat, e.g., 1.9.0).
-2. Save the file locally. 
-3. Extract the Metacat package files by typing (replace X.X.X with the current version number): 
-
-::
-
-  tar -xvzf metacat-src-X.X.X.tar.gz
-
-4. Rename the metacat-X.X.X directory to metacat. 
-
-Note that you do not need to create the WAR file directly because the Ant
-build-file has an "install" target that will build and deploy the WAR for you. 
-
-
-Check Out Metacat Source Code from SVN (for Developers)
-.......................................................
-If you wish to work with the most recent Metacat code, or you'd like to extend
-the Metacat code yourself, you may wish to check out the Metacat source code
-from SVN. You will need a Subversion (SVN) client installed and configured on
-your system (see the end of this section for information about obtaining an SVN
-client). 
-
-.. sidebar:: Installing an SVN Client:
-
-    If you have not already installed Subversion and you are running Ubuntu/Debian,
-    you can get the SVN client by typing:
-    
-    ::
-
-        sudo apt-get install subversion
-
-    Otherwise, you can get the SVN client from The Subversion homepage
-    (http://subversion.tigris.org/).
-
-To check out the code from SVN, go to the directory where you would like the
-code to live and type::
-
-  svn co https://code.ecoinformatics.org/code/metacat/tags/METACAT_<rev> metacat
-
-Where ``<rev>`` is the version of the code you want to check out (like 1_9). 
-
-To check out the head, type::
-
-  svn co https://code.ecoinformatics.org/code/metacat/trunk metacat
-
-You should see a list of files as they check out.
-
-Note that you do not need to create the WAR file directly because the Ant
-build-file has an "install" target that will build and deploy the WAR for you. 
-
-
-Installing and Configuring Required Software
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Before you can install and run Metacat, you must ensure that a recent Java SDK,
-PostgreSQL (or another SQL92-compliant RDBMS like Oracle 8i), Ant (if
-installing from source), and Tomcat are installed and running correctly. We
-also highly recommend that you install Apache Web server, as it provides a more
-robust Web-serving environment and is required by some Metacat functionality. 
-
-* `Java 6`_
-* `Apache Tomcat`_ 
-* `Apache HTTPD Server`_ (Highly Recommended)
-* PostgreSQL_ Database (or Oracle_)
-* `Apache Ant`_ (if building from Source)
-
-Java 6
-......
-To run Metacat, you should use Java 6 (Java 5 is deprecated and will not be
-supported after Metacat version 1.9.2). Make sure that the JAVA_HOME
-environment variable is properly set and that both ``java`` and ``javac`` 
-are on your PATH. 
-
-To install Java if you are running Ubuntu_/Debian, type::
-
-  sudo apt-get install sun-java6-jdk
-
-Click "ok" then "yes" for license agreement.
-
-If you are not using Ubuntu_/Debian, you can get Java from the Oracle_ website.
-
-.. _Ubuntu: http://www.ubuntu.com/
-
-Apache Tomcat
-.............
-We recommend that you install Tomcat 6 into the directory of your choice.
-Included with the Metacat download is a Tomcat-friendly start-up script that
-should be installed as well.
-
-Note: we will refer to the Tomcat installation directory as ``<tomcat_home>`` for
-the remainder of the documentation. 
-
-If you are running Ubuntu_/Debian, get Tomcat by typing::
-
-  sudo apt-get install tomcat6
-
-Otherwise, get Tomcat from the `Apache Tomcat`_ page.
-
-Apache HTTPD Server (Highly Recommended)
-........................................
-Although you have the option of running Metacat with only the Tomcat server, we
-highly recommend that you run it behind the Apache Web server for several
-reasons; running Tomcat with the Apache server provides a more robust Web
-serving environment, and the Apache Web server is required if you wish to
-install and run the Metacat Registry. 
-
-.. sidebar:: Configuring Apache on an OS other than Ubuntu/Debian 
-
-  If you are running on an O/S other than Ubuntu/Debian (e.g., Fedora Core or
-  RedHat Linux) or if you installed the Apache source or binary, you must
-  manually edit the Apache configuration file, where <apache_install_dir> is the
-  directory in which Apache is installed:
-
-  ::
-
-    <apache_install_dir>/conf/httpd.conf
-
-  1. Configure the log location and level for Mod JK. If your configuration file does not already have the following section, add it and set the log location to any place you'd like:
-
-    ::
-
-      <IfModule mod_jk.c> 
-        JkLogFile "/var/log/tomcat/mod_jk.log" 
-        JkLogLevel info 
-      </IfModule> 
-
-  2. Configure apache to route traffic to the Metacat application. ServerName should be set to the DNS name of the Metacat server. ScriptAlias and the following Directory section should both point to the cgi-bin directory inside your Metacat installation:
-
-    ::
-
-      <VirtualHost XXX.XXX.XXX.XXX:80> 
-        DocumentRoot /var/www 
-        ServerName dev.nceas.ucsb.edu 
-        ErrorLog /var/log/httpd/error_log 
-        CustomLog /var/log/httpd/access_log common 
-        ScriptAlias /cgi-bin/ "/var/www/cgi-knb/" 
-        <Directory /var/www/cgi-knb/> 
-          AllowOverride None 
-          Options ExecCGI 
-          Order allow,deny 
-          Allow from all 
-        </Directory> 
-        ScriptAlias /knb/cgi-bin/ "/var/www/webapps/knb/cgi-bin/" 
-        <Directory "/var/www/webapps/knb/cgi-bin/"> 
-          AllowOverride None 
-          Options ExecCGI 
-          Order allow,deny 
-          Allow from all 
-        </Directory> 
-        JkMount /knb ajp13 
-        JkMount /knb/* ajp13 
-        JkMount /knb/metacat ajp13 
-        JkUnMount /knb/cgi-bin/* ajp13 
-        JkMount /*.jsp ajp13 
-        JkMount /metacat ajp13 
-        JkMount /metacat/* ajp13 
-      </VirtualHost> 
-
-  3. Copy the "workers.properties" file provided by Metacat into your Apache configuration directory (<apache_install_dir>/conf/).  Depending on whether you are installing from binary distribution or source, the workers.properties file will be in one of two locations:
-
-    * the directory in which you extracted the Metacat distribution (for binary distribution)
-    * <metacat_code_dir>/src/scripts/workers.properties (for both the source distribution and source code checked out from SVN)
-
-  4. Edit the workers.properties file and make sure the following properties are set correctly:
-
-    ::
-
-      workers.tomcat_home -  set to the Tomcat install directory. 
-      workers.java_home - set to the Java install directory. 
-
-  5. Restart Apache to bring in changes by typing:
-
-    ::
-
-      sudo /etc/init.d/apache2 restart
-
-This section contains instructions for installing and configuring the Apache
-Web server for Metacat on an Ubuntu_/Debian system. Instructions for configuring
-Apache running on other Linux systems are included in the sidebar.
-
-1. Install the Apache and Mod JK packages (Mod JK is the module Apache uses to talk to Tomcat applications) by typing:
-
-::
-
-  sudo apt-get install apache2 libapache2-mod-jk
-
-If you are installing the Apache server on an Ubuntu/Debian system, and you
-installed Apache using apt-get as described above, the Metacat code will have
-helper files that can be dropped into directories to configure Apache.
-Depending on whether you are installing from binary distribution or source,
-these helper files will be in one of two locations: 
-
-* the directory in which you extracted the distribution (for binary distribution)
-* ``<metacat_code_dir>/src/scripts`` (for both the source distribution and source code checked out from SVN).  We will refer to the directory with the helper scripts as ``<metacat_helper_dir>`` and the directory where Apache is installed (e.g., ``/etc/apache2/``) as ``<apache_install_dir>``.
-
-2. Set up Mod JK apache configuration by typing:
-
-::
-
-  sudo cp <metacat_helper_dir>/jk.conf <apache_install_dir>/mods-available
-  sudo cp <metacat_helper_dir>/workers.properties <apache_install_dir>
-
-3. Disable and re-enable the Apache Mod JK module to pick up the new changes:
-
-::
-
-  sudo a2dismod jk
-  sudo a2enmod jk
-
-4. Apache needs to know about the Metacat site. The helper file named "knb" has rules that tell Apache which traffic to route to Metacat. Set up the knb (Metacat) site by dropping the knb file into the sites-available directory and running a2ensite to enable the site:
-
-::
-
-  sudo cp <metacat_helper_dir>/knb <apache_install_dir>/sites-available
-  sudo a2ensite knb
-
-5. Restart Apache to bring in changes by typing:
-
-::
-
-  sudo /etc/init.d/apache2 restart
-
-
-PostgreSQL Database
-...................
-Metacat has been most widely tested with PostgreSQL_ and we recommend using it.
-Instructions for installing and configuring Oracle are also included in the
-next section.  To install and configure PostgreSQL_:
-
-1. If you are running Ubuntu_/Debian, get PostgreSQL by typing:
-
-  ::
-
-    sudo apt-get install postgresql
-
-  On other systems, install the rpms for postgres.
-
-2. Start the database by running:
-
-  ::
-
-    /etc/init.d/postgresql start
-
-3. Change to postgres user: 
-
-  ::
-
-    sudo su - postgres
-
-
-4. Set up an empty Metacat database instance by editing the postgreSQL configuration file: 
-
-  ::
-
-    gedit /etc/postgresql/8.3/main/pg_hba.conf
-
-
-  Add the following line to the configuration file: 
-
-  ::
-
-    host metacat metacat 127.0.0.1 255.255.255.255 password
-
-
-  Save the file and then create the Metacat instance: 
-
-  ::
-
-    createdb metacat
-
-
-5. Log in to postgreSQL by typing: 
-
-  ::
-
-    psql metacat
-
-
-6. At the psql prompt, create the Metacat user by typing:
-
-  ::
-
-    CREATE USER metacat WITH UNENCRYPTED PASSWORD 'your_password';
-
-  where 'your_password' is whatever password you would like for the Metacat user. 
-
-7. Exit PostgreSQL by typing 
-
-  ::
-
-    \q
-
-8. Restart the PostgreSQL database to bring in changes: 
-
-  ::
-
-    /etc/init.d/postgresql-8.3 restart
-
-9. Log out of the postgres user account by typing: 
-
-  ::
-
-    logout
-
-10. Test the installation and Metacat account by typing: 
-
-  ::
-
-    psql -U metacat -W -h localhost metacat
-
-11. Log out of postgreSQL: 
-
-  ::
-
-    \q
-
-
-The Metacat servlet automatically creates the required database schema. For
-more information about configuring the database, please see Database
-Configuration.
-
-Installing and Configuring Oracle 8i
-....................................
-To use Oracle 8i with Metacat, the Oracle RDBMS must be installed and running
-as a daemon on the system. In addition the JDBC listener must be enabled.
-Enable it by logging in as an Oracle user and typing::
-
-  lsnrctl start
-
-Your instance should have a table space of at least 5 MB (10 MB or higher
-recommended). You must also create and enable a username specific to Metacat.
-The Metacat user must have most normal permissions including: CREATE SESSION,
-CREATE TABLE, CREATE INDEX, CREATE TRIGGER, EXECUTE PROCEDURE, EXECUTE TYPE,
-etc. If an action is unexplainably rejected by Metacat, the user permissions
-are (most likely) not correctly set.
-
-The Metacat servlet automatically creates the required database schema. For
-more information, please see Database Configuration.
-
-Apache Ant (if building from Source)
-....................................
-If you are building Metacat from a source distribution or from source code
-checked out from SVN, Ant is required. (Users installing Metacat from the
-binary distribution do not require it.) Ant is a Java-based build application
-similar to Make on UNIX systems. It takes build instructions from a file named
-"build.xml", which is found in the root installation directory. Metacat source
-code comes with a default "build.xml" file that may require some modification
-upon installation. 
-
-If you are running Ubuntu/Debian, get Ant by typing::
-
-  sudo apt-get install ant
-
-Otherwise, get Ant from the `Apache Ant`_ homepage.
-
-Ant should be installed on your system and the "ant" executable shell script
-should be available in the user's path. The latest Metacat release was tested
-with Ant 1.8.2. 
-
-Installing Metacat
-~~~~~~~~~~~~~~~~~~
-Instructions for a new install, an upgrade, and a source install are included
-below.
-
-New Install
-...........
-Before installing Metacat, please ensure that all required applications are
-installed, configured to run with Metacat, and running correctly. If you are
-upgrading an existing Metacat servlet, please skip to Upgrade. For information
-about installing from source, skip to Source Install and Upgrade.
-
-To install a new Metacat servlet:
-
-1. Create the Metacat directory. Metacat uses a base directory to store data, metadata, temporary files, and configuration backups. This directory should be outside of the Tomcat application directory so that it will not get wiped out during an upgrade. Typically, the directory is '/var/metacat', as shown in the instructions. If you choose a different location, remember it. You will be asked to configure Metacat to point to the base directory at startup.  Create the Metacat directory by typing:
-
-  ::
-
-    sudo mkdir /var/metacat
-
-2. Change the ownership of the directory to the user that will start Tomcat by typing (note: If you are starting Tomcat as the root user, you do not need to run the chown command):
-
-  ::
-
-    sudo chown -R <tomcat_user> /var/metacat
-
-
-3.  Install the Metacat WAR in the Tomcat web-application directory. For instructions on downloading the Metacat WAR, please see Downloading Metacat.  Typically, Tomcat will look for its application files (WAR files) in the <tomcat_home>/webapps directory (e.g., /usr/share/tomcat6/webapps). Your instance of Tomcat may be configured to look in a different directory. We will refer to the Tomcat application directory as <tomcat_app_dir>.  NOTE: The name of the WAR file (e.g., knb.war) provides the application context, which appears in the URL of the Metacat (e.g., http://yourserver.com/knb/). To change the context, simply change the name of the WAR file to the desired name before copying it.  To install the Metacat WAR:
-
-  ::
-
-    sudo cp <metacat_package_dir>/knb.war <tomcat_app_dir>
-
-
-4. Restart Tomcat. Log in as the user that runs your Tomcat server (often "tomcat") and type:  
-
-  ::
-
-    /etc/init.d/tomcat6 restart
-
-Congratulations! You have now installed Metacat. If everything is installed
-correctly, you should see the Authentication Configuration screen (Figure 2.1)
-when you type http://yourserver.com/yourcontext/ (e.g.,
-http://knb.ecoinformatics.org/knb) into a browser. For more information about
-configuring Metacat, please see the Configuration Section.
-
-.. figure:: images/screenshots/image009.png
-   :align: center
-
-   The Authentication Configuration screen appears the first time you open a 
-   new installation of Metacat. 
-
-Upgrade Metacat
-...............
-To upgrade an existing binary Metacat installation follow the steps in this
-section. The steps for upgrading Metacat from source are the same as the
-instructions for installing from source:
-
-1. Download and extract the new version of Metacat. For more information about downloading and extracting Metacat, please see Downloading Metacat.
-
-2. Stop running Metacat. To stop Metacat, log in as the user that runs your Tomcat server (often "tomcat") and type:
-
-  ::
-
-    /etc/init.d/tomcat6 stop
-
-3. Back up the existing Metacat installation. Although not required, we highly recommend that you back up your existing Metacat to a backup directory (<backup_dir>) before installing a new one. You can do so by typing:
-
-  ::
-
-    cp <web_app_dir>/knb <backup_dir>/knb.<yyyymmdd>
-    cp <web_app_dir>/knb.war <backup_dir>/knb.war.<yyyymmdd>
-
-  Warning: Do not backup the files to the ``<web_app_dir>`` directory.  Tomcat will
-  try to run the backup copy as a service.
-
-4. Copy the new Metacat WAR file in to the Tomcat applications directory: 
-
-  ::
-
-    sudo cp <metacat_package_dir>/knb.war <tomcat_app_dir>
-
-  Note: Typically, Tomcat will look for its application files (WAR files) in the
-  ``<tomcat_home>/webapps`` directory. Your instance of Tomcat may be configured to
-  look in a different directory. 
-
-5. If you have been (or would like to start) running an LSID server, copy the new authority.war file to the Tomcat applications directory. For more information about the LSID server, please see Optional Installation Options. 
-
-  ::
-   
-    sudo cp <metacat_package_dir>/authority.war <tomcat_app_dir>
-
-6. Restart Tomcat (and Apache if you have Tomcat integrated with it). Log in as the user that runs your Tomcat server (often "tomcat"), and type:  
-
-  ::
-
-    /etc/init.d/tomcat6 restart
-
-
-7. Run your new Metacat servlet. Go to a Web browser and visit your installed
-Metacat application, using a URL of the form: 
-
-  ::
-
-    http://yourserver.yourdomain.com/yourcontext/
-
-You should substitute your context name for "yourcontext" in the URL above
-(your context will be "knb" unless you change the name of the knb.war file to
-something else). If everything is working correctly, you should be presented
-with Metacat's Authorization Configuration screen. Note that if you do not have
-Tomcat integrated with Apache you will probably have to type
-http://yourserver.yourdomain.com:8080/yourcontext/
-
-Source Install and Upgrade
-..........................
-Whether you are building Metacat from the source distribution or source code
-checked out from SVN, you will need Apache Ant to do the build (see Installing
-and Configuring Required Software for more information about Ant). 
-
-To install Metacat from source:
-
-1. Edit the build.properties file found in the directory in which you
-   downloaded Metacat. Note: Throughout the instructions, we will refer to this
-   directory as ``<metacat_src_dir>``. 
-
-  * Set the build.tomcat.dir property to your Tomcat installation directory.
-    Metacat will use some of the native Tomcat libraries during the build. For
-    instance: build.tomcat.dir=/usr/local/tomcat
-  * Set the app.deploy.dir property to your application deployment directory.
-    For instance: app.deploy.dir=/usr/local/tomcat/webapps
-
-2. In the ``<metacat_src_dir>``, run: 
-
-  ::
-
-    sudo ant clean install
-
-  You will see the individual modules get built. You should see a "BUILD
-  SUCCESSFUL" message at the end.
-
-  You should see a new file named knb.war in your application deployment
-  directory.
-
-To run your new Metacat servlet, open a Web browser and type::
-
-  http://yourserver.yourdomain.com/yourcontext/ 
-  (e.g.  http://knb.ecoinformatics.org/knb/)
-
-Your context will be "knb" unless you changed the name of the knb.war file to
-something else. The servlet may require a few seconds to start up, but once it
-is running, you will be presented with the Authorization Configuration screen.
-
-Optional Installation Options (LSID Server)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. Note::
-
-  The support for LSID identifiers is deprecated, and is being replaced with
-  support for DOI_ identifiers in a future release. We are maintaining support
-  for LSIDs on one particular site, but this support will be removed in a
-  future version of Metacat.
-
-.. _DOI: http://www.doi.org/
-
-Metacat's optional LSID server allows Metacat to use a standardized syntax for
-identifying data sets, in addition to Metacat's internal, custom scheme for
-identifiers. LSID's were designed to identify complex biological entities with
-short identifiers (much like DOIs in publishing) that are both computer and
-human readable. LSID identifiers are URIs and are therefore usable in many
-Internet applications, but they also cleanly separate the identity of a data
-set (i.e., its permenant identifier) from its current location (e.g., the list
-of URLs from which it might be retrieved).  LSIDs accomplish this by using a
-level of indirection; the identifier represents simply a name without location,
-but an associated resolver service can be used to locate the current location
-of the data and medata for the data set.  This is accomplished by establishing
-a well-known location for the resolution service for each authority using an
-infrequently used feature of the domain name system called SRV records.  At its
-most basic, resolution of an identifier is performed when a client looks up the
-SRV record for an LSID by querying DNS, which returns the current host and port
-of the authority web service, which is in turn used to locate the data and
-metadata.
-
-Using LSIDs to identify data records is being debated among members of the
-Taxonomic Databases Working Group (TDWG).  There are several alternate
-technologies that are under consideration (e.g., DOI_, plain http URIs), and so
-at this time the support for LSIDs in Metacat has been created on an
-experimental basis only.  If the LSID approach is ratified by the broader
-community, we will expand support for LSIDs in Metacat, but until then it is an
-optional and experimental feature.
-
-The format of an LSID is:: 
-
-  urn:lsid:<Authority>:<Namespace>:<ObjectID>[:<Version>]
-  e.g., urn:lsid:ecoinformatics.org:tao:12039:1
-
-When you enable the Metacat LSID support, you can use LSID clients (such as
-LSID Launchpad) and LSID notation to query Metacat for data and metadata. LSID
-notation can be used directly in Metacat HTTP queries as well. For example, a
-data package with an ID tao.12039.1 that is stored in a Metacat available at:
-http://example.com:9999 can be accessed by the following HTTP Metacat queries::
-
-  http://example.com:9999/authority/data?lsid=urn:lsid:ecoinformatics.org:tao:12039:1
-  (To return the data)
-
-  http://example.com:9999/authority/metadata?lsid=urn:lsid:ecoinformatics.org:tao:12039:1
-  (To return the metadata)
-
-Notice that in the HTTP query strings, the periods in the data package ID have
-been replaced with colons. The authority (ecoinformatics.org) must be properly
-configured by the Metacat administrator. Note: In order to configure the
-authority, you must have access to the DNS server for the Metacat domain.
-Further instructions are provided below.
-
-Install and configure the LSID Server shipped with Metacat
-..........................................................
-
-To install the LSID server using the binary installation:
-
-1. Copy the authority.war file to Tomcat:
-
-  ::
-
-    sudo cp <metacat_package_directory>/authority.war /usr/share/tomcat6/webapps
- 
-2. Set up the LSID server by dropping the authority file into Apache's
-   sites-available directory and running a2ensite to enable the site:
-
-   ::
-
-     sudo cp <metacat_helper_dir>/authority /etc/apache2/sites-available
-     sudo a2ensite authority
-
-3. Restart Tomcat. Log in as the user that runs your Tomcat server (often
-   "tomcat") and type:
-
-   ::
-
-     /etc/init.d/tomcat5.5 restart
-
-4. Restart Apache to bring in changes by typing:
-
-  ::
-
-    sudo /etc/init.d/apache2 restart
-
-5. See notes beneath LSID server source installation for instructions for
-   modifying the SRV record(s)
-
-To install the LSID server from a source
-........................................
-
-1. In the build.properties file found in the directory into which you
-   extracted the Metacat source code, set the authority and config.lsidauthority
-   properties. For example:
-  
-  ::
-   
-   authority.context=authority
-   config.lsidauthority=ecoinformatics.org
-
-2. In the <metacat-src-dirctory> create the authority.war by running:
-
-  ::
-
-    sudo ant war-lsid
-
-3. Copy the LSID WAR file into the Tomcat application directory.
-
-  ::
-
-    sudo cp <metacat_package_dir>/dist/authority.war <tomcat_app_dir>
-
-4. Restart Tomcat. Log in as the user that runs your Tomcat server (often
-   "tomcat") and type:   
-
-  ::
-
-    /etc/init.d/tomcat6 restart
-
-5. If you are running Tomcat behind the Apache server (the recommended
-   configuration), set up and enable the authority service site configurations by
-   typing:
-
-  ::
-
-    sudo cp <metacat_helper_dir>/authority <apache_install_dir>/sites-available
-    sudo a2ensite authority
-
-  Where <metacat_helper_dir> can be found in <metacat_code_dir>/src/scripts
-
-6.  Restart Apache to bring in changes by typing: 
-
-  ::
-
-    sudo /etc/init.d/apache2 restart
-
-  Once the authority.war is installed, you must also modify the SRV record(s)
-  on the DNS server for the domain hosting the Metacat. The record should be
-  added to the master zone file for the metacat's DNS server:
-
-    ::
-
-      _lsid._tcp      IN      SRV     1       0       8080    <metacat.edu>.
-
-  Where <metacat.edu> is the name of the machine that will serve as the
-  physical location of the AuthorityService.
-
-  For example, the value of <metacat.edu> for the below example URL would be
-  example.com:
-  
-    ::
-    
-      http://example.com:9999/authority/data?lsid=urn:lsid:ecoinformatics.org:tao:12039:1
-
-  For more information, please see http://www.ibm.com/developerworks/opensource/library/os-lsid/
-
-Troubleshooting
-~~~~~~~~~~~~~~~
-We keep and update a list of common problems and their solutions on the KNB
-website. See http://knb.ecoinformatics.org/software/metacat/troubleshooting.html 
-for more information.
-
-Installing on Windows
----------------------
-Metacat can be installed on Windows. Please follow the instructions in this
-section for downloading Metacat, installing the required software, and
-installing Metacat. Note that Registry and Data Upload functionality has not
-been tested on Windows.
-
-Download Metacat
-~~~~~~~~~~~~~~~~
-To obtain a Metacat WAR file, which is used when installing the Metacat
-servlet:
-
-1. Browse to the KNB Software Download Page. In the Metacat section, select
-   the link that looks like: metacat-bin-X.X.X.zip, where X.X.X is the latest
-   version of Metacat (e.g., 2.0.0).
-
-2. Choose to download and Save the file locally. 
-
-3. Extract the Metacat package files using your Windows zip utility. You
-   should see a WAR file and several supporting files (we will only use the WAR
-   file when installing Metacat). 
-
-Note: The location where these files were extracted will be referred to as the
-``<metacat_package_dir>`` for the remainder of this documentation. 
-
-Note: Before installing Metacat, please ensure that all required software is
-installed and running correctly.
-
-
-Install Required Software
-~~~~~~~~~~~~~~~~~~~~~~~~~
-Before you can install and run Metacat, you must ensure that a recent Java SDK,
-PostgreSQL and Tomcat are installed, configured, and running correctly. 
-
-* `Java 6`_
-* `Apache Tomcat`_
-* PostgreSQL_ Database
-
-Java 6
-......
-To run Metacat, you must have Java 6. (Java 5 is deprecated). Make sure that
-the JAVA_HOME environment variable is properly set and that both java and javac
-are on your PATH.
-
-To download and install Java:
-
-1. Browse to: http://java.sun.com/javase/downloads/widget/jdk6.jsp and follow
-   the instructions to download JDK 6.
-
-2. Run the downloaded installer to install Java.
-
-3. Set the JAVA_HOME environment variable: In "My Computer" properties, go to
-   "advanced settings > environment variables". Add:
-
-  ::
-
-    System Variable: JAVA_HOME C:\Program Files\Java\jdk1.6.0_18 
-    (or whichever version you downloaded)
-
-Apache Tomcat
-.............
-We recommend that you install Tomcat version 6.  To download and install Tomcat:
-
-1. Browse to: http://tomcat.apache.org/
-2. Download the Tomcat core zip file 
-3. Extract Tomcat files to C:\Program Files\tomcat using the windows zip
-   utility. 
-
-PostgreSQL Database
-...................
-Metacat can be run with several SQL92-compliant database systems, but it has 
-been most widely tested with PostgreSQL_. Instructions for installing and 
-configuring PostgreSQL for use with Metacat are included in this section.
-
-To download and install PostgreSQL:
-
-1. Browse to http://www.postgresql.org/download/windows and download the
-   one-click installer 
-2. Run the installer 
-3. Edit C:\Program Files\PostgreSQL\8.3\data and add:
-  
-  ::
-
-    host metacat metacat 127.0.0.1 255.255.255.255 password
-
-4. Create a super user. At the command line, enter:
-
-  ::
-
-    C:\Program Files\PostgreSQL\8.3\bin 
-    createdb -U postgres metacat (enter super user password)
-
-5. Log in to PostgreSQL: 
-
-  ::
-
-    psql -U postgres metacat (enter super user password)
-
-6. Create a Metacat user:
-
-  ::
-
-    CREATE USER metacat WITH UNENCRYPTED PASSWORD 'your_password'
-
-7. Exit PostgreSQL: 
-
-  ::
-
-    \q
-
-8. Restart PostgreSQL from the start menu by selecting:
-  
-  ::
-
-    run start/All Programs/PostgreSQL 8.3/Stop Server
-    run start/All Programs/PostgreSQL 8.3/Start Server
-
-
-9. Test the installation by logging in as the metacat user: 
-
-  ::
-  
-    Psql –U metacat –W –h localhost metacat
-
-10. Exit PostgreSQL:
-
-  ::
-
-    \q
-
-The Metacat servlet automatically creates the required database schema. For
-more information, please see Database Configuration.
-
-Installing Metacat
-~~~~~~~~~~~~~~~~~~
-Instructions for a new install and for an upgrade are included below.
-
-New Install
-...........
-Before installing Metacat, please ensure that all required applications are
-installed, configured to run with Metacat, and running correctly. If you are
-upgrading an existing Metacat servlet, please skip to Upgrade.
-
-To install a new Metacat servlet:
-
-1. Create the Metacat base directory at: 
-
-  ::
-
-    C:/Program Files/metacat
-
-2. Copy the Metacat WAR file to Tomcat (for information about obtaining a
-   Metacat WAR file, see Download Metacat): 
-  
-  ::
-
-    copy <metacat_package_dir>\knb.war C:\Program Files\tomcat\webapps
-
-3.  Restart Tomcat: 
-
-  ::
-
-    C:\Program Files\tomcat\shutdown.bat
-    C:\Program Files\tomcat\startup.bat
-
-
-Congratulations! You are now ready to configure Metacat. Please see the
-Configuration Section for more information. 
-
-Upgrade
-.......
-To upgrade an existing Metacat installation:
-
-1. Download and extract the new version of Metacat. For more information about
-   downloading and extracting Metacat, please see Download Metacat.
-
-2. Back up the existing Metacat installation. Although not required, we highly
-   recommend that you back up your existing Metacat to a backup directory 
-   (<backup_dir>) before installing a new version. You can do so by copying:
-
-  ::
-
-    <web_app_dir>/knb to <backup_dir>/knb.<yyyymmdd>
-    <web_app_dir>/knb.war to <backup_dir>/knb.war.<yyyymmdd>
-
-  Warning: Do not backup the knb directory in the <web_app_dir> directory.
-  Tomcat will try to run the backup copy as a service.
-
-3.  Copy the new Metacat WAR file in to Tomcat applications directory: 
-
-  ::
-
-    copy knb.war C:\Program Files\tomcat\webapps
-
-4.  Restart Tomcat: 
-  
-  ::
-  
-    C:\Program Files\tomcat\shutdown.bat
-    C:\Program Files\tomcat\startup.bat
-
-Congratulations! You are now ready to configure Metacat. Please see Configuring
-Metacat for more information.
-
Index: docs/dev/metacat/source/configuration.rst
===================================================================
--- docs/dev/metacat/source/configuration.rst	(revision 6870)
+++ docs/dev/metacat/source/configuration.rst	(nonexistent)
@@ -1,430 +0,0 @@
-Configuring Metacat
-===================
-
-.. contents::
-  
-When Metacat (Tomcat) is started, the Metacat servlet checks to see if it is 
-configured. If not, Metacat will automatically send you to the configuration 
-pages. 
-
-If the installation is new, or the previous version is before 1.9.0, pay close 
-attention to the configuration values. If you have upgraded Metacat, and the 
-previous version is 1.9.0 or later, Metacat will pull existing configuration 
-settings from a backup location. You should still verify that the values are 
-correct.
-
-To access your Metacat, open a Web browser and type::
-
-  http://<your_context_url>
-
-Where <your_context_url> is the URL of the server hosting the Metacat followed 
-by the name of the WAR file (i.e., the application context) that you installed.
-For instance, the context URL for the KNB Metacat is: http://knb.ecoinformatics.org/knb
-
-You can always open the configuration screen from within Metacat by typing::
-
-  http://<your_context_url>/admin
-
-Initial Configuration
----------------------
-Before you can log in to the Metacat and configure it, you are required to 
-confirm Metacat's back-up location and authentication configuration (if not 
-already configured). Metacat will automatically attempt to locate an existing 
-back-up directory, but you may need to correct the value or specify a directory 
-(if the installation is new, or if Metacat was unable to determine the location 
-of an existing back-up directory). The authentication configuration is required 
-for logging in to the Metacat and for defining administrative accounts. 
-Instructions for changing the authentication configuration without 
-authentication are included at the end of this section.
-
-Back-up Configuration
-~~~~~~~~~~~~~~~~~~~~~
-To preserve its configuration settings, Metacat backs up all configurations to 
-a directory outside the application directories. Because a new installation/upgrade 
-does not know where this external directory is, Metacat uses a discovery 
-algorithm to locate it. If Metacat cannot identify a backup directory, you will 
-see the Backup Directory Configuration screen.
-
-.. figure:: images/screenshots/image011.png
-   :align: center
-
-   Configuring the Backup Directory.
-   
-Authentication Configuration
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Whether you are installing or upgrading the Metacat servlet, you will 
-automatically be sent to the Authentication Configuration page. You can also 
-reach the Authentication Configuration page from a running Metacat by typing::
-  
-  http://<your_context_url>/admin
-
-Metacat uses LDAP as its primary authentication mechanism, but you can define 
-your own authentication mechanism by creating a Java class that implements 
-``AuthInterface``. Required configuration values are: Authentication Class, 
-Authentication URL, Authentication Secure URL, and Metacat Administrators. 
-Make sure that your user account information is entered into the Metacat 
-Administrators field (e.g., uid=daigle,o=nceas,dc=ecoinformatics,dc=org). You 
-will not be allowed to continue with configuration if this is missing. 
-
-NOTE: To create an LDAP account on the KNB LDAP server (specified as the 
-default LDAP server), go to http://knb.ecoinformatics.org and select the 
-"create a new user account" link.
-
-If you make changes to the authentication settings, you must restart Tomcat to 
-put them into effect.
-
-.. figure:: images/screenshots/image009.png
-   :align: center
-
-   Configuring Authentication Values.
-
-Changing Authentication Configuration without Authentication
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-If you need to change or add authentication information and cannot authenticate 
-using the existing authentication settings (e.g., the existing Metacat 
-administrator is no longer available or you forgot the administrator password), 
-you must edit the Metacat configuration file by hand. This ensures that only a 
-person who has access to the Metacat server and the configuration files on that 
-server will be able to change the administrator accounts.
-
-To edit the authentication configuration file:
-
-1. Stop Tomcat and edit the Metacat properties (``metacat.properties``) file in the
-   Metacat context directory inside the Tomcat application directory. The 
-   Metacat context directory is the name of the application (usually knb):
-
-  ::
-  
-    <tomcat_app_dir>/<context_dir>/WEB-INF/metacat.properties
-
-2. Change the following properties appropriately:
-
-  ::
-  
-    auth.administrators - a colon separated list of administrators 
-    auth.url - the authentication server URL 
-    auth.surl - the authentication secure server URL
-
-3. Save the ``metacat.properties`` file and start Tomcat.
-
-
-Logging in to Metacat
----------------------
-In order to configure Metacat, you must log in with an administrative account 
-that has been configured in the Authentication Configuration settings. If you 
-did not set up the correct administrative user there, you must change the 
-authentication configuration by hand before you can log in.
-
-In the log-in screen enter your user name and password and click 
-the "Login" button.
-
-.. figure:: images/screenshots/image015.png
-   :align: center
-
-   Logging into Metacat.
-   
-Required Configuration
-----------------------
-All required Metacat settings can be accessed from the Metacat Configuration 
-utility, which becomes available after the initial configurations 
-have been specified and an authorized administrator logs in. 
-
-.. figure:: images/screenshots/image017.png
-   :align: center
-
-   Metacat configuration menu, showing each configuration section.  Once all
-   sections are marked as green ``configured``, metacat can be accessed.
-
-The configuration settings are grouped into five sections (Metacat Global 
-Properties, Authentication Configuraion, Skins Specific Properties, Database 
-Installation/Upgrade, Geoserver Configuration), each of which is listed with its 
-current status (see table).
-
-==============  =============================================================
-Status          Description
-==============  =============================================================
-[unconfigured]  The section has yet to be configured 
-[configured]    The section has been configured. 
-[bypassed]      Used only for the Geoserver configurations. The administrator 
-                can choose not to configure the Geoserver user/password.
-==============  =============================================================
- 
-To the right of each configuration section is one of the following options: 
-Configure Now, Reconfigure Now, Configure Global Properties First, or 
-Version:X.X.X. If the option is linked (e.g., Configure Now or Reconfigure Now), 
-you can select the link to open the associated configuration settings and add 
-or edit them, respectively. If the option is not linked (e.g., Configure Global 
-Properties First), the settings cannot be specified until the global properties 
-are set. Once the global properties are configured, the option to configure this 
-section becomes available. The Version:X.X.X option is used only for the 
-Database Installation/Upgrade section. If the database schema version detected 
-by Metacat matches the application version (eg, 1.9.0), then no further database 
-configuration is required.
-
-All settings must be in a configured or bypassed state in order to run Metacat. 
-For new installations or upgrades, click the "go to metacat" link that appears 
-after configuration is complete to go directly to Metacat. Note that Metacat 
-indexes at start-up time, so the initial start-up may take some time depending 
-on the amount of data in your database. If you are reconfiguring a running 
-version of Metacat, you must restart the Tomcat server for the changes to 
-take effect.
-
-.. Note::
-   
-   Need to update this next figure!
-   
-.. figure:: images/screenshots/image019.png
-   :align: center
-
-   The Metacat settings as they appear after having been configured.
-   
-Global Properties (server, ports, etc)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The Metacat configurations included under Global Properties represent the bulk 
-of the settings required to run Metacat. Click a blue question-mark 
-icon beside any setting for detailed instructions. More information about each 
-property is also included in the :doc:`metacat-properties`.
-
-.. figure:: images/screenshots/image021.png
-   :align: center
-
-   The Metacat Global Properties editing screen.
-   
-When you save global properties, Metacat also saves a back-up file that is 
-located in ``/var/metacat/.metacat`` (on Linux) or 
-``C:\Program Files\metacat\.metacat`` (on Windows). When you update Metacat, 
-the system automatically locates the back-up file so you do not have to re-enter 
-the configuration settings.
-
-The first time you install Metacat, the system attempts to automatically detect 
-the values for a number of settings (see table). It is important to ensure that 
-these values are correct.
-
-================  ============================================================
-Property          Description
-================  ============================================================
-Metacat Context   The name of the deployed Metacat WAR file (minus the .war 
-                  extension). E.g., "knb"
-Server Name       The DNS name of the server hosting Metacat, not including 
-                  port numbers or the "http://" header. 
-HTTP Port         The non-secure port where Metacat will be available.
-HTTP SSL Port     The secure port where Metacat will be available. 
-Deploy Location   The directory where the application is deployed. 
-================  ============================================================
-
-Authentication Configuration
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Because you must specify the Authentication settings before you can access the 
-main configuration page, the settings will always be configured when you view 
-them in the admin interface. If you wish to change the authentication settings, 
-you must restart Metacat to put the changes into effect. For more information 
-about the Authentication configurations, please see Initial Configurations.
-
-Skins Configuration
-~~~~~~~~~~~~~~~~~~~
-Customizing the look and feel of Metacat's Web interface is done via skins, 
-which are applied in the Skins Configuration section. If you have installed 
-the optional Registry, which provides a Web interface for creating, editing, 
-and submitting content to the Metacat, you can also choose which form fields 
-appear in that interface and which are required. Note that if you do not have 
-a custom skin AND you are not using the Registry, you can simply save the 
-default configuration.
-
-If your Metacat has a customized skin, it will appear as a choice in the 
-Skins Configuration settings (Figure 3.7). You can creat your own skins as 
-well. For more information about creating skins, please see the section called
-Creating a Custom Skin.
-
-.. figure:: images/screenshots/image023.png
-   :align: center
-
-   Configuring Metacat skins.
-   
-Select the checkbox next to your customized skin and click the 
-``Make <skin_name> default`` radio button. If you do not have a custom skin, 
-select the ``default`` skin. Once you have selected a skin, Metacat will open 
-a list of options that apply to the Registry interface.
-
-.. figure:: images/screenshots/image025.png
-   :align: center
-
-   Configuring Metacat skins.
-
-Select the lists and modules that you would like to appear in the Registry 
-form-interface by checking the box beside each. When you save the configuration, 
-the customized interface will appear to site visitors.
-
-Database Configuration
-~~~~~~~~~~~~~~~~~~~~~~
-Because the Database Configuration is dependent on values specified in the 
-Global Configuration section, the link to these settings does not become active 
-until after the global settings have been saved. Once the global settings have 
-been saved, Metacat automatically detects the database schema version and 
-upgrades it if necessary (and with your permission). 
-
-* New Installation
-* Upgrade
-
-New Installation
-................
-If Metacat determines that your database is new, the Database Install/Upgrade 
-utility lists the SQL scripts that will run in order to create a database 
-schema for the new version of Metacat.
-
-.. figure:: images/screenshots/image027.png
-   :align: center
-
-   Database installation creates tables needed for Metacat.
-   
-If the database is not new, or if you have any questions about whether it is 
-new or not, choose Cancel and contact support at knb-help@nceas.ucsb.edu. 
-
-When you choose Continue, Metacat runs the listed scripts and creates the 
-database schema.
-
-Upgrade
-.......
-If Metacat identifies a previous database schema, the Database Install/Upgrade 
-utility notes the existing version and lists the SQL scripts that will run in 
-order to update the schema for the new version of Metacat.
-
-If the detected schema version is incorrect, or if you have any questions about 
-whether it is correct or not, click the Cancel button and contact support at 
-knb-help@nceas.ucsb.edu.When you choose to continue, Metacat runs the listed 
-scripts and updates the database schema.
-
-.. figure:: images/screenshots/image029.png
-   :align: center
-
-   Upgrading an existing database.
-
-Geoserver Configuration (Highly Recommended)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-.. sidebar:: Manual Geoserver Update
-
-  Alternatively, you can change the Geoserver username and password manually by 
-  directly logging in to the Geoserver. To configure the credentials manually: 
-
-  1. Go to the Geoserver admin page: http://<your_context_url>/geoserver/ 
-  2. Log in using the default username and password ( admin / geoserver ) 
-  3. Navigate to the Password Change Page.  Enter a new user and password and click Submit. 
-  4. Click Apply then Save to save your new password. 
-  
-Metacat comes bundled with a Web Mapping Service called Geoserver, which 
-converts spatial data into Web-deliverable map images. Geoserver installs with 
-a default administrative username and password. *We highly recommend that you 
-change the default credentials so that only local administrators can make 
-changes to your Geoserver.* For more information about Geoserver, 
-see :doc:`geoserver`.
-
-When you choose the Geoserver Configuration link from the main configuration 
-screen, Metacat will prompt you for a few important details about your Geoserver 
-installation. The data directory and context settings allow Geoserver and 
-Metacat to share the same spatial data store and render maps within Metacat skins. 
-The security configuration prompts for a new admin password. After you enter 
-the new settings, Metacat writes the information to the Geoserver deployment.
-
-The default settings are typically appropriate for most Metacat deployments, 
-but if you wish to skip the Geoserver configuration, click the Bypass button. 
-Geoserver (if deployed) will remain with a default configuration and the main 
-Metacat configuration screen will display the "bypassed" status beside the 
-Geoserver settings. You will be able to run Metacat, but maps will not be 
-rendered.
-
-.. figure:: images/screenshots/image031.png
-   :align: center
-
-   Configuring Geoserver.
-
-Additional Configuration
-------------------------
-The most dynamic Metacat properties are managed and modified with the 
-form-based Metacat Configuration utility. These configuration properties can 
-also be accessed directly (along with additional static properties) via 
-Metacat's property files: ``metacat.properties`` (which contains global 
-properties, e.g., authorization and database values) and 
-``<SKIN_NAME>.properties`` (which contains skin-specific properties). Each of 
-these property files is discussed in more depth in this section.
-
-The ``metacat.properties`` file
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Metacat's ``metacat.properties`` file contains all of Metacat's global 
-properties, both the dynamic properties, which are managed with the 
-Configuration utility, as well as the more static properties, which can only 
-be modified manually in this file. The ``metacat.properties`` file also contains 
-optional properties that are only relevant when optional Metacat features 
-(such as the harvester or replication) are enabled. The `
-`metacat.properties file`` is found here::
-
-  <CONTEXT_DIR>/WEB_INF/metacat.properties
-
-Where ``<CONTEXT_DIR>`` is the directory in which the Metacat application code 
-lives (e.g., ``/var/lib/tomcat6/webapps/knb``). The path is a combination 
-of the Web application directory (e.g., ``/var/lib/tomcat6/webapps/``) and 
-the Metacat context directory (e.g., ``knb``). Both values depend upon how your 
-system was set up during installation.
-
-For information about each property and default or example settings, please 
-see the :doc:`metacat-properties`. Properties that can only be edited manually 
-in the metacat.properties file are highlighted in the appendix.
-
-<SKIN_NAME>.properties
-~~~~~~~~~~~~~~~~~~~~~~
-The ``<SKIN_NAME>.properties`` file contains skin-specific properties 
-(e.g., template information). For each skin, the skin-specific properties are 
-found here::
-
-  <CONTEXT_DIR>/style/skins/<SKIN_NAME>/<SKIN_NAME>.properties
-
-Where ``<CONTEXT_DIR>`` is the directory in which the Metacat application code 
-lives (described above) and ``<SKIN_NAME>`` is the name of the skin 
-(e.g., ``default`` or ``nceas``).
-
-Creating a custom skin
-~~~~~~~~~~~~~~~~~~~~~~
-Skins are used in Metacat to customize the appearance of the search and display
-web interface that is presented by Metacat.  Skins can be used to make a Metacat
-instance exactly integrate into an existing web site, and are fully customizable.
-
-To create and customize your own Metacat skin, you must first create a skin 
-directory. This is most easily accomplished by copying one of the existing skin 
-directories. Step-by-step directions for creating and installing a custom skin 
-are included below:
-
-1. Copy an exisiting skin directory. We recommend using the "default" directory.
-
-  ::
-  
-    sudo cp -r <CONTEXT_DIR>/style/skins/default/ <CONTEXT_DIR>/style/skins/[yourSkin]/
-
-  Where ``<CONTEXT_DIR>`` is the directory in which the Metacat application 
-  code lives  and ``[yourSkin]`` is the name you wish to apply to your skin.
-
-2. In ``[yourSkin]`` directory, change all files named ``default.xxx`` to 
-   ``yourSkin.xxx``. The following files should be changed:
-
-  ::
-  
-    default.css
-    default.js
-    default.properties
-    default.properties.metadata.xml
-    default.xml
-
-3. In the metacat.properties file(``<CONTEXT_DIR>/WEB_INF/metacat.properties``), 
-   add ``[yourSkin]`` to the value of the skin.names property.
-
-4. Restart Tomcat. Log in as the user that runs your Tomcat server (often "tomcat") and type:
-
-  ::
-  
-    /etc/init.d/tomcat6 restart
-
-Navigate to Metacat's Configuration utility  and select the Configure Skins 
-option. Your custom skin should appear as a choice in the skins list. Change 
-the layout and style by modifying the header, footer, css, and other files in 
-your new skin directory.
-
-It is important to note that all customized skins will be overwritten when 
-Metacat is reinstalled or upgraded. Please remember to back up your skins before
-reinstalling or upgrading Metacat.
Index: docs/dev/metacat/source/index.rst
===================================================================
--- docs/dev/metacat/source/index.rst	(revision 6870)
+++ docs/dev/metacat/source/index.rst	(nonexistent)
@@ -1,76 +0,0 @@
-
-Metacat Administrator's Guide
-=============================
-
-.. sidebar:: Version: 2.0.0
-
-    .. image:: themes/readable/static/metacat-logo.png
-       :height: 130pt
-
-    Send feedback and bugs to: 
-        metacat-dev@ecoinformatics.org
-        http://bugzilla.ecoinformatics.org
-
-    License: GPL
-    Release Date: January 20, 2012
-
-Metacat is a repository for data and metadata (documentation about data) that helps 
-scientists find, understand and effectively use data sets they manage or that 
-have been created by others. Thousands of data sets are currently documented in 
-a standardized way and stored in Metacat systems, providing the scientific 
-community with a broad range of science data that--because the data are well and 
-consistently described--can be easily searched, compared, merged, or used 
-in other ways.  
-
-- Metacat `Administrators Guide`_
-- Download Metacat
-    - Binary Distribution (A war file installation)
-        - GZIP File: metacat-bin-2.0.0.tar.gz_
-        - ZIP File: metacat-bin-2.0.0.zip_
-    - Source Distribution (Full source, requiring build)
-        - GZIP File: metacat-src-2.0.0.tar.gz_
-        - ZIP File: metacat-src-2.0.0.zip_
-    - `Older versions`_
-
-.. _Administrators Guide: http://knb.ecoinformatics.org/software/metacat/MetacatAdministratorGuide.pdf
-
-.. _metacat-bin-2.0.0.tar.gz: http://knb.ecoinformatics.org/software/dist/metacat-bin-2.0.0.tar.gz
-
-.. _metacat-bin-2.0.0.zip: http://knb.ecoinformatics.org/software/dist/metacat-bin-2.0.0.zip
-
-.. _metacat-src-2.0.0.tar.gz: http://knb.ecoinformatics.org/software/dist/metacat-src-2.0.0.tar.gz
-
-.. _metacat-src-2.0.0.zip: http://knb.ecoinformatics.org/software/dist/metacat-src-2.0.0.zip
-
-.. _Older versions: http://knb.ecoinformatics.org/software/dist/
-
-Contents
-========
-.. toctree::
-   :numbered:
-   :maxdepth: 2
-
-   intro
-   contributors
-   license
-   install
-   configuration
-   dataone
-   submitting
-   geoserver
-   replication
-   harvester
-   oaipmh
-   event-logging
-   sitemaps
-   authinterface
-   metacat-properties
-   development
-
-
-Indices and tables
-==================
-
-* :ref:`genindex`
-* :ref:`search`
-

Property changes on: docs/dev/metacat/source/index.rst
___________________________________________________________________
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Index: docs/dev/metacat/source/metacat-properties.rst
===================================================================
--- docs/dev/metacat/source/metacat-properties.rst	(revision 6870)
+++ docs/dev/metacat/source/metacat-properties.rst	(nonexistent)
@@ -1,383 +0,0 @@
-Appendix: Metacat Properties
-============================
-The most dynamic Metacat Properties are managed using Metacat's Configuration 
-Interface (see :doc:`configuration`). These properties, as well as other, 
-rarely modified ones can be found in the metacat.properties file. For more 
-information about the properties, click one of the following:
-
-* Server Properties
-* Application Properties
-* Database Properties
-* Authorization and Authentication Properties
-* XML/EML Properties
-
-Server Properties
------------------
-All of Metacat's server properties are managed with the form-based 
-configuration utility, though they can also be accessed More information on 
-each is included below.
-
-
-Metacat Server Properties
-
-+--------------------+------------------------------------------------------------------------------------------+------------------------+
-| Property           | Description                                                                              | Example                |
-+====================+==========================================================================================+========================+
-| server.name        | The network host name used to access Metacat. Note that this is not necessarily          | knb.ecoinformatics.org |
-|                    | the physical name of the server running Metacat. The host name should not                |                        |
-|                    | include the protocol prefix (http://).                                                   |                        |
-|                    |                                                                                          |                        |
-|                    | Default Value: localhost                                                                 |                        |
-+--------------------+------------------------------------------------------------------------------------------+------------------------+
-| server.httpPort    | The network port used to access Metacat for non-secure (standard) connections.           | 80                     |
-|                    | This is usually 80 if Apache Web server is running, and 8080 if Tomcat is running alone. |                        |
-|                    |                                                                                          |                        |
-|                    | Default Value: 80                                                                        |                        |
-+--------------------+------------------------------------------------------------------------------------------+------------------------+
-| server.httpSSLPort | The network port used to access Metacat for secure connections. This is usually          | 443                    |
-|                    | 443 if Apache Web server is running, and 8443 if Tomcat is running alone.                |                        |
-|                    |                                                                                          |                        |
-|                    | Default Value: 443                                                                       |                        |
-+--------------------+------------------------------------------------------------------------------------------+------------------------+
-
-Application Properties
-----------------------
-
-Metacat's application properties are described below. Properties that can only 
-be edited manually in the ``metacat.properties`` file are highlighted. All 
-others are managed with the properties configuration utility.
-
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| Property                       | Description                                                                 | Example                       |
-+================================+=============================================================================+===============================+
-| application.metacatVersion     | The Metacat version number. It is set by the build engineer                 | 1.9.0                         |
-|                                | at build time. Usually, the value should never be changed.                  |                               |
-|                                |                                                                             |                               |
-|                                | Default Value: X.X.X (where X.X.X is the current version of Metacat)        |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.metacatReleaseInfo | Release information for display purposes. Typically the property            | Release Candidate 1           |
-|                                | is set during the release candidate cycle to let users know which           |                               |
-|                                | candidate they are downloading.                                             |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.deployDir          | The directory where Web applications are deployed. Usually, the value       | /usr/local/tomcat/webapps     |
-|                                | is a directory named "webapps" in the Tomcat installation directory.        |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.context            | The name of the Metacat application directory in                            | knb                           |
-|                                | the deployment directory. This corresponds to the first part of the         |                               |
-|                                | WAR file name (the part before .war). Most commonly, this                   |                               |
-|                                | is "knb", but it can be changed to other things.                            |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.default-style      | A custom Metacat Web skin usually associated with                           | default                       |
-|                                | an organizational theme. If your organization has no                        |                               |
-|                                | custom skin, leave the value as "default".                                  |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.knbSiteURL         | The main KNB website.                                                       | http://knb.ecoinformatics.org |
-|                                |                                                                             |                               |
-|                                | Default Value: http://knb.ecoinformatics.org                                |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.datafilepath       | The directory in which to store data files. The directory should            | /var/metacat/data             |
-|                                | be outside the Metacat installation directories so data files will not      |                               |
-|                                | be lost when Metacat is upgraded. The data file directory must be           |                               |
-|                                | writable by the user that starts Tomcat (and thus Metacat).                 |                               |
-|                                |                                                                             |                               |
-|                                | Default Value: /var/metacat/data                                            |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.inlinedatafilepath | The directory where inline data files will be stored. Inline                | /var/metacat/inline-data      |
-|                                | data files are created from data that is embedded in EML                    |                               |
-|                                | metadata. The directory should be outside the Metacat installation          |                               |
-|                                | directories so data files will not be lost when Metacat is upgraded.        |                               |
-|                                | For clarity of data, this should probably not be the same as                |                               |
-|                                | ``application.datafilepath``. The data file directory must be               |                               |
-|                                | writable by the user that starts Tomcat (and thus Metacat).                 |                               |
-|                                |                                                                             |                               |
-|                                | Default Value: /var/metacat/inline-data                                     |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.documentfilepath   | The directory where metadata files will be stored.                          | /var/metacat/documents        |
-|                                | The directory should be outside the Metacat installation directories        |                               |
-|                                | so document files will not be lost when Metacat is upgraded. For            |                               |
-|                                | clarity of organization, this should probably not be the same as            |                               |
-|                                | ``application.datafilepath`` or ``application.inlinedatafilepath``.         |                               |
-|                                | The data file directory must be writable by the user that                   |                               |
-|                                | starts Tomcat (and thus Metacat).                                           |                               |
-|                                |                                                                             |                               |
-|                                | Default Value: /var/metacat/documents                                       |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-| application.tempDir            | The directory where the Metacat data registry stores temporary              | /var/metacat/temporary        |
-|                                | files. The directory should not be the same as ``application.datafilepath`` |                               |
-|                                | or ``application.inlinedatafilepath`` (or any other persistent file path)   |                               |
-|                                | because all files in this may be purged programmatically. The temporary     |                               |
-|                                | file directory must be writable by the user that starts Apache.             |                               |
-|                                |                                                                             |                               |
-|                                | Default Value: /var/metacat/temporary                                       |                               |
-+--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
-
-Database Properties
--------------------
-Metacat's database properties are described next. Properties that can only be 
-edited manually in the metacat.properties file are highlighted. All others 
-are managed with the properties configuration utility.
-
-Metacat Database Properties
-
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| Property                                   | Description                                                                                              | Example                                                 |
-+============================================+==========================================================================================================+=========================================================+
-| database.connectionURI                     | The JDBC connection URI for the main database instance of Metacat.                                       | ``jdbc:postgresql://yourserver.yourdomain.edu/metacat`` |
-|                                            | The URI is formatted like: ``jdbc:<database_type>:thin@<your_server_name>:1521:<metacat_database_name>`` |                                                         |
-|                                            | NOTE: You must create an empty database prior to initial Metacat configuration.                          |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: jdbc:postgresql://localhost/metacat                                                       |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.user                              | The user for the main database instance of Metacat. The user must                                        | metacat-user                                            |
-|                                            | have already been created on the database.                                                               |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.password                          | The password of the user for the main database instance of Metacat.                                      | securepassword4843                                      |
-|                                            | The password must have already been created for the user.                                                |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.type                              | The type of database you are running. Currently, there are two supported                                 | postgres                                                |
-|                                            | types, Oracle and Postgres.                                                                              |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.driver                            | The JDBC driver to be used to access the main database instance of Metacat.                              | org.postgresql.Driver                                   |
-|                                            | There is one driver associated with each type of database.                                               |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.adapter                           | The adapter class that allows Metacat to access your database type.                                      | edu.ucsb.nceas.dbadapter.PostgresqlAdapter              |
-|                                            | There is one adapter associated with each type of database.                                              |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.scriptsuffix.<database_type>      | The script suffix tells the system which database scripts to run                                         | postgres.sql                                            |
-|                                            | (postgres or oracle) when installing or updating database schema.                                        |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Values:                                                                                          |                                                         |
-|                                            | database.scriptsuffix.postgres=postgres.sql                                                              |                                                         |
-|                                            | database.scriptsuffix.oracle=oracle.sql                                                                  |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.upgradeVersion.<database_version> | Which database scripts to run when updating database schema. There is a                                  | upgrade-db-to-1.2                                       |
-|                                            | database.upgradeVersion entry for every Metacat database schema version.                                 |                                                         |
-|                                            | Each schema version corresponds to an application version.                                               |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Values:                                                                                          |                                                         |
-|                                            | database.upgradeVersion.0.0.0=xmltables,loaddtdschema                                                    |                                                         |
-|                                            | database.upgradeVersion.1.2.0=upgrade-db-to-1.2                                                          |                                                         |
-|                                            | database.upgradeVersion.1.3.0=upgrade-db-to-1.3                                                          |                                                         |
-|                                            | database.upgradeVersion.1.4.0=upgrade-db-to-1.4                                                          |                                                         |
-|                                            | database.upgradeVersion.1.5.0=upgrade-db-to-1.5                                                          |                                                         |
-|                                            | database.upgradeVersion.1.6.0=upgrade-db-to-1.6                                                          |                                                         |
-|                                            | database.upgradeVersion.1.7.0=upgrade-db-to-1.7                                                          |                                                         |
-|                                            | database.upgradeVersion.1.8.0=upgrade-db-to-1.8                                                          |                                                         |
-|                                            | database.upgradeVersion.1.9.0=upgrade-db-to-1.9                                                          |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.initialConnections                | The number of initial connection that Metacat creates to the database.                                   | 5                                                       |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 5                                                                                         |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.incrementConnections              | The number of connections Metacat creates when it requires                                               | 5                                                       |
-|                                            | more connections.                                                                                        |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 5                                                                                         |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.maximumConnections                | The maximum number of database connections Metacat can make.                                             | 25                                                      |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 200                                                                                       |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.maximumConnectionAge              | The maximum time in milliseconds that a database connection can live.                                    | 120000                                                  |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 120000                                                                                    |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.maximumConnectionTime             | The maximum time in milliseconds that a database connection can                                          | 60000                                                   |
-|                                            | accumulate in actual connection time.                                                                    |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 60000                                                                                     |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.maximumUsageNumber                | The maximum number of times a single connection can be used.                                             | 100                                                     |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 100                                                                                       |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.numberOfIndexingThreads           | The number of threads available for indexing.                                                            | 5                                                       |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 5                                                                                         |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.indexingTimerTaskTime             | The time in milliseconds between indexing.                                                               | 604800000                                               |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 604800000                                                                                 |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.indexingInitialDelay              | The delay in milliseconds before first indexing is executed.                                             | 3600000                                                 |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 3600000                                                                                   |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.maximumIndexDelay                 | The time in milliseconds that an indexing thread will wait when it                                       | 5000                                                    |
-|                                            | can't get a doc id before retrying the indexing.                                                         |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 5000                                                                                      |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.runDBConnectionRecycleThread      | Determines whether the database connection pool should run a thread to                                   | off                                                     |
-|                                            | recycle connections. Possible values are "on" and "off"                                                  |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: off                                                                                       |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.cycleTimeOfDBConnection           | The time in milliseconds between connection recycling runs.                                              | 30000                                                   |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 30000                                                                                     |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.queryignoredparams                | Parameters to ignore in a structured XML query.                                                          | enableediting                                           |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: enableediting,foo                                                                         |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.usexmlindex                       | Determines whether to use XML indexes when finding                                                       | true                                                    |
-|                                            | documents. Possible values are true and false.                                                           |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: true                                                                                      |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.appResultsetSize                  | Determines the number of results that can be returned to an application from a query.                    | 7000                                                    |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 7000                                                                                      |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.webResultsetSize                  | Determines the number of results that can be returned to a                                               | 7000                                                    |
-|                                            | Web browser from a query.                                                                                |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 7000                                                                                      |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.xmlReturnfieldCount               | If the query results of a query are returned more times                                                  | 0                                                       |
-|                                            | than this value, then those results will be inserted into the xml_queryresult                            |                                                         |
-|                                            | table in the database. For example, if you want results for                                              |                                                         |
-|                                            | a query to be stored in xml_queryresult only when it has been requested                                  |                                                         |
-|                                            | 50 times, set this value to 50.                                                                          |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 0                                                                                         |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.queryresultStringLength           | The max size of the query result string in the queryresult table. This                                   | 500000                                                  |
-|                                            | should be set to some number less than 4000 if an Oracle                                                 |                                                         |
-|                                            | database is being used.                                                                                  |                                                         |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 500000                                                                                    |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.queryresultCacheSize              | The number of query results that will be cached.                                                         | 500                                                     |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: 500                                                                                       |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-| database.queryCacheOn                      | Determines whether query caching is turned on. Possible values are "on" and "off"                        | on                                                      |
-|                                            |                                                                                                          |                                                         |
-|                                            | Default Value: on                                                                                        |                                                         |
-+--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
-
-Authorization and Authentication Properties
--------------------------------------------
-Metacat's authorization and authentication properties are described in the 
-table below. Properties that can only be edited manually in the ``metacat.properties`` 
-file are highlighted. All others are managed with the properties configuration utility.
-
-Authorization and Authentication Properties
-
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| Property                          | Description                                                                   | Example                                       |
-+===================================+===============================================================================+===============================================+
-| auth.class                        | The class used for user authentication. Currently, only the AuthLdap          | edu.ucsb.nceas.metacat.AuthLdap               |
-|                                   | class is included in the Metacat distribution.                                |                                               |
-|                                   | Note: If you implement another authentication strategy by implementing a Java |                                               |
-|                                   | class that extends the AuthInterface interface and rebuilding Metacat,        |                                               |
-|                                   | change this property to the fully qualified class name of your custom         |                                               |
-|                                   | authentication mechanism.                                                     |                                               |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: edu.ucsb.nceas.metacat.AuthLdap                                |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| auth.timeoutMinutes               | The number of minutes that a user will stay logged in to Metacat              | 180                                           |
-|                                   | without any activity.                                                         |                                               |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: 180                                                            |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| auth.administrators               | A colon separated list of LDAP users or groups that have administrative       | uid=youruser,o=NCEAS,dc=ecoinformatics,dc=org |
-|                                   | Metacat privileges. At least one user or group must be entered when           | cn=yourgroup,o=NCEAS,dc=ecoinformatics,dc=org |
-|                                   | Metacat is first installed and configured. All accounts must exist            |                                               |
-|                                   | in LDAP in order to continue with the configuration.                          |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| auth.url                          | The URL of the server that Metacat should use for authentication.             | ldap://ldap.ecoinformatics.org:389/           |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: ldap://ldap.ecoinformatics.org:389/                            |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| auth.surl                         | The URL of the server that Metacat should use for secure authentication.      | ldap://ldap.ecoinformatics.org:389/           |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: ldap://ldap.ecoinformatics.org:389/                            |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| auth.base                         | The base part of the distinguished name that Metacat uses for authentication. | dc=ecoinformatics,dc=org                      |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: dc=ecoinformatics,dc=org                                       |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| auth.allowedSubmitters            | A colon delimited list of users who should be allowed to submit documents     | uid=youruser,o=NCEAS,dc=ecoinformatics,dc=org |
-|                                   | to Metacat. If no value is specified, all users will be                       |                                               |
-|                                   | allowed to submit documents.                                                  |                                               |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: (none)                                                         |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| auth.deniedSubmitters             | A colon delimited list of users who should NOT be allowed to                  | uid=youruser,o=NCEAS,dc=ecoinformatics,dc=org |
-|                                   | submit documents. If no value is specified, all users will be allowed to      |                                               |
-|                                   | submit documents.                                                             |                                               |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: (none)                                                         |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| ldap.connectTimeLimit             | The time in milliseconds allowed for LDAP server connections.                 | 5000                                          |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: 5000                                                           |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| ldap.searchTimeLimit              | The time in milliseconds allowed for LDAP server searches.                    | 3000                                          |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: 30000                                                          |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| ldap.searchCountLimit             | The number of return entries allowed for LDAP server searches.                | 30000                                         |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: 30000                                                          |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| ldap.referral                     | The type of LDAP referrals to use. Possible values are "follow",              | follow                                        |
-|                                   | "throw" or "none". Refer to LDAP documentation for further information.       |                                               |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: follow                                                         |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| ldap.onlySecureConnection         | Determines whether to use only a secure LDAP server.                          | false                                         |
-|                                   | Acceptable values are "true" and "false".                                     |                                               |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: false                                                          |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-| ldap.onlySecureReferalsConnection | Determines whether to only use a secure referral server.                      | false                                         |
-|                                   | Acceptable values are "true" and "false".                                     |                                               |
-|                                   |                                                                               |                                               |
-|                                   | Default Value: false                                                          |                                               |
-+-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
-
-XML/EML Properties
-------------------
-Metacat's XML/EML properties are described ibelow. Properties that can only be 
-edited manually in the metacat.properties file are highlighted. 
-
-XML/EML Properties
-
-+-----------------------+------------------------------------------------------------------+---------------------------------------------------+
-| Property              | Description                                                      | Example                                           |
-+=======================+==================================================================+===================================================+
-| xml.saxparser         | The SAX parser used to parse XML documents. Metacat              | org.apache.xerces.parsers.SAXParser               |
-|                       | requires a SAX2-compatible XML parser.                           |                                                   |
-|                       |                                                                  |                                                   |
-|                       | Default Value: org.apache.xerces.parsers.SAXParser               |                                                   |
-+-----------------------+------------------------------------------------------------------+---------------------------------------------------+
-| xml.eml2_0_0namespace | The namespace of EML 2.0.0 documents.                            | eml://ecoinformatics.org/eml-2.0.0                |
-|                       |                                                                  |                                                   |
-|                       | Default Value: eml://ecoinformatics.org/eml-2.0.0                |                                                   |
-+-----------------------+------------------------------------------------------------------+---------------------------------------------------+
-| xml.eml2_0_1namespace | The namespace of EML 2.0.1 documents.                            | eml://ecoinformatics.org/eml-2.0.1                |
-|                       |                                                                  |                                                   |
-|                       | Default Value: eml://ecoinformatics.org/eml-2.0.1                |                                                   |
-+-----------------------+------------------------------------------------------------------+---------------------------------------------------+
-| xml.eml2_1_0namespace | The namespace of EML 2.1.0 documents.                            | eml://ecoinformatics.org/eml-2.1.0                |
-|                       |                                                                  |                                                   |
-|                       | Default Value: eml://ecoinformatics.org/eml-2.1.0                |                                                   |
-|                       |                                                                  |                                                   |
-| xml.packagedoctype    | The doctype of a package file. The system will only              | -//ecoinformatics.org//eml-dataset-2.0.0beta6//EN |
-|                       | recognize documents of this type as package files.               | -//ecoinformatics.org//eml-dataset-2.0.0beta4//EN |
-|                       | See: package documentation.                                      |                                                   |
-|                       |                                                                  |                                                   |
-|                       | Default Value: -//ecoinformatics.org//eml-dataset-2.0.0beta6//EN |                                                   |
-+-----------------------+------------------------------------------------------------------+---------------------------------------------------+
-| xml.accessdoctype     | The doctype of an access control list (ACL) file. The system     | -//ecoinformatics.org//eml-access-2.0.0beta6//EN  |
-|                       | will only recognize documents of this type as                    | -//ecoinformatics.org//eml-access-2.0.0beta4//EN  |
-|                       | access files. See: access control documentation.                 |                                                   |
-|                       |                                                                  |                                                   |
-|                       | Default Value: -//ecoinformatics.org//eml-access-2.0.0beta6//EN  |                                                   |
-+-----------------------+------------------------------------------------------------------+---------------------------------------------------+
-
-
Index: docs/dev/metacat/source/plantuml.conf
===================================================================
--- docs/dev/metacat/source/plantuml.conf	(revision 6870)
+++ docs/dev/metacat/source/plantuml.conf	(nonexistent)
@@ -1,57 +0,0 @@
-skinparam activityFontColor black
-skinparam activityFontSize 10
-skinparam activityFontName arial
-skinparam activityArrowFontColor black
-skinparam activityArrowFontSize 10
-skinparam activityArrowFontName arial
-skinparam classArrowFontColor black
-skinparam classArrowFontSize 10
-skinparam classArrowFontName arial
-skinparam classAttributeFontColor black
-skinparam classAttributeFontSize 10
-skinparam classAttributeFontName arial
-skinparam classFontColor black
-skinparam classFontSize 10
-skinparam classFontName arial
-skinparam componentFontColor black
-skinparam componentFontSize 10
-skinparam componentFontName arial
-skinparam componentArrowFontColor black
-skinparam componentArrowFontSize 10
-skinparam componentArrowFontName arial
-skinparam noteFontColor black
-skinparam noteFontSize 10
-skinparam noteFontName arial
-skinparam packageFontColor black
-skinparam packageFontSize 10
-skinparam packageFontName arial
-skinparam sequenceActorFontColor black
-skinparam sequenceActorFontSize 10
-skinparam sequenceActorFontName arial
-skinparam sequenceArrowFontColor black
-skinparam sequenceArrowFontSize 10
-skinparam sequenceArrowFontName arial
-skinparam sequenceGroupingFontColor black
-skinparam sequenceGroupingFontSize 10
-skinparam sequenceGroupingFontName arial
-skinparam sequenceGroupingHeaderFontColor black
-skinparam sequenceGroupingHeaderFontSize 10
-skinparam sequenceGroupingHeaderFontName arial
-skinparam sequenceParticipantFontColor black
-skinparam sequenceParticipantFontSize 10
-skinparam sequenceParticipantFontName arial
-skinparam sequenceTitleFontColor black
-skinparam sequenceTitleFontSize 10
-skinparam sequenceTitleFontName arial
-skinparam titleFontColor black
-skinparam titleFontSize 10
-skinparam titleFontName arial
-skinparam usecaseFontColor black
-skinparam usecaseFontSize 10
-skinparam usecaseFontName arial
-skinparam usecaseActorFontColor black
-skinparam usecaseActorFontSize 10
-skinparam usecaseActorFontName arial
-skinparam usecaseArrowFontColor black
-skinparam usecaseArrowFontSize 10
-skinparam usecaseArrowFontName arial
Index: docs/dev/metacat/source/replication.rst
===================================================================
--- docs/dev/metacat/source/replication.rst	(revision 6870)
+++ docs/dev/metacat/source/replication.rst	(nonexistent)
@@ -1,253 +0,0 @@
-Replication
-===========
-Metacat has a built-in replication feature that allows different Metacat servers 
-to share data (both XML documents and data files) between each other. Metacat 
-can replicate not only its home server's original documents, but also those 
-that were replicated from partner Metacat servers. When changes are made to 
-one server in a replication network, the changes are automatically propogated 
-to the network, even if the network is down.
-
-Replication allows users to manage their data locally and (by replicating them 
-to a shared Metacat repository) to make those data available to the greater 
-scientific community via a centralized search. In other words, your Metacat can 
-be part of a broader network, but you retain control over the local repository 
-and how it is managed.
-
-For example, the KNB Network (Figure 6.1), which currently consists of ten 
-different Metacat servers from around the world, uses replication to "join" 
-the disperate servers to form a single robust and searchable data 
-repository--facilitating data discovery, while leaving the data ownership and 
-management with the local administrators.
-
-.. figure:: images/screenshots/image059.jpg
-   :align: center
-   
-   A map of the KNB Metacat network.
-
-When properly configured, Metacat's replication mechanism can be triggered by 
-several types of events that occur on either the home or partner server: a 
-document insertion, an update, or an automatic replication (i.e., Delta-T 
-monitoring), which is set at a user-specified time interval.
-
-+----------------------+----------------------------------------------------------+
-| Replication Triggers | Description                                              |
-+======================+==========================================================+
-| Insert               | Whenever a document is inserted into Metacat, the server |
-|                      | notifies each server in its replication list             |
-|                      | that it has a new file available.                        |
-+----------------------+----------------------------------------------------------+
-| Update               | Whenever a document is updated, the server notifies      |
-|                      | each server in its replication list of the update.       |
-+----------------------+----------------------------------------------------------+
-| Delta-T monitoring   | At a user-specified time interval, Metacat checks each   |
-|                      | of the servers in its replication list                   |
-|                      | for updated documents.                                   |
-+----------------------+----------------------------------------------------------+
-
-Configuring Replication
------------------------
-To configure replication, you must configure both the home and partner servers:
-
-1. Create a list of partner servers on your home server using the Replication Control Panel
-2. Create certificate files for the home server
-3. Create certificate files for the partner server
-4. Import partner certificate files to the home server
-5. Import home certificate to the partner server
-6. Update your Metacat database 
-
-Each step is discussed in more detail in the following sections.
-
-Using the Replication Control Panel
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-To add, remove, or alter servers on your home server's Replication list, or to 
-activate and customize the Delta-T handler, use the Replication control panel, 
-which is accessed via the Metacat Administration interface at the following URL::
- 
-   http://somehost.somelocation.edu/context/admin
-   
-"http://somehost.somelocation.edu/context" should be replaced with the name 
-of your Metacat server and context (e.g., http://knb.ecoinformatics.org/knb/). 
-You must be logged in to Metacat as an administrator.
-
-.. figure:: images/screenshots/image061.jpg
-   :align: center
-   
-   Replication control panel.
-
-Note that currently, you cannot use the Replication Control Panel to remove a 
-server after a replication has occurred. At this point in time, the only way to 
-remove a replication server after replication has occurred is to remove the 
-certificates. 
-
-Generating and Exchanging Security Certificates
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Before you can take advantage of Metacat's replication feature, you must 
-generate security certificates on both the replication partner and home servers. 
-Depending on how the certificates are generated, the certificates may need to be
-exchanged so that each machine "trusts" that the other has replication access.
-Certificates that are purchased from a commercial and well-recognized 
-Certificate Authority do not need to be exchanged with the other replication
-partner before replication takes place.  Metacat replication relies on SSL with
-client certificate authentication enabled.  When a replication partner server 
-communicates with another replication partner, it presents a certificate that
-serves to verify and authenticate that the server is trusted.
-
-If you must generate a self-signed certificate, the partner replication server 
-will need the public certificate added to its existing Certificate Authorities. 
-
-Generate Certificates for Metacat running under Apache/Tomcat
-.............................................................
-Note: Instructions are for Ubuntu/Debian systems.
-
-1. Generate a private key using openssl. The key will be named 
-   ``<hostname>-apache.key``, where ``<hostname>`` is the name of your Metacat 
-   server. Example values for the individual key fields are included in the
-   table below.
-
-   ::
-   
-     openssl req -new -out REQ.pem -keyout <hostname>-apache.key
-
-   +--------------------------+-------------------------------------------------------------------------+
-   | Key Field                | Description and Example Value                                           |
-   +==========================+=========================================================================+
-   | Country Name             | Two letter country code  (e.g., US)                                     |
-   +--------------------------+-------------------------------------------------------------------------+
-   | State or Province Name   | The name of your state or province spelled in full (e.g., California)   |
-   +--------------------------+-------------------------------------------------------------------------+
-   | Locality Name            | The name of your city (e.g., Santa Barbara)                             |
-   +--------------------------+-------------------------------------------------------------------------+
-   | Organization Name        | The company or organization name (e.g., UCSB)                           |
-   +--------------------------+-------------------------------------------------------------------------+
-   | Organizational Unit Name | The department or section name (e.g., NCEAS)                            |
-   +--------------------------+-------------------------------------------------------------------------+
-   | Common Name              | The host server name without port numbers (e.g., myserver.mydomain.edu) |
-   +--------------------------+-------------------------------------------------------------------------+
-   | Email Address            | Administrator's contact email (e.g., administrator@mydomain.edu)        |
-   +--------------------------+-------------------------------------------------------------------------+
-   | A challenge password     | --leave this field blank--                                              |
-   +--------------------------+-------------------------------------------------------------------------+
-   | An optional company name | --leave this field blank--                                              |
-   +--------------------------+-------------------------------------------------------------------------+
-
-2. Create the local certificate file by running the command:
-
-   ::
-   
-     openssl req -x509 -days 800 -in REQ.pem -key <hostname>-apache.key -out <hostname>-apache.crt
-
-   Use the same ``<hostname>`` you used when you generated the key. A file named 
-   ``<hostname>-apache.crt`` will be created in the directory from which you 
-   ran the openssl command. Note: You can name the certificate file anything 
-   you'd like, but keep in mind that the file will be sent to the partner 
-   machine used for replication. The certificate name should have enough 
-   meaning that someone who sees it on that machine can figure out where it 
-   came from and for what purpose it should be used. 
-
-3. Enter the certificate into Apache's security configuration. This will
-   be used to identify your server to a replication partner. You must 
-   register the certificate in the local Apache instance. Note that the 
-   security files may be in a different directory from the one used in the 
-   instructions depending on how you installed Apache. Copy the certificate and 
-   key file using the following commands:
-   
-   ::
-   
-     sudo cp <hostname>-apache.crt /etc/ssl/certs 
-     sudo cp <hostname>-apache.key /etc/ssl/private 
-
-4. Apache needs to be configured to request a “client certificate” when the 
-   replication API is utilized. The helper file named "knb-ssl" has default 
-   rules that configure Apache for SSL and client certificate authentication. 
-   Set up these SSL settings by copying the knb-ssl file into the ``sites-available`` 
-   directory, editing pertinent values to match your system and running 
-   ``a2ensite`` to enable the site. (Note: some settings in knb-ssl need to be 
-   changed to match the specifics of your system.) 
-
-   ::
-   
-     sudo cp <metacat_helper_dir>/knb-ssl <apache_install_dir>/sites-available
-     sudo a2ensite knb-ssl
-
-5. Restart Apache to bring in changes by typing: 
-
-   ::
-   
-     sudo /etc/init.d/apache2 restart
-
-6. If using a self-signed certificate, SCP ``<hostname>-apache.crt`` to the 
-   replication partner machine where it will be added as an additional 
-   Certificate Authority.
-
-If using self-signed certificates, after you have created and SCP'd a 
-certificate file to each replication partner, and received a certificate file 
-from each partner in return, both home and partner servers must add the 
-respective partner certificates as Certificate Authorities.
-
-
-To import a certificate
-.......................
-1. Copy it into the Apache directory
-   
-   ::
-   
-     sudo cp <remotehostfilename> /etc/ssl/certs/
-
-2. Rehash the certificates for Apache by running: 
-
-   ::
-   
-     cd /etc/ssl/certs
-     sudo c_rehash
-
-
-   where the ``<remotehostfilename>`` is the name of the certificate file 
-   created on the remote partner machine and SCP'd to the home machine. 
-
-Update your Metacat database
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The simplest way to update the Metacat database to use replication is to use 
-the Replication Control Panel. You can also update the database u
-sing SQL. Instructions for both options are included in this section.
-
-.. figure:: images/screenshots/image063.jpg
-   :align: center
-   
-   Using the Replication Control Panel to update the Metacat database.
-
-To update your Metacat database to use replication, select the "Add this server" 
-radio button from the Replication Control Panel, enter the partner server name, 
-and specify how the replication should occur (whether to replicate xml, data, 
-or use the local machine as a hub).
-
-To update the database using SQL
-................................
-
-1. Log in to the database
-
-   ::
-   
-     psql -U metacat -W -h localhost metacat
-
-2. Select all rows from the replication table
-
-   ::
-
-     select * from xml_replication;  
-
-3. Insert the partner server. 
-
-   ::
-   
-     INSERT INTO xml_replication (server,last_checked,replicate,datareplicate,hub) VALUES ('<partner.server/context>/servlet/replication',NULL,1,1,0);
-
-   Where ``<partner.server/context>`` is the name of the partner server and 
-   context. The values 'NULL, 1,1,0' indicate (respectively) the last time 
-   replication occurred, that XML docs should be replicated to the partner 
-   server, that data files should be replicated to the partner server, and 
-   that the local server should not act as a hub. Set a value of 'NULL,0,0,0' 
-   if your Metacat is only receiving documents from the partner site and not 
-   replicating to that site.
-
-4. Exit the database 
-5. Restart Apache and Tomcat on both home and partner replication machines 
Index: docs/dev/metacat/source/dataone.rst
===================================================================
--- docs/dev/metacat/source/dataone.rst	(revision 6870)
+++ docs/dev/metacat/source/dataone.rst	(nonexistent)
@@ -1,5 +0,0 @@
-DataONE Member Nodes
-====================
-
-Chapter to be written.
-
Index: docs/dev/metacat/source/oaipmh.rst
===================================================================
--- docs/dev/metacat/source/oaipmh.rst	(revision 6870)
+++ docs/dev/metacat/source/oaipmh.rst	(nonexistent)
@@ -1,5 +0,0 @@
-OAI Protocol for Metadata Harvesting
-====================================
-
-Chapter to be written.
-
Index: docs/dev/metacat/source/themes/readable/theme.conf
===================================================================
--- docs/dev/metacat/source/themes/readable/theme.conf	(revision 6870)
+++ docs/dev/metacat/source/themes/readable/theme.conf	(nonexistent)
@@ -1,7 +0,0 @@
-[theme]
-inherit = sphinxdoc
-stylesheet = readable.css
-pygments_style = sphinx
-
-[options]
-bgcolor = #FFFFFF
Index: docs/dev/metacat/source/themes/readable/static/metacat-logo.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/themes/readable/static/metacat-logo.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/themes/readable/static/readable.css
===================================================================
--- docs/dev/metacat/source/themes/readable/static/readable.css	(revision 6870)
+++ docs/dev/metacat/source/themes/readable/static/readable.css	(nonexistent)
@@ -1,604 +0,0 @@
-/**
- * Sphinx theme based on sphinxdoc and arc90 readability.css
- * Dave Vieglais
- */
-
-body {
-    font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva', 'Verdana', sans-serif;
-    /*font-family:"Palatino Linotype", "Book Antiqua", Palatino, serif;*/
-    font-size: 14px;
-    letter-spacing: -0.01em;
-    line-height: 150%;
-    text-align: center;
-    /*background-color: #BFD1D4;*/
-    /*background: #F4F3DB;*/
-    background: white;
-    color: black;
-    /*color: #222;*/
-    padding: 0;
-    /*border: 1px solid #aaa;*/
-
-    margin: 0px 80px 0px 80px;
-    min-width: 740px;
-}
-
-a {
-    /*color: #CA7900;*/
-    color: #003399;
-    text-decoration: none;
-}
-
-a:hover {
-    /*color: #2491CF;*/
-    text-decoration:underline;
-}
-
-pre {
-    font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
-    font-size: 0.95em;
-    font-weight: bold;
-    letter-spacing: 0.015em;
-    padding: 0.5em;
-    border: 1px solid darkGray;
-    background-color: white;
-    color: #203030;
-    margin-left: 1em;
-}
-
-td.linenos pre {
-    padding: 0.5em 0;
-    border: 0;
-    background-color: transparent;
-    color: #aaa;
-}
-
-table.highlighttable {
-    margin-left: 0.5em;
-}
-
-table.highlighttable td {
-    padding: 0 0.5em 0 0.5em;
-}
-
-cite, code, tt {
-    font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
-    font-size: 0.95em;
-    letter-spacing: 0.01em;
-}
-
-hr {
-    border: 1px solid #abc;
-    margin: 2em;
-}
-
-tt {
-    background-color: #f2f2f2;
-    border-bottom: 1px solid #ddd;
-    color: #333;
-}
-
-tt.descname {
-    background-color: transparent;
-    font-weight: bold;
-    font-size: 1.2em;
-    border: 0;
-}
-
-tt.descclassname {
-    background-color: transparent;
-    border: 0;
-}
-
-tt.xref {
-    background-color: transparent;
-    font-weight: bold;
-    border: 0;
-}
-
-a tt {
-    background-color: transparent;
-    font-weight: bold;
-    border: 0;
-    /*color: #CA7900;*/
-    color: inherit;
-}
-
-/*a tt:hover {
-    color: #2491CF;
-}*/
-
-.field-list ul {
-    margin: 0;
-    padding-left: 1em;
-}
-
-.field-list p {
-    margin: 0;
-}
-
-dl {
-    margin-bottom: 15px;
-}
-
-dd p {
-    margin-top: 0px;
-}
-
-dd ul, dd table {
-    margin-bottom: 10px;
-}
-
-dd {
-    margin-top: 3px;
-    margin-bottom: 10px;
-    margin-left: 30px;
-}
-
-.refcount {
-    color: #060;
-}
-
-dt:target,
-.highlight {
-    background-color: #fbe54e;
-}
-
-dl.glossary dt {
-    font-weight: bold;
-    font-size: 1.1em;
-}
-
-pre {
-    line-height: 120%;
-}
-
-pre a {
-    color: inherit;
-    /*text-decoration: underline;*/
-}
-
-.first {
-    margin-top: 0 !important;
-}
-
-div.document {
-    background-color: white;
-    text-align: left;
-    background-image: url(contents.png);
-    background-repeat: repeat-x;
-}
-
-/*
-div.documentwrapper {
-    width: 100%;
-}
-*/
-div.banner {
-    height: 5.5em;
-}
-
-div.banner img {
-    height: 5em;
-    float: left;
-}
-
-div.banner p.title {
-    font-weight: bold;
-    font-size: 2em;
-    text-align: left;
-    margin-left: 2em;
-}
-
-div.clearer {
-    clear: both;
-}
-
-div.related h3 {
-    display: none;
-}
-
-div.related ul {
-    background-image: url(navigation.png);
-    height: 2em;
-    list-style: none;
-    border-top: 1px solid #ddd;
-    border-bottom: 1px solid #ddd;
-    margin: 0;
-    padding-left: 10px;
-}
-
-div.related ul li {
-    margin: 0;
-    padding: 0;
-    height: 2em;
-    float: left;
-}
-
-div.related ul li.right {
-    float: right;
-    margin-right: 5px;
-}
-
-div.related ul li a {
-    margin: 0;
-    padding: 0 5px 0 5px;
-    line-height: 1.75em;
-    /*color: #EE9816;*/
-    color: #555;
-}
-
-div.related ul li a:hover {
-    /*color: #3CA8E7;*/
-}
-
-div.body {
-    margin: 0;
-    padding: 0.5em 20px 20px 20px;
-}
-
-div.bodywrapper {
-    /*margin: 0 240px 0 0;*/
-    /*border-right: 1px solid #ccc;*/
-}
-
-div.body a {
-    /*text-decoration: underline;*/
-    text-decoration:inherit;
-}
-
-div.body a:hover {
-  text-decoration: underline;
-}
-
-div.sphinxsidebar {
-    margin: 0;
-    padding: 0.5em 15px 15px 0;
-    width: 210px;
-    float: right;
-    text-align: left;
-/*    margin-left: -100%; */
-}
-
-div.sphinxsidebarwrapper {
-  position: fixed;
-  width: 210px;
-}
-
-div.sphinxsidebar h4, div.sphinxsidebar h3 {
-    font-size: 0.9em;
-    /*margin: 1em 0 0.5em 0;
-    padding: 0.1em 0 0.1em 0.5em;
-    color: white;
-    border: 1px solid #86989B;
-    background-color: #AFC1C4; */
-}
-
-div.sphinxsidebar h3 a {
-    color: white;
-}
-
-div.sphinxsidebar a {
-  color: #555;
-}
-
-div.sphinxsidebar ul {
-    padding-left: 1.5em;
-    margin-top: 7px;
-    list-style: none;
-    padding: 0;
-    line-height: 130%;
-}
-
-div.sphinxsidebar ul ul {
-    list-style: square;
-    margin-left: 20px;
-}
-
-p {
-    margin: 0.8em 0 0.5em 0;
-}
-
-p.rubric {
-    font-weight: bold;
-}
-
-div.sidebar {
-    margin: 0 0 0.5em 1em;
-    border: 1px solid #ddb;
-    padding: 7px 7px 0 7px;
-    background-color: #B3B4C9;
-    width: 40%;
-    float: right;
-}
-
-div.quotebar {
-    background-color: #f8f8f8;
-    max-width: 250px;
-    float: right;
-    padding: 2px 7px;
-    border: 1px solid #ccc;
-}
-
-p.sidebar-title {
-    font-weight: bold;
-}
-
-div.topic {
-    background-color: #f8f8f8;
-    border: 1px solid #ccc;
-    padding: 7px 7px 0 7px;
-    margin: 10px 0 10px 0;
-}
-
-p.topic-title {
-    font-size: 1.1em;
-    font-weight: bold;
-}
-
-h1 {
-    margin: 0;
-    padding: 0.7em 0 0.3em 0;
-    /*font-size: 1.5em;*/
-    /*color: #11557C;*/
-    display: block;
-    border-bottom: 1px solid #333;
-    font-size: 1.4em;
-}
-
-h2 {
-    margin: 1.3em 0 0.2em 0;
-    font-size: 1.35em;
-    padding: 0;
-}
-
-h3 {
-    margin: 1em 0 -0.3em 0;
-    font-size: 1.2em;
-}
-
-div.body h1 a, div.body h2 a, div.body h3 a, div.body h4 a, div.body h5 a, div.body h6 a {
-    color: black!important;
-}
-
-h1 a.anchor, h2 a.anchor, h3 a.anchor, h4 a.anchor, h5 a.anchor, h6 a.anchor {
-    display: none;
-    margin: 0 0 0 0.3em;
-    padding: 0 0.2em 0 0.2em;
-    color: #aaa!important;
-}
-
-h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor,
-h5:hover a.anchor, h6:hover a.anchor {
-    display: inline;
-}
-
-h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover,
-h5 a.anchor:hover, h6 a.anchor:hover {
-    color: #777;
-    background-color: #eee;
-}
-
-table {
-    border-collapse: collapse;
-    margin: 0 -0.5em 0 -0.5em;
-}
-
-table td, table th {
-    padding: 0.2em 0.5em 0.2em 0.5em;
-}
-
-div.footer {
-    /*background-color: #E3EFF1;*/
-    color: #86989B;
-    padding: 3px 8px 3px 0;
-    clear: both;
-    font-size: 0.8em;
-    text-align: right;
-}
-
-div.footer a {
-    color: #86989B;
-    text-decoration: underline;
-}
-
-div.pagination {
-    margin-top: 2em;
-    padding-top: 0.5em;
-    border-top: 1px solid black;
-    text-align: center;
-}
-
-div.sphinxsidebar ul.toc {
-    margin: 1em 0 1em 0;
-    padding: 0 0 0 0.5em;
-    list-style: none;
-}
-
-div.sphinxsidebar ul.toc li {
-    margin: 0.5em 0 0.5em 0;
-    font-size: 0.9em;
-    line-height: 130%;
-}
-
-div.sphinxsidebar ul.toc li p {
-    margin: 0;
-    padding: 0;
-}
-
-div.sphinxsidebar ul.toc ul {
-    margin: 0.2em 0 0.2em 0;
-    padding: 0 0 0 1.8em;
-}
-
-div.sphinxsidebar ul.toc ul li {
-    padding: 0;
-}
-
-div.admonition, div.warning {
-    font-size: 0.9em;
-    margin: 1em 0 0 0;
-    border: 1px solid #86989B;
-    background-color: #f7f7f7;
-}
-
-div.admonition p, div.warning p {
-    margin: 0.5em 1em 0.5em 1em;
-    padding: 0;
-}
-
-div.admonition pre, div.warning pre {
-    margin: 0.4em 1em 0.4em 1em;
-}
-
-div.admonition p.admonition-title,
-div.warning p.admonition-title {
-    margin: 0;
-    padding: 0.1em 0 0.1em 0.5em;
-    color: white;
-    border-bottom: 1px solid #86989B;
-    font-weight: bold;
-    background-color: #AFC1C4;
-}
-
-div.warning {
-    border: 1px solid #940000;
-}
-
-div.warning p.admonition-title {
-    background-color: #CF0000;
-    border-bottom-color: #940000;
-}
-
-div.admonition ul, div.admonition ol,
-div.warning ul, div.warning ol {
-    margin: 0.1em 0.5em 0.5em 3em;
-    padding: 0;
-}
-
-div.versioninfo {
-    margin: 1em 0 0 0;
-    border: 1px solid #ccc;
-    background-color: #DDEAF0;
-    padding: 8px;
-    line-height: 1.3em;
-    font-size: 0.9em;
-}
-
-
-a.headerlink {
-    color: #c60f0f!important;
-    font-size: 1em;
-    margin-left: 6px;
-    padding: 0 4px 0 4px;
-    text-decoration: none!important;
-    visibility: hidden;
-}
-
-h1:hover > a.headerlink,
-h2:hover > a.headerlink,
-h3:hover > a.headerlink,
-h4:hover > a.headerlink,
-h5:hover > a.headerlink,
-h6:hover > a.headerlink,
-dt:hover > a.headerlink {
-    visibility: visible;
-}
-
-a.headerlink:hover {
-    background-color: #ccc;
-    color: white!important;
-}
-
-table.indextable td {
-    text-align: left;
-    vertical-align: top;
-}
-
-table.indextable dl, table.indextable dd {
-    margin-top: 0;
-    margin-bottom: 0;
-}
-
-table.indextable tr.pcap {
-    height: 10px;
-}
-
-table.indextable tr.cap {
-    margin-top: 10px;
-    background-color: #f2f2f2;
-}
-
-img.toggler {
-    margin-right: 3px;
-    margin-top: 3px;
-    cursor: pointer;
-}
-
-form.pfform {
-    margin: 10px 0 20px 0;
-}
-
-table.contentstable {
-    width: 90%;
-}
-
-table.contentstable p.biglink {
-    line-height: 150%;
-}
-
-a.biglink {
-    font-size: 1.3em;
-}
-
-span.linkdescr {
-    font-style: italic;
-    padding-top: 5px;
-    font-size: 90%;
-}
-
-ul.search {
-    margin: 10px 0 0 20px;
-    padding: 0;
-}
-
-ul.search li {
-    padding: 5px 0 5px 20px;
-    background-image: url(file.png);
-    background-repeat: no-repeat;
-    background-position: 0 7px;
-}
-
-ul.search li a {
-    font-weight: bold;
-}
-
-ul.search li div.context {
-    color: #888;
-    margin: 2px 0 0 30px;
-    text-align: left;
-}
-
-ul.keywordmatches li.goodmatch a {
-    font-weight: bold;
-}
-
-img.math {
-    vertical-align: center;
-}
-
-div.math {
-    text-align: center;
-}
-
-span.eqno {
-    float: right;
-}
-
-img.logo {
-    border: 0;
-}
-
-div.banner img.logo-right {
-    border: 0;
-    float: right;
-}
Index: docs/dev/metacat/source/themes/readable/static/nceas-logo.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/themes/readable/static/nceas-logo.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/themes/readable/layout.html
===================================================================
--- docs/dev/metacat/source/themes/readable/layout.html	(revision 6870)
+++ docs/dev/metacat/source/themes/readable/layout.html	(nonexistent)
@@ -1,223 +0,0 @@
-{%- block doctype -%}
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-{%- endblock %}
-{%- set reldelim1 = reldelim1 is not defined and ' &raquo;' or reldelim1 %}
-{%- set reldelim2 = reldelim2 is not defined and ' |' or reldelim2 %}
-
-{%- macro relbar() %}
-    <div class="related">
-      <h3>{{ _('Navigation') }}</h3>
-      <ul>
-
-        {%- if pagename != "search" %}
-        <li class="right">
-        <span id="searchbox" style="display: none; margin-right: 10px">
-            <form class="search" action="{{ pathto('search') }}" method="get">
-              <input type="text" name="q" size="18" />
-              <input type="submit" value="{{ _('Go') }}" />
-              <input type="hidden" name="check_keywords" value="yes" />
-              <input type="hidden" name="area" value="default" />
-            </form>
-        </span>
-        </li>
-        <script type="text/javascript">$('#searchbox').show(0);</script>
-        {%- endif %}
-
-
-        {%- for rellink in rellinks %}
-        <li class="right">
-          <a href="{{ pathto(rellink[0]) }}" title="{{ rellink[1]|striptags }}"
-             {{ accesskey(rellink[2]) }}>{{ rellink[3] }}</a>
-          {{ reldelim2 }}</li>
-        {%- endfor %}
-
-
-
-        {%- block rootrellink %}
-        <li><a href="{{ pathto(master_doc) }}">{{ shorttitle|e }}</a>{{ reldelim1 }}</li>
-        {%- endblock %}
-        {%- for parent in parents %}
-          <li><a href="{{ parent.link|e }}" {% if loop.last %}{{ accesskey("U") }}{% endif %}>{{ parent.title }}</a>{{ reldelim1 }}</li>
-        {%- endfor %}
-        {%- block relbaritems %} {% endblock %}
-      </ul>
-      
-    </div>
-{%- endmacro %}
-
-{%- macro sidebar() %}
-      {%- if not embedded %}{% if not theme_nosidebar|tobool %}
-      <div class="sphinxsidebar">
-        <div class="sphinxsidebarwrapper">
-          {%- block sidebarlogo %}
-          {%- if logo %}
-            <p class="logo"><a href="{{ pathto(master_doc) }}">
-              <img class="logo" src="{{ pathto('_static/' + logo, 1) }}" alt="Logo"/>
-            </a></p>
-          {%- endif %}
-          {%- endblock %}
-          {%- block sidebartoc %}
-          {%- if display_toc %}
-            <h3><a href="{{ pathto(master_doc) }}">{{ _('Table Of Contents') }}</a></h3>
-            {{ toc }}
-          {%- endif %}
-          {%- endblock %}
-          {%- block sidebarrel %}
-          {%- if prev %}
-            <h4>{{ _('Previous topic') }}</h4>
-            <p class="topless"><a href="{{ prev.link|e }}"
-                                  title="{{ _('previous chapter') }}">{{ prev.title }}</a></p>
-          {%- endif %}
-          {%- if next %}
-            <h4>{{ _('Next topic') }}</h4>
-            <p class="topless"><a href="{{ next.link|e }}"
-                                  title="{{ _('next chapter') }}">{{ next.title }}</a></p>
-          {%- endif %}
-          {%- endblock %}
-          {%- block sidebarsourcelink %}
-          {%- if show_source and has_source and sourcename %}
-            <h3>{{ _('This Page') }}</h3>
-            <ul class="this-page-menu">
-              <li><a href="{{ pathto('_sources/' + sourcename, true)|e }}"
-                     rel="nofollow">{{ _('Show Source') }}</a></li>
-            </ul>
-          {%- endif %}
-          {%- endblock %}
-          {%- if customsidebar %}
-          {% include customsidebar %}
-          {%- endif %}
-          {%- block sidebarsearch %}
-          {%- if pagename != "search" %}
-          <div id="searchbox" style="display: none">
-            <h3>{{ _('Quick search') }}</h3>
-              <form class="search" action="{{ pathto('search') }}" method="get">
-                <input type="text" name="q" size="18" />
-                <input type="submit" value="{{ _('Go') }}" />
-                <input type="hidden" name="check_keywords" value="yes" />
-                <input type="hidden" name="area" value="default" />
-              </form>
-              <p class="searchtip" style="font-size: 90%">
-              {{ _('Enter search terms or a module, class or function name.') }}
-              </p>
-          </div>
-          <script type="text/javascript">$('#searchbox').show(0);</script>
-          {%- endif %}
-          {%- endblock %}
-        </div>
-      </div>
-      {%- endif %}{% endif %}
-{%- endmacro %}
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-    {{ metatags }}
-    {%- if not embedded %}
-      {%- set titlesuffix = " &mdash; "|safe + docstitle|e %}
-    {%- else %}
-      {%- set titlesuffix = "" %}
-    {%- endif %}
-    <title>{{ title|striptags }}{{ titlesuffix }}</title>
-    <link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" />
-    <link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" />
-    {%- if not embedded %}
-    <script type="text/javascript">
-      var DOCUMENTATION_OPTIONS = {
-        URL_ROOT:    '{{ pathto("", 1) }}',
-        VERSION:     '{{ release|e }}',
-        COLLAPSE_MODINDEX: false,
-        FILE_SUFFIX: '{{ file_suffix }}',
-        HAS_SOURCE:  {{ has_source|lower }}
-      };
-    </script>
-    {%- for scriptfile in script_files %}
-    <script type="text/javascript" src="{{ pathto(scriptfile, 1) }}"></script>
-    {%- endfor %}
-    {%- if use_opensearch %}
-    <link rel="search" type="application/opensearchdescription+xml"
-          title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}"
-          href="{{ pathto('_static/opensearch.xml', 1) }}"/>
-    {%- endif %}
-    {%- if favicon %}
-    <link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/>
-    {%- endif %}
-    {%- endif %}
-{%- block linktags %}
-    {%- if hasdoc('about') %}
-    <link rel="author" title="{{ _('About these documents') }}" href="{{ pathto('about') }}" />
-    {%- endif %}
-    {%- if hasdoc('genindex') %}
-    <link rel="index" title="{{ _('Index') }}" href="{{ pathto('genindex') }}" />
-    {%- endif %}
-    {%- if hasdoc('search') %}
-    <link rel="search" title="{{ _('Search') }}" href="{{ pathto('search') }}" />
-    {%- endif %}
-    {%- if hasdoc('copyright') %}
-    <link rel="copyright" title="{{ _('Copyright') }}" href="{{ pathto('copyright') }}" />
-    {%- endif %}
-    <link rel="top" title="{{ docstitle|e }}" href="{{ pathto('index') }}" />
-    {%- if parents %}
-    <link rel="up" title="{{ parents[-1].title|striptags }}" href="{{ parents[-1].link|e }}" />
-    {%- endif %}
-    {%- if next %}
-    <link rel="next" title="{{ next.title|striptags }}" href="{{ next.link|e }}" />
-    {%- endif %}
-    {%- if prev %}
-    <link rel="prev" title="{{ prev.title|striptags }}" href="{{ prev.link|e }}" />
-    {%- endif %}
-{%- endblock %}
-{%- block extrahead %} {% endblock %}
-  </head>
-  <body>
-  <div class="banner">
-      <img class="logo" src="_static/metacat-logo.png" />
-      <img class="logo-right" src="_static/nceas-logo.png" />
-      <p class="title">Metacat: Metadata and Data Management Server</p>
-  </div>
-
-{%- block header %}{% endblock %}
-
-{%- block relbar1 %}{{ relbar() }}{% endblock %}
-
-{# Comment out the sidebar
-  {%- block sidebar1 %} {# possible location for sidebar  {% endblock %}
-#}
-    <div class="document">
-{%- block document %}
-      <div class="documentwrapper">
-      {%- if not embedded %}{% if not theme_nosidebar|tobool %}
-        <div class="bodywrapper">
-      {%- endif %}{% endif %}
-          <div class="body">
-            {% block body %} {% endblock %}
-          </div>
-      {%- if not embedded %}{% if not theme_nosidebar|tobool %}
-        </div>
-      {%- endif %}{% endif %}
-      </div>
-{%- endblock %}
-
-{# {%- block sidebar2 %}{{ sidebar() }}{% endblock %} #}
-      <div class="clearer"></div>
-    </div>
-
-{%- block relbar2 %}{{ relbar() }}{% endblock %}
-
-{%- block footer %}
-    <div class="footer">
-    {%- if hasdoc('copyright') %}
-      {% trans path=pathto('copyright'), copyright=copyright|e %}&copy; <a href="{{ path }}">Copyright</a> {{ copyright }}.{% endtrans %}
-    {%- else %}
-      {% trans copyright=copyright|e %}&copy; Copyright {{ copyright }}.{% endtrans %}
-    {%- endif %}
-    {%- if last_updated %}
-      {% trans last_updated=last_updated|e %}Last updated on {{ last_updated }}.{% endtrans %}
-    {%- endif %}
-    {%- if show_sphinx %}
-      {% trans sphinx_version=sphinx_version|e %}Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> {{ sphinx_version }}.{% endtrans %}
-    {%- endif %}
-    </div>
-{%- endblock %}
-  </body>
-</html>
Index: docs/dev/metacat/source/license.rst
===================================================================
--- docs/dev/metacat/source/license.rst	(revision 6870)
+++ docs/dev/metacat/source/license.rst	(nonexistent)
@@ -1,345 +0,0 @@
-License
-=======
-  
-::
-  
-                      GNU GENERAL PUBLIC LICENSE
-                         Version 2, June 1991
-  
-   Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-                         59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-   Everyone is permitted to copy and distribute verbatim copies
-   of this license document, but changing it is not allowed.
-  
-                              Preamble
-  
-    The licenses for most software are designed to take away your
-  freedom to share and change it.  By contrast, the GNU General Public
-  License is intended to guarantee your freedom to share and change free
-  software--to make sure the software is free for all its users.  This
-  General Public License applies to most of the Free Software
-  Foundation's software and to any other program whose authors commit to
-  using it.  (Some other Free Software Foundation software is covered by
-  the GNU Library General Public License instead.)  You can apply it to
-  your programs, too.
-  
-    When we speak of free software, we are referring to freedom, not
-  price.  Our General Public Licenses are designed to make sure that you
-  have the freedom to distribute copies of free software (and charge for
-  this service if you wish), that you receive source code or can get it
-  if you want it, that you can change the software or use pieces of it
-  in new free programs; and that you know you can do these things.
-  
-    To protect your rights, we need to make restrictions that forbid
-  anyone to deny you these rights or to ask you to surrender the rights.
-  These restrictions translate to certain responsibilities for you if you
-  distribute copies of the software, or if you modify it.
-  
-    For example, if you distribute copies of such a program, whether
-  gratis or for a fee, you must give the recipients all the rights that
-  you have.  You must make sure that they, too, receive or can get the
-  source code.  And you must show them these terms so they know their
-  rights.
-  
-    We protect your rights with two steps: (1) copyright the software, and
-  (2) offer you this license which gives you legal permission to copy,
-  distribute and/or modify the software.
-  
-    Also, for each author's protection and ours, we want to make certain
-  that everyone understands that there is no warranty for this free
-  software.  If the software is modified by someone else and passed on, we
-  want its recipients to know that what they have is not the original, so
-  that any problems introduced by others will not reflect on the original
-  authors' reputations.
-  
-    Finally, any free program is threatened constantly by software
-  patents.  We wish to avoid the danger that redistributors of a free
-  program will individually obtain patent licenses, in effect making the
-  program proprietary.  To prevent this, we have made it clear that any
-  patent must be licensed for everyone's free use or not licensed at all.
-  
-    The precise terms and conditions for copying, distribution and
-  modification follow.
-  
-                      GNU GENERAL PUBLIC LICENSE
-     TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-  
-    0. This License applies to any program or other work which contains
-  a notice placed by the copyright holder saying it may be distributed
-  under the terms of this General Public License.  The "Program", below,
-  refers to any such program or work, and a "work based on the Program"
-  means either the Program or any derivative work under copyright law:
-  that is to say, a work containing the Program or a portion of it,
-  either verbatim or with modifications and/or translated into another
-  language.  (Hereinafter, translation is included without limitation in
-  the term "modification".)  Each licensee is addressed as "you".
-  
-  Activities other than copying, distribution and modification are not
-  covered by this License; they are outside its scope.  The act of
-  running the Program is not restricted, and the output from the Program
-  is covered only if its contents constitute a work based on the
-  Program (independent of having been made by running the Program).
-  Whether that is true depends on what the Program does.
-  
-    1. You may copy and distribute verbatim copies of the Program's
-  source code as you receive it, in any medium, provided that you
-  conspicuously and appropriately publish on each copy an appropriate
-  copyright notice and disclaimer of warranty; keep intact all the
-  notices that refer to this License and to the absence of any warranty;
-  and give any other recipients of the Program a copy of this License
-  along with the Program.
-  
-  You may charge a fee for the physical act of transferring a copy, and
-  you may at your option offer warranty protection in exchange for a fee.
-  
-    2. You may modify your copy or copies of the Program or any portion
-  of it, thus forming a work based on the Program, and copy and
-  distribute such modifications or work under the terms of Section 1
-  above, provided that you also meet all of these conditions:
-  
-      a) You must cause the modified files to carry prominent notices
-      stating that you changed the files and the date of any change.
-  
-      b) You must cause any work that you distribute or publish, that in
-      whole or in part contains or is derived from the Program or any
-      part thereof, to be licensed as a whole at no charge to all third
-      parties under the terms of this License.
-  
-      c) If the modified program normally reads commands interactively
-      when run, you must cause it, when started running for such
-      interactive use in the most ordinary way, to print or display an
-      announcement including an appropriate copyright notice and a
-      notice that there is no warranty (or else, saying that you provide
-      a warranty) and that users may redistribute the program under
-      these conditions, and telling the user how to view a copy of this
-      License.  (Exception: if the Program itself is interactive but
-      does not normally print such an announcement, your work based on
-      the Program is not required to print an announcement.)
-  
-  These requirements apply to the modified work as a whole.  If
-  identifiable sections of that work are not derived from the Program,
-  and can be reasonably considered independent and separate works in
-  themselves, then this License, and its terms, do not apply to those
-  sections when you distribute them as separate works.  But when you
-  distribute the same sections as part of a whole which is a work based
-  on the Program, the distribution of the whole must be on the terms of
-  this License, whose permissions for other licensees extend to the
-  entire whole, and thus to each and every part regardless of who wrote it.
-  
-  Thus, it is not the intent of this section to claim rights or contest
-  your rights to work written entirely by you; rather, the intent is to
-  exercise the right to control the distribution of derivative or
-  collective works based on the Program.
-  
-  In addition, mere aggregation of another work not based on the Program
-  with the Program (or with a work based on the Program) on a volume of
-  a storage or distribution medium does not bring the other work under
-  the scope of this License.
-  
-    3. You may copy and distribute the Program (or a work based on it,
-  under Section 2) in object code or executable form under the terms of
-  Sections 1 and 2 above provided that you also do one of the following:
-  
-      a) Accompany it with the complete corresponding machine-readable
-      source code, which must be distributed under the terms of Sections
-      1 and 2 above on a medium customarily used for software interchange; or,
-  
-      b) Accompany it with a written offer, valid for at least three
-      years, to give any third party, for a charge no more than your
-      cost of physically performing source distribution, a complete
-      machine-readable copy of the corresponding source code, to be
-      distributed under the terms of Sections 1 and 2 above on a medium
-      customarily used for software interchange; or,
-  
-      c) Accompany it with the information you received as to the offer
-      to distribute corresponding source code.  (This alternative is
-      allowed only for noncommercial distribution and only if you
-      received the program in object code or executable form with such
-      an offer, in accord with Subsection b above.)
-  
-  The source code for a work means the preferred form of the work for
-  making modifications to it.  For an executable work, complete source
-  code means all the source code for all modules it contains, plus any
-  associated interface definition files, plus the scripts used to
-  control compilation and installation of the executable.  However, as a
-  special exception, the source code distributed need not include
-  anything that is normally distributed (in either source or binary
-  form) with the major components (compiler, kernel, and so on) of the
-  operating system on which the executable runs, unless that component
-  itself accompanies the executable.
-  
-  If distribution of executable or object code is made by offering
-  access to copy from a designated place, then offering equivalent
-  access to copy the source code from the same place counts as
-  distribution of the source code, even though third parties are not
-  compelled to copy the source along with the object code.
-  
-    4. You may not copy, modify, sublicense, or distribute the Program
-  except as expressly provided under this License.  Any attempt
-  otherwise to copy, modify, sublicense or distribute the Program is
-  void, and will automatically terminate your rights under this License.
-  However, parties who have received copies, or rights, from you under
-  this License will not have their licenses terminated so long as such
-  parties remain in full compliance.
-  
-    5. You are not required to accept this License, since you have not
-  signed it.  However, nothing else grants you permission to modify or
-  distribute the Program or its derivative works.  These actions are
-  prohibited by law if you do not accept this License.  Therefore, by
-  modifying or distributing the Program (or any work based on the
-  Program), you indicate your acceptance of this License to do so, and
-  all its terms and conditions for copying, distributing or modifying
-  the Program or works based on it.
-  
-    6. Each time you redistribute the Program (or any work based on the
-  Program), the recipient automatically receives a license from the
-  original licensor to copy, distribute or modify the Program subject to
-  these terms and conditions.  You may not impose any further
-  restrictions on the recipients' exercise of the rights granted herein.
-  You are not responsible for enforcing compliance by third parties to
-  this License.
-  
-    7. If, as a consequence of a court judgment or allegation of patent
-  infringement or for any other reason (not limited to patent issues),
-  conditions are imposed on you (whether by court order, agreement or
-  otherwise) that contradict the conditions of this License, they do not
-  excuse you from the conditions of this License.  If you cannot
-  distribute so as to satisfy simultaneously your obligations under this
-  License and any other pertinent obligations, then as a consequence you
-  may not distribute the Program at all.  For example, if a patent
-  license would not permit royalty-free redistribution of the Program by
-  all those who receive copies directly or indirectly through you, then
-  the only way you could satisfy both it and this License would be to
-  refrain entirely from distribution of the Program.
-  
-  If any portion of this section is held invalid or unenforceable under
-  any particular circumstance, the balance of the section is intended to
-  apply and the section as a whole is intended to apply in other
-  circumstances.
-  
-  It is not the purpose of this section to induce you to infringe any
-  patents or other property right claims or to contest validity of any
-  such claims; this section has the sole purpose of protecting the
-  integrity of the free software distribution system, which is
-  implemented by public license practices.  Many people have made
-  generous contributions to the wide range of software distributed
-  through that system in reliance on consistent application of that
-  system; it is up to the author/donor to decide if he or she is willing
-  to distribute software through any other system and a licensee cannot
-  impose that choice.
-  
-  This section is intended to make thoroughly clear what is believed to
-  be a consequence of the rest of this License.
-  
-    8. If the distribution and/or use of the Program is restricted in
-  certain countries either by patents or by copyrighted interfaces, the
-  original copyright holder who places the Program under this License
-  may add an explicit geographical distribution limitation excluding
-  those countries, so that distribution is permitted only in or among
-  countries not thus excluded.  In such case, this License incorporates
-  the limitation as if written in the body of this License.
-  
-    9. The Free Software Foundation may publish revised and/or new versions
-  of the General Public License from time to time.  Such new versions will
-  be similar in spirit to the present version, but may differ in detail to
-  address new problems or concerns.
-  
-  Each version is given a distinguishing version number.  If the Program
-  specifies a version number of this License which applies to it and "any
-  later version", you have the option of following the terms and conditions
-  either of that version or of any later version published by the Free
-  Software Foundation.  If the Program does not specify a version number of
-  this License, you may choose any version ever published by the Free Software
-  Foundation.
-  
-    10. If you wish to incorporate parts of the Program into other free
-  programs whose distribution conditions are different, write to the author
-  to ask for permission.  For software which is copyrighted by the Free
-  Software Foundation, write to the Free Software Foundation; we sometimes
-  make exceptions for this.  Our decision will be guided by the two goals
-  of preserving the free status of all derivatives of our free software and
-  of promoting the sharing and reuse of software generally.
-  
-                              NO WARRANTY
-  
-    11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-  FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-  OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-  PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-  OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-  TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-  PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-  REPAIR OR CORRECTION.
-  
-    12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-  WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-  REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-  INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-  OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-  TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-  YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-  PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-  POSSIBILITY OF SUCH DAMAGES.
-  
-                       END OF TERMS AND CONDITIONS
-  
-              How to Apply These Terms to Your New Programs
-  
-    If you develop a new program, and you want it to be of the greatest
-  possible use to the public, the best way to achieve this is to make it
-  free software which everyone can redistribute and change under these terms.
-  
-    To do so, attach the following notices to the program.  It is safest
-  to attach them to the start of each source file to most effectively
-  convey the exclusion of warranty; and each file should have at least
-  the "copyright" line and a pointer to where the full notice is found.
-  
-      <one line to give the program's name and a brief idea of what it does.>
-      Copyright (C) <year>  <name of author>
-  
-      This program is free software; you can redistribute it and/or modify
-      it under the terms of the GNU General Public License as published by
-      the Free Software Foundation; either version 2 of the License, or
-      (at your option) any later version.
-  
-      This program is distributed in the hope that it will be useful,
-      but WITHOUT ANY WARRANTY; without even the implied warranty of
-      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-      GNU General Public License for more details.
-  
-      You should have received a copy of the GNU General Public License
-      along with this program; if not, write to the Free Software
-      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-  
-  
-  Also add information on how to contact you by electronic and paper mail.
-  
-  If the program is interactive, make it output a short notice like this
-  when it starts in an interactive mode:
-  
-      Gnomovision version 69, Copyright (C) year name of author
-      Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-      This is free software, and you are welcome to redistribute it
-      under certain conditions; type `show c' for details.
-  
-  The hypothetical commands `show w' and `show c' should show the appropriate
-  parts of the General Public License.  Of course, the commands you use may
-  be called something other than `show w' and `show c'; they could even be
-  mouse-clicks or menu items--whatever suits your program.
-  
-  You should also get your employer (if you work as a programmer) or your
-  school, if any, to sign a "copyright disclaimer" for the program, if
-  necessary.  Here is a sample; alter the names:
-  
-    Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-    `Gnomovision' (which makes passes at compilers) written by James Hacker.
-  
-    <signature of Ty Coon>, 1 April 1989
-    Ty Coon, President of Vice
-  
-  This General Public License does not permit incorporating your program into
-  proprietary programs.  If your program is a subroutine library, you may
-  consider it more useful to permit linking proprietary applications with the
-  library.  If this is what you want to do, use the GNU Library General
-  Public License instead of this License.
Index: docs/dev/metacat/source/authinterface.rst
===================================================================
--- docs/dev/metacat/source/authinterface.rst	(revision 6870)
+++ docs/dev/metacat/source/authinterface.rst	(nonexistent)
@@ -1,12 +0,0 @@
-Creating a Java Class that Implements AuthInterface
-===================================================
-By default, Metacat supports the use of LDAP as an external authentication
-mechanism.  It does this by supplying a class (``AuthLDAP``) that implements
-authentication via an external LDAP server.  However, administrators have the 
-choice of replacing LDAP with a different system for authentication because 
-Metacat is written such that this Authentication provider is replaceable with 
-another class that implements the same interface (``AuthInterface``). As
-an Administrator, you have the choice to provide an alternative implementation
-of ``AuthInterface`` and then configuring ``metacat.properties`` to use that
-class for authentication instead of LDAP.
-
Index: docs/dev/metacat/source/development.rst
===================================================================
--- docs/dev/metacat/source/development.rst	(revision 6870)
+++ docs/dev/metacat/source/development.rst	(nonexistent)
@@ -1,17 +0,0 @@
-Appendix: Development Issues
-============================
-
-Metacat is an open source application, and we welcome contributions to the
-source from members of the community who are interested in helping out.  This
-section will contain a series of technical details about Metacat that will help
-contributors understand and extend Metacat.  Much of the detail needed here is
-contained in the Administrator's guide, which we will gradually migrate to this
-format.
-
-Contents:
-
-.. toctree::
-   :maxdepth: 2
-
-   identifiers
-
Index: docs/dev/metacat/source/submitting.rst
===================================================================
--- docs/dev/metacat/source/submitting.rst	(revision 6870)
+++ docs/dev/metacat/source/submitting.rst	(nonexistent)
@@ -1,958 +0,0 @@
-Accessing and Submitting Metadata and Data
-==========================================
-
-.. contents::
-
-The Metacat repository can be accessed and updated using a number of tools, 
-including: 
-
-* the Registry, Metacat's optional Web interface
-* user-created HTML forms 
-* Metacat's EarthGrid API
-* existing clients, such as KNB's Morpho application, designed to help 
-  scientists create, edit, and manage metadata
-* user-created desktop clients that take advantage of Metacat's Java API.
-
-In this section, we will look at how to take advantage of these tools to 
-customize Metacat for your user-base.
-
-A Brief Note about How Information is Stored
---------------------------------------------
-Metacat stores XML files as a hierarchy of nodes, where each node is stored as 
-records in database tables. Because many XML data schemas are broken up into 
-multiple DTDs requiring multiple XML files that are related but stored 
-separately in the system, the system uses "packages" to link related but 
-separate documents. Packaged documents contain information that shows how they 
-are related to eachother, essentially stating that file A has a relationship 
-to file B, etc. A package file also allows users to link metadata files to the 
-data files they describe. For more information about the structure of data 
-packages and how XML documents and data are stored in Metacat, please see the 
-developer's documentation.
-
-Using the Registry
-------------------
-Metacat's optional Registry provides a simple Web-based interface for creating, 
-editing, and submitting metadata to the Metacat repository (Figure 4.1). The 
-interface includes help documentation, and can be customized using Metacat's 
-configuration settings. The Registry also includes an administrative interface 
-for managing LDAP user accounts, which is useful if you are using LDAP as your 
-Metacat authentication system. Note that you must be running your own LDAP 
-server if you wish to use the LDAP Web interface. If you do not have your own 
-LDAP server, you can create and manage new accounts on the KNB website 
-(http://knb.ecoinformatics.org/). Please note that at this time, the Registry 
-interface has only been tested on Linux systems.
-
-.. figure:: images/screenshots/image033.jpg
-   :align: center
-
-   An example installation of the Register's web interface. Customize the 
-   displayed and required modules with the Skins Configuration settings.
-   
-You can customize which modules (e.g., "Name of Submitter" or "Temporal 
-Coverage of Data") are displayed and which are required using the Skins 
-Configuration settings
-
-Installing the Registry
-~~~~~~~~~~~~~~~~~~~~~~~
-In order to install and run the Registry, you must have Metacat installed and 
-Tomcat must be running behind an Apache Web server (see previous sections for 
-information about installing and configuring Apache to run with Tomcat).
-
-To install and run the Registry:
-
-1. Build the Metacat Perl client library:
-
-  ::
-
-    cd $METACAT/src/perl/Metacat
-    perl Makefile.PL
-    sudo make
-    sudo make install
-
-.. sidebar:: Instructions for Red Hat (Alternate Step 2)
-
-  * Install the libraries
-
-    ::
-    
-      sudo yum install gcc libxml2-devel libxslt-devel ant –y
-
-  * Install CPAN, which allows us to install the Perl dependencies for the 
-    registry and account management parts of Metacat. If asked to manually 
-    configure cpan, type 'no' and CPAN will be setup with its default values.
-
-    ::
-    
-      sudo yum install perl-CPAN
-      sudo cpan
-
-  * You should now see a prompt which looks like:
-
-    ::
-    
-      cpan>
-
-  * The rest of the commands assume you're inside of CPAN. Let's get the most 
-    recent version of the CPAN software. Just press return after any prompts 
-    you receive during this process.
-    
-    ::
-    
-      install Bundle::CPAN
-      reload cpan
-
-  * Install the required modules. Here we're installing an old LibXSLT, as the 
-    current one requires a newer libxslt than is available on Redhat 4 & 5. 
-    Again, just answer 'yes' to any questions.
-
-    ::
-
-      install AutoLoader
-      install CGI
-      install CGI::SEssion
-      install LWP::UserAgent
-      install Net::LDAP
-      install Template 
-      install URI
-      install MSERGEANT/XML-LibXSLT-1.58.tar.gz
-
-2. Install the required system libraries using Ubuntu/Debian (instructions 
-   Red Hat in sidebar)
-         
-  * Install the libraries
-
-    ::
-
-      sudo apt-get install ant libappconfig-perl libxml-libxml-perl libxml-libxslt-perl libtemplate-perl libcgi-session-perl libdigest-sha1-perl libnet-ldap-perl libterm-readkey-perl libxml-dom-perl libsoap-lite-perl -y
-
-  * Install two more package using cpan 
-
-    ::
-    
-      sudo cpan -i Config::Properties
-      sudo cpan -i Scalar::Util
-
-
-3. Double-check that Metacat's temporary folder, application.tempDir, is 
-   writable by the apache user, usually www-data or apache. 
-
-4. Make sure that the following scripts (found in ``<tomcat-home>/webapps/knb/cgi-bin``) 
-   are executable: register-dataset.cgi and ldapweb.cgi.
-
-  ::
-  
-    sudo chmod +x <tomcat-home>/webapps/knb/cgi-bin/*.cgi
-
-5. Restart Apache.
-
-  ::
-  
-    sudo /etc/init.d/apache2 restart
-
-6. Visit the resulting URL: 
-   http://<your_context_url>/cgi-bin/register-dataset.cgi?cfg=default
-   Where ``<your_context_url>`` is the URL of the server hosting the Metacat 
-   followed by the name of the WAR file (i.e., the application context) that 
-   you installed. For instance, the context URL for the KNB Metacat is: 
-   http://knb.ecoinformatics.org/knb.
-
-If everything worked correctly, the registry home page will open (see figure).
-
-.. figure:: images/screenshots/image035.jpg
-   :align: center
-
-   An example of the Registry home page (with the default skin).
-   
-Customizing the Registry
-~~~~~~~~~~~~~~~~~~~~~~~~
-Before using the registry, you may wish to customize the interface using the 
-Skins Configuration settings. If you are using the default skin, you must 
-disable the 'show site list' setting before you can submit the form without 
-errors. You may also wish to remove (or modify) the list of NCEAS-specific 
-projects that appear in the default registry. To remove these form fields, 
-open Metacat's administrative interface (http://<your.context.url>/knb/admin) 
-and select the Skins Specific Properties Configuration option. On the skins 
-configuration page, uncheck the boxes beside any form elements that you do not 
-wish to appear in the registry.
-
-Once you have saved your changes, you must restart Tomcat for them to come 
-into effect. To restart Tomcat, type: ``sudo /etc/init.d/tomcat6 restart`` or an 
-equivalent command appropriate to your operating system. 
-
-.. figure:: images/screenshots/image037.jpg
-   :align: center
-
-   Uncheck the box beside any setting to remove it from the Registry form. In 
-   the example, the "Show Site List" and "Show Work Group" form fields, 
-   corresponding to the "Station Name" and "NCEAS Project" drop-down lists in 
-   the registry form, have been removed.
-   
-Using HTML Forms (the HTTP Interface)
--------------------------------------
-Metacat's HTTP interface supports Get and Post requests and a variety of actions (Table 4.1) that facilitate information retrieval and storage. HTTP requests can be sent from any client application that communicates using the Web's HTTP protocol. 
-
-* Supported Actions (API)
-* Logging in
-* Inserting, Updating, and Deleting XML and Data Documents
-* Searching Metacat
-* Paged Query Return
-* Reading Data and Metadata
-
-Supported Actions
-~~~~~~~~~~~~~~~~~
-Metacat supports get and post requests as well as actions for writing, querying, 
-and reading stored XML. In addition, the HTTP interface includes functions for 
-validating and transforming XML documents (see table). 
-
-Note that if Replication is enabled, Metacat recognizes several additional 
-actions, included in Table 4.2. For more information about replication, 
-please see :doc:`replication`.
-
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| Action                   | Description and Parameters                                                                                                                                                                                                                                         |
-+==========================+====================================================================================================================================================================================================================================================================+
-| delete                   | Delete the specified document from the database. For an                                                                                                                                                                                                            |
-|                          | example, please see Inserting, Updating, and                                                                                                                                                                                                                       |
-|                          | Deleting XML and Data Documents.                                                                                                                                                                                                                                   |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document to delete                                                                                                                                                                                                                    |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| export                   | Export a data package in a zip file.                                                                                                                                                                                                                               |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document to delete                                                                                                                                                                                                                    |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getaccesscontrol         | Get the access control list (ACL) for the                                                                                                                                                                                                                          |
-|                          | specified document.                                                                                                                                                                                                                                                |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document to delete                                                                                                                                                                                                                    |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getalldocids             | Retrieve a list of all docids registered with the system.                                                                                                                                                                                                          |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``scope`` - a string used to match a range of docids in a SQL LIKE statement                                                                                                                                                                                       |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getdataguide             | Read a data guide for the specified document type                                                                                                                                                                                                                  |
-| DEPRECATED               |                                                                                                                                                                                                                                                                    |
-| Use getdtdschema instead | ``doctype`` - the doctype for which to get the data guide                                                                                                                                                                                                          |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getdoctypes              | Get all doctypes currently available in the Metacat Catalog System. No parameters.                                                                                                                                                                                 |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getdtdschema             | Read the DTD or XMLSchema file for the specified doctype.                                                                                                                                                                                                          |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``doctype`` - the doctype for which DTD or XMLSchema files to read                                                                                                                                                                                                 |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getlastdocid             | Get the latest docid with revision number used by user.                                                                                                                                                                                                            |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``username`` - the user's log-in name                                                                                                                                                                                                                              |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getlog                   | Get the latest docid with revision number used by user.                                                                                                                                                                                                            |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``ipaddress`` - the internet protocol address for the event                                                                                                                                                                                                        |
-|                          | ``principal`` - the principal for the event (a username, etc)                                                                                                                                                                                                      |
-|                          | ``docid`` - the identifier of the document to which the event applies                                                                                                                                                                                              |
-|                          | ``event`` - the string code for the event                                                                                                                                                                                                                          |
-|                          | ``start`` - beginning of date-range for query                                                                                                                                                                                                                      |
-|                          | ``end`` - end of date-range for query                                                                                                                                                                                                                              |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getloggedinuserinfo      | Get user info for the currently logged in user. No parameters.                                                                                                                                                                                                     |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getpricipals             | Get all users and groups in the current authentication schema. No parameters.                                                                                                                                                                                      |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getrevisionanddoctype    | Return the revision and doctype of a document.                                                                                                                                                                                                                     |
-|                          | The output is String that looks like "rev;doctype"                                                                                                                                                                                                                 |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document                                                                                                                                                                                                                              |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getversion               | Get Metacat version.   Return the current version of Metacat as XML. No parameters.                                                                                                                                                                                |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| insert                   | Insert an XML document into the database. For an example, please see                                                                                                                                                                                               |
-|                          | Inserting, Updating, and Deleting XML and Data Documents                                                                                                                                                                                                           |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the user-defined docid to assign to the new XML document                                                                                                                                                                                               |
-|                          | ``doctext`` - the text of the XML document to insert                                                                                                                                                                                                               |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| insertmultipart          | Insert an XML document using multipart encoding into the database.                                                                                                                                                                                                 |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the user-defined docid to assign to the new XML document                                                                                                                                                                                               |
-|                          | ``doctext`` - the text of the XML document to insert                                                                                                                                                                                                               |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| isregistered             | Check if an individual document exists in either the xml_documents or xml_revisions tables.                                                                                                                                                                        |
-|                          | For more information about Metacat's database schema, please see the developer documentation.                                                                                                                                                                      |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document                                                                                                                                                                                                                              |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| login                    | Log the user in. You must log in using this action before you can perform                                                                                                                                                                                          |
-|                          | many of the actions. For an example of the login action, see Logging In.                                                                                                                                                                                           |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``username`` - the user's login name                                                                                                                                                                                                                               |
-|                          | ``password`` - the user's password                                                                                                                                                                                                                                 |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| logout                   | Log the current user out and destroy the associated session. No parameters.                                                                                                                                                                                        |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| query                    | Perform a free text query. For an example, please see Searching Metacat.                                                                                                                                                                                           |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``returndoctype`` - the doctype to use for your Package View. For more information about packages, see http://knb.ecoinformatics.org/software/metacat/packages.html                                                                                                |
-|                          | ``qformat`` - the format of the returned result set. Possible values are html or xml or the name of your servlet's Metacat skin.                                                                                                                                   |
-|                          | ``querytitle`` - OPTIONAL - the title of the query                                                                                                                                                                                                                 |
-|                          | ``doctype`` - OPTIONAL - if doctype is specified, the search is limited only to the specified doctype(s). (e.g., eml://ecoinformatics.org/eml-2.0.1 and/or eml://ecoinformatics.org/eml-2.0.0) If no doctype element is specified, all document types are returned |
-|                          | ``returnfield`` - a custom field to be returned by any hit document.                                                                                                                                                                                               |
-|                          | ``operator`` - the Boolean operator to apply to the query. Possible values are: union or intersect                                                                                                                                                                 |
-|                          | ``searchmode`` - the type of search to be performed. Possible values are: contains, starts-with, ends-with, equals, isnot-equal, greater-than, less-than, greater-than-equals, less-than-equals.                                                                   |
-|                          | ``anyfield`` - a free-text search variable. The value placed in this parameter will be searched for in any document in any node.                                                                                                                                   |
-|                          | ``pagesize`` – the number of search results to display on each search results page (e.g., 10). Used with pagestart. See section 4.3.4 for an example.                                                                                                              |
-|                          | ``pagestart`` – the displayed search results page (e.g, 1). Used with pagesize. See section 4.3.4 for an example.                                                                                                                                                  |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| read                     | Get a document from the database and return it in the specified format. See Searching Metacat for an example.                                                                                                                                                      |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document to return                                                                                                                                                                                                                    |
-|                          | ``qformat`` - the format to return the document in. Possible values are: ``html``, ``xml``,or, if your Metacat uses a skin, the name of the skin.                                                                                                                  |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| readinlinedata           | Read inline data only.                                                                                                                                                                                                                                             |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``inlinedataid`` - the id of the inline data to read                                                                                                                                                                                                               |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| setaccess                | Change access permissions for a user on a specified document.                                                                                                                                                                                                      |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document to be modified.                                                                                                                                                                                                              |
-|                          | ``principal`` - the user or group whose permissions will be modified                                                                                                                                                                                               |
-|                          | ``permission`` - the permission  to set (read, write, all)                                                                                                                                                                                                         |
-|                          | ``permType`` - the type of permission to set (allow, deny)                                                                                                                                                                                                         |
-|                          | ``permOrder`` - the order in which to apply the permission (allowFirst, denyFirst)                                                                                                                                                                                 |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| spatial_query            | Perform a spatial query. These queries may include any of the queries supported by the                                                                                                                                                                             |
-|                          | WFS / WMS standards. For more information, see Spatial Queries.                                                                                                                                                                                                    |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``xmax`` - max x spatial coordinate                                                                                                                                                                                                                                |
-|                          | ``ymax`` - max y spatial coordinate                                                                                                                                                                                                                                |
-|                          | ``xmin`` - min x spatial coordinate                                                                                                                                                                                                                                |
-|                          | ``ymin`` - min y spatial coordinate                                                                                                                                                                                                                                |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| squery                   | Perform a structured query. For an example, please see Searching Metacat.                                                                                                                                                                                          |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``query`` - the text of the pathquery document sent to the server                                                                                                                                                                                                  |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| update                   | Overwrite an XML document with a new one and give the new one the same docid but with                                                                                                                                                                              |
-|                          | the next revision number. For an example, please see Inserting, Updating, and                                                                                                                                                                                      |
-|                          | Deleting XML and Data Documents.                                                                                                                                                                                                                                   |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document to update                                                                                                                                                                                                                    |
-|                          | ``doctext`` - the text with which to update the XML document                                                                                                                                                                                                       |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| upload                   | Upload (insert or update) a data file into Metacat. Data files are stored on Metacat and may be in any                                                                                                                                                             |
-|                          | format (binary or text), but they are all treated as if they were binary.                                                                                                                                                                                          |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the data file to upload                                                                                                                                                                                                                   |
-|                          | ``datafile`` - the data file to upload                                                                                                                                                                                                                             |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| validate                 | Validate a specified document against its DTD.                                                                                                                                                                                                                     |
-|                          |                                                                                                                                                                                                                                                                    |
-|                          | ``docid`` - the docid of the document to validate                                                                                                                                                                                                                  |
-|                          | ``valtext`` - the DTD by which to validate this document                                                                                                                                                                                                           |
-+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
-
-
-Metacat Replication Parameters
-
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| Action         | Description and Parameters                                                                                                                                      |
-+================+=================================================================================================================================================================+
-| forcereplicate | Force the local server to get the specified document from the remote host.                                                                                      |
-|                |                                                                                                                                                                 |
-|                | ``server`` - The server to which this document is being sent                                                                                                    |
-|                | ``docid`` - The docid of the document to send                                                                                                                   |
-|                | ``dbaction`` - The action to perform on the document: insert or update (the default)                                                                            |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getall         | Force the local server to check all known servers for updated documents. No parameters.                                                                         |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getcatalog     | Send the contents of the xml_catalog table encoded in XML. No parameters.                                                                                       |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| getlock        | Request a lock on the specified document.                                                                                                                       |
-|                |                                                                                                                                                                 |
-|                | ``docid`` - the docid of the document                                                                                                                           |
-|                | ``updaterev`` - the revision number of docid                                                                                                                    |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| gettime        | Return the local time on this server. No parameters.                                                                                                            |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| servercontrol  | Perform the specified replication control on the Replication daemon.                                                                                            |
-|                |                                                                                                                                                                 |
-|                | ``add`` - add a new server to the replication list                                                                                                              |
-|                | ``delete`` - remove a server from the replication list                                                                                                          |
-|                | ``list`` - list all of the servers currently in the server list                                                                                                 |
-|                | ``replicate`` - a Boolean flag (1 or 0) which determines if this server should copy files from the newly added server.                                          |
-|                | ``server`` - the server to add/delete                                                                                                                           |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| read           | Sends docid to the remote host.                                                                                                                                 |
-|                |                                                                                                                                                                 |
-|                | ``docid`` - the docid of the document to read                                                                                                                   |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| start          | Start the Replication daemon with a time interval of deltaT.                                                                                                    |
-|                |                                                                                                                                                                 |
-|                | ``rate`` - The rate (in seconds) at which you want the replication daemon to check for updated documents. The value cannot be less than 30. The default is 1000 |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| stop           | Stop the Replication daemon. No parameters.                                                                                                                     |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-| update         | Send a list of all documents on the local server along with their revision numbers. No parameters.                                                              |
-+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
-
-Logging In
-~~~~~~~~~~
-To log in to Metacat, use the ``login`` action.
-
-The following is an example of a Web form (see figure) that logs a user into 
-Metact. Example HTML code is included below the screenshot.
-
-.. figure:: images/screenshots/image039.jpg
-   :align: center
-   
-   Logging into Metacat using an HTML form.
-
-::
-
-  <html>
-  <body>
-  <form name="loginform" method="post"action="http://yourserver.com/yourcontext/servlet/metacat" 
-  target="_top" onsubmit="return submitform(this);" id="loginform">
-    <input type="hidden" name="action" value="login"> <input type=
-    "hidden" name="username" value=""> <input type="hidden" name=
-    "qformat" value="xml"> <input type="hidden" name=
-    "enableediting" value="false">
-
-    <table>
-      <tr valign="middle">
-        <td align="left" valign="middle" class="text_plain">
-        username:</td>
-
-        <td width="173" align="left" class="text_plain" style=
-        "padding-top: 2px; padding-bottom: 2px;"><input name="uid"
-        type="text" style="width: 140px;" value=""></td>
-      </tr>
-
-      <tr valign="middle">
-        <td height="28" align="left" valign="middle" class=
-        "text_plain">organization:</td>
-
-        <td align="left" class="text_plain" style=
-        "padding-top: 2px; padding-bottom: 2px;"><select name=
-        "organization" style="width:140px;">
-          <option value=""    selected>&#8212; choose one &#8212;</option>
-          <option value="NCEAS">NCEAS</option>
-          <option value="LTER">LTER</option>
-          <option value="UCNRS">UCNRS</option>
-          <option value="PISCO">PISCO</option>
-          <option value="OBFS">OBFS</option>
-          <option value="OSUBS">OSUBS</option>
-          <option value="SAEON">SAEON</option>
-          <option value="SANParks">SANParks</option>
-          <option value="SDSC">SDSC</option>
-          <option value="KU">KU</option>
-          <option value="unaffiliated">unaffiliated</option>
-        </select></td>
-      </tr>
-
-      <tr valign="middle">
-        <td width="85" align="left" valign="middle" class=
-        "text_plain">password:</td>
-
-        <td colspan="2" align="left" class="text_plain" style=
-        "padding-top: 2px; padding-bottom: 2px;">
-          <table width="100%" border="0" cellpadding="0"
-          cellspacing="0">
-            <tr>
-              <td width="150" align="left"><input name="password"
-              type="password" maxlength="50" style="width:140px;"
-              value=""></td>
-
-              <td align="center" class="buttonBG_login">
-              <input type="submit" name="loginAction" value="Login"
-              class="button_login"></td>
-
-              <td align="left">&nbsp;</td>
-            </tr>
-          </table>
-        </td>
-      </tr>
-    </table>
-  </form>
-  </body>
-  </html>
-
-Inserting, Updating, and Deleting XML and Data Documents
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Adding, editing, and deleting XML documents in Metacat can be accomplished 
-using the insert, update, and delete actions, respectively. Before you can 
-insert, delete, or update documents, you must log in to Metacat using the 
-login action. See Logging in for an example.
-
-``insert``
-   Insert a new XML or data document into Metacat. You must specify a document ID.
-   
-``update``
-   Update an existing Metacat document. The original document is archived, 
-   then overwritten.
-
-``delete``
-   Archive a document and move the pointer in xml_documents to xml_revisions, 
-   effectively "deleting" the document from public view, but preserving the 
-   revision for the revision history.
-
-The following is an example of a Web form (see figure) that can perform all 
-three tasks. Example HTML code is included in the sidebar.
-
-.. figure:: images/screenshots/image041.jpg
-   :align: center
-   
-   An example of a Web form used to insert, delete, or update XML documents in Metacat.
-
-::
-
-  <html>
-    <head>
-    <title>MetaCat</title>
-    </head>
-    <body class="emlbody">
-    <b>MetaCat XML Loader</b>
-    <p>
-    Upload, Change, or Delete an XML document using this form.
-    </p>
-    <form action="http://yourserver.com/yourcontext/servlet/metacat" method="POST">
-      <strong>1. Choose an action: </strong>
-      <input type="radio" name="action" value="insert" checked> Insert
-      <input type="radio" name="action" value="update"> Update
-      <input type="radio" name="action" value="delete"> Delete
-      <input type="submit" value="Process Action">
-      <br />
-      <strong>2. Provide a Document ID </strong>
-      <input type="text" name="docid"> (optional for Insert)
-         <input type="checkbox" name="public" value="yes" checked><strong>Public Document</strong>
-      <br />
-      <strong>3. Provide XML text </strong> (not needed for Delete)<br/>
-      <textarea name="doctext" cols="65" rows="15"></textarea><br/>
-      <strong>4. Provide DTD text for upload </strong> (optional; not needed for Delete)
-      <textarea name="dtdtext" cols="65" rows="15"></textarea>
-    </form>
-    </body>
-  </html>
-
-Searching Metacat
-~~~~~~~~~~~~~~~~~
-To search Metacat use the ``query`` or ``squery`` actions. 
-
-``query``:   
-   Perform a free text query. Specify the returndoctype, qformat, returnfield, 
-   operator, searchmode, anyfield, and (optionally) a querytitle and doctype. 
-
-``squery``:
-   Perform a structured query by submitting an XML pathquery document to the 
-   Metacat server.
- 
-
-When Metacat receives a query via HTTP (Figure 4.8), the server creates a 
-"pathquery" document, which is an XML document populated with the specified 
-search criteria (Figure 4.10). The pathquery document is then translated into 
-SQL statements that are executed against the data base. Results are translated 
-into an XML "resultset" document, which can be returned as XML or transformed 
-into HTML and returned (specify which you would prefer with the returnfield 
-parameter). You can also opt to submit a pathquery document directly, 
-using an squery action.
-
-.. figure:: images/screenshots/image043.jpg
-   :align: center
-   
-   Example of a basic search form using a query action. 
-
-::
-
-  <html>
-  <head>
-  <title>Search</title>
-  </head>
-  <body>
-  <form method="POST" action="http://panucci.nceas.ucsb.edu/knb/servlet/metacat">
-
-  Search for:
-
-  <input name="action" value="query" type="hidden">
-  <input name="operator" value="INTERSECT" type="hidden">
-  <input name="anyfield" type="text" value=" " size="40">
-  <input name="qformat" value="html" type="hidden">
-  
-  <input name="returnfield" value="creator/individualName/surName" type="hidden">
-  <input name="returnfield" value="creator/individualName/givenName" type="hidden">
-  <input name="returnfield" value="creator/organizationName" type="hidden">
-  <input name="returnfield" value="dataset/title" type="hidden">
-  <input name="returnfield" value="keyword" type="hidden">
-
-  <input name="returndoctype" value="eml://ecoinformatics.org/eml-2.0.1" type="hidden">
-
-  <input value="Start Search" type="submit">
-
-  </form>
-  </body>
-  </html>
-  
-Metacat's pathquery document can query specific fields of any XML document. 
-The pathquery can also be used to specify which fields from each hit are 
-returned and displayed in the search result set.
-
-::
-
-  <pathquery version="1.0">
-      <meta_file_id>unspecified</meta_file_id>
-      <querytitle>unspecified</querytitle>
-      <returnfield>dataset/title</returnfield>
-      <returnfield>keyword</returnfield>
-      <returnfield>originator/individualName/surName</returnfield>
-      <returndoctype>eml://ecoinformatics.org/eml-2.0.1</returndoctype>
-      <returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype>
-      <querygroup operator="UNION">
-        <queryterm casesensitive="false" searchmode="contains">
-          <value>Plant</value>
-          <pathexpr>dataset/title</pathexpr>
-        </queryterm>
-        <queryterm casesensitive="false" searchmode="contains">
-          <value>plant</value>
-          <pathexpr>keyword</pathexpr>
-        </queryterm>
-      </querygroup>
-  </pathquery>
-  
-Each ``<returnfield>`` parameter specifies a field that the data base will 
-return (in addition to the fields Metacat returns by default) for each search 
-result. 
-
-The ``<returndoctype>`` field limits the type of returned documents 
-(eg, eml://ecoinformatics.org/eml-2.0.1 and/or eml://ecoinformatics.org/eml-2.0.0). 
-If no returndoctype element is specified, all document types are returned. 
-
-A ``<querygroup>`` creates an AND or an OR statement that applies to the 
-nested ``<queryterm>`` tags. The querygroup operator can be UNION or INTERSECT. 
-A ``<queryterm>`` defines the actual field (contained in ``<pathexpr>`` tags) 
-against which the query (contained in the ``<value>`` tags) is being performed. 
-
-The ``<pathexpr>`` can also contain a document type keyword contained in 
-``<returndoc>`` tags. The specified document type applies only to documents 
-that are packaged together (e.g., a data set and its corresponding metadata file). 
-If Metacat identifies the search term in a packaged document, the servlet will 
-check to see if that document's type matches the specified one. If not, 
-Metacat will check if one of the other documents in the package matches. If so, 
-Metacat will return the matching document. For more information about packages, 
-please see the developer documentation.
-
-After Metacat has processed a Pathquery document, it returns a resultset document.
-
-::
-
-  <resultset>
-        <query>
-          <pathquery version="1.0">
-            <meta_file_id>unspecified</meta_file_id>
-            <querytitle>unspecified</querytitle>
-            <returnfield>dataset/title</returnfield>
-            <returnfield>keyword</returnfield>
-            <returnfield>originator/individualName/surName</returnfield>
-            <returndoctype>eml://ecoinformatics.org/eml-2.0.1</returndoctype>
-            <returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype>
-            <querygroup operator="UNION">
-                  <queryterm casesensitive="false" searchmode="contains">
-                      <value>Datos</value>
-                      <pathexpr>dataset/title</pathexpr>
-                  </queryterm>
-                  <queryterm casesensitive="false" searchmode="contains">
-                     <value>plant</value>
-                     <pathexpr>keyword</pathexpr>
-                  </queryterm>
-           </querygroup>
-         </pathquery>
-        </query>  
-      
-        <document>
-          <docid>nceas.44.1</docid>
-          <docname>resource</docname>
-          <doctype>eml://ecoinformatics.org/eml-2.0.1</doctype>
-          <createdate>2001-01-12 16:12:06.0</createdate>
-          <updatedate>2001-01-12 16:12:06.0</updatedate>
-          <param name="dataset/title">Datos Meteorologicos</param>
-          <param name="keyword">intertidal</param>
-          <param name="originator/individualName/surName">Smith</param>
-        </document>  
-        
-        <document>
-          <docid>nceas.42.1</docid>
-          <docname>resource</docname>
-          <doctype>eml://ecoinformatics.org/eml-2.0.1</doctype>
-          <createdate>2001-01-12 16:11:31.0</createdate>
-          <updatedate>2001-01-12 16:11:31.0</updatedate>
-          <param name="dataset/title">Ocean Surface Temperature</param>
-          <param name="keyword">Plant</param>
-          <param name="originator/individualName/surName">Henry</param>   
-       </document>
-      .....  
-  </resultset>
-
-When Metacat returns a resultset document, the servlet always includes the 
-pathquery used to create it. The pathquery XML is contained in the <query> tag, 
-the first element in the resultset.
-
-Each XML document returned by the query is represented by a ``<document>`` tag. By 
-default, Metacat will return the docid, docname, doctype, doctitle, createdate 
-and updatedate for each search result. If the user specified additional return 
-fields in the pathquery using ``<returnfield>`` tags (e.g., dataset/title to return 
-the document title), the additional fields are returned in ``<param>`` tags. 
-
-Metacat can return the XML resultset to your client as either XML or HTML.
-
-Paged Query Returns
-~~~~~~~~~~~~~~~~~~~
-Dividing large search result sets over a number of pages speeds load-time and 
-makes the result sets more readable to users (Figure 4.12). To break your search 
-results into pages, use the query action's optional pagestart and pagesize 
-parameters. The pagesize parameter indicates how many results should be 
-returned for a given page. The pagestart parameter indicates which page you 
-are currently viewing.
-
-.. figure:: images/screenshots/image045.jpg
-   :align: center
-   
-   An example of paged search results. 
-
-When a paged query is performed, the query's resultset contains four extra 
-fields: pagestart, pagesize, nextpage, and previouspage (Figure 4.13).  The 
-nextpage and previouspage fields help Metacat generate navigational links in 
-the rendered resultset using XSLT to transform the XML to HTML. 
-
-:: 
-
-  <!-- An example of an XML resultset that include support for page breaks. 
-       The pagestart parameter will always indicate the page you are currently viewing.
-  -->
-  <resultset>
-      <pagestart>1</pagestart>
-      <pagesize>10</pagesize>
-      <nextpage>2</nextpage>
-      <previouspage>0</previouspage>
-      <query> ...</query>
-      <document>...</document>
-      <document>...</document>
-    </resultset>
-
-The HTML search results displayed in the figure were rendered using Kepler's XSLT, 
-which can be found in lib/style/skins/kepler. Kepler's XSLT uses the four extra 
-resultset fields to render the "Next" and "Previous" links.
-
-::
-  
-  <a href="metacat?action=query&operator=INTERSECT&enableediting=false&anyfield=actor&qformat=kepler&pagestart=0&pagesize=10">Previous Page</a>
-  <a href="metacat?action=query&operator=INTERSECT&enableediting=false&anyfield=actor&qformat=kepler&pagestart=2&pagesize=10">Next Page</a>
-  
-In the example above, the current page is 1, and the previous page (page 0) and next page (page 2) pages are indicated by the values of the pagestart parameters.
-
-Reading Data and Metadata
-~~~~~~~~~~~~~~~~~~~~~~~~~
-To read data or metadata from Metacat, use the ``read`` action. The ``read`` action 
-takes two parameters: ``docid``, which specifies the document ID of the document 
-to return, and ``qformat``, which specifies the return format for the document 
-(``html`` or ``xml`` or the name of a configured style-set, e.g., ``default``). If ``qformat`` 
-is set to ``xml``, Metacat will return the XML document untransformed. If the 
-return format is set to ``html``, Metacat will transform the XML document into 
-HTML using the default XSLT style sheet (specified in the Metacat 
-configuration). If the name of a style-set is specified, Metacat will use the 
-XSLT styles specified in the set to transform the XML.
-
-.. figure:: images/screenshots/image047.jpg
-   :align: center
-   
-   The same document displayed using different qformat parameters (from left 
-   to right: the default style-set, XML, and HTML). 
-
-Note that the ``read`` action can be used to read both data files and metadata files. 
-To read a data file, you could use the following request::
-
-  http://yourserver.com/yourcontext/metacat?action=read&docid=nceas.55&qformat=default
-
-Where ``nceas.55`` is the docid of the data file stored in the Metacat and 
-``default`` is the name of the style (you could also use "html" or "xml" or the 
-name of a customized skin).
-
-::
-  
-  <html>
-  <head>
-    <title>Read Document</title>
-  </head>
-  <body>
-    <form method="POST" action="http://your.server/your.context/servlet/metacat">
-      <input name="action" value="read" type="hidden">
-      <input name="docid" type="text" value="" size="40">
-      <input name="qformat" value="default" type="hidden">
-      <input value="Read" type="submit">
-    </form>
-  </body>
-  </html>
-  
-Using the EarthGrid API (aka EcoGrid)
--------------------------------------
-
-.. Note::
-
-  The EarthGrid/EcoGrid web service API is *deprecated* as of Metacat 2.0.0 and 
-  will be removed from a future version of Metacat.  Its functionality is being 
-  replaced by the standardized DataONE REST service interface. The EarthGrid API
-  will be completely removed by the end of 2013.
-   
-The EarthGrid (aka EcoGrid) provides access to disparate data on different 
-networks (e.g., KNB, GBIF, GEON) and storage systems (e.g., Metacat and SRB), 
-allowing scientists access to a wide variety of data and analytic resources 
-(e.g., data, metadata, analytic workflows and processors) networked at different 
-sites and at different organizations via the internet. 
-
-Because Metacat supports the EarthGrid API (see table), it can query the 
-distributed EarthGrid, retrieve metadata and data results, and write new and 
-updated metadata and data back to the grid nodes.
-
-For more information about each EarthGrid service and its WSDL file, navigate 
-to the "services" page on your Metacat server 
-(e.g., http://knb.ecoinformatics.org/knb/services). 
-Note that the AdminService and Version service that appear on this page are 
-not part of EarthGrid.
-
-EarthGrid/EcoGrid API Summary
-
-+----------------------------+-----------------------------------------------------------------------------------------------------+
-| Service                    | Description                                                                                         |
-+============================+=====================================================================================================+
-| AuthenticationQueryService | Search for and retrieve protected metadata and data from the EarthGrid as an authenticated user.    |
-|                            |                                                                                                     |
-|                            | Methods: ``query``, ``get``                                                                         |
-+----------------------------+-----------------------------------------------------------------------------------------------------+
-| AuthenticationService      | Log in and out of the EarthGrid                                                                     |
-|                            |                                                                                                     |
-|                            | Methods: ``login``, ``logout``                                                                      |
-+----------------------------+-----------------------------------------------------------------------------------------------------+
-| IdentifierService          | List, lookup, validate, and add Life Science Identifiers (LSIDs) to the EarthGrid                   |
-|                            |                                                                                                     |
-|                            | Methods: ``isRegistered``, ``addLSID``, ``getNextRevision``, ``getNextObject``, ``getAllIds``       |
-+----------------------------+-----------------------------------------------------------------------------------------------------+
-| PutService                 | Write metadata to the EarthGrid                                                                     |
-|                            |                                                                                                     |
-|                            | Methods: ``put``                                                                                    |
-+----------------------------+-----------------------------------------------------------------------------------------------------+
-| QueryService               | Search for and retrieve metadata from the EarthGrid                                                 |
-|                            |                                                                                                     |
-|                            | Methods: ``query``, ``get``                                                                         |
-+----------------------------+-----------------------------------------------------------------------------------------------------+
-| RegistryService            | Add, update, remove, and search for registered EarthGrid services.                                  |
-|                            | Note: The WSDL for this  service is found under http://ecogrid.ecoinformatics.org/registry/services |
-|                            |                                                                                                     |
-|                            | Methods: ``add``, ``update``, ``remove``, ``list``, ``query``                                       |
-+----------------------------+-----------------------------------------------------------------------------------------------------+
-
-Using Morpho
-------------
-Morpho is a desktop tool created to facilitate the creation, storage, and 
-retrieval of metadata. Morpho interfaces with any Metacat server, allowing 
-users to upload, download, store, query and view relevant metadata and data 
-using the network. Users can authorize the public or only selected colleagues 
-to view their data files. 
-
-Morpho is part of the Knowledge Network for Biocomplexity (KNB), a national 
-network intended to facilitate ecological and environmental research on 
-biocomplexity. To use Morpho with your Metacat, set the Metacat URL in the 
-Morpho Preferences to point to your Metacat server.
-
-.. figure:: images/screenshots/image049.png
-   :align: center
-   
-   Set the Metacat URL in the Morpho preferences to point to your Metacat.
-
-For more information about Morpho, please see: http://knb.ecoinformatics.org/morphoportal.jsp
-
-Creating Your Own Client
-------------------------
-
-.. Note::
-
-  NOTE: The Client API (and underlying servlet implementation) has been 
-  deprecated as of Metacat 2.0.0. Future development should utilize the DataONE 
-  REST service methods. The Client API will be completely removed by the end of 2013.
-  
-Metacat's client API is available in Java and Perl (the Java interface is 
-described in this section and further detailed in the appendix). Some of the 
-API is also available in Python and Ruby. The API allows client applications 
-to easily authenticate users and perform basic Metacat operations such as 
-reading metadata and data files; inserting, updating, and deleting files; and 
-searching for packages based on metadata matches. 
-
-The Client API is defined by the interface edu.ucsb.nceas.metacat.client.Metacat, 
-and all operations are fully defined in the javadoc_ documentation. To use the 
-client API, include the ``metacat-client.jar``, ``utilities.jar``, ``commons-io-2.0.jar``, and 
-``httpclient.jar`` in your classpath. After including these classes, you can 
-begin using the API methods (see the next table). 
-
-.. _javadoc: http://knb.ecoinformatics.org/software/metacat/dev/api/index.html
-
-The following code block displays a typical session for reading a document 
-from Metacat using the Java client API.
-
-::
-  
-  String metacatUrl = "http://foo.com/context/metacat";
-  String username = "uid=jones,o=NCEAS,dc=ecoinformatics,dc=org";
-  String password = "neverHarcodeAPasswordInCode";
-  try {
-      Metacat m = MetacatFactory.createMetacatConnection(metacatUrl);
-      m.login(username, password);
-      Reader r = m.read("testdocument.1.1");
-      // Do whatever you want with Reader r
-  } catch (MetacatAuthException mae) {
-      handleError("Authorization failed:\n" + mae.getMessage());
-  } catch (MetacatInaccessibleException mie) {
-      handleError("Metacat Inaccessible:\n" + mie.getMessage());
-  } catch (Exception e) {
-      handleError("General exception:\n" + e.getMessage());
-  }
-  
-  Operations provided by Client API  (Metacat.java class)
-  
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| Method               | Parameters and Throws                                                                                                                                                                                       | Description                                                                                                                               |
-+======================+=============================================================================================================================================================================================================+===========================================================================================================================================+
-| delete               | ``public String delete(String docid) throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;``                                                                                   | Delete an XML document in the repository.                                                                                                 |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| getAllDocids         | ``public Vector getAllDocids(String scope) throws MetacatException;``                                                                                                                                       | Return a list of all docids that match a given scope. If scope is null, return all docids registered in the system.                       |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| getLastDocid         | ``public String getLastDocid(String scope) throws MetacatException;``                                                                                                                                       | Return the highest document ID for a given scope.  Used by clients to determine the next free identifier in a sequence for a given scope. |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| getloggedinuserinfo  | ``public String getloggedinuserinfo() throws MetacatInaccessibleException;``                                                                                                                                | Return the logged in user for this session.                                                                                               |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| getNewestDocRevision | ``public int getNewestDocRevision(String docId) throws MetacatException;``                                                                                                                                  | Return the latest revision of specified the document from Metacat                                                                         |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| getSessonId          | ``public String getSessionId();``                                                                                                                                                                           | Return the session identifier for this session.                                                                                           |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| insert               | ``public String insert(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``                                   | Insert an XML document into the repository.                                                                                               |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| isRegistered         | ``public boolean isRegistered(String docid) throws MetacatException;``                                                                                                                                      | Return true if given docid is registered; false if not.                                                                                   |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| login                | ``public String login(String username, String password) throws MetacatAuthException, MetacatInaccessibleException;``                                                                                        | Log in to a Metacat server.                                                                                                               |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| logout               | ``public String logout() throws MetacatInaccessibleException, MetacatException;``                                                                                                                           | Log out of a Metacat server.                                                                                                              |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| query                | ``public Reader query(Reader xmlQuery) throws MetacatInaccessibleException, IOException;``                                                                                                                  | Query the Metacat repository and return the result set as a Reader.                                                                       |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| query                | ``public Reader query(Reader xmlQuery, String qformat) throws MetacatInaccessibleException, IOException;``                                                                                                  | Query the Metacat repository with the given metacat-compatible query format and return the result set as a Reader.                        |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| read                 | ``public Reader read(String docid) throws InsufficientKarmaException, MetacatInaccessibleException, DocumentNotFoundException, MetacatException;``                                                          | Read an XML document from the Metacat server.                                                                                             |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| readInlineData       | ``public Reader readInlineData(String inlinedataid) throws InsufficientKarmaException, MetacatInaccessibleException, MetacatException;``                                                                    | Read inline data from the Metacat server session.                                                                                         |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| setAccess            | ``public String setAccess(String _docid, String _principal, String _permission, String _permType, String _permOrder ); throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;`` | Set permissions for an XML document in the Metacat repository.                                                                            |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| setMetacatUrl        | ``public void setMetacatUrl(String metacatUrl);``                                                                                                                                                           | Set the MetacatUrl to which connections should be made.                                                                                   |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| setSessionId         | ``public void setSessionId(String sessionId);``                                                                                                                                                             | Set the session identifier for this session.                                                                                              |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| update               | ``public String update(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``                                   | Update an XML document in the repository by providing a new version of the XML document.                                                  |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| upload               | ``public String upload(String docid, File file) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``                                                           | Upload a data document into the repository.                                                                                               |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-| upload               | ``public String publicupload(String docid, String fileName, InputStream fileData, int size) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``               | Upload a data document into the repository.                                                                                               |
-+----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
-  
Index: docs/dev/metacat/source/sitemaps.rst
===================================================================
--- docs/dev/metacat/source/sitemaps.rst	(revision 6870)
+++ docs/dev/metacat/source/sitemaps.rst	(nonexistent)
@@ -1,56 +0,0 @@
-Enabling Web Searches: Sitemaps
-===============================
-
-Sitemaps are XML files that tell search engines—such as Google, which is 
-discussed in this section--which URLs on your websites are available for 
-crawling. Currently, the only way for a search engine to crawl and index 
-Metacat so that individual metadata entries are available via Web searches 
-is with a sitemap. Metacat automatically creates sitemaps for all public 
-documents in the repository. However, you must register the sitemaps with 
-the search engine before it will take effect.
-
-
-Creating a Sitemap
-------------------
-
-Metacat automatically generates a sitemap file for all public documents in 
-the repository on a daily basis. The sitemap file(s) must be available via 
-the Web on your server, and must be registered with Google before they take 
-effect. For information on the sitemap protocol, please refer to the Google 
-page on using the sitemap protocol. You can view Metacat's sitemap files at:: 
-
-  <webapps_dir>/sitemaps
-
-The directory contains one or more XML files named::
-
-  metacat<X>.xml
-
-where ``<X>`` is a number (e.g., 1 or 2) used to increment each sitemap file. 
-Because Metacat limits the number of sitemap entries in each sitemap file to 
-25,000, the servlet creates an additional sitemap file for each group of 
-25,000 entries. 
-
-Verify that your sitemap files are available to the Web by browsing to::
-
-  <your_web_context>/sitemaps/metacat<X>.xml 
-  (e.g., your.server.org/knb/sitemaps/metacat1.xml)
-
-Registering a Sitemap
----------------------
-Before Google will begin indexing the public files in your Metacat, you must 
-register the sitemaps. To register your sitemaps and ensure that they are up 
-to date:
-
-1. Register for a Google Webmaster Tools account, and add your Metacat 
-   site to the Dashboard.
-2. From your Google Webmaster Tools site account, register your sitemaps. 
-   See the Google help site for more information about how to register sitemaps. 
-   Note: Register the full URL path to your sitemap files, including 
-   the http:// (or https://) headers.
-
-Once the sitemaps are registered, Google will begin to index the public 
-documents in your Metacat repository. 
-
-NOTE: As you add more publicly accessible data to Metacat, you will need to 
-periodically revisit the Google Webmaster Tools utility to refresh your 
-sitemap registration.
Index: docs/dev/metacat/source/intro.rst
===================================================================
--- docs/dev/metacat/source/intro.rst	(revision 6870)
+++ docs/dev/metacat/source/intro.rst	(nonexistent)
@@ -1,112 +0,0 @@
-Introduction
-============
-
-Metacat is a repository for data and metadata (descriptions of data) that helps
-scientists find, understand and effectively use the data sets they manage or
-that have been created by others. Thousands of data sets are currently
-documented in a standardized way and stored in Metacat systems, providing the
-scientific community with a broad range of science data that--because the
-data are well and consistently described--can be easily searched, compared,
-merged, or used in other ways.
-
-Not only is the Metacat repository a reliable place to store metadata and data
-(the database is replicated over a secure connection so that every record is
-stored on multiple machines and no data is ever lost to technical failures), it
-provides a user-friendly interface for information entry and retrieval.
-Scientists can search the repository via the Web using a customizable search
-form. Searches return results based on user-specified criteria, such as desired
-geographic coverage, taxonomic coverage, and/or keywords that appear in places
-such as the data set's title or owner's name. Users need only click a linked
-search result to open the corresponding data-set documentation in a browser
-window and discover whom to contact to obtain the data themselves (or how to
-immediately download the data via the Web).
-
-Metacat's user-friendly Registry application allows data providers to enter
-data set documentation into Metacat using a Web form. When the form is
-submitted, Metacat compiles the provided documentation into the required format
-and saves it. Information providers need never work directly with the XML_
-format in which the metadata are stored or with the database records themselves. In
-addition, the Metacat application can easily be extended to provide a
-customized data-entry interface that suits the particular requirements of each
-project. Metacat users can also choose to enter metadata using the Morpho
-application, which provides data entry wizards that guide information providers
-through the process of documenting each data set.
-
-The metadata stored in Metacat includes all of the information needed
-to understand what the described data are and how to use them: a
-descriptive data set title; an abstract; the temporal, spatial, and taxonomic
-coverage of the data; the data collection methods; distribution information;
-and contact information. Each information provider decides who has access to
-this information (the public, or just specified users), and whether or not to
-upload the data set itself with the data documentation. Information providers
-can also edit the metadata or delete it from the repository, again using
-Metacat's straightforward Web interface.
-
-Metacat is a `Java servlet`_ application that runs on Linux, Mac OS, and
-Windows platforms in conjunction with a database, such as 
-PostgreSQL_ (or Oracle_), and a Web
-server. The Metacat application stores data in an XML_ format using `Ecological
-Metadata Language`_ (EML) or other metadata standards such as `ISO 19139`_ or the
-`FGDC Biological Data Profile`_. For more
-information about Metacat or for examples of projects currently using Metacat,
-please see http://knb.ecoinformatics.org.
-
-.. _XML: http://en.wikipedia.org/wiki/XML
-
-.. _Java servlet: http://en.wikipedia.org/wiki/Java_Servlet
-
-.. _PostgreSQL: http://www.postgresql.org/
-
-.. _Oracle: http://www.oracle.com/
-
-.. _Ecological Metadata Language: http://knb.ecoinformatics.org/software/eml
-
-.. _ISO 19139: http://marinemetadata.org/references/iso19139 
-
-.. _FGDC Biological Data Profile: http://www.fgdc.gov/standards/projects/FGDC-standards-projects/metadata/biometadata 
-
-What's in this Guide
---------------------
-This Administrator's guide includes information for installing, configuring,
-managing and extending Metacat for both Linux, Mac OS, and Windows systems. 
-Chapter Two contains instructions for downloading and installing Metacat and the
-applications required to run the software on Linux and Microsoft platforms.
-Chapter Three covers how to configure Metacat, both for new and upgraded
-installations. Chapter Four details the ways in which you can customize the
-Metacat interface so users can access and submit information easily: using
-Metacat's generic web-interface (the Registry), creating your own HTML forms,
-and creating your own desktop client (like Morpho). Chapter Five discusses how
-to work with Metacat's embedded Geoserver. Chapter Six describes how to set up the
-Metacat's replication service, which permits Metacat servers to share data with
-each other, effectively backing up metadata and data files. Chapter Seven looks
-at the Metacat Harvester, a program that automates the retrieval of EML
-documents from one or more sites and their subsequent upload (insert or update)
-to Metacat. Chapter Eight discusses logging, Chapter Nine contains instructions
-for creating a site map, which makes individual metadata entries available via
-Web searches. Metacat's Java API is included as an appendix at the end of the
-guide.
-
-Metacat Features
-----------------
-Metacat is a repository for data and metadata (documentation about data), that 
-helps scientists find, understand and effectively use the data sets they manage or 
-that have been created by others. Specifically,
-
-* Metacat is an open source web application, which can run on Linux, MacOS, and Windows operating systems and is written in Java
-* Metacat's Web interface facilitates the input and retrieval of data 
-* Metacat's optional mapping functionality enables you to query and visualize the geographic coverage of stored data sets
-* Metacat's replication feature ensures that all Metacat data and metadata is stored safely on multiple Metacat servers
-* The Metacat interface can be easily extended and customized via Web forms, skins, and/or user-developed client tools in Java and other languages
-* The Metacat harvester automates the process of retrieving and storing EML documents from one or more sites
-* Metacat can be customized to use Life Sciences Identifiers (LSIDs), uniquely identifying every data record
-* Metacat has a built-in logging system for tracking events such as document insertions, updates, deletes, and reads
-* The appearance of Metacat's Web interface can be customized via skins. 
-* Metacat fully supports the DataONE Member Node interface, allowing Metacat deployments to easily participate in the DataONE federation
-
-.. figure:: images/screenshots/image007.png
-   :align: center
-
-   Metacat's default home page. Users can customize the appearance using skins.
-
-
-
Index: docs/dev/metacat/source/contributors.rst
===================================================================
--- docs/dev/metacat/source/contributors.rst	(revision 6870)
+++ docs/dev/metacat/source/contributors.rst	(nonexistent)
@@ -1,34 +0,0 @@
-Contributors
-============
-
-Metacat has been designed and built by a large number of contributors to this
-open source project.  Main developers and additional patch contributors are
-listed here. We welcome participation in the project, and will work to
-incorporate code, documentation, and other useful contributions.
-
-Contributors
-------------
-  - Matt Jones (jones@nceas.ucsb.edu)
-  - Chad Berkley (berkley@nceas.ucsb.edu)
-  - Jing Tao (tao@nceas.ucsb.edu)
-  - Jivka Bojilova (bojilova@nceas.ucsb.edu)
-  - Dan Higgins (higgins@nceas.ucsb.edu)
-  - Saurabh Garg (sgarg@nceas.ucsb.edu)
-  - Duane Costa (dcosta@lternet.edu)
-  - Veronique Connolly (connolly@nceas.ucsb.edu)
-  - Chris Jones (cjones@nceas.ucsb.edu)
-  - John Harris (harris@nceas.ucsb.edu)
-  - Callie Bowdish (bowdish@ecoinformatics.org)
-  - Will Tyburczy (tyburczy@ecoinformatics.org)
-  - Matthew Perry (perry@nceas.ucsb.edu)
-  - Chad Burt (underbluewaters@gmail.com)
-  - Ben Leinfelder (leinfelder@nceas.ucsb.edu)
-  - Chris Barteau (barteau@nceas.ucsb.edu)
-  - Shaun Walbridge (walbridge@nceas.ucsb.edu)
-  - Michael Daigle (daigle@nceas.ucsb.edu)
-
-Patch contributors
-------------------
-  - Andrea Chadden (chadden@nceas.ucsb.edu)
-  - Johnoel Ancheta (johnoel@hawaii.edu)
-  - Owen Jones (owen.jones@imperial.ac.uk)
Index: docs/dev/metacat/source/images/guid_read.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/dev/metacat/source/images/guid_read.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-image/png
\ No newline at end of property
Index: docs/dev/metacat/source/images/identifiers.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/dev/metacat/source/images/identifiers.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-image/png
\ No newline at end of property
Index: docs/dev/metacat/source/images/guid_delete.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/dev/metacat/source/images/guid_delete.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-image/png
\ No newline at end of property
Index: docs/dev/metacat/source/images/guid_update.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/dev/metacat/source/images/guid_update.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-image/png
\ No newline at end of property
Index: docs/dev/metacat/source/images/guid_insert.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/dev/metacat/source/images/guid_insert.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-image/png
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image057.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image057.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image049.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image049.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image058.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image058.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image041.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image041.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image033.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image033.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image011.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image011.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image051.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image051.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image021.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image021.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image043.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image043.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image061.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image061.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image035.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image035.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image031.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image031.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image023.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image023.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image045.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image045.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image063.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image063.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image037.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image037.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image015.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image015.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image025.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image025.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image007.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image007.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image047.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image047.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image065.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image065.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image039.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image039.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image017.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image017.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image053.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image053.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image027.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image027.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image009.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image009.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image067.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image067.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image019.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image019.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image055.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image055.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image059.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image059.jpg
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/images/screenshots/image029.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/dev/metacat/source/images/screenshots/image029.png
___________________________________________________________________
Deleted: svn:mime-type
## -1 +0,0 ##
-application/octet-stream
\ No newline at end of property
Index: docs/dev/metacat/source/geoserver.rst
===================================================================
--- docs/dev/metacat/source/geoserver.rst	(revision 6870)
+++ docs/dev/metacat/source/geoserver.rst	(nonexistent)
@@ -1,249 +0,0 @@
-Metacat's Use of Geoserver
-==========================
-
-GeoServer 2.0.2, an open source Web Mapping Service (WMS) written in Java, is 
-bundled with Metacat and can be used to render spatial data as web-deliverable 
-maps. Metacat uses OpenLayers (http://openlayers.org/) to provide a web-based 
-user interface for interacting with the generated maps. You can use any 
-WMS-compatible client (e.g., ArcGIS, QGIS, JUMP, UDig, OpenLayers, Mapbender, 
-Map Builder). 
-
-IMPORTANT: Regardless of whether you plan on using the mapping functionality 
-you should, for security purposes, configure GeoServer so that it doesn't 
-use the default password. For instructions, please see 
-Geoserver Configuration.
-
-.. figure:: images/screenshots/image051.jpg
-   :align: center
-   
-   A map generated by Metacat's GeoServer. Points and "bounding boxes" 
-   represent the geographic extent of datasets stored in the KNB Metacat repository.
-
-GeoServer supports a wide variety of vector GIS data sources, which can be 
-styled using Styled Layer Descriptors (SLDs) and output as images (the default) 
-or raw vector data (GML or KML).
-
-Currently, GeoServer can be used with the following limitations:
-
-* GeoServer will only map documents that are publicly available. This is 
-  because the mapping server's support for permissions control is not as 
-  fine-grained as Metacat's.
-
-Metacat developers plan to continue extending and improving Metacat's mapping 
-capabilities. If you are interested in contributing to those efforts, or if 
-you are interested in learning more about the architecture and future plans for 
-the mapping software, please contact the Metacat  development 
-team  (metacat-dev@ecoinformatics.org).
-
-Installing and Configuring
---------------------------
-The GeoServer webapp should be installed as a sibling of Metacat. If you do 
-NOT wish to run GeoServer, the deployment can be skipped, but any skins that 
-use maps will not render correctly. (NOTE: Geoserver recommends using a PermGen 
-space setting of at least 128MB.). 
-
-Metacat comes with a pre-configured data directory to be used by GeoServer. 
-This includes a world-countries base layer and a default configuration that 
-is already aware of Metacat's spatial cache. The Metacat configuration interface 
-is used to configure GeoServer to use this shared data directory. To further 
-configure GeoServer, use the Web-based configuration utility, 
-which is available at: http://your.server.com/context/geoserver.jsp 
-(e.g., http://knb.ecoinformatics.org/knb/geoserver.jsp). 
-
-Common configuration tasks include:
-
-* Adding a Map to a Web Page or Skin
-* Configuring the Size and Initial Extent of the Map
-* Configuring the Layout of the HTML Mapping Interface
-* Configuring the "Select Location Drop-down Menu
-* Configuring the Visual Portrayal of Geospatial Data (e.g., symbology and color)
-* Adding Other Spatial Datasets to the Web Map
-
-.. figure:: images/screenshots/image053.png
-   :align: center
-   
-   GeoServer's Web-based administrative interface.
-
-Note: Some configurations may need to be made to the XML files as well.
-
-OpenLayers, which Metacat uses as the front-end for GeoServer's WMS service, 
-provides interface components or "widgets" (e.g., the map, a box zoom, layer 
-list, "Select Location" drop-down menu, scale bar, lat/long coordinates, and 
-a query form) that make it easy to deploy web-based mapping applications with 
-minimal coding.
-
-OpenLayers has three main configuration files used to customize the map interface.
-Default configurations are in::
-
-  $METACAT/lib/style/common/spatial/
-  
-+----------------------------------+---------------+-------------------------------------------------------------+
-| Document                         | Location      | Description                                                 |
-+==================================+===============+=============================================================+
-| The named location file          | locations.jsp | The list of pre-defined locations (name and lat/lon bounds) |
-+----------------------------------+---------------+-------------------------------------------------------------+
-| Main map rendering functions     | maps.js       | Defines the map, widgets and their behavior                 |
-+----------------------------------+---------------+-------------------------------------------------------------+
-| The rendered map and page layout | map.jsp       | Loads the map and controls the HTML layout of the widgets.  |
-+----------------------------------+---------------+-------------------------------------------------------------+
-
-NOTE: By default, the first time Metacat is restarted, it generates a 
-"spatial cache" containing geographic information about documents in its 
-repository. This default behavior is specified in lib/metacat.properties, 
-where the regenerateCacheOnRestart parameter is set to true. The information 
-in the spatial cache is stored in a GIS-compatible format (the ESRI Shapefile) 
-and consists of the document name and its geographic coverage. When documents 
-are inserted, deleted, and updated in the Metacat repository, Metacat 
-automatically syncs the spatial cache to reflect the changes. Because 
-generating the cache can take a considerable amount of time (several minutes 
-in the case of a few thousand documents), Metacat resets the 
-regenerateCacheOnRestart property to false after the spatial cache has been 
-generated. Note that if you upgrade or reinstall Metacat, the spatial cache 
-will be regenerated again.
-
-Adding a Map to a Web Page or Skin
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-To add a map to a Web page, simply include the map interface using an iframe:: 
-
-  <iframe scrolling="no" frameborder="0" width="780" height="420" 
-          src="/knb/style/common/spatial/map.jsp">
-  </iframe>
-
-The map URL, ``/knb/style/common/spatial/map.jsp``, is 
-the default map interface. If you plan to customize the map interface, copy
-the map.jsp file into your skin's directory (either the default or 
-customized skin directory). 
-
-::
-
-  cp -r style/common/spatial/map.jsp /style/skins/<myskin>/spatial
-
-You can access the customized map with the URL: ``/knb/style/skins/<myskin>/spatial/map.jsp`` 
-
-Configuring the Size and Initial Extent of the Map
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Before you configure the size and initial extent of the map, make sure that you 
-have copied the map layout page into your skin's directory (See 
-:doc:`configuration` for directions). Once the file has been copied, you can 
-modify the map's initial extent in: ``${skin.dir}/spatial/map.jsp``.
-
-To change the map’s initial extent, edit the bounding box. The default is to 
-show the entire globe. The ``initMap()`` function should also be given the skin 
-name so that spatial search results can be correctly styled.
-
-::
-
-  <script type="text/javascript">
-      function init() {
-         var bounds = new OpenLayers.Bounds(-180,-90,180,90); 
-         // make the map for this skin 
-         initMap("<%=GEOSERVER_URL%>", "<%=SERVLET_URL%>", "default", bounds);
-      }
-  </script>
-
-The size (height/width) of the map can be controlled by the ``#map`` CSS entry 
-included in the ``map.jsp`` page.
-
-Configuring the Layout of the HTML Mapping Interface
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The size and initial extent of the map can be edited in : ${skin.dir}/spatial/map.jsp.
-
-The map.jsp is a simple container that can be included in other more complex 
-pages if desired. It contains the map, widgets and location dropdown list.
-
-Configuring the "Select Location" Drop-down Menu
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The locations that appear in the "Select Location" drop-down menu are specified 
-in the ``locations.jsp`` file. The locations.jsp can be copied from the common 
-spatial template into your skin directory. Each location is defined as an 
-HTML ``<option/>`` tag. Edit the value and label to edit or add new locations.
-
-::
-
-  <option value=“-149.725,68.475 -149.3254,68.725”> Arctic LTER (ARC)</option>
-
-Configuring the Visual Portrayal of Geospatial Data (e.g., symbology and color)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Geospatial data sets are styled through the use of Styled Layer Descriptors 
-(SLD). The default SLDs used for the data points and data bounding boxes are in
-``/lib/spatial/geoserver/data/styles/`` and are named data_points_style.sld and 
-data_bounds_style.sld, respectively. 
-
-You can find a more detailed tutorial on using SLD with GeoServer in the GeoServer documentation::
-
-  http://docs.geoserver.org/
-
-Adding Other Spatial Datasets to the Web Map
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-If you have vector GIS data sets, such as weather or topographical information, 
-on your server that you'd like to include in the interactive map, you must 
-first register the data set with GeoServer. After the data set has been 
-registered, you can add the layer to the map. You can also add spatial layers 
-that have been made publically available through WMS (There are hundreds of 
-spatial data sets available. Check out wms-sites.com for good catalog). 
-Instructions for adding publically available layers are included at the end 
-of this section. 
-
-To register the data set and add it to the map:
-
-1. Point your browser to ``http://your.server/geoserver``, log in to GeoServer, 
-   and navigate to the "Data Stores" configuration page under ``Data > Stores``. 
-2. Create a new vector data source from a Shapefile in the “metacat” workspace.
-
-.. figure:: images/screenshots/image055.png
-   :align: center
-   
-   Creating a new shapefile using GeoServers web-based administrative interface.
-
-3. The Description, if specified, is mostly used internally to provide other 
-   administrators with information about the DataStore. Click Submit.
-4. Navigate to the "Layers" configuration page under Data > Layers. 
-   Add a new Layer from your new data source.
-5. You should also define a spatial reference system (SRS) number for the new 
-   layer. Most lat/long data is "4326". If your data is in another projection, 
-   determine its spatial reference system using the help links provided.
-
-.. figure:: images/screenshots/image057.png
-   :align: center
-   
-   GeoServer's FeatureType configuration. The SRS settings discussed in step 5 are highlighted.
-
-6. Style the layer using a style from the drop-down menu on the Publishing tab, 
-   or create a new SLD to create a new style object and corresponding SLD 
-   (this option provides more control over the style). 
-7. Try out the styled data set as a WMS layer using a the Layer Preview.
-
-.. figure:: images/screenshots/image058.png
-   :align: center
-   
-   GeoServer's Layer Preview allows you to see an OpenLayer rendering of the new layer.
-
-8. Copy the default ``map.js`` file that assembles the map in OpenLayers 
-   (``style/common/spatial/map.js``) to your skin’s spatial directory.
-9. Edit the init() method to include your new layer in the map – either as an 
-   overlay or as a base layer.
-10. Point your browser to the map interface. Your new layer should appear with 
-    the existing ones.
-
-Adding External Spatial Data Made Publically Available through WMS
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-There are hundreds of sources of spatial data made publically available 
-through WMS (check out http://wms-sites.com for a good catalog). To add these 
-data sources to your map, add the layers in your skin’s ``spatial/map.js`` file.
-
-Spatial Queries
----------------
-To find out which documents in the Metacat repository lie in a specified 
-geographic region, query the spatial cache using Metacat's spatial_query action. 
-Metacat can perform any query supported by the WFS/WMS standards.
-
-An example of a spatial query string is::
-
-  http://localhost/knb/metacat?action=spatial_query&xmin=-117.5&xmax=-64&ymin=3&ymax=46&skin=default
-
-Where ``xmin``, ``xmax``, ``ymin`` and ``ymax`` represent the western, eastern, 
-southern and northern bounding coordinates (the "bounding box"), respectively. 
-The spatial query action returns all documents that overlap or that are 
-contained inside the specified spatial coordinates. The result set is returned 
-as HTML using the style of the specified skin (in this example, default).
-
Index: docs/user/metacat/source/images/guid_insert.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/user/metacat/source/images/guid_insert.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+image/png
\ No newline at end of property
Index: docs/user/metacat/source/images/guid_delete.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/user/metacat/source/images/guid_delete.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+image/png
\ No newline at end of property
Index: docs/user/metacat/source/install.rst
===================================================================
--- docs/user/metacat/source/install.rst	(nonexistent)
+++ docs/user/metacat/source/install.rst	(revision 6871)
@@ -0,0 +1,1006 @@
+Downloading and Installing Metacat
+==================================
+
+Instructions for both Linux and Windows systems are included in this section.
+
+.. contents::
+
+System Requirements
+-------------------
+In addition to meeting the recommended system requirements, the server on which
+you wish to install Metacat must have the following software installed and
+running correctly:
+
+* PostgreSQL_ (or another SQL92-compliant RDBMS like Oracle_) 
+* `Apache Ant`_ (if building from source)
+* `Apache Tomcat`_ 
+* `Apache HTTPD Server`_ (recommended)
+
+  * In order to use the Metacat Registry (and for a more robust Web-serving environment in general), the Apache Web server should be installed with Tomcat and the two should be integrated. See the installing Apache for more information.
+
+* `Java 6`_ (Note: Java 5 is deprecated)
+
+.. _PostgreSQL: http://www.postgresql.org/
+
+.. _Oracle: http://www.oracle.com/
+
+.. _Apache Ant: http://ant.apache.org/
+
+.. _Apache Tomcat: http://tomcat.apache.org/
+
+.. _Apache HTTPD Server: http://httpd.apache.org/
+
+.. _Java 6: http://www.oracle.com/technetwork/java/javaee/overview/index.html
+
+System requirements for running Metacat:
+
+.. NOTE::
+
+   Check these system requirements
+
+* a server running an SQL92-compliant database (PostgreSQL_ recommended) 
+* at least 128MB RAM
+* a Pentium III processor (or higher)
+* 11 MB disk space (Note: The amount of disk space required depends on the size of your RDBMS tablespace (which should be at least 10 MB; however, Metacat itself requires only about 140 MB of free space after installation).
+
+
+Installing on Linux
+-------------------
+This section contains instructions for downloading and installing Metacat on 
+Linux systems. As Mac OS X is based on BSD Unix, these Linux instructions can
+be adapted to also work on Mac OS X (although the exact commands for
+downloading and installing packages will differ due to the different package
+management approaches on the Mac).
+
+Quick Start Overview
+~~~~~~~~~~~~~~~~~~~~
+For the impatient or those who have already installed Metacat and know what
+they are doing, here are the steps needed to install Metacat. Detailed
+instructions for each step are in the next section.
+
+1. Download and install prerequisites (`Java 6`_, `Apache Tomcat`_ 6, PostgreSQL_, `Apache HTTPD Server`_)
+2. Create a database in PostgreSQL named 'metacat' and authorize access to it in ``pb_hba.conf`` for the user 'metacat'
+3. Log in to PostgreSQL and create the 'metacat' user
+4. Download Metacat from the `Metacat Download Page`_ and extract the archive
+5. ``sudo mkdir /var/metacat; sudo chown -R <tomcat_user> /var/metacat``
+6. ``sudo cp <metacat_package_dir>/knb.war <tomcat_app_dir>``
+7. ``sudo /etc/init.d/tomcat6 restart``
+8. Configure Metacat through the Web interface
+
+.. _Metacat Download Page: http://knb.ecoinformatics.org/software/metacat/
+
+Downloading Metacat
+~~~~~~~~~~~~~~~~~~~
+Before installing Metacat, please ensure that all required software is
+installed and running correctly. To obtain a Metacat WAR file, which is needed
+for installation, download one of the following: 
+
+* the Metacat installer, which has a pre-built WAR file,
+* the Metacat source distribution, which must be built in order to create a WAR file, 
+* the Metacat source code from SVN. You must build the source code in order to create a WAR file. 
+
+Instructions for all three options are discussed below. Note that downloading
+the installer (described in the next section) is the simplest way to get
+started. 
+
+Download the Metacat Installer
+..............................
+Downloading the Metacat Installer is the simplest way to get started with the
+application. To download the installer: 
+
+1.  Browse to the `Metacat Download Page`_. In the Metacat section, select the link to the "GZIP file" (the link should look like: metacat-bin-X.X.X.tar.gz, where X.X.X is the latest version of Metacat e.g., 1.9.0) 
+2.  Save the file locally. 
+3.  Extract the Metacat package files by typing:
+
+::
+
+  tar -xvzf metacat-bin-X.X.X.tar.gz
+
+You should see a WAR file and several supporting files (Table 2.1). The
+extraction location will be referred to as the ``<metacat_package_dir>`` for the
+remainder of this documentation.
+
+================== ===========================================================
+File               Description
+================== ===========================================================
+knb.war            The Metacat Web archive file (WAR) 
+knb                The Web definition file used by Apache on Ubuntu/Debian 
+                   Linux systems. 
+knb.ssl            The SSL definition file used by Apache on Ubuntu/Debian 
+                   Linux systems.
+jk.conf            The JkMount configuration file used by Apache on 
+                   Ubuntu/Debian Linux systems. 
+workers.properties The workers definition file used by Apache on Ubuntu/Debian 
+                   Linux systems. 
+authority          The optional LSID Server application WAR
+================== ===========================================================
+
+
+Download Metacat Source Code
+............................
+To get the Metacat source distribution:
+
+1. Browse to the `Metacat Download Page`_. In the Metacat section, select the link to the Metacat Source code (it will look something like this: metacat-src-X.X.X.tar.gz, where X.X.X is the latest version of Metacat, e.g., 1.9.0).
+2. Save the file locally. 
+3. Extract the Metacat package files by typing (replace X.X.X with the current version number): 
+
+::
+
+  tar -xvzf metacat-src-X.X.X.tar.gz
+
+4. Rename the metacat-X.X.X directory to metacat. 
+
+Note that you do not need to create the WAR file directly because the Ant
+build-file has an "install" target that will build and deploy the WAR for you. 
+
+
+Check Out Metacat Source Code from SVN (for Developers)
+.......................................................
+If you wish to work with the most recent Metacat code, or you'd like to extend
+the Metacat code yourself, you may wish to check out the Metacat source code
+from SVN. You will need a Subversion (SVN) client installed and configured on
+your system (see the end of this section for information about obtaining an SVN
+client). 
+
+.. sidebar:: Installing an SVN Client:
+
+    If you have not already installed Subversion and you are running Ubuntu/Debian,
+    you can get the SVN client by typing:
+    
+    ::
+
+        sudo apt-get install subversion
+
+    Otherwise, you can get the SVN client from The Subversion homepage
+    (http://subversion.tigris.org/).
+
+To check out the code from SVN, go to the directory where you would like the
+code to live and type::
+
+  svn co https://code.ecoinformatics.org/code/metacat/tags/METACAT_<rev> metacat
+
+Where ``<rev>`` is the version of the code you want to check out (like 1_9). 
+
+To check out the head, type::
+
+  svn co https://code.ecoinformatics.org/code/metacat/trunk metacat
+
+You should see a list of files as they check out.
+
+Note that you do not need to create the WAR file directly because the Ant
+build-file has an "install" target that will build and deploy the WAR for you. 
+
+
+Installing and Configuring Required Software
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Before you can install and run Metacat, you must ensure that a recent Java SDK,
+PostgreSQL (or another SQL92-compliant RDBMS like Oracle 8i), Ant (if
+installing from source), and Tomcat are installed and running correctly. We
+also highly recommend that you install Apache Web server, as it provides a more
+robust Web-serving environment and is required by some Metacat functionality. 
+
+* `Java 6`_
+* `Apache Tomcat`_ 
+* `Apache HTTPD Server`_ (Highly Recommended)
+* PostgreSQL_ Database (or Oracle_)
+* `Apache Ant`_ (if building from Source)
+
+Java 6
+......
+To run Metacat, you should use Java 6 (Java 5 is deprecated and will not be
+supported after Metacat version 1.9.2). Make sure that the JAVA_HOME
+environment variable is properly set and that both ``java`` and ``javac`` 
+are on your PATH. 
+
+To install Java if you are running Ubuntu_/Debian, type::
+
+  sudo apt-get install sun-java6-jdk
+
+Click "ok" then "yes" for license agreement.
+
+If you are not using Ubuntu_/Debian, you can get Java from the Oracle_ website.
+
+.. _Ubuntu: http://www.ubuntu.com/
+
+Apache Tomcat
+.............
+We recommend that you install Tomcat 6 into the directory of your choice.
+Included with the Metacat download is a Tomcat-friendly start-up script that
+should be installed as well.
+
+Note: we will refer to the Tomcat installation directory as ``<tomcat_home>`` for
+the remainder of the documentation. 
+
+If you are running Ubuntu_/Debian, get Tomcat by typing::
+
+  sudo apt-get install tomcat6
+
+Otherwise, get Tomcat from the `Apache Tomcat`_ page.
+
+Apache HTTPD Server (Highly Recommended)
+........................................
+Although you have the option of running Metacat with only the Tomcat server, we
+highly recommend that you run it behind the Apache Web server for several
+reasons; running Tomcat with the Apache server provides a more robust Web
+serving environment, and the Apache Web server is required if you wish to
+install and run the Metacat Registry. 
+
+.. sidebar:: Configuring Apache on an OS other than Ubuntu/Debian 
+
+  If you are running on an O/S other than Ubuntu/Debian (e.g., Fedora Core or
+  RedHat Linux) or if you installed the Apache source or binary, you must
+  manually edit the Apache configuration file, where <apache_install_dir> is the
+  directory in which Apache is installed:
+
+  ::
+
+    <apache_install_dir>/conf/httpd.conf
+
+  1. Configure the log location and level for Mod JK. If your configuration file does not already have the following section, add it and set the log location to any place you'd like:
+
+    ::
+
+      <IfModule mod_jk.c> 
+        JkLogFile "/var/log/tomcat/mod_jk.log" 
+        JkLogLevel info 
+      </IfModule> 
+
+  2. Configure apache to route traffic to the Metacat application. ServerName should be set to the DNS name of the Metacat server. ScriptAlias and the following Directory section should both point to the cgi-bin directory inside your Metacat installation:
+
+    ::
+
+      <VirtualHost XXX.XXX.XXX.XXX:80> 
+        DocumentRoot /var/www 
+        ServerName dev.nceas.ucsb.edu 
+        ErrorLog /var/log/httpd/error_log 
+        CustomLog /var/log/httpd/access_log common 
+        ScriptAlias /cgi-bin/ "/var/www/cgi-knb/" 
+        <Directory /var/www/cgi-knb/> 
+          AllowOverride None 
+          Options ExecCGI 
+          Order allow,deny 
+          Allow from all 
+        </Directory> 
+        ScriptAlias /knb/cgi-bin/ "/var/www/webapps/knb/cgi-bin/" 
+        <Directory "/var/www/webapps/knb/cgi-bin/"> 
+          AllowOverride None 
+          Options ExecCGI 
+          Order allow,deny 
+          Allow from all 
+        </Directory> 
+        JkMount /knb ajp13 
+        JkMount /knb/* ajp13 
+        JkMount /knb/metacat ajp13 
+        JkUnMount /knb/cgi-bin/* ajp13 
+        JkMount /*.jsp ajp13 
+        JkMount /metacat ajp13 
+        JkMount /metacat/* ajp13 
+      </VirtualHost> 
+
+  3. Copy the "workers.properties" file provided by Metacat into your Apache configuration directory (<apache_install_dir>/conf/).  Depending on whether you are installing from binary distribution or source, the workers.properties file will be in one of two locations:
+
+    * the directory in which you extracted the Metacat distribution (for binary distribution)
+    * <metacat_code_dir>/src/scripts/workers.properties (for both the source distribution and source code checked out from SVN)
+
+  4. Edit the workers.properties file and make sure the following properties are set correctly:
+
+    ::
+
+      workers.tomcat_home -  set to the Tomcat install directory. 
+      workers.java_home - set to the Java install directory. 
+
+  5. Restart Apache to bring in changes by typing:
+
+    ::
+
+      sudo /etc/init.d/apache2 restart
+
+This section contains instructions for installing and configuring the Apache
+Web server for Metacat on an Ubuntu_/Debian system. Instructions for configuring
+Apache running on other Linux systems are included in the sidebar.
+
+1. Install the Apache and Mod JK packages (Mod JK is the module Apache uses to talk to Tomcat applications) by typing:
+
+::
+
+  sudo apt-get install apache2 libapache2-mod-jk
+
+If you are installing the Apache server on an Ubuntu/Debian system, and you
+installed Apache using apt-get as described above, the Metacat code will have
+helper files that can be dropped into directories to configure Apache.
+Depending on whether you are installing from binary distribution or source,
+these helper files will be in one of two locations: 
+
+* the directory in which you extracted the distribution (for binary distribution)
+* ``<metacat_code_dir>/src/scripts`` (for both the source distribution and source code checked out from SVN).  We will refer to the directory with the helper scripts as ``<metacat_helper_dir>`` and the directory where Apache is installed (e.g., ``/etc/apache2/``) as ``<apache_install_dir>``.
+
+2. Set up Mod JK apache configuration by typing:
+
+::
+
+  sudo cp <metacat_helper_dir>/jk.conf <apache_install_dir>/mods-available
+  sudo cp <metacat_helper_dir>/workers.properties <apache_install_dir>
+
+3. Disable and re-enable the Apache Mod JK module to pick up the new changes:
+
+::
+
+  sudo a2dismod jk
+  sudo a2enmod jk
+
+4. Apache needs to know about the Metacat site. The helper file named "knb" has rules that tell Apache which traffic to route to Metacat. Set up the knb (Metacat) site by dropping the knb file into the sites-available directory and running a2ensite to enable the site:
+
+::
+
+  sudo cp <metacat_helper_dir>/knb <apache_install_dir>/sites-available
+  sudo a2ensite knb
+
+5. Restart Apache to bring in changes by typing:
+
+::
+
+  sudo /etc/init.d/apache2 restart
+
+
+PostgreSQL Database
+...................
+Metacat has been most widely tested with PostgreSQL_ and we recommend using it.
+Instructions for installing and configuring Oracle are also included in the
+next section.  To install and configure PostgreSQL_:
+
+1. If you are running Ubuntu_/Debian, get PostgreSQL by typing:
+
+  ::
+
+    sudo apt-get install postgresql
+
+  On other systems, install the rpms for postgres.
+
+2. Start the database by running:
+
+  ::
+
+    /etc/init.d/postgresql start
+
+3. Change to postgres user: 
+
+  ::
+
+    sudo su - postgres
+
+
+4. Set up an empty Metacat database instance by editing the postgreSQL configuration file: 
+
+  ::
+
+    gedit /etc/postgresql/8.3/main/pg_hba.conf
+
+
+  Add the following line to the configuration file: 
+
+  ::
+
+    host metacat metacat 127.0.0.1 255.255.255.255 password
+
+
+  Save the file and then create the Metacat instance: 
+
+  ::
+
+    createdb metacat
+
+
+5. Log in to postgreSQL by typing: 
+
+  ::
+
+    psql metacat
+
+
+6. At the psql prompt, create the Metacat user by typing:
+
+  ::
+
+    CREATE USER metacat WITH UNENCRYPTED PASSWORD 'your_password';
+
+  where 'your_password' is whatever password you would like for the Metacat user. 
+
+7. Exit PostgreSQL by typing 
+
+  ::
+
+    \q
+
+8. Restart the PostgreSQL database to bring in changes: 
+
+  ::
+
+    /etc/init.d/postgresql-8.3 restart
+
+9. Log out of the postgres user account by typing: 
+
+  ::
+
+    logout
+
+10. Test the installation and Metacat account by typing: 
+
+  ::
+
+    psql -U metacat -W -h localhost metacat
+
+11. Log out of postgreSQL: 
+
+  ::
+
+    \q
+
+
+The Metacat servlet automatically creates the required database schema. For
+more information about configuring the database, please see Database
+Configuration.
+
+Installing and Configuring Oracle 8i
+....................................
+To use Oracle 8i with Metacat, the Oracle RDBMS must be installed and running
+as a daemon on the system. In addition the JDBC listener must be enabled.
+Enable it by logging in as an Oracle user and typing::
+
+  lsnrctl start
+
+Your instance should have a table space of at least 5 MB (10 MB or higher
+recommended). You must also create and enable a username specific to Metacat.
+The Metacat user must have most normal permissions including: CREATE SESSION,
+CREATE TABLE, CREATE INDEX, CREATE TRIGGER, EXECUTE PROCEDURE, EXECUTE TYPE,
+etc. If an action is unexplainably rejected by Metacat, the user permissions
+are (most likely) not correctly set.
+
+The Metacat servlet automatically creates the required database schema. For
+more information, please see Database Configuration.
+
+Apache Ant (if building from Source)
+....................................
+If you are building Metacat from a source distribution or from source code
+checked out from SVN, Ant is required. (Users installing Metacat from the
+binary distribution do not require it.) Ant is a Java-based build application
+similar to Make on UNIX systems. It takes build instructions from a file named
+"build.xml", which is found in the root installation directory. Metacat source
+code comes with a default "build.xml" file that may require some modification
+upon installation. 
+
+If you are running Ubuntu/Debian, get Ant by typing::
+
+  sudo apt-get install ant
+
+Otherwise, get Ant from the `Apache Ant`_ homepage.
+
+Ant should be installed on your system and the "ant" executable shell script
+should be available in the user's path. The latest Metacat release was tested
+with Ant 1.8.2. 
+
+Installing Metacat
+~~~~~~~~~~~~~~~~~~
+Instructions for a new install, an upgrade, and a source install are included
+below.
+
+New Install
+...........
+Before installing Metacat, please ensure that all required applications are
+installed, configured to run with Metacat, and running correctly. If you are
+upgrading an existing Metacat servlet, please skip to Upgrade. For information
+about installing from source, skip to Source Install and Upgrade.
+
+To install a new Metacat servlet:
+
+1. Create the Metacat directory. Metacat uses a base directory to store data, metadata, temporary files, and configuration backups. This directory should be outside of the Tomcat application directory so that it will not get wiped out during an upgrade. Typically, the directory is '/var/metacat', as shown in the instructions. If you choose a different location, remember it. You will be asked to configure Metacat to point to the base directory at startup.  Create the Metacat directory by typing:
+
+  ::
+
+    sudo mkdir /var/metacat
+
+2. Change the ownership of the directory to the user that will start Tomcat by typing (note: If you are starting Tomcat as the root user, you do not need to run the chown command):
+
+  ::
+
+    sudo chown -R <tomcat_user> /var/metacat
+
+
+3.  Install the Metacat WAR in the Tomcat web-application directory. For instructions on downloading the Metacat WAR, please see Downloading Metacat.  Typically, Tomcat will look for its application files (WAR files) in the <tomcat_home>/webapps directory (e.g., /usr/share/tomcat6/webapps). Your instance of Tomcat may be configured to look in a different directory. We will refer to the Tomcat application directory as <tomcat_app_dir>.  NOTE: The name of the WAR file (e.g., knb.war) provides the application context, which appears in the URL of the Metacat (e.g., http://yourserver.com/knb/). To change the context, simply change the name of the WAR file to the desired name before copying it.  To install the Metacat WAR:
+
+  ::
+
+    sudo cp <metacat_package_dir>/knb.war <tomcat_app_dir>
+
+
+4. Restart Tomcat. Log in as the user that runs your Tomcat server (often "tomcat") and type:  
+
+  ::
+
+    /etc/init.d/tomcat6 restart
+
+Congratulations! You have now installed Metacat. If everything is installed
+correctly, you should see the Authentication Configuration screen (Figure 2.1)
+when you type http://yourserver.com/yourcontext/ (e.g.,
+http://knb.ecoinformatics.org/knb) into a browser. For more information about
+configuring Metacat, please see the Configuration Section.
+
+.. figure:: images/screenshots/image009.png
+   :align: center
+
+   The Authentication Configuration screen appears the first time you open a 
+   new installation of Metacat. 
+
+Upgrade Metacat
+...............
+To upgrade an existing binary Metacat installation follow the steps in this
+section. The steps for upgrading Metacat from source are the same as the
+instructions for installing from source:
+
+1. Download and extract the new version of Metacat. For more information about downloading and extracting Metacat, please see Downloading Metacat.
+
+2. Stop running Metacat. To stop Metacat, log in as the user that runs your Tomcat server (often "tomcat") and type:
+
+  ::
+
+    /etc/init.d/tomcat6 stop
+
+3. Back up the existing Metacat installation. Although not required, we highly recommend that you back up your existing Metacat to a backup directory (<backup_dir>) before installing a new one. You can do so by typing:
+
+  ::
+
+    cp <web_app_dir>/knb <backup_dir>/knb.<yyyymmdd>
+    cp <web_app_dir>/knb.war <backup_dir>/knb.war.<yyyymmdd>
+
+  Warning: Do not backup the files to the ``<web_app_dir>`` directory.  Tomcat will
+  try to run the backup copy as a service.
+
+4. Copy the new Metacat WAR file in to the Tomcat applications directory: 
+
+  ::
+
+    sudo cp <metacat_package_dir>/knb.war <tomcat_app_dir>
+
+  Note: Typically, Tomcat will look for its application files (WAR files) in the
+  ``<tomcat_home>/webapps`` directory. Your instance of Tomcat may be configured to
+  look in a different directory. 
+
+5. If you have been (or would like to start) running an LSID server, copy the new authority.war file to the Tomcat applications directory. For more information about the LSID server, please see Optional Installation Options. 
+
+  ::
+   
+    sudo cp <metacat_package_dir>/authority.war <tomcat_app_dir>
+
+6. Restart Tomcat (and Apache if you have Tomcat integrated with it). Log in as the user that runs your Tomcat server (often "tomcat"), and type:  
+
+  ::
+
+    /etc/init.d/tomcat6 restart
+
+
+7. Run your new Metacat servlet. Go to a Web browser and visit your installed
+Metacat application, using a URL of the form: 
+
+  ::
+
+    http://yourserver.yourdomain.com/yourcontext/
+
+You should substitute your context name for "yourcontext" in the URL above
+(your context will be "knb" unless you change the name of the knb.war file to
+something else). If everything is working correctly, you should be presented
+with Metacat's Authorization Configuration screen. Note that if you do not have
+Tomcat integrated with Apache you will probably have to type
+http://yourserver.yourdomain.com:8080/yourcontext/
+
+Source Install and Upgrade
+..........................
+Whether you are building Metacat from the source distribution or source code
+checked out from SVN, you will need Apache Ant to do the build (see Installing
+and Configuring Required Software for more information about Ant). 
+
+To install Metacat from source:
+
+1. Edit the build.properties file found in the directory in which you
+   downloaded Metacat. Note: Throughout the instructions, we will refer to this
+   directory as ``<metacat_src_dir>``. 
+
+  * Set the build.tomcat.dir property to your Tomcat installation directory.
+    Metacat will use some of the native Tomcat libraries during the build. For
+    instance: build.tomcat.dir=/usr/local/tomcat
+  * Set the app.deploy.dir property to your application deployment directory.
+    For instance: app.deploy.dir=/usr/local/tomcat/webapps
+
+2. In the ``<metacat_src_dir>``, run: 
+
+  ::
+
+    sudo ant clean install
+
+  You will see the individual modules get built. You should see a "BUILD
+  SUCCESSFUL" message at the end.
+
+  You should see a new file named knb.war in your application deployment
+  directory.
+
+To run your new Metacat servlet, open a Web browser and type::
+
+  http://yourserver.yourdomain.com/yourcontext/ 
+  (e.g.  http://knb.ecoinformatics.org/knb/)
+
+Your context will be "knb" unless you changed the name of the knb.war file to
+something else. The servlet may require a few seconds to start up, but once it
+is running, you will be presented with the Authorization Configuration screen.
+
+Optional Installation Options (LSID Server)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+.. Note::
+
+  The support for LSID identifiers is deprecated, and is being replaced with
+  support for DOI_ identifiers in a future release. We are maintaining support
+  for LSIDs on one particular site, but this support will be removed in a
+  future version of Metacat.
+
+.. _DOI: http://www.doi.org/
+
+Metacat's optional LSID server allows Metacat to use a standardized syntax for
+identifying data sets, in addition to Metacat's internal, custom scheme for
+identifiers. LSID's were designed to identify complex biological entities with
+short identifiers (much like DOIs in publishing) that are both computer and
+human readable. LSID identifiers are URIs and are therefore usable in many
+Internet applications, but they also cleanly separate the identity of a data
+set (i.e., its permenant identifier) from its current location (e.g., the list
+of URLs from which it might be retrieved).  LSIDs accomplish this by using a
+level of indirection; the identifier represents simply a name without location,
+but an associated resolver service can be used to locate the current location
+of the data and medata for the data set.  This is accomplished by establishing
+a well-known location for the resolution service for each authority using an
+infrequently used feature of the domain name system called SRV records.  At its
+most basic, resolution of an identifier is performed when a client looks up the
+SRV record for an LSID by querying DNS, which returns the current host and port
+of the authority web service, which is in turn used to locate the data and
+metadata.
+
+Using LSIDs to identify data records is being debated among members of the
+Taxonomic Databases Working Group (TDWG).  There are several alternate
+technologies that are under consideration (e.g., DOI_, plain http URIs), and so
+at this time the support for LSIDs in Metacat has been created on an
+experimental basis only.  If the LSID approach is ratified by the broader
+community, we will expand support for LSIDs in Metacat, but until then it is an
+optional and experimental feature.
+
+The format of an LSID is:: 
+
+  urn:lsid:<Authority>:<Namespace>:<ObjectID>[:<Version>]
+  e.g., urn:lsid:ecoinformatics.org:tao:12039:1
+
+When you enable the Metacat LSID support, you can use LSID clients (such as
+LSID Launchpad) and LSID notation to query Metacat for data and metadata. LSID
+notation can be used directly in Metacat HTTP queries as well. For example, a
+data package with an ID tao.12039.1 that is stored in a Metacat available at:
+http://example.com:9999 can be accessed by the following HTTP Metacat queries::
+
+  http://example.com:9999/authority/data?lsid=urn:lsid:ecoinformatics.org:tao:12039:1
+  (To return the data)
+
+  http://example.com:9999/authority/metadata?lsid=urn:lsid:ecoinformatics.org:tao:12039:1
+  (To return the metadata)
+
+Notice that in the HTTP query strings, the periods in the data package ID have
+been replaced with colons. The authority (ecoinformatics.org) must be properly
+configured by the Metacat administrator. Note: In order to configure the
+authority, you must have access to the DNS server for the Metacat domain.
+Further instructions are provided below.
+
+Install and configure the LSID Server shipped with Metacat
+..........................................................
+
+To install the LSID server using the binary installation:
+
+1. Copy the authority.war file to Tomcat:
+
+  ::
+
+    sudo cp <metacat_package_directory>/authority.war /usr/share/tomcat6/webapps
+ 
+2. Set up the LSID server by dropping the authority file into Apache's
+   sites-available directory and running a2ensite to enable the site:
+
+   ::
+
+     sudo cp <metacat_helper_dir>/authority /etc/apache2/sites-available
+     sudo a2ensite authority
+
+3. Restart Tomcat. Log in as the user that runs your Tomcat server (often
+   "tomcat") and type:
+
+   ::
+
+     /etc/init.d/tomcat5.5 restart
+
+4. Restart Apache to bring in changes by typing:
+
+  ::
+
+    sudo /etc/init.d/apache2 restart
+
+5. See notes beneath LSID server source installation for instructions for
+   modifying the SRV record(s)
+
+To install the LSID server from a source
+........................................
+
+1. In the build.properties file found in the directory into which you
+   extracted the Metacat source code, set the authority and config.lsidauthority
+   properties. For example:
+  
+  ::
+   
+   authority.context=authority
+   config.lsidauthority=ecoinformatics.org
+
+2. In the <metacat-src-dirctory> create the authority.war by running:
+
+  ::
+
+    sudo ant war-lsid
+
+3. Copy the LSID WAR file into the Tomcat application directory.
+
+  ::
+
+    sudo cp <metacat_package_dir>/dist/authority.war <tomcat_app_dir>
+
+4. Restart Tomcat. Log in as the user that runs your Tomcat server (often
+   "tomcat") and type:   
+
+  ::
+
+    /etc/init.d/tomcat6 restart
+
+5. If you are running Tomcat behind the Apache server (the recommended
+   configuration), set up and enable the authority service site configurations by
+   typing:
+
+  ::
+
+    sudo cp <metacat_helper_dir>/authority <apache_install_dir>/sites-available
+    sudo a2ensite authority
+
+  Where <metacat_helper_dir> can be found in <metacat_code_dir>/src/scripts
+
+6.  Restart Apache to bring in changes by typing: 
+
+  ::
+
+    sudo /etc/init.d/apache2 restart
+
+  Once the authority.war is installed, you must also modify the SRV record(s)
+  on the DNS server for the domain hosting the Metacat. The record should be
+  added to the master zone file for the metacat's DNS server:
+
+    ::
+
+      _lsid._tcp      IN      SRV     1       0       8080    <metacat.edu>.
+
+  Where <metacat.edu> is the name of the machine that will serve as the
+  physical location of the AuthorityService.
+
+  For example, the value of <metacat.edu> for the below example URL would be
+  example.com:
+  
+    ::
+    
+      http://example.com:9999/authority/data?lsid=urn:lsid:ecoinformatics.org:tao:12039:1
+
+  For more information, please see http://www.ibm.com/developerworks/opensource/library/os-lsid/
+
+Troubleshooting
+~~~~~~~~~~~~~~~
+We keep and update a list of common problems and their solutions on the KNB
+website. See http://knb.ecoinformatics.org/software/metacat/troubleshooting.html 
+for more information.
+
+Installing on Windows
+---------------------
+Metacat can be installed on Windows. Please follow the instructions in this
+section for downloading Metacat, installing the required software, and
+installing Metacat. Note that Registry and Data Upload functionality has not
+been tested on Windows.
+
+Download Metacat
+~~~~~~~~~~~~~~~~
+To obtain a Metacat WAR file, which is used when installing the Metacat
+servlet:
+
+1. Browse to the KNB Software Download Page. In the Metacat section, select
+   the link that looks like: metacat-bin-X.X.X.zip, where X.X.X is the latest
+   version of Metacat (e.g., 2.0.0).
+
+2. Choose to download and Save the file locally. 
+
+3. Extract the Metacat package files using your Windows zip utility. You
+   should see a WAR file and several supporting files (we will only use the WAR
+   file when installing Metacat). 
+
+Note: The location where these files were extracted will be referred to as the
+``<metacat_package_dir>`` for the remainder of this documentation. 
+
+Note: Before installing Metacat, please ensure that all required software is
+installed and running correctly.
+
+
+Install Required Software
+~~~~~~~~~~~~~~~~~~~~~~~~~
+Before you can install and run Metacat, you must ensure that a recent Java SDK,
+PostgreSQL and Tomcat are installed, configured, and running correctly. 
+
+* `Java 6`_
+* `Apache Tomcat`_
+* PostgreSQL_ Database
+
+Java 6
+......
+To run Metacat, you must have Java 6. (Java 5 is deprecated). Make sure that
+the JAVA_HOME environment variable is properly set and that both java and javac
+are on your PATH.
+
+To download and install Java:
+
+1. Browse to: http://java.sun.com/javase/downloads/widget/jdk6.jsp and follow
+   the instructions to download JDK 6.
+
+2. Run the downloaded installer to install Java.
+
+3. Set the JAVA_HOME environment variable: In "My Computer" properties, go to
+   "advanced settings > environment variables". Add:
+
+  ::
+
+    System Variable: JAVA_HOME C:\Program Files\Java\jdk1.6.0_18 
+    (or whichever version you downloaded)
+
+Apache Tomcat
+.............
+We recommend that you install Tomcat version 6.  To download and install Tomcat:
+
+1. Browse to: http://tomcat.apache.org/
+2. Download the Tomcat core zip file 
+3. Extract Tomcat files to C:\Program Files\tomcat using the windows zip
+   utility. 
+
+PostgreSQL Database
+...................
+Metacat can be run with several SQL92-compliant database systems, but it has 
+been most widely tested with PostgreSQL_. Instructions for installing and 
+configuring PostgreSQL for use with Metacat are included in this section.
+
+To download and install PostgreSQL:
+
+1. Browse to http://www.postgresql.org/download/windows and download the
+   one-click installer 
+2. Run the installer 
+3. Edit C:\Program Files\PostgreSQL\8.3\data and add:
+  
+  ::
+
+    host metacat metacat 127.0.0.1 255.255.255.255 password
+
+4. Create a super user. At the command line, enter:
+
+  ::
+
+    C:\Program Files\PostgreSQL\8.3\bin 
+    createdb -U postgres metacat (enter super user password)
+
+5. Log in to PostgreSQL: 
+
+  ::
+
+    psql -U postgres metacat (enter super user password)
+
+6. Create a Metacat user:
+
+  ::
+
+    CREATE USER metacat WITH UNENCRYPTED PASSWORD 'your_password'
+
+7. Exit PostgreSQL: 
+
+  ::
+
+    \q
+
+8. Restart PostgreSQL from the start menu by selecting:
+  
+  ::
+
+    run start/All Programs/PostgreSQL 8.3/Stop Server
+    run start/All Programs/PostgreSQL 8.3/Start Server
+
+
+9. Test the installation by logging in as the metacat user: 
+
+  ::
+  
+    Psql –U metacat –W –h localhost metacat
+
+10. Exit PostgreSQL:
+
+  ::
+
+    \q
+
+The Metacat servlet automatically creates the required database schema. For
+more information, please see Database Configuration.
+
+Installing Metacat
+~~~~~~~~~~~~~~~~~~
+Instructions for a new install and for an upgrade are included below.
+
+New Install
+...........
+Before installing Metacat, please ensure that all required applications are
+installed, configured to run with Metacat, and running correctly. If you are
+upgrading an existing Metacat servlet, please skip to Upgrade.
+
+To install a new Metacat servlet:
+
+1. Create the Metacat base directory at: 
+
+  ::
+
+    C:/Program Files/metacat
+
+2. Copy the Metacat WAR file to Tomcat (for information about obtaining a
+   Metacat WAR file, see Download Metacat): 
+  
+  ::
+
+    copy <metacat_package_dir>\knb.war C:\Program Files\tomcat\webapps
+
+3.  Restart Tomcat: 
+
+  ::
+
+    C:\Program Files\tomcat\shutdown.bat
+    C:\Program Files\tomcat\startup.bat
+
+
+Congratulations! You are now ready to configure Metacat. Please see the
+Configuration Section for more information. 
+
+Upgrade
+.......
+To upgrade an existing Metacat installation:
+
+1. Download and extract the new version of Metacat. For more information about
+   downloading and extracting Metacat, please see Download Metacat.
+
+2. Back up the existing Metacat installation. Although not required, we highly
+   recommend that you back up your existing Metacat to a backup directory 
+   (<backup_dir>) before installing a new version. You can do so by copying:
+
+  ::
+
+    <web_app_dir>/knb to <backup_dir>/knb.<yyyymmdd>
+    <web_app_dir>/knb.war to <backup_dir>/knb.war.<yyyymmdd>
+
+  Warning: Do not backup the knb directory in the <web_app_dir> directory.
+  Tomcat will try to run the backup copy as a service.
+
+3.  Copy the new Metacat WAR file in to Tomcat applications directory: 
+
+  ::
+
+    copy knb.war C:\Program Files\tomcat\webapps
+
+4.  Restart Tomcat: 
+  
+  ::
+  
+    C:\Program Files\tomcat\shutdown.bat
+    C:\Program Files\tomcat\startup.bat
+
+Congratulations! You are now ready to configure Metacat. Please see Configuring
+Metacat for more information.
+
Index: docs/user/metacat/source/images/screenshots/image041.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image041.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image043.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image043.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/replication.rst
===================================================================
--- docs/user/metacat/source/replication.rst	(nonexistent)
+++ docs/user/metacat/source/replication.rst	(revision 6871)
@@ -0,0 +1,253 @@
+Replication
+===========
+Metacat has a built-in replication feature that allows different Metacat servers 
+to share data (both XML documents and data files) between each other. Metacat 
+can replicate not only its home server's original documents, but also those 
+that were replicated from partner Metacat servers. When changes are made to 
+one server in a replication network, the changes are automatically propogated 
+to the network, even if the network is down.
+
+Replication allows users to manage their data locally and (by replicating them 
+to a shared Metacat repository) to make those data available to the greater 
+scientific community via a centralized search. In other words, your Metacat can 
+be part of a broader network, but you retain control over the local repository 
+and how it is managed.
+
+For example, the KNB Network (Figure 6.1), which currently consists of ten 
+different Metacat servers from around the world, uses replication to "join" 
+the disperate servers to form a single robust and searchable data 
+repository--facilitating data discovery, while leaving the data ownership and 
+management with the local administrators.
+
+.. figure:: images/screenshots/image059.jpg
+   :align: center
+   
+   A map of the KNB Metacat network.
+
+When properly configured, Metacat's replication mechanism can be triggered by 
+several types of events that occur on either the home or partner server: a 
+document insertion, an update, or an automatic replication (i.e., Delta-T 
+monitoring), which is set at a user-specified time interval.
+
++----------------------+----------------------------------------------------------+
+| Replication Triggers | Description                                              |
++======================+==========================================================+
+| Insert               | Whenever a document is inserted into Metacat, the server |
+|                      | notifies each server in its replication list             |
+|                      | that it has a new file available.                        |
++----------------------+----------------------------------------------------------+
+| Update               | Whenever a document is updated, the server notifies      |
+|                      | each server in its replication list of the update.       |
++----------------------+----------------------------------------------------------+
+| Delta-T monitoring   | At a user-specified time interval, Metacat checks each   |
+|                      | of the servers in its replication list                   |
+|                      | for updated documents.                                   |
++----------------------+----------------------------------------------------------+
+
+Configuring Replication
+-----------------------
+To configure replication, you must configure both the home and partner servers:
+
+1. Create a list of partner servers on your home server using the Replication Control Panel
+2. Create certificate files for the home server
+3. Create certificate files for the partner server
+4. Import partner certificate files to the home server
+5. Import home certificate to the partner server
+6. Update your Metacat database 
+
+Each step is discussed in more detail in the following sections.
+
+Using the Replication Control Panel
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+To add, remove, or alter servers on your home server's Replication list, or to 
+activate and customize the Delta-T handler, use the Replication control panel, 
+which is accessed via the Metacat Administration interface at the following URL::
+ 
+   http://somehost.somelocation.edu/context/admin
+   
+"http://somehost.somelocation.edu/context" should be replaced with the name 
+of your Metacat server and context (e.g., http://knb.ecoinformatics.org/knb/). 
+You must be logged in to Metacat as an administrator.
+
+.. figure:: images/screenshots/image061.jpg
+   :align: center
+   
+   Replication control panel.
+
+Note that currently, you cannot use the Replication Control Panel to remove a 
+server after a replication has occurred. At this point in time, the only way to 
+remove a replication server after replication has occurred is to remove the 
+certificates. 
+
+Generating and Exchanging Security Certificates
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Before you can take advantage of Metacat's replication feature, you must 
+generate security certificates on both the replication partner and home servers. 
+Depending on how the certificates are generated, the certificates may need to be
+exchanged so that each machine "trusts" that the other has replication access.
+Certificates that are purchased from a commercial and well-recognized 
+Certificate Authority do not need to be exchanged with the other replication
+partner before replication takes place.  Metacat replication relies on SSL with
+client certificate authentication enabled.  When a replication partner server 
+communicates with another replication partner, it presents a certificate that
+serves to verify and authenticate that the server is trusted.
+
+If you must generate a self-signed certificate, the partner replication server 
+will need the public certificate added to its existing Certificate Authorities. 
+
+Generate Certificates for Metacat running under Apache/Tomcat
+.............................................................
+Note: Instructions are for Ubuntu/Debian systems.
+
+1. Generate a private key using openssl. The key will be named 
+   ``<hostname>-apache.key``, where ``<hostname>`` is the name of your Metacat 
+   server. Example values for the individual key fields are included in the
+   table below.
+
+   ::
+   
+     openssl req -new -out REQ.pem -keyout <hostname>-apache.key
+
+   +--------------------------+-------------------------------------------------------------------------+
+   | Key Field                | Description and Example Value                                           |
+   +==========================+=========================================================================+
+   | Country Name             | Two letter country code  (e.g., US)                                     |
+   +--------------------------+-------------------------------------------------------------------------+
+   | State or Province Name   | The name of your state or province spelled in full (e.g., California)   |
+   +--------------------------+-------------------------------------------------------------------------+
+   | Locality Name            | The name of your city (e.g., Santa Barbara)                             |
+   +--------------------------+-------------------------------------------------------------------------+
+   | Organization Name        | The company or organization name (e.g., UCSB)                           |
+   +--------------------------+-------------------------------------------------------------------------+
+   | Organizational Unit Name | The department or section name (e.g., NCEAS)                            |
+   +--------------------------+-------------------------------------------------------------------------+
+   | Common Name              | The host server name without port numbers (e.g., myserver.mydomain.edu) |
+   +--------------------------+-------------------------------------------------------------------------+
+   | Email Address            | Administrator's contact email (e.g., administrator@mydomain.edu)        |
+   +--------------------------+-------------------------------------------------------------------------+
+   | A challenge password     | --leave this field blank--                                              |
+   +--------------------------+-------------------------------------------------------------------------+
+   | An optional company name | --leave this field blank--                                              |
+   +--------------------------+-------------------------------------------------------------------------+
+
+2. Create the local certificate file by running the command:
+
+   ::
+   
+     openssl req -x509 -days 800 -in REQ.pem -key <hostname>-apache.key -out <hostname>-apache.crt
+
+   Use the same ``<hostname>`` you used when you generated the key. A file named 
+   ``<hostname>-apache.crt`` will be created in the directory from which you 
+   ran the openssl command. Note: You can name the certificate file anything 
+   you'd like, but keep in mind that the file will be sent to the partner 
+   machine used for replication. The certificate name should have enough 
+   meaning that someone who sees it on that machine can figure out where it 
+   came from and for what purpose it should be used. 
+
+3. Enter the certificate into Apache's security configuration. This will
+   be used to identify your server to a replication partner. You must 
+   register the certificate in the local Apache instance. Note that the 
+   security files may be in a different directory from the one used in the 
+   instructions depending on how you installed Apache. Copy the certificate and 
+   key file using the following commands:
+   
+   ::
+   
+     sudo cp <hostname>-apache.crt /etc/ssl/certs 
+     sudo cp <hostname>-apache.key /etc/ssl/private 
+
+4. Apache needs to be configured to request a “client certificate” when the 
+   replication API is utilized. The helper file named "knb-ssl" has default 
+   rules that configure Apache for SSL and client certificate authentication. 
+   Set up these SSL settings by copying the knb-ssl file into the ``sites-available`` 
+   directory, editing pertinent values to match your system and running 
+   ``a2ensite`` to enable the site. (Note: some settings in knb-ssl need to be 
+   changed to match the specifics of your system.) 
+
+   ::
+   
+     sudo cp <metacat_helper_dir>/knb-ssl <apache_install_dir>/sites-available
+     sudo a2ensite knb-ssl
+
+5. Restart Apache to bring in changes by typing: 
+
+   ::
+   
+     sudo /etc/init.d/apache2 restart
+
+6. If using a self-signed certificate, SCP ``<hostname>-apache.crt`` to the 
+   replication partner machine where it will be added as an additional 
+   Certificate Authority.
+
+If using self-signed certificates, after you have created and SCP'd a 
+certificate file to each replication partner, and received a certificate file 
+from each partner in return, both home and partner servers must add the 
+respective partner certificates as Certificate Authorities.
+
+
+To import a certificate
+.......................
+1. Copy it into the Apache directory
+   
+   ::
+   
+     sudo cp <remotehostfilename> /etc/ssl/certs/
+
+2. Rehash the certificates for Apache by running: 
+
+   ::
+   
+     cd /etc/ssl/certs
+     sudo c_rehash
+
+
+   where the ``<remotehostfilename>`` is the name of the certificate file 
+   created on the remote partner machine and SCP'd to the home machine. 
+
+Update your Metacat database
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The simplest way to update the Metacat database to use replication is to use 
+the Replication Control Panel. You can also update the database u
+sing SQL. Instructions for both options are included in this section.
+
+.. figure:: images/screenshots/image063.jpg
+   :align: center
+   
+   Using the Replication Control Panel to update the Metacat database.
+
+To update your Metacat database to use replication, select the "Add this server" 
+radio button from the Replication Control Panel, enter the partner server name, 
+and specify how the replication should occur (whether to replicate xml, data, 
+or use the local machine as a hub).
+
+To update the database using SQL
+................................
+
+1. Log in to the database
+
+   ::
+   
+     psql -U metacat -W -h localhost metacat
+
+2. Select all rows from the replication table
+
+   ::
+
+     select * from xml_replication;  
+
+3. Insert the partner server. 
+
+   ::
+   
+     INSERT INTO xml_replication (server,last_checked,replicate,datareplicate,hub) VALUES ('<partner.server/context>/servlet/replication',NULL,1,1,0);
+
+   Where ``<partner.server/context>`` is the name of the partner server and 
+   context. The values 'NULL, 1,1,0' indicate (respectively) the last time 
+   replication occurred, that XML docs should be replicated to the partner 
+   server, that data files should be replicated to the partner server, and 
+   that the local server should not act as a hub. Set a value of 'NULL,0,0,0' 
+   if your Metacat is only receiving documents from the partner site and not 
+   replicating to that site.
+
+4. Exit the database 
+5. Restart Apache and Tomcat on both home and partner replication machines 
Index: docs/user/metacat/source/harvester.rst
===================================================================
--- docs/user/metacat/source/harvester.rst	(nonexistent)
+++ docs/user/metacat/source/harvester.rst	(revision 6871)
@@ -0,0 +1,642 @@
+Harvester and Harvest List Editor
+=================================
+
+Metacat's Harvester is an optional feature that can be used to automatically 
+retrieve EML documents from one or more custom data management system (e.g., 
+SRB or PostgreSQL) and to insert (or update) those documents to the home 
+repository. The local sites control when they are harvested, and which documents 
+are harvested. 
+
+For example, the Long Term Ecological Research Network (LTER) uses the Metacat 
+Harvester to create a centralized repository of data stored on twenty-six 
+different sites that store EML metadata, but that use different data management 
+systems. Once the data have been harvested and placed into a centralized 
+repository, they are replicated to the KNB network, exposing the information 
+to an even larger scientific community.
+
+Once the Harvester is properly configured, listed documents are retrieved and 
+uploaded on a regularly scheduled basis. You must configure both the home 
+Metacat and the remote sites (aka the "harvest sites") before using this 
+feature. Local sites must also provide the Metacat server with a list of 
+documents that should be harvested.
+
+Configuring Harvester
+---------------------
+Before you can use the Harvester to retrieve documents, you must configure the 
+feature using the settings in the metacat.properties file. Note that you must 
+also configure each site that the Harvester will connect to and retrieve 
+documents from (see section 7.2 for details). 
+
+The Harvester configuration information is managed in the metacat.properties 
+file, which is located at:: 
+
+  <CONTEXT_DIR>/WEB_INF/metacat.properties
+
+The Harvester properties are grouped together and begin after the comment line:: 
+
+  # Harvester properties
+
+To configure Harvester, edit the metacat.properties and set appropriate values 
+for the harvesterAdministrator and smtpServer property. You may also wish to 
+customize the other Harvester paramaters, each discussed in the table below. 
+
+Harvester Properties and their Functions
+----------------------------------------
+
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+| Property                           | Description and Values                                                                          | |
++====================================+=================================================================================================+=+
+| connectToMetacat                   | Determine whether Harvester should connect to Metacat to upload retrieved documents.            | |
+|                                    | Set to true (the default) under most circumstances. To test whether Harvester can               | |
+|                                    | retrieve documents from a site without actually connecting to Metacat                           | |
+|                                    | to upload the documents, set the value to false.                                                | |
+|                                    |                                                                                                 | |
+|                                    | Values: true/false                                                                              | |
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+| delay                              | The number of hours that Harvester will wait before beginning its first harvest.                | |
+|                                    | For example, if Harvester is run at 1:00 p.m., and the delay is set to 12,                      | |
+|                                    | Harvester will begin its first harvest at 1:00 a.m.                                             | |
+|                                    |                                                                                                 | |
+|                                    | Default: 0                                                                                      | |
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+| harvesterAdministrator             | The email address of the Harvester Administrator. Harvester will send                           | |
+|                                    | email reports to this address after every harvest. Enter multiple email addresses by separating | |
+|                                    | each address with a comma or semicolon (e.g., name1@abc.edu,name2@abc.edu).                     | |
+|                                    |                                                                                                 | |
+|                                    | Values: An email address, or multiple email addresses separated by commas or semi-colons        | |
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+| logPeriod                          | The number of days to retain Harvester log entries. Harvester log entries                       | |
+|                                    | record information such as which documents were harvested, from which sites,                    | |
+|                                    | and whether any errors were encountered during the harvest. Log entries older                   | |
+|                                    | than logPeriod number of days are purged from the database at the end of each harvest.          | |
+|                                    |                                                                                                 | |
+|                                    | Default: 90                                                                                     | |
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+| maxHarvests                        | The maximum number of harvests that Harvester should execute before                             | |
+|                                    | shutting down. If the value of maxHarvests is set to 0 or a                                     | |
+|                                    | negative number, Harvester will execute indefinitely.                                           | |
+|                                    |                                                                                                 | |
+|                                    | Default: 0                                                                                      | |
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+| period                             | The number of hours between harvests. Harvester will run a new harvest                          | |
+|                                    | every specified period of hours (either indefinitely or until the maximum                       | |
+|                                    | number of harvests have run, depending on the value of maxHarvests).                            | |
+|                                    |                                                                                                 | |
+|                                    | Default: 24                                                                                     | |
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+| smtpServer                         | The SMTP server that Harvester uses for sending email messages to the                           | |
+|                                    | Harvester Administrator and Site Contacts.                                                      | |
+|                                    | (e.g., somehost.institution.edu). Note that the default value only works                        | |
+|                                    | if the Harvester host machine is configured as a SMTP server.                                   | |
+|                                    |                                                                                                 | |
+|                                    | Default: localhost                                                                              | |
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+| Harvester Operation Properties     | The Harvester Operation properties are used by Harvester to report information                  | |
+| (GetDocError, GetDocSuccess, etc.) | about performed operations for inclusion in log entries and email messages.                     | |
+|                                    | Under most circumstances the values of these properties should not be modified.                 | |
++------------------------------------+-------------------------------------------------------------------------------------------------+-+
+
+Configuring a Harvest Site (Instructions for Site Contact)
+----------------------------------------------------------
+
+After Metacat's Harvester has been configured, remote sites can register and 
+send information about which files should be retrieved. Each remote site must 
+have a site contact who is responsible for registering the site and creating a 
+list of EML files to harvest (the "Harvest List"), as well as for reviewing 
+harvest reports. The site contact can unregister the site from the Harvester 
+at any time.
+
+To use Harvester:
+
+1. Register with Harvester
+2. Compose a Harvest List (you will likely wish to use the Harvest List Editor)
+3. Prepare your EML Documents for Harvest
+4. Review the Harvester Reports
+
+Register with Harvester
+~~~~~~~~~~~~~~~~~~~~~~~
+
+To register a remote site with Harvester, the Site Contact should log in to 
+Metacat's Harvester Registration page and enter information about the site and 
+how it should be harvested. 
+
+1. Using a Web browser, log in to Metacat's Harvester Registration page. 
+   The Harvester Registration page is inside the skins directory. For example, 
+   if the Metacat server that you wish to register with resides at the following URL: 
+
+   ::
+   
+     http://somehost.somelocation.edu:8080/knb/index.jsp
+
+   then the Harvester Registration page would be accessed at: 
+
+   ::
+   
+     http://somehost.somelocation.edu:8080/knb/style/skins/knb/harvesterRegistrationLogin.jsp
+
+.. figure:: images/screenshots/image065.jpg
+   :align: center
+   
+   Metacat's Harvester Registration page.
+
+2. Enter your Metacat account information and click Submit to log in to your 
+   Metacat from the Harvester Registration page.
+
+   Note: In some cases, you may need to log in to an anonymous "site" account 
+   rather than your personal account so that the registered data will not appear 
+   to have been registered by a single user. For example, an information 
+   manager (jones) who is registering data created by a team of scientists 
+   (jones, smith, and barney) from the Georgia Coastal Ecosystems site  might 
+   log in to a dedicated account (named with the site's acronym, "GCE") to 
+   indicate that the registered data is from the entire site rather than "jones". 
+
+3. Enter information about your site and how often you want to schedule harvests 
+   and then click the Register button (Figure 7.2). The Harvest List URL should 
+   point to the location of the Harvest List, which is an XML file that lists 
+   the documents to harvest. If you do not yet have a Harvest List, please see 
+   the next section for more information about creating one.
+   
+.. figure:: images/screenshots/image067.jpg
+   :align: center
+   
+   Enter information about your site and how often you want to schedule harvests.
+
+The example settings in the previous figure instruct Harvester to harvest 
+documents from the site once every two weeks. The Harvester will access the 
+site's Harvest List at URL "http://somehost.institution.edu/~myname/harvestList.xml", 
+and will send email reports to the Site Contact at email address 
+"myname@institution.edu". Note that you can enter multiple email addresses by 
+separating each address with a comma or a semi-colon. For example, 
+"myname@institution.edu,anothername@institution.edu"
+
+Compose a Harvest List (The Harvest List Editor)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The Harvest List is an XML file that contains a list of documents to be harvested. 
+The list is created by the site contact and stored on the site contact's site 
+at the location specified during the Harvester registration process (see 
+previous section for details). The list can be generated by hand, or you can 
+use Metacat's Harvest List Editor to automatically generate and structure the 
+list to conform to the required XML schema (displayed in figure at the end of 
+this section). In this section we will look at what information is required when 
+building a Harvest List, and how to configure and use the Harvest List Editor. 
+Note that you must have a source distribution of Metacat in order to use the 
+Harvest List Editor.
+
+The Harvest List contains information that helps Metacat identify and retrieve 
+each specified EML file. Each document in the list must be described with a 
+docid, documentType, and documentURL (see table).
+
+Table: Information that must be included in the Harvest List about each EML file
++--------------+-------------------------------------------------------------------------------------------------+
+| Item         | Description                                                                                     |
++==============+=================================================================================================+
+| docid        | The docid uniquely identifies each EML document. Each docid consists of three elements:         |
+|              |                                                                                                 |
+|              | ``scope`` The document group to which the document belongs                                      |
+|              | ``identifier``  A number that uniquely identifies the document within the scope.                |
+|              | ``revision`` Anumber that indicates the current revision.                                       |
+|              |                                                                                                 |
+|              | For example, a valid docid could be: demoDocument.1.5, where demoDocument represents            |
+|              | the scope, 1 the identifier, and 5 the revision number.                                         |
++--------------+-------------------------------------------------------------------------------------------------+
+| documentType | The documentType identifies the type of document as EML                                         |
+|              | e.g., "eml://ecoinformatics.org/eml-2.0.0".                                                     |
++--------------+-------------------------------------------------------------------------------------------------+
+| documentURL  | The documentURL specifies a place where Harvester can locate and retrieve the                   |
+|              | document via HTTP. The Metacat Harvester must be given read access to the contents at this URL. |
+|              | e.g. "http://www.lternet.edu/~dcosta/document1.xml".                                            |
++--------------+-------------------------------------------------------------------------------------------------+
+
+The example Harvest List below contains two <document> elements that specify the 
+information that Harvester needs to retrieve a pair of EML documents and 
+upload them to Metacat.
+
+::
+
+
+  <!-- Example Harvest List -->
+  <?xml version="1.0" encoding="UTF-8" ?>
+  <hrv:harvestList xmlns:hrv="eml://ecoinformatics.org/harvestList" >
+    <document>
+        <docid>
+            <scope>demoDocument</scope>
+            <identifier>1</identifier>
+            <revision>5</revision>
+        </docid>
+        <documentType>eml://ecoinformatics.org/eml-2.0.0</documentType>
+        <documentURL>http://www.lternet.edu/~dcosta/document1.xml</documentURL>
+    </document>
+    <document>
+        <docid>
+            <scope>demoDocument</scope>
+            <identifier>2</identifier>
+            <revision>1</revision>
+        </docid>
+        <documentType>eml://ecoinformatics.org/eml-2.0.0</documentType>
+        <documentURL>http://www.lternet.edu/~dcosta/document2.xml</documentURL>
+    </document>
+  </hrv:harvestList>
+
+Rather than formatting the list by hand, you may wish to use Metacat's Harvest 
+List Editor to compose and edit it. The Harvest List Editor displays a Harvest 
+List as a table of rows and fields. Each table row corresponds to 
+a single <document> element in the corresponding Harvest List file (i.e., one 
+EML document). The row numbers are used only for visual reference and are 
+not editable.
+
+To add a new document to the Harvest List, enter values for all five editable 
+fields (all fields except the "Row #" field). Partially filled-in rows will 
+cause errors that will result in an invalid Harvest List. 
+
+The buttons at the bottom of the Editor can be used to Cut, Copy, and Paste 
+rows from one location to another. Select a row and click the desired button, 
+or paste the default values (which are specified in the Editor's configuration 
+file, discussed later in this section) into the currently selected row by 
+clicking the Paste Defaults button. Note: Only one row can be selected at any 
+given time: all cut, copy, and paste operations work on only a single row 
+rather than on a range of rows. 
+
+To run the Harvest List Editor, from the terminal on which the Metacat 
+source code is installed: 
+      
+1. Open a system command window or terminal window. 
+2. Set the METACAT_HOME environment variable to the value of the Metacat 
+   installation directory. Some examples follow: 
+
+   On Windows: 
+
+   ::
+   
+     set METACAT_HOME=C:\somePath\knb
+
+   On Linux/Unix (bash shell): 
+   
+   ::
+   
+     export METACAT_HOME=/home/somePath/metacat
+
+3. cd to the following directory: 
+
+   On Windows: 
+   
+   ::
+   
+     cd %METACAT_HOME%\lib\harvester
+
+   On Linux/Unix: 
+
+   ::
+   
+     cd $METACAT_HOME/lib/harvester
+
+4. Run the appropriate Harvester shell script, as determined by the operating system: 
+
+   On Windows: 
+   
+   ::
+   
+     runHarvestListEditor.bat
+
+   On Linux/Unix: 
+
+   ::
+   
+     sh runHarvestListEditor.sh
+
+   The Harvest List Editor will open. 
+
+If you would like to customize the Harvest List Editor (e.g., specify a 
+default list to open automatically whenever the editor is opened and/or 
+default values), create a file called .harvestListEditor (note the leading 
+dot character). Use a plain text editor to create the file and place the file 
+in the Site Contact's home directory. To determine the home directory, open a 
+system command window or terminal window and type the following: 
+
+On Windows: 
+
+::
+
+  echo %USERPROFILE%
+
+On Linux/Unix: 
+
+::
+
+  echo $HOME
+
+The configuration file contains a number of optional properties that can make 
+using the Editor more convenient. A sample configure file is displayed below, and 
+more information about each configuration property is contained in the table.
+
+A sample .harvestListEditor configuration file
+
+::
+
+  defaultHarvestList=C:/temp/harvestList.xml
+  defaultScope=demo_document
+  defaultIdentifier=1
+  defaultRevision=1
+  defaultDocumentURL=http://www.lternet.edu/~dcosta/
+  defaultDocumentType=eml://ecoinformatics.org/eml-2.0.0
+
+Harvest List Editor Configuration Properties
+
++---------------------+----------------------------------------------------------------------------------------------+
+| Property            | Description                                                                                  |
++=====================+==============================================================================================+
+| defaultHarvestList  | The location of a Harvest List file that the Editor will                                     |
+|                     | automatically open for editing on startup. Set this property                                 |
+|                     | to the path to the Harvest List file that you expect to edit most frequently.                |
+|                     |                                                                                              |
+|                     | Examples:                                                                                    |
+|                     | ``/home/jdoe/public_html/harvestList.xml``                                                   |
+|                     | ``C:/temp/harvestList.xml``                                                                  |
++---------------------+----------------------------------------------------------------------------------------------+
+| defaultScope        | The value pasted into the Editor's Scope field when the Paste                                |
+|                     | Defaults button is clicked. The Scope field should contain                                   |
+|                     | a symbolic identifier that indicates the family of documents                                 |
+|                     | to which the EML document belongs.                                                           |
+|                     |                                                                                              |
+|                     | Example:   xyz_dataset                                                                       |
+|                     | Default:    dataset                                                                          |
++---------------------+----------------------------------------------------------------------------------------------+
+| defaultIdentifer    | The value pasted into the Editor's Identifier field when the                                 |
+|                     | Paste Defaults button is clicked. The Scope field should contain                             |
+|                     | a numeric value indicating the identifier for this particular EML document within the Scope. |
++---------------------+----------------------------------------------------------------------------------------------+
+| defaultRevision     | The value pasted into the Editor's Revision field when the Paste Defaults button             |
+|                     | is clicked. The Scope field should contain a numeric value indicating the                    |
+|                     | revision number of this EML document within the Scope and Identifier.                        |
+|                     |                                                                                              |
+|                     | Example:   2                                                                                 |
+|                     | Default:    1                                                                                |
++---------------------+----------------------------------------------------------------------------------------------+
+| defaultDocumentType | The document type specification pasted into the                                              |
+|                     | Editor's DocumentType field when the Paste Defaults button is clicked.                       |
+|                     |                                                                                              |
+|                     | Default: ``eml://ecoinformatics.org/eml-2.0.0``                                              |
++---------------------+----------------------------------------------------------------------------------------------+
+| defaultDocumentURL  | The URL or partial URL pasted into the Editor's URL field                                    |
+|                     | when the Paste Defaults button is clicked. Typically, this                                   |
+|                     | value is set to the portion of the URL shared by all harvested EML documents.                |
+|                     |                                                                                              |
+|                     | Example:                                                                                     |
+|                     | ``http://somehost.institution.edu/somepath/``                                                |
+|                     | Default: ``http://``                                                                         |
++---------------------+----------------------------------------------------------------------------------------------+
+
+
+XML Schema for Harvest Lists
+
+::
+
+  <?xml version="1.0" encoding="UTF-8"?>
+  <!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by Matt Jones (NCEAS) -->
+  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:hrv="eml://ecoinformatics.org/harvestList" xmlns="eml://ecoinformatics.org/harvestList" targetNamespace="eml://ecoinformatics.org/harvestList" elementFormDefault="unqualified" attributeFormDefault="unqualified">
+  <xs:annotation>
+    <xs:documentation>This module defines the required information for the harvester to collect documents from the local site. The local system containing this document must give the Metacat Harvester read access to this document.</xs:documentation>
+  </xs:annotation>
+  <xs:annotation>
+    <xs:appinfo>
+      <tooltip/>
+      <summary/>
+      <description/>
+    </xs:appinfo>
+  </xs:annotation>
+  <xs:element name="harvestList">
+    <xs:annotation>
+      <xs:documentation>This represents the local document information that is used to inform the Harvester of the docid, document type, and location of the document to be harvested.</xs:documentation>
+    </xs:annotation>
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="document" maxOccurs="unbounded">
+          <xs:complexType>
+            <xs:sequence>
+              <xs:element name="docid">
+                <xs:annotation>
+                  <xs:documentation>The complete document identifier to be used by metacat.  The docid is a compound element that gives a scope for the identifier, an integer local identifer that is unique within that scope, and a revision.  Each revision is assumed to specify a unique, non-changing document, so once a particular revision is harvested, there is no need for it to be harvested again.  To trigger a harvest of a document that has been updated, increment the revision number for that identifier.</xs:documentation>
+                </xs:annotation>
+                <xs:complexType>
+                  <xs:sequence>
+                    <xs:element name="scope" type="xs:string">
+                      <xs:annotation>
+                        <xs:documentation>The system prefix of a metacat docid that defines the scope within which the identifier is unique.</xs:documentation>
+                      </xs:annotation>
+                    </xs:element>
+                    <xs:element name="identifier" type="xs:long">
+                      <xs:annotation>
+                        <xs:documentation>The local (site specific) portion of the identifier (docid) that is unique within the context of the scope.</xs:documentation>
+                      </xs:annotation>
+                    </xs:element>
+                    <xs:element name="revision" type="xs:long">
+                      <xs:annotation>
+                        <xs:documentation>The revision identifier for this document, indicating a unique document version.</xs:documentation>
+                      </xs:annotation>
+                    </xs:element>
+                  </xs:sequence>
+                </xs:complexType>
+              </xs:element>
+              <xs:element name="documentType" type="xs:string">
+                <xs:annotation>
+                  <xs:documentation>The type of document to be harvested, indicated by a namespace string, formal public identifier, mime type, or other type indicator.   </xs:documentation>
+                </xs:annotation>
+              </xs:element>
+              <xs:element name="documentURL" type="xs:anyURI">
+                <xs:annotation>
+                  <xs:documentation>The documentURL field contains the URL of the document to be harvested. The Metacat Harvester must be given read access to the contents at this URL.</xs:documentation>
+                </xs:annotation>
+              </xs:element>
+            </xs:sequence>
+          </xs:complexType>
+        </xs:element>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  </xs:schema>
+
+Prepare EML Documents for Harvest
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+To prepare a set of EML documents for harvest, ensure that the following is true for each document: 
+
+* The document contains valid EML 
+* The document is specified in a ``<document>`` element in the site's Harvest List
+* The file resides at the location specified by its URL in the Harvest List 
+
+Review Harvester Reports
+~~~~~~~~~~~~~~~~~~~~~~~~
+Harvester sends an email report to the Site Contact after every scheduled site 
+harvest. The report contains information about the performed operations, such 
+as which EML documents were harvested and whether any errors were encountered. 
+Errors are indicated by operations that display a status value of 1; a status 
+value of 0 indicates that the operation completed successfully. 
+
+When errors are reported, the Site Contact should try to determine whether the 
+source of the error is something that can be corrected at the site. Common 
+causes of errors include:
+
+* a document URL specified in the Harvest List does not match the location of the actual EML file on the disk 
+* the Harvest List does not contain valid XML as specified in the harvestList.xsd schema 
+* the URL to the Harvest List (specified during registration) does not match the actual location of the Harvest List on the disk 
+* an EML document that Harvester attempted to upload to Metacat does not contain valid EML 
+
+If the Site Contact is unable to determine the cause of the error and its 
+resolution, he or she should contact the Harvester Administrator for assistance. 
+
+Unregister with Harvester
+~~~~~~~~~~~~~~~~~~~~~~~~~
+To discontinue harvests, the Site Contact must unregister with Harvester. 
+To unregister:
+
+1. Using a Web browser, log in to Metacat's Harvester Registration page. 
+   The Harvester Registration page is inside the skins directory. For example, 
+   if the Metacat server that you wish to register with resides at the 
+   following URL: 
+
+   ::
+   
+     http://somehost.somelocation.edu:8080/knb/index.jsp
+
+   then the Harvester Registration page would be accessed at: 
+
+   ::
+
+     http://somehost.somelocation.edu:8080/knb/style/skins/knb/harvesterRegistrationLogin.html
+
+2. Enter and submit your Metacat account information. On the subsequent screen, 
+   click Unregister to remove your site and discontinue harvests. 
+
+Running Harvester
+-----------------
+The Harvester can be run as a servlet or in a command window. Under most 
+circumstances, Harvester is best run continuously as a background servlet 
+process. However, if you expect to use Harvester infrequently, or if wish only 
+to test that Harvester is functioning, it may desirable to run it from a 
+command window.
+
+Running Harvester as a Servlet
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+To run Harvester as a servlet (from a source code installation):
+
+1. Remove the comment symbols around the HarvesterServlet entry in the source 
+   code. The HarvesterServlet entry is located in the ``lib/web.xml.tomcatN`` 
+   file, where tomcatN corresponds to the version of Tomcat you are running. 
+   For example, if you are running Tomcat 6, edit file lib/web.xml.tomcat6. 
+
+   ::
+   
+     <!--
+     <servlet>
+       <servlet-name>HarvesterServlet</servlet-name>
+       <servlet-class>edu.ucsb.nceas.metacat.harvesterClient.HarvesterServlet</servlet-class>
+       <init-param>
+       <param-name>debug</param-name>
+       <param-value>1</param-value>
+       </init-param>
+       <init-param>
+       <param-name>listings</param-name>
+       <param-value>true</param-value>
+       </init-param>
+       <load-on-startup>1</load-on-startup>
+     </servlet>
+     -->
+
+2. Save the edited file. 
+3. Shut down Tomcat. 
+4. Redeploy Metacat by running the following two Ant commands from the 
+   top-level directory of your Metacat installation: 
+
+   ::
+   
+     ant cleanweb
+     ant install
+
+5. Restart Tomcat. Note that you will have to edit the ``metacat.properties`` 
+   file to specify harvester settings.
+
+About thirty seconds after you restart Tomcat, the Harvester servlet will 
+start executing. The first harvest will occur after the number of hours 
+specified in the metacat.properties file. The servlet will continue running 
+new harvests until the maximum number of harvests have been completed, or until 
+Tomcat shuts down (harvest frequency and maximum number of harvests are also 
+set in the Harvester properties). 
+
+Running Harvester in a Command Window
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+To run Harvester in a Command Window:
+ 
+1. Open a system command window or terminal window. 
+2. Set the ``METACAT_HOME`` environment variable to the value of the 
+   Metacat installation directory. 
+
+   On Windows: 
+
+   ::
+   
+     set METACAT_HOME=C:\somePath\metacat
+
+   On Linux/Unix (bash shell): 
+
+   ::
+   
+     export METACAT_HOME=/home/somePath/metacat
+
+3. cd to the following directory: 
+
+   On Windows: 
+
+   ::
+   
+     cd %METACAT_HOME%\lib\harvester
+
+   On Linux/Unix: 
+
+   ::
+   
+     cd $METACAT_HOME/lib/harvester
+
+4. Run the appropriate Harvester shell script, as determined by the operating system: 
+
+   On Windows: 
+
+   ::
+   
+     runHarvester.bat
+
+   On Linux/Unix: 
+
+   ::
+   
+     sh runHarvester.sh
+
+The Harvester application will start executing. The first harvest will occur 
+after the number of hours specified in the ``metacat.properties file``. The 
+servlet will continue running new harvests until the maximum number of harvests 
+have been completed, or until you interrupt the process by hitting CTRL/C in 
+the command window (harvest frequency and maximum number of harvests are also 
+set in the Harvester properties). 
+
+Reviewing Harvest Reports
+-------------------------
+Harvester sends an email report to the Harvester Administrator after every 
+harvest. The report contains information about the performed operations, such 
+as which sites were harvested as well as which EML documents were harvested 
+and whether any errors were encountered. Errors are indicated by operations 
+that display a status value of 1; a status value of 0 indicates that the 
+operation completed successfully. 
+
+The Harvester Administrator should review the report, paying particularly 
+close attention to any reported errors and accompanying error messages. When 
+errors are reported at a particular site, the Harvester Administrator should 
+contact the Site Contact to determine the source of the error and its 
+resolution. Common causes of errors include:
+
+* a document URL specified in the Harvest List does not match the location of the actual EML file on the disk 
+* the Harvest List does not contain valid XML as specified in the harvestList.xsd schema 
+* the URL to the Harvest List (specified during registration) does not match the actual location of the Harvest List on the disk 
+* an EML document that Harvester attempted to upload to Metacat does not contain valid EML 
+
+Errors that are independent of a particular site may indicate a problem with 
+Harvester itself, Metacat, or the database connection. Refer to the error 
+message to determine the source of the error and its resolution. 
+
Index: docs/user/metacat/source/authinterface.rst
===================================================================
--- docs/user/metacat/source/authinterface.rst	(nonexistent)
+++ docs/user/metacat/source/authinterface.rst	(revision 6871)
@@ -0,0 +1,12 @@
+Creating a Java Class that Implements AuthInterface
+===================================================
+By default, Metacat supports the use of LDAP as an external authentication
+mechanism.  It does this by supplying a class (``AuthLDAP``) that implements
+authentication via an external LDAP server.  However, administrators have the 
+choice of replacing LDAP with a different system for authentication because 
+Metacat is written such that this Authentication provider is replaceable with 
+another class that implements the same interface (``AuthInterface``). As
+an Administrator, you have the choice to provide an alternative implementation
+of ``AuthInterface`` and then configuring ``metacat.properties`` to use that
+class for authentication instead of LDAP.
+
Index: docs/user/metacat/source/metacat-properties.rst
===================================================================
--- docs/user/metacat/source/metacat-properties.rst	(nonexistent)
+++ docs/user/metacat/source/metacat-properties.rst	(revision 6871)
@@ -0,0 +1,383 @@
+Appendix: Metacat Properties
+============================
+The most dynamic Metacat Properties are managed using Metacat's Configuration 
+Interface (see :doc:`configuration`). These properties, as well as other, 
+rarely modified ones can be found in the metacat.properties file. For more 
+information about the properties, click one of the following:
+
+* Server Properties
+* Application Properties
+* Database Properties
+* Authorization and Authentication Properties
+* XML/EML Properties
+
+Server Properties
+-----------------
+All of Metacat's server properties are managed with the form-based 
+configuration utility, though they can also be accessed More information on 
+each is included below.
+
+
+Metacat Server Properties
+
++--------------------+------------------------------------------------------------------------------------------+------------------------+
+| Property           | Description                                                                              | Example                |
++====================+==========================================================================================+========================+
+| server.name        | The network host name used to access Metacat. Note that this is not necessarily          | knb.ecoinformatics.org |
+|                    | the physical name of the server running Metacat. The host name should not                |                        |
+|                    | include the protocol prefix (http://).                                                   |                        |
+|                    |                                                                                          |                        |
+|                    | Default Value: localhost                                                                 |                        |
++--------------------+------------------------------------------------------------------------------------------+------------------------+
+| server.httpPort    | The network port used to access Metacat for non-secure (standard) connections.           | 80                     |
+|                    | This is usually 80 if Apache Web server is running, and 8080 if Tomcat is running alone. |                        |
+|                    |                                                                                          |                        |
+|                    | Default Value: 80                                                                        |                        |
++--------------------+------------------------------------------------------------------------------------------+------------------------+
+| server.httpSSLPort | The network port used to access Metacat for secure connections. This is usually          | 443                    |
+|                    | 443 if Apache Web server is running, and 8443 if Tomcat is running alone.                |                        |
+|                    |                                                                                          |                        |
+|                    | Default Value: 443                                                                       |                        |
++--------------------+------------------------------------------------------------------------------------------+------------------------+
+
+Application Properties
+----------------------
+
+Metacat's application properties are described below. Properties that can only 
+be edited manually in the ``metacat.properties`` file are highlighted. All 
+others are managed with the properties configuration utility.
+
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| Property                       | Description                                                                 | Example                       |
++================================+=============================================================================+===============================+
+| application.metacatVersion     | The Metacat version number. It is set by the build engineer                 | 1.9.0                         |
+|                                | at build time. Usually, the value should never be changed.                  |                               |
+|                                |                                                                             |                               |
+|                                | Default Value: X.X.X (where X.X.X is the current version of Metacat)        |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.metacatReleaseInfo | Release information for display purposes. Typically the property            | Release Candidate 1           |
+|                                | is set during the release candidate cycle to let users know which           |                               |
+|                                | candidate they are downloading.                                             |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.deployDir          | The directory where Web applications are deployed. Usually, the value       | /usr/local/tomcat/webapps     |
+|                                | is a directory named "webapps" in the Tomcat installation directory.        |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.context            | The name of the Metacat application directory in                            | knb                           |
+|                                | the deployment directory. This corresponds to the first part of the         |                               |
+|                                | WAR file name (the part before .war). Most commonly, this                   |                               |
+|                                | is "knb", but it can be changed to other things.                            |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.default-style      | A custom Metacat Web skin usually associated with                           | default                       |
+|                                | an organizational theme. If your organization has no                        |                               |
+|                                | custom skin, leave the value as "default".                                  |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.knbSiteURL         | The main KNB website.                                                       | http://knb.ecoinformatics.org |
+|                                |                                                                             |                               |
+|                                | Default Value: http://knb.ecoinformatics.org                                |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.datafilepath       | The directory in which to store data files. The directory should            | /var/metacat/data             |
+|                                | be outside the Metacat installation directories so data files will not      |                               |
+|                                | be lost when Metacat is upgraded. The data file directory must be           |                               |
+|                                | writable by the user that starts Tomcat (and thus Metacat).                 |                               |
+|                                |                                                                             |                               |
+|                                | Default Value: /var/metacat/data                                            |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.inlinedatafilepath | The directory where inline data files will be stored. Inline                | /var/metacat/inline-data      |
+|                                | data files are created from data that is embedded in EML                    |                               |
+|                                | metadata. The directory should be outside the Metacat installation          |                               |
+|                                | directories so data files will not be lost when Metacat is upgraded.        |                               |
+|                                | For clarity of data, this should probably not be the same as                |                               |
+|                                | ``application.datafilepath``. The data file directory must be               |                               |
+|                                | writable by the user that starts Tomcat (and thus Metacat).                 |                               |
+|                                |                                                                             |                               |
+|                                | Default Value: /var/metacat/inline-data                                     |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.documentfilepath   | The directory where metadata files will be stored.                          | /var/metacat/documents        |
+|                                | The directory should be outside the Metacat installation directories        |                               |
+|                                | so document files will not be lost when Metacat is upgraded. For            |                               |
+|                                | clarity of organization, this should probably not be the same as            |                               |
+|                                | ``application.datafilepath`` or ``application.inlinedatafilepath``.         |                               |
+|                                | The data file directory must be writable by the user that                   |                               |
+|                                | starts Tomcat (and thus Metacat).                                           |                               |
+|                                |                                                                             |                               |
+|                                | Default Value: /var/metacat/documents                                       |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+| application.tempDir            | The directory where the Metacat data registry stores temporary              | /var/metacat/temporary        |
+|                                | files. The directory should not be the same as ``application.datafilepath`` |                               |
+|                                | or ``application.inlinedatafilepath`` (or any other persistent file path)   |                               |
+|                                | because all files in this may be purged programmatically. The temporary     |                               |
+|                                | file directory must be writable by the user that starts Apache.             |                               |
+|                                |                                                                             |                               |
+|                                | Default Value: /var/metacat/temporary                                       |                               |
++--------------------------------+-----------------------------------------------------------------------------+-------------------------------+
+
+Database Properties
+-------------------
+Metacat's database properties are described next. Properties that can only be 
+edited manually in the metacat.properties file are highlighted. All others 
+are managed with the properties configuration utility.
+
+Metacat Database Properties
+
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| Property                                   | Description                                                                                              | Example                                                 |
++============================================+==========================================================================================================+=========================================================+
+| database.connectionURI                     | The JDBC connection URI for the main database instance of Metacat.                                       | ``jdbc:postgresql://yourserver.yourdomain.edu/metacat`` |
+|                                            | The URI is formatted like: ``jdbc:<database_type>:thin@<your_server_name>:1521:<metacat_database_name>`` |                                                         |
+|                                            | NOTE: You must create an empty database prior to initial Metacat configuration.                          |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: jdbc:postgresql://localhost/metacat                                                       |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.user                              | The user for the main database instance of Metacat. The user must                                        | metacat-user                                            |
+|                                            | have already been created on the database.                                                               |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.password                          | The password of the user for the main database instance of Metacat.                                      | securepassword4843                                      |
+|                                            | The password must have already been created for the user.                                                |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.type                              | The type of database you are running. Currently, there are two supported                                 | postgres                                                |
+|                                            | types, Oracle and Postgres.                                                                              |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.driver                            | The JDBC driver to be used to access the main database instance of Metacat.                              | org.postgresql.Driver                                   |
+|                                            | There is one driver associated with each type of database.                                               |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.adapter                           | The adapter class that allows Metacat to access your database type.                                      | edu.ucsb.nceas.dbadapter.PostgresqlAdapter              |
+|                                            | There is one adapter associated with each type of database.                                              |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.scriptsuffix.<database_type>      | The script suffix tells the system which database scripts to run                                         | postgres.sql                                            |
+|                                            | (postgres or oracle) when installing or updating database schema.                                        |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Values:                                                                                          |                                                         |
+|                                            | database.scriptsuffix.postgres=postgres.sql                                                              |                                                         |
+|                                            | database.scriptsuffix.oracle=oracle.sql                                                                  |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.upgradeVersion.<database_version> | Which database scripts to run when updating database schema. There is a                                  | upgrade-db-to-1.2                                       |
+|                                            | database.upgradeVersion entry for every Metacat database schema version.                                 |                                                         |
+|                                            | Each schema version corresponds to an application version.                                               |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Values:                                                                                          |                                                         |
+|                                            | database.upgradeVersion.0.0.0=xmltables,loaddtdschema                                                    |                                                         |
+|                                            | database.upgradeVersion.1.2.0=upgrade-db-to-1.2                                                          |                                                         |
+|                                            | database.upgradeVersion.1.3.0=upgrade-db-to-1.3                                                          |                                                         |
+|                                            | database.upgradeVersion.1.4.0=upgrade-db-to-1.4                                                          |                                                         |
+|                                            | database.upgradeVersion.1.5.0=upgrade-db-to-1.5                                                          |                                                         |
+|                                            | database.upgradeVersion.1.6.0=upgrade-db-to-1.6                                                          |                                                         |
+|                                            | database.upgradeVersion.1.7.0=upgrade-db-to-1.7                                                          |                                                         |
+|                                            | database.upgradeVersion.1.8.0=upgrade-db-to-1.8                                                          |                                                         |
+|                                            | database.upgradeVersion.1.9.0=upgrade-db-to-1.9                                                          |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.initialConnections                | The number of initial connection that Metacat creates to the database.                                   | 5                                                       |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 5                                                                                         |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.incrementConnections              | The number of connections Metacat creates when it requires                                               | 5                                                       |
+|                                            | more connections.                                                                                        |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 5                                                                                         |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.maximumConnections                | The maximum number of database connections Metacat can make.                                             | 25                                                      |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 200                                                                                       |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.maximumConnectionAge              | The maximum time in milliseconds that a database connection can live.                                    | 120000                                                  |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 120000                                                                                    |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.maximumConnectionTime             | The maximum time in milliseconds that a database connection can                                          | 60000                                                   |
+|                                            | accumulate in actual connection time.                                                                    |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 60000                                                                                     |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.maximumUsageNumber                | The maximum number of times a single connection can be used.                                             | 100                                                     |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 100                                                                                       |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.numberOfIndexingThreads           | The number of threads available for indexing.                                                            | 5                                                       |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 5                                                                                         |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.indexingTimerTaskTime             | The time in milliseconds between indexing.                                                               | 604800000                                               |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 604800000                                                                                 |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.indexingInitialDelay              | The delay in milliseconds before first indexing is executed.                                             | 3600000                                                 |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 3600000                                                                                   |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.maximumIndexDelay                 | The time in milliseconds that an indexing thread will wait when it                                       | 5000                                                    |
+|                                            | can't get a doc id before retrying the indexing.                                                         |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 5000                                                                                      |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.runDBConnectionRecycleThread      | Determines whether the database connection pool should run a thread to                                   | off                                                     |
+|                                            | recycle connections. Possible values are "on" and "off"                                                  |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: off                                                                                       |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.cycleTimeOfDBConnection           | The time in milliseconds between connection recycling runs.                                              | 30000                                                   |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 30000                                                                                     |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.queryignoredparams                | Parameters to ignore in a structured XML query.                                                          | enableediting                                           |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: enableediting,foo                                                                         |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.usexmlindex                       | Determines whether to use XML indexes when finding                                                       | true                                                    |
+|                                            | documents. Possible values are true and false.                                                           |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: true                                                                                      |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.appResultsetSize                  | Determines the number of results that can be returned to an application from a query.                    | 7000                                                    |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 7000                                                                                      |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.webResultsetSize                  | Determines the number of results that can be returned to a                                               | 7000                                                    |
+|                                            | Web browser from a query.                                                                                |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 7000                                                                                      |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.xmlReturnfieldCount               | If the query results of a query are returned more times                                                  | 0                                                       |
+|                                            | than this value, then those results will be inserted into the xml_queryresult                            |                                                         |
+|                                            | table in the database. For example, if you want results for                                              |                                                         |
+|                                            | a query to be stored in xml_queryresult only when it has been requested                                  |                                                         |
+|                                            | 50 times, set this value to 50.                                                                          |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 0                                                                                         |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.queryresultStringLength           | The max size of the query result string in the queryresult table. This                                   | 500000                                                  |
+|                                            | should be set to some number less than 4000 if an Oracle                                                 |                                                         |
+|                                            | database is being used.                                                                                  |                                                         |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 500000                                                                                    |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.queryresultCacheSize              | The number of query results that will be cached.                                                         | 500                                                     |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: 500                                                                                       |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+| database.queryCacheOn                      | Determines whether query caching is turned on. Possible values are "on" and "off"                        | on                                                      |
+|                                            |                                                                                                          |                                                         |
+|                                            | Default Value: on                                                                                        |                                                         |
++--------------------------------------------+----------------------------------------------------------------------------------------------------------+---------------------------------------------------------+
+
+Authorization and Authentication Properties
+-------------------------------------------
+Metacat's authorization and authentication properties are described in the 
+table below. Properties that can only be edited manually in the ``metacat.properties`` 
+file are highlighted. All others are managed with the properties configuration utility.
+
+Authorization and Authentication Properties
+
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| Property                          | Description                                                                   | Example                                       |
++===================================+===============================================================================+===============================================+
+| auth.class                        | The class used for user authentication. Currently, only the AuthLdap          | edu.ucsb.nceas.metacat.AuthLdap               |
+|                                   | class is included in the Metacat distribution.                                |                                               |
+|                                   | Note: If you implement another authentication strategy by implementing a Java |                                               |
+|                                   | class that extends the AuthInterface interface and rebuilding Metacat,        |                                               |
+|                                   | change this property to the fully qualified class name of your custom         |                                               |
+|                                   | authentication mechanism.                                                     |                                               |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: edu.ucsb.nceas.metacat.AuthLdap                                |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| auth.timeoutMinutes               | The number of minutes that a user will stay logged in to Metacat              | 180                                           |
+|                                   | without any activity.                                                         |                                               |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: 180                                                            |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| auth.administrators               | A colon separated list of LDAP users or groups that have administrative       | uid=youruser,o=NCEAS,dc=ecoinformatics,dc=org |
+|                                   | Metacat privileges. At least one user or group must be entered when           | cn=yourgroup,o=NCEAS,dc=ecoinformatics,dc=org |
+|                                   | Metacat is first installed and configured. All accounts must exist            |                                               |
+|                                   | in LDAP in order to continue with the configuration.                          |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| auth.url                          | The URL of the server that Metacat should use for authentication.             | ldap://ldap.ecoinformatics.org:389/           |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: ldap://ldap.ecoinformatics.org:389/                            |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| auth.surl                         | The URL of the server that Metacat should use for secure authentication.      | ldap://ldap.ecoinformatics.org:389/           |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: ldap://ldap.ecoinformatics.org:389/                            |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| auth.base                         | The base part of the distinguished name that Metacat uses for authentication. | dc=ecoinformatics,dc=org                      |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: dc=ecoinformatics,dc=org                                       |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| auth.allowedSubmitters            | A colon delimited list of users who should be allowed to submit documents     | uid=youruser,o=NCEAS,dc=ecoinformatics,dc=org |
+|                                   | to Metacat. If no value is specified, all users will be                       |                                               |
+|                                   | allowed to submit documents.                                                  |                                               |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: (none)                                                         |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| auth.deniedSubmitters             | A colon delimited list of users who should NOT be allowed to                  | uid=youruser,o=NCEAS,dc=ecoinformatics,dc=org |
+|                                   | submit documents. If no value is specified, all users will be allowed to      |                                               |
+|                                   | submit documents.                                                             |                                               |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: (none)                                                         |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| ldap.connectTimeLimit             | The time in milliseconds allowed for LDAP server connections.                 | 5000                                          |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: 5000                                                           |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| ldap.searchTimeLimit              | The time in milliseconds allowed for LDAP server searches.                    | 3000                                          |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: 30000                                                          |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| ldap.searchCountLimit             | The number of return entries allowed for LDAP server searches.                | 30000                                         |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: 30000                                                          |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| ldap.referral                     | The type of LDAP referrals to use. Possible values are "follow",              | follow                                        |
+|                                   | "throw" or "none". Refer to LDAP documentation for further information.       |                                               |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: follow                                                         |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| ldap.onlySecureConnection         | Determines whether to use only a secure LDAP server.                          | false                                         |
+|                                   | Acceptable values are "true" and "false".                                     |                                               |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: false                                                          |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+| ldap.onlySecureReferalsConnection | Determines whether to only use a secure referral server.                      | false                                         |
+|                                   | Acceptable values are "true" and "false".                                     |                                               |
+|                                   |                                                                               |                                               |
+|                                   | Default Value: false                                                          |                                               |
++-----------------------------------+-------------------------------------------------------------------------------+-----------------------------------------------+
+
+XML/EML Properties
+------------------
+Metacat's XML/EML properties are described ibelow. Properties that can only be 
+edited manually in the metacat.properties file are highlighted. 
+
+XML/EML Properties
+
++-----------------------+------------------------------------------------------------------+---------------------------------------------------+
+| Property              | Description                                                      | Example                                           |
++=======================+==================================================================+===================================================+
+| xml.saxparser         | The SAX parser used to parse XML documents. Metacat              | org.apache.xerces.parsers.SAXParser               |
+|                       | requires a SAX2-compatible XML parser.                           |                                                   |
+|                       |                                                                  |                                                   |
+|                       | Default Value: org.apache.xerces.parsers.SAXParser               |                                                   |
++-----------------------+------------------------------------------------------------------+---------------------------------------------------+
+| xml.eml2_0_0namespace | The namespace of EML 2.0.0 documents.                            | eml://ecoinformatics.org/eml-2.0.0                |
+|                       |                                                                  |                                                   |
+|                       | Default Value: eml://ecoinformatics.org/eml-2.0.0                |                                                   |
++-----------------------+------------------------------------------------------------------+---------------------------------------------------+
+| xml.eml2_0_1namespace | The namespace of EML 2.0.1 documents.                            | eml://ecoinformatics.org/eml-2.0.1                |
+|                       |                                                                  |                                                   |
+|                       | Default Value: eml://ecoinformatics.org/eml-2.0.1                |                                                   |
++-----------------------+------------------------------------------------------------------+---------------------------------------------------+
+| xml.eml2_1_0namespace | The namespace of EML 2.1.0 documents.                            | eml://ecoinformatics.org/eml-2.1.0                |
+|                       |                                                                  |                                                   |
+|                       | Default Value: eml://ecoinformatics.org/eml-2.1.0                |                                                   |
+|                       |                                                                  |                                                   |
+| xml.packagedoctype    | The doctype of a package file. The system will only              | -//ecoinformatics.org//eml-dataset-2.0.0beta6//EN |
+|                       | recognize documents of this type as package files.               | -//ecoinformatics.org//eml-dataset-2.0.0beta4//EN |
+|                       | See: package documentation.                                      |                                                   |
+|                       |                                                                  |                                                   |
+|                       | Default Value: -//ecoinformatics.org//eml-dataset-2.0.0beta6//EN |                                                   |
++-----------------------+------------------------------------------------------------------+---------------------------------------------------+
+| xml.accessdoctype     | The doctype of an access control list (ACL) file. The system     | -//ecoinformatics.org//eml-access-2.0.0beta6//EN  |
+|                       | will only recognize documents of this type as                    | -//ecoinformatics.org//eml-access-2.0.0beta4//EN  |
+|                       | access files. See: access control documentation.                 |                                                   |
+|                       |                                                                  |                                                   |
+|                       | Default Value: -//ecoinformatics.org//eml-access-2.0.0beta6//EN  |                                                   |
++-----------------------+------------------------------------------------------------------+---------------------------------------------------+
+
+
Index: docs/user/metacat/source/license.rst
===================================================================
--- docs/user/metacat/source/license.rst	(nonexistent)
+++ docs/user/metacat/source/license.rst	(revision 6871)
@@ -0,0 +1,345 @@
+License
+=======
+  
+::
+  
+                      GNU GENERAL PUBLIC LICENSE
+                         Version 2, June 1991
+  
+   Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+                         59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+   Everyone is permitted to copy and distribute verbatim copies
+   of this license document, but changing it is not allowed.
+  
+                              Preamble
+  
+    The licenses for most software are designed to take away your
+  freedom to share and change it.  By contrast, the GNU General Public
+  License is intended to guarantee your freedom to share and change free
+  software--to make sure the software is free for all its users.  This
+  General Public License applies to most of the Free Software
+  Foundation's software and to any other program whose authors commit to
+  using it.  (Some other Free Software Foundation software is covered by
+  the GNU Library General Public License instead.)  You can apply it to
+  your programs, too.
+  
+    When we speak of free software, we are referring to freedom, not
+  price.  Our General Public Licenses are designed to make sure that you
+  have the freedom to distribute copies of free software (and charge for
+  this service if you wish), that you receive source code or can get it
+  if you want it, that you can change the software or use pieces of it
+  in new free programs; and that you know you can do these things.
+  
+    To protect your rights, we need to make restrictions that forbid
+  anyone to deny you these rights or to ask you to surrender the rights.
+  These restrictions translate to certain responsibilities for you if you
+  distribute copies of the software, or if you modify it.
+  
+    For example, if you distribute copies of such a program, whether
+  gratis or for a fee, you must give the recipients all the rights that
+  you have.  You must make sure that they, too, receive or can get the
+  source code.  And you must show them these terms so they know their
+  rights.
+  
+    We protect your rights with two steps: (1) copyright the software, and
+  (2) offer you this license which gives you legal permission to copy,
+  distribute and/or modify the software.
+  
+    Also, for each author's protection and ours, we want to make certain
+  that everyone understands that there is no warranty for this free
+  software.  If the software is modified by someone else and passed on, we
+  want its recipients to know that what they have is not the original, so
+  that any problems introduced by others will not reflect on the original
+  authors' reputations.
+  
+    Finally, any free program is threatened constantly by software
+  patents.  We wish to avoid the danger that redistributors of a free
+  program will individually obtain patent licenses, in effect making the
+  program proprietary.  To prevent this, we have made it clear that any
+  patent must be licensed for everyone's free use or not licensed at all.
+  
+    The precise terms and conditions for copying, distribution and
+  modification follow.
+  
+                      GNU GENERAL PUBLIC LICENSE
+     TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+  
+    0. This License applies to any program or other work which contains
+  a notice placed by the copyright holder saying it may be distributed
+  under the terms of this General Public License.  The "Program", below,
+  refers to any such program or work, and a "work based on the Program"
+  means either the Program or any derivative work under copyright law:
+  that is to say, a work containing the Program or a portion of it,
+  either verbatim or with modifications and/or translated into another
+  language.  (Hereinafter, translation is included without limitation in
+  the term "modification".)  Each licensee is addressed as "you".
+  
+  Activities other than copying, distribution and modification are not
+  covered by this License; they are outside its scope.  The act of
+  running the Program is not restricted, and the output from the Program
+  is covered only if its contents constitute a work based on the
+  Program (independent of having been made by running the Program).
+  Whether that is true depends on what the Program does.
+  
+    1. You may copy and distribute verbatim copies of the Program's
+  source code as you receive it, in any medium, provided that you
+  conspicuously and appropriately publish on each copy an appropriate
+  copyright notice and disclaimer of warranty; keep intact all the
+  notices that refer to this License and to the absence of any warranty;
+  and give any other recipients of the Program a copy of this License
+  along with the Program.
+  
+  You may charge a fee for the physical act of transferring a copy, and
+  you may at your option offer warranty protection in exchange for a fee.
+  
+    2. You may modify your copy or copies of the Program or any portion
+  of it, thus forming a work based on the Program, and copy and
+  distribute such modifications or work under the terms of Section 1
+  above, provided that you also meet all of these conditions:
+  
+      a) You must cause the modified files to carry prominent notices
+      stating that you changed the files and the date of any change.
+  
+      b) You must cause any work that you distribute or publish, that in
+      whole or in part contains or is derived from the Program or any
+      part thereof, to be licensed as a whole at no charge to all third
+      parties under the terms of this License.
+  
+      c) If the modified program normally reads commands interactively
+      when run, you must cause it, when started running for such
+      interactive use in the most ordinary way, to print or display an
+      announcement including an appropriate copyright notice and a
+      notice that there is no warranty (or else, saying that you provide
+      a warranty) and that users may redistribute the program under
+      these conditions, and telling the user how to view a copy of this
+      License.  (Exception: if the Program itself is interactive but
+      does not normally print such an announcement, your work based on
+      the Program is not required to print an announcement.)
+  
+  These requirements apply to the modified work as a whole.  If
+  identifiable sections of that work are not derived from the Program,
+  and can be reasonably considered independent and separate works in
+  themselves, then this License, and its terms, do not apply to those
+  sections when you distribute them as separate works.  But when you
+  distribute the same sections as part of a whole which is a work based
+  on the Program, the distribution of the whole must be on the terms of
+  this License, whose permissions for other licensees extend to the
+  entire whole, and thus to each and every part regardless of who wrote it.
+  
+  Thus, it is not the intent of this section to claim rights or contest
+  your rights to work written entirely by you; rather, the intent is to
+  exercise the right to control the distribution of derivative or
+  collective works based on the Program.
+  
+  In addition, mere aggregation of another work not based on the Program
+  with the Program (or with a work based on the Program) on a volume of
+  a storage or distribution medium does not bring the other work under
+  the scope of this License.
+  
+    3. You may copy and distribute the Program (or a work based on it,
+  under Section 2) in object code or executable form under the terms of
+  Sections 1 and 2 above provided that you also do one of the following:
+  
+      a) Accompany it with the complete corresponding machine-readable
+      source code, which must be distributed under the terms of Sections
+      1 and 2 above on a medium customarily used for software interchange; or,
+  
+      b) Accompany it with a written offer, valid for at least three
+      years, to give any third party, for a charge no more than your
+      cost of physically performing source distribution, a complete
+      machine-readable copy of the corresponding source code, to be
+      distributed under the terms of Sections 1 and 2 above on a medium
+      customarily used for software interchange; or,
+  
+      c) Accompany it with the information you received as to the offer
+      to distribute corresponding source code.  (This alternative is
+      allowed only for noncommercial distribution and only if you
+      received the program in object code or executable form with such
+      an offer, in accord with Subsection b above.)
+  
+  The source code for a work means the preferred form of the work for
+  making modifications to it.  For an executable work, complete source
+  code means all the source code for all modules it contains, plus any
+  associated interface definition files, plus the scripts used to
+  control compilation and installation of the executable.  However, as a
+  special exception, the source code distributed need not include
+  anything that is normally distributed (in either source or binary
+  form) with the major components (compiler, kernel, and so on) of the
+  operating system on which the executable runs, unless that component
+  itself accompanies the executable.
+  
+  If distribution of executable or object code is made by offering
+  access to copy from a designated place, then offering equivalent
+  access to copy the source code from the same place counts as
+  distribution of the source code, even though third parties are not
+  compelled to copy the source along with the object code.
+  
+    4. You may not copy, modify, sublicense, or distribute the Program
+  except as expressly provided under this License.  Any attempt
+  otherwise to copy, modify, sublicense or distribute the Program is
+  void, and will automatically terminate your rights under this License.
+  However, parties who have received copies, or rights, from you under
+  this License will not have their licenses terminated so long as such
+  parties remain in full compliance.
+  
+    5. You are not required to accept this License, since you have not
+  signed it.  However, nothing else grants you permission to modify or
+  distribute the Program or its derivative works.  These actions are
+  prohibited by law if you do not accept this License.  Therefore, by
+  modifying or distributing the Program (or any work based on the
+  Program), you indicate your acceptance of this License to do so, and
+  all its terms and conditions for copying, distributing or modifying
+  the Program or works based on it.
+  
+    6. Each time you redistribute the Program (or any work based on the
+  Program), the recipient automatically receives a license from the
+  original licensor to copy, distribute or modify the Program subject to
+  these terms and conditions.  You may not impose any further
+  restrictions on the recipients' exercise of the rights granted herein.
+  You are not responsible for enforcing compliance by third parties to
+  this License.
+  
+    7. If, as a consequence of a court judgment or allegation of patent
+  infringement or for any other reason (not limited to patent issues),
+  conditions are imposed on you (whether by court order, agreement or
+  otherwise) that contradict the conditions of this License, they do not
+  excuse you from the conditions of this License.  If you cannot
+  distribute so as to satisfy simultaneously your obligations under this
+  License and any other pertinent obligations, then as a consequence you
+  may not distribute the Program at all.  For example, if a patent
+  license would not permit royalty-free redistribution of the Program by
+  all those who receive copies directly or indirectly through you, then
+  the only way you could satisfy both it and this License would be to
+  refrain entirely from distribution of the Program.
+  
+  If any portion of this section is held invalid or unenforceable under
+  any particular circumstance, the balance of the section is intended to
+  apply and the section as a whole is intended to apply in other
+  circumstances.
+  
+  It is not the purpose of this section to induce you to infringe any
+  patents or other property right claims or to contest validity of any
+  such claims; this section has the sole purpose of protecting the
+  integrity of the free software distribution system, which is
+  implemented by public license practices.  Many people have made
+  generous contributions to the wide range of software distributed
+  through that system in reliance on consistent application of that
+  system; it is up to the author/donor to decide if he or she is willing
+  to distribute software through any other system and a licensee cannot
+  impose that choice.
+  
+  This section is intended to make thoroughly clear what is believed to
+  be a consequence of the rest of this License.
+  
+    8. If the distribution and/or use of the Program is restricted in
+  certain countries either by patents or by copyrighted interfaces, the
+  original copyright holder who places the Program under this License
+  may add an explicit geographical distribution limitation excluding
+  those countries, so that distribution is permitted only in or among
+  countries not thus excluded.  In such case, this License incorporates
+  the limitation as if written in the body of this License.
+  
+    9. The Free Software Foundation may publish revised and/or new versions
+  of the General Public License from time to time.  Such new versions will
+  be similar in spirit to the present version, but may differ in detail to
+  address new problems or concerns.
+  
+  Each version is given a distinguishing version number.  If the Program
+  specifies a version number of this License which applies to it and "any
+  later version", you have the option of following the terms and conditions
+  either of that version or of any later version published by the Free
+  Software Foundation.  If the Program does not specify a version number of
+  this License, you may choose any version ever published by the Free Software
+  Foundation.
+  
+    10. If you wish to incorporate parts of the Program into other free
+  programs whose distribution conditions are different, write to the author
+  to ask for permission.  For software which is copyrighted by the Free
+  Software Foundation, write to the Free Software Foundation; we sometimes
+  make exceptions for this.  Our decision will be guided by the two goals
+  of preserving the free status of all derivatives of our free software and
+  of promoting the sharing and reuse of software generally.
+  
+                              NO WARRANTY
+  
+    11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+  FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+  OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+  PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+  OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+  TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+  PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+  REPAIR OR CORRECTION.
+  
+    12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+  WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+  REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+  INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+  OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+  TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+  YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+  PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+  POSSIBILITY OF SUCH DAMAGES.
+  
+                       END OF TERMS AND CONDITIONS
+  
+              How to Apply These Terms to Your New Programs
+  
+    If you develop a new program, and you want it to be of the greatest
+  possible use to the public, the best way to achieve this is to make it
+  free software which everyone can redistribute and change under these terms.
+  
+    To do so, attach the following notices to the program.  It is safest
+  to attach them to the start of each source file to most effectively
+  convey the exclusion of warranty; and each file should have at least
+  the "copyright" line and a pointer to where the full notice is found.
+  
+      <one line to give the program's name and a brief idea of what it does.>
+      Copyright (C) <year>  <name of author>
+  
+      This program is free software; you can redistribute it and/or modify
+      it under the terms of the GNU General Public License as published by
+      the Free Software Foundation; either version 2 of the License, or
+      (at your option) any later version.
+  
+      This program is distributed in the hope that it will be useful,
+      but WITHOUT ANY WARRANTY; without even the implied warranty of
+      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+      GNU General Public License for more details.
+  
+      You should have received a copy of the GNU General Public License
+      along with this program; if not, write to the Free Software
+      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+  
+  
+  Also add information on how to contact you by electronic and paper mail.
+  
+  If the program is interactive, make it output a short notice like this
+  when it starts in an interactive mode:
+  
+      Gnomovision version 69, Copyright (C) year name of author
+      Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+      This is free software, and you are welcome to redistribute it
+      under certain conditions; type `show c' for details.
+  
+  The hypothetical commands `show w' and `show c' should show the appropriate
+  parts of the General Public License.  Of course, the commands you use may
+  be called something other than `show w' and `show c'; they could even be
+  mouse-clicks or menu items--whatever suits your program.
+  
+  You should also get your employer (if you work as a programmer) or your
+  school, if any, to sign a "copyright disclaimer" for the program, if
+  necessary.  Here is a sample; alter the names:
+  
+    Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+    `Gnomovision' (which makes passes at compilers) written by James Hacker.
+  
+    <signature of Ty Coon>, 1 April 1989
+    Ty Coon, President of Vice
+  
+  This General Public License does not permit incorporating your program into
+  proprietary programs.  If your program is a subroutine library, you may
+  consider it more useful to permit linking proprietary applications with the
+  library.  If this is what you want to do, use the GNU Library General
+  Public License instead of this License.
Index: docs/user/metacat/source/submitting.rst
===================================================================
--- docs/user/metacat/source/submitting.rst	(nonexistent)
+++ docs/user/metacat/source/submitting.rst	(revision 6871)
@@ -0,0 +1,958 @@
+Accessing and Submitting Metadata and Data
+==========================================
+
+.. contents::
+
+The Metacat repository can be accessed and updated using a number of tools, 
+including: 
+
+* the Registry, Metacat's optional Web interface
+* user-created HTML forms 
+* Metacat's EarthGrid API
+* existing clients, such as KNB's Morpho application, designed to help 
+  scientists create, edit, and manage metadata
+* user-created desktop clients that take advantage of Metacat's Java API.
+
+In this section, we will look at how to take advantage of these tools to 
+customize Metacat for your user-base.
+
+A Brief Note about How Information is Stored
+--------------------------------------------
+Metacat stores XML files as a hierarchy of nodes, where each node is stored as 
+records in database tables. Because many XML data schemas are broken up into 
+multiple DTDs requiring multiple XML files that are related but stored 
+separately in the system, the system uses "packages" to link related but 
+separate documents. Packaged documents contain information that shows how they 
+are related to eachother, essentially stating that file A has a relationship 
+to file B, etc. A package file also allows users to link metadata files to the 
+data files they describe. For more information about the structure of data 
+packages and how XML documents and data are stored in Metacat, please see the 
+developer's documentation.
+
+Using the Registry
+------------------
+Metacat's optional Registry provides a simple Web-based interface for creating, 
+editing, and submitting metadata to the Metacat repository (Figure 4.1). The 
+interface includes help documentation, and can be customized using Metacat's 
+configuration settings. The Registry also includes an administrative interface 
+for managing LDAP user accounts, which is useful if you are using LDAP as your 
+Metacat authentication system. Note that you must be running your own LDAP 
+server if you wish to use the LDAP Web interface. If you do not have your own 
+LDAP server, you can create and manage new accounts on the KNB website 
+(http://knb.ecoinformatics.org/). Please note that at this time, the Registry 
+interface has only been tested on Linux systems.
+
+.. figure:: images/screenshots/image033.jpg
+   :align: center
+
+   An example installation of the Register's web interface. Customize the 
+   displayed and required modules with the Skins Configuration settings.
+   
+You can customize which modules (e.g., "Name of Submitter" or "Temporal 
+Coverage of Data") are displayed and which are required using the Skins 
+Configuration settings
+
+Installing the Registry
+~~~~~~~~~~~~~~~~~~~~~~~
+In order to install and run the Registry, you must have Metacat installed and 
+Tomcat must be running behind an Apache Web server (see previous sections for 
+information about installing and configuring Apache to run with Tomcat).
+
+To install and run the Registry:
+
+1. Build the Metacat Perl client library:
+
+  ::
+
+    cd $METACAT/src/perl/Metacat
+    perl Makefile.PL
+    sudo make
+    sudo make install
+
+.. sidebar:: Instructions for Red Hat (Alternate Step 2)
+
+  * Install the libraries
+
+    ::
+    
+      sudo yum install gcc libxml2-devel libxslt-devel ant –y
+
+  * Install CPAN, which allows us to install the Perl dependencies for the 
+    registry and account management parts of Metacat. If asked to manually 
+    configure cpan, type 'no' and CPAN will be setup with its default values.
+
+    ::
+    
+      sudo yum install perl-CPAN
+      sudo cpan
+
+  * You should now see a prompt which looks like:
+
+    ::
+    
+      cpan>
+
+  * The rest of the commands assume you're inside of CPAN. Let's get the most 
+    recent version of the CPAN software. Just press return after any prompts 
+    you receive during this process.
+    
+    ::
+    
+      install Bundle::CPAN
+      reload cpan
+
+  * Install the required modules. Here we're installing an old LibXSLT, as the 
+    current one requires a newer libxslt than is available on Redhat 4 & 5. 
+    Again, just answer 'yes' to any questions.
+
+    ::
+
+      install AutoLoader
+      install CGI
+      install CGI::SEssion
+      install LWP::UserAgent
+      install Net::LDAP
+      install Template 
+      install URI
+      install MSERGEANT/XML-LibXSLT-1.58.tar.gz
+
+2. Install the required system libraries using Ubuntu/Debian (instructions 
+   Red Hat in sidebar)
+         
+  * Install the libraries
+
+    ::
+
+      sudo apt-get install ant libappconfig-perl libxml-libxml-perl libxml-libxslt-perl libtemplate-perl libcgi-session-perl libdigest-sha1-perl libnet-ldap-perl libterm-readkey-perl libxml-dom-perl libsoap-lite-perl -y
+
+  * Install two more package using cpan 
+
+    ::
+    
+      sudo cpan -i Config::Properties
+      sudo cpan -i Scalar::Util
+
+
+3. Double-check that Metacat's temporary folder, application.tempDir, is 
+   writable by the apache user, usually www-data or apache. 
+
+4. Make sure that the following scripts (found in ``<tomcat-home>/webapps/knb/cgi-bin``) 
+   are executable: register-dataset.cgi and ldapweb.cgi.
+
+  ::
+  
+    sudo chmod +x <tomcat-home>/webapps/knb/cgi-bin/*.cgi
+
+5. Restart Apache.
+
+  ::
+  
+    sudo /etc/init.d/apache2 restart
+
+6. Visit the resulting URL: 
+   http://<your_context_url>/cgi-bin/register-dataset.cgi?cfg=default
+   Where ``<your_context_url>`` is the URL of the server hosting the Metacat 
+   followed by the name of the WAR file (i.e., the application context) that 
+   you installed. For instance, the context URL for the KNB Metacat is: 
+   http://knb.ecoinformatics.org/knb.
+
+If everything worked correctly, the registry home page will open (see figure).
+
+.. figure:: images/screenshots/image035.jpg
+   :align: center
+
+   An example of the Registry home page (with the default skin).
+   
+Customizing the Registry
+~~~~~~~~~~~~~~~~~~~~~~~~
+Before using the registry, you may wish to customize the interface using the 
+Skins Configuration settings. If you are using the default skin, you must 
+disable the 'show site list' setting before you can submit the form without 
+errors. You may also wish to remove (or modify) the list of NCEAS-specific 
+projects that appear in the default registry. To remove these form fields, 
+open Metacat's administrative interface (http://<your.context.url>/knb/admin) 
+and select the Skins Specific Properties Configuration option. On the skins 
+configuration page, uncheck the boxes beside any form elements that you do not 
+wish to appear in the registry.
+
+Once you have saved your changes, you must restart Tomcat for them to come 
+into effect. To restart Tomcat, type: ``sudo /etc/init.d/tomcat6 restart`` or an 
+equivalent command appropriate to your operating system. 
+
+.. figure:: images/screenshots/image037.jpg
+   :align: center
+
+   Uncheck the box beside any setting to remove it from the Registry form. In 
+   the example, the "Show Site List" and "Show Work Group" form fields, 
+   corresponding to the "Station Name" and "NCEAS Project" drop-down lists in 
+   the registry form, have been removed.
+   
+Using HTML Forms (the HTTP Interface)
+-------------------------------------
+Metacat's HTTP interface supports Get and Post requests and a variety of actions (Table 4.1) that facilitate information retrieval and storage. HTTP requests can be sent from any client application that communicates using the Web's HTTP protocol. 
+
+* Supported Actions (API)
+* Logging in
+* Inserting, Updating, and Deleting XML and Data Documents
+* Searching Metacat
+* Paged Query Return
+* Reading Data and Metadata
+
+Supported Actions
+~~~~~~~~~~~~~~~~~
+Metacat supports get and post requests as well as actions for writing, querying, 
+and reading stored XML. In addition, the HTTP interface includes functions for 
+validating and transforming XML documents (see table). 
+
+Note that if Replication is enabled, Metacat recognizes several additional 
+actions, included in Table 4.2. For more information about replication, 
+please see :doc:`replication`.
+
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| Action                   | Description and Parameters                                                                                                                                                                                                                                         |
++==========================+====================================================================================================================================================================================================================================================================+
+| delete                   | Delete the specified document from the database. For an                                                                                                                                                                                                            |
+|                          | example, please see Inserting, Updating, and                                                                                                                                                                                                                       |
+|                          | Deleting XML and Data Documents.                                                                                                                                                                                                                                   |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document to delete                                                                                                                                                                                                                    |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| export                   | Export a data package in a zip file.                                                                                                                                                                                                                               |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document to delete                                                                                                                                                                                                                    |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getaccesscontrol         | Get the access control list (ACL) for the                                                                                                                                                                                                                          |
+|                          | specified document.                                                                                                                                                                                                                                                |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document to delete                                                                                                                                                                                                                    |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getalldocids             | Retrieve a list of all docids registered with the system.                                                                                                                                                                                                          |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``scope`` - a string used to match a range of docids in a SQL LIKE statement                                                                                                                                                                                       |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getdataguide             | Read a data guide for the specified document type                                                                                                                                                                                                                  |
+| DEPRECATED               |                                                                                                                                                                                                                                                                    |
+| Use getdtdschema instead | ``doctype`` - the doctype for which to get the data guide                                                                                                                                                                                                          |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getdoctypes              | Get all doctypes currently available in the Metacat Catalog System. No parameters.                                                                                                                                                                                 |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getdtdschema             | Read the DTD or XMLSchema file for the specified doctype.                                                                                                                                                                                                          |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``doctype`` - the doctype for which DTD or XMLSchema files to read                                                                                                                                                                                                 |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getlastdocid             | Get the latest docid with revision number used by user.                                                                                                                                                                                                            |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``username`` - the user's log-in name                                                                                                                                                                                                                              |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getlog                   | Get the latest docid with revision number used by user.                                                                                                                                                                                                            |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``ipaddress`` - the internet protocol address for the event                                                                                                                                                                                                        |
+|                          | ``principal`` - the principal for the event (a username, etc)                                                                                                                                                                                                      |
+|                          | ``docid`` - the identifier of the document to which the event applies                                                                                                                                                                                              |
+|                          | ``event`` - the string code for the event                                                                                                                                                                                                                          |
+|                          | ``start`` - beginning of date-range for query                                                                                                                                                                                                                      |
+|                          | ``end`` - end of date-range for query                                                                                                                                                                                                                              |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getloggedinuserinfo      | Get user info for the currently logged in user. No parameters.                                                                                                                                                                                                     |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getpricipals             | Get all users and groups in the current authentication schema. No parameters.                                                                                                                                                                                      |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getrevisionanddoctype    | Return the revision and doctype of a document.                                                                                                                                                                                                                     |
+|                          | The output is String that looks like "rev;doctype"                                                                                                                                                                                                                 |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document                                                                                                                                                                                                                              |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getversion               | Get Metacat version.   Return the current version of Metacat as XML. No parameters.                                                                                                                                                                                |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| insert                   | Insert an XML document into the database. For an example, please see                                                                                                                                                                                               |
+|                          | Inserting, Updating, and Deleting XML and Data Documents                                                                                                                                                                                                           |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the user-defined docid to assign to the new XML document                                                                                                                                                                                               |
+|                          | ``doctext`` - the text of the XML document to insert                                                                                                                                                                                                               |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| insertmultipart          | Insert an XML document using multipart encoding into the database.                                                                                                                                                                                                 |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the user-defined docid to assign to the new XML document                                                                                                                                                                                               |
+|                          | ``doctext`` - the text of the XML document to insert                                                                                                                                                                                                               |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| isregistered             | Check if an individual document exists in either the xml_documents or xml_revisions tables.                                                                                                                                                                        |
+|                          | For more information about Metacat's database schema, please see the developer documentation.                                                                                                                                                                      |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document                                                                                                                                                                                                                              |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| login                    | Log the user in. You must log in using this action before you can perform                                                                                                                                                                                          |
+|                          | many of the actions. For an example of the login action, see Logging In.                                                                                                                                                                                           |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``username`` - the user's login name                                                                                                                                                                                                                               |
+|                          | ``password`` - the user's password                                                                                                                                                                                                                                 |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| logout                   | Log the current user out and destroy the associated session. No parameters.                                                                                                                                                                                        |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| query                    | Perform a free text query. For an example, please see Searching Metacat.                                                                                                                                                                                           |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``returndoctype`` - the doctype to use for your Package View. For more information about packages, see http://knb.ecoinformatics.org/software/metacat/packages.html                                                                                                |
+|                          | ``qformat`` - the format of the returned result set. Possible values are html or xml or the name of your servlet's Metacat skin.                                                                                                                                   |
+|                          | ``querytitle`` - OPTIONAL - the title of the query                                                                                                                                                                                                                 |
+|                          | ``doctype`` - OPTIONAL - if doctype is specified, the search is limited only to the specified doctype(s). (e.g., eml://ecoinformatics.org/eml-2.0.1 and/or eml://ecoinformatics.org/eml-2.0.0) If no doctype element is specified, all document types are returned |
+|                          | ``returnfield`` - a custom field to be returned by any hit document.                                                                                                                                                                                               |
+|                          | ``operator`` - the Boolean operator to apply to the query. Possible values are: union or intersect                                                                                                                                                                 |
+|                          | ``searchmode`` - the type of search to be performed. Possible values are: contains, starts-with, ends-with, equals, isnot-equal, greater-than, less-than, greater-than-equals, less-than-equals.                                                                   |
+|                          | ``anyfield`` - a free-text search variable. The value placed in this parameter will be searched for in any document in any node.                                                                                                                                   |
+|                          | ``pagesize`` – the number of search results to display on each search results page (e.g., 10). Used with pagestart. See section 4.3.4 for an example.                                                                                                              |
+|                          | ``pagestart`` – the displayed search results page (e.g, 1). Used with pagesize. See section 4.3.4 for an example.                                                                                                                                                  |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| read                     | Get a document from the database and return it in the specified format. See Searching Metacat for an example.                                                                                                                                                      |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document to return                                                                                                                                                                                                                    |
+|                          | ``qformat`` - the format to return the document in. Possible values are: ``html``, ``xml``,or, if your Metacat uses a skin, the name of the skin.                                                                                                                  |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| readinlinedata           | Read inline data only.                                                                                                                                                                                                                                             |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``inlinedataid`` - the id of the inline data to read                                                                                                                                                                                                               |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| setaccess                | Change access permissions for a user on a specified document.                                                                                                                                                                                                      |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document to be modified.                                                                                                                                                                                                              |
+|                          | ``principal`` - the user or group whose permissions will be modified                                                                                                                                                                                               |
+|                          | ``permission`` - the permission  to set (read, write, all)                                                                                                                                                                                                         |
+|                          | ``permType`` - the type of permission to set (allow, deny)                                                                                                                                                                                                         |
+|                          | ``permOrder`` - the order in which to apply the permission (allowFirst, denyFirst)                                                                                                                                                                                 |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| spatial_query            | Perform a spatial query. These queries may include any of the queries supported by the                                                                                                                                                                             |
+|                          | WFS / WMS standards. For more information, see Spatial Queries.                                                                                                                                                                                                    |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``xmax`` - max x spatial coordinate                                                                                                                                                                                                                                |
+|                          | ``ymax`` - max y spatial coordinate                                                                                                                                                                                                                                |
+|                          | ``xmin`` - min x spatial coordinate                                                                                                                                                                                                                                |
+|                          | ``ymin`` - min y spatial coordinate                                                                                                                                                                                                                                |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| squery                   | Perform a structured query. For an example, please see Searching Metacat.                                                                                                                                                                                          |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``query`` - the text of the pathquery document sent to the server                                                                                                                                                                                                  |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| update                   | Overwrite an XML document with a new one and give the new one the same docid but with                                                                                                                                                                              |
+|                          | the next revision number. For an example, please see Inserting, Updating, and                                                                                                                                                                                      |
+|                          | Deleting XML and Data Documents.                                                                                                                                                                                                                                   |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document to update                                                                                                                                                                                                                    |
+|                          | ``doctext`` - the text with which to update the XML document                                                                                                                                                                                                       |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| upload                   | Upload (insert or update) a data file into Metacat. Data files are stored on Metacat and may be in any                                                                                                                                                             |
+|                          | format (binary or text), but they are all treated as if they were binary.                                                                                                                                                                                          |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the data file to upload                                                                                                                                                                                                                   |
+|                          | ``datafile`` - the data file to upload                                                                                                                                                                                                                             |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| validate                 | Validate a specified document against its DTD.                                                                                                                                                                                                                     |
+|                          |                                                                                                                                                                                                                                                                    |
+|                          | ``docid`` - the docid of the document to validate                                                                                                                                                                                                                  |
+|                          | ``valtext`` - the DTD by which to validate this document                                                                                                                                                                                                           |
++--------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+
+Metacat Replication Parameters
+
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| Action         | Description and Parameters                                                                                                                                      |
++================+=================================================================================================================================================================+
+| forcereplicate | Force the local server to get the specified document from the remote host.                                                                                      |
+|                |                                                                                                                                                                 |
+|                | ``server`` - The server to which this document is being sent                                                                                                    |
+|                | ``docid`` - The docid of the document to send                                                                                                                   |
+|                | ``dbaction`` - The action to perform on the document: insert or update (the default)                                                                            |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getall         | Force the local server to check all known servers for updated documents. No parameters.                                                                         |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getcatalog     | Send the contents of the xml_catalog table encoded in XML. No parameters.                                                                                       |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| getlock        | Request a lock on the specified document.                                                                                                                       |
+|                |                                                                                                                                                                 |
+|                | ``docid`` - the docid of the document                                                                                                                           |
+|                | ``updaterev`` - the revision number of docid                                                                                                                    |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| gettime        | Return the local time on this server. No parameters.                                                                                                            |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| servercontrol  | Perform the specified replication control on the Replication daemon.                                                                                            |
+|                |                                                                                                                                                                 |
+|                | ``add`` - add a new server to the replication list                                                                                                              |
+|                | ``delete`` - remove a server from the replication list                                                                                                          |
+|                | ``list`` - list all of the servers currently in the server list                                                                                                 |
+|                | ``replicate`` - a Boolean flag (1 or 0) which determines if this server should copy files from the newly added server.                                          |
+|                | ``server`` - the server to add/delete                                                                                                                           |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| read           | Sends docid to the remote host.                                                                                                                                 |
+|                |                                                                                                                                                                 |
+|                | ``docid`` - the docid of the document to read                                                                                                                   |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| start          | Start the Replication daemon with a time interval of deltaT.                                                                                                    |
+|                |                                                                                                                                                                 |
+|                | ``rate`` - The rate (in seconds) at which you want the replication daemon to check for updated documents. The value cannot be less than 30. The default is 1000 |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| stop           | Stop the Replication daemon. No parameters.                                                                                                                     |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+| update         | Send a list of all documents on the local server along with their revision numbers. No parameters.                                                              |
++----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+
+
+Logging In
+~~~~~~~~~~
+To log in to Metacat, use the ``login`` action.
+
+The following is an example of a Web form (see figure) that logs a user into 
+Metact. Example HTML code is included below the screenshot.
+
+.. figure:: images/screenshots/image039.jpg
+   :align: center
+   
+   Logging into Metacat using an HTML form.
+
+::
+
+  <html>
+  <body>
+  <form name="loginform" method="post"action="http://yourserver.com/yourcontext/servlet/metacat" 
+  target="_top" onsubmit="return submitform(this);" id="loginform">
+    <input type="hidden" name="action" value="login"> <input type=
+    "hidden" name="username" value=""> <input type="hidden" name=
+    "qformat" value="xml"> <input type="hidden" name=
+    "enableediting" value="false">
+
+    <table>
+      <tr valign="middle">
+        <td align="left" valign="middle" class="text_plain">
+        username:</td>
+
+        <td width="173" align="left" class="text_plain" style=
+        "padding-top: 2px; padding-bottom: 2px;"><input name="uid"
+        type="text" style="width: 140px;" value=""></td>
+      </tr>
+
+      <tr valign="middle">
+        <td height="28" align="left" valign="middle" class=
+        "text_plain">organization:</td>
+
+        <td align="left" class="text_plain" style=
+        "padding-top: 2px; padding-bottom: 2px;"><select name=
+        "organization" style="width:140px;">
+          <option value=""    selected>&#8212; choose one &#8212;</option>
+          <option value="NCEAS">NCEAS</option>
+          <option value="LTER">LTER</option>
+          <option value="UCNRS">UCNRS</option>
+          <option value="PISCO">PISCO</option>
+          <option value="OBFS">OBFS</option>
+          <option value="OSUBS">OSUBS</option>
+          <option value="SAEON">SAEON</option>
+          <option value="SANParks">SANParks</option>
+          <option value="SDSC">SDSC</option>
+          <option value="KU">KU</option>
+          <option value="unaffiliated">unaffiliated</option>
+        </select></td>
+      </tr>
+
+      <tr valign="middle">
+        <td width="85" align="left" valign="middle" class=
+        "text_plain">password:</td>
+
+        <td colspan="2" align="left" class="text_plain" style=
+        "padding-top: 2px; padding-bottom: 2px;">
+          <table width="100%" border="0" cellpadding="0"
+          cellspacing="0">
+            <tr>
+              <td width="150" align="left"><input name="password"
+              type="password" maxlength="50" style="width:140px;"
+              value=""></td>
+
+              <td align="center" class="buttonBG_login">
+              <input type="submit" name="loginAction" value="Login"
+              class="button_login"></td>
+
+              <td align="left">&nbsp;</td>
+            </tr>
+          </table>
+        </td>
+      </tr>
+    </table>
+  </form>
+  </body>
+  </html>
+
+Inserting, Updating, and Deleting XML and Data Documents
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Adding, editing, and deleting XML documents in Metacat can be accomplished 
+using the insert, update, and delete actions, respectively. Before you can 
+insert, delete, or update documents, you must log in to Metacat using the 
+login action. See Logging in for an example.
+
+``insert``
+   Insert a new XML or data document into Metacat. You must specify a document ID.
+   
+``update``
+   Update an existing Metacat document. The original document is archived, 
+   then overwritten.
+
+``delete``
+   Archive a document and move the pointer in xml_documents to xml_revisions, 
+   effectively "deleting" the document from public view, but preserving the 
+   revision for the revision history.
+
+The following is an example of a Web form (see figure) that can perform all 
+three tasks. Example HTML code is included in the sidebar.
+
+.. figure:: images/screenshots/image041.jpg
+   :align: center
+   
+   An example of a Web form used to insert, delete, or update XML documents in Metacat.
+
+::
+
+  <html>
+    <head>
+    <title>MetaCat</title>
+    </head>
+    <body class="emlbody">
+    <b>MetaCat XML Loader</b>
+    <p>
+    Upload, Change, or Delete an XML document using this form.
+    </p>
+    <form action="http://yourserver.com/yourcontext/servlet/metacat" method="POST">
+      <strong>1. Choose an action: </strong>
+      <input type="radio" name="action" value="insert" checked> Insert
+      <input type="radio" name="action" value="update"> Update
+      <input type="radio" name="action" value="delete"> Delete
+      <input type="submit" value="Process Action">
+      <br />
+      <strong>2. Provide a Document ID </strong>
+      <input type="text" name="docid"> (optional for Insert)
+         <input type="checkbox" name="public" value="yes" checked><strong>Public Document</strong>
+      <br />
+      <strong>3. Provide XML text </strong> (not needed for Delete)<br/>
+      <textarea name="doctext" cols="65" rows="15"></textarea><br/>
+      <strong>4. Provide DTD text for upload </strong> (optional; not needed for Delete)
+      <textarea name="dtdtext" cols="65" rows="15"></textarea>
+    </form>
+    </body>
+  </html>
+
+Searching Metacat
+~~~~~~~~~~~~~~~~~
+To search Metacat use the ``query`` or ``squery`` actions. 
+
+``query``:   
+   Perform a free text query. Specify the returndoctype, qformat, returnfield, 
+   operator, searchmode, anyfield, and (optionally) a querytitle and doctype. 
+
+``squery``:
+   Perform a structured query by submitting an XML pathquery document to the 
+   Metacat server.
+ 
+
+When Metacat receives a query via HTTP (Figure 4.8), the server creates a 
+"pathquery" document, which is an XML document populated with the specified 
+search criteria (Figure 4.10). The pathquery document is then translated into 
+SQL statements that are executed against the data base. Results are translated 
+into an XML "resultset" document, which can be returned as XML or transformed 
+into HTML and returned (specify which you would prefer with the returnfield 
+parameter). You can also opt to submit a pathquery document directly, 
+using an squery action.
+
+.. figure:: images/screenshots/image043.jpg
+   :align: center
+   
+   Example of a basic search form using a query action. 
+
+::
+
+  <html>
+  <head>
+  <title>Search</title>
+  </head>
+  <body>
+  <form method="POST" action="http://panucci.nceas.ucsb.edu/knb/servlet/metacat">
+
+  Search for:
+
+  <input name="action" value="query" type="hidden">
+  <input name="operator" value="INTERSECT" type="hidden">
+  <input name="anyfield" type="text" value=" " size="40">
+  <input name="qformat" value="html" type="hidden">
+  
+  <input name="returnfield" value="creator/individualName/surName" type="hidden">
+  <input name="returnfield" value="creator/individualName/givenName" type="hidden">
+  <input name="returnfield" value="creator/organizationName" type="hidden">
+  <input name="returnfield" value="dataset/title" type="hidden">
+  <input name="returnfield" value="keyword" type="hidden">
+
+  <input name="returndoctype" value="eml://ecoinformatics.org/eml-2.0.1" type="hidden">
+
+  <input value="Start Search" type="submit">
+
+  </form>
+  </body>
+  </html>
+  
+Metacat's pathquery document can query specific fields of any XML document. 
+The pathquery can also be used to specify which fields from each hit are 
+returned and displayed in the search result set.
+
+::
+
+  <pathquery version="1.0">
+      <meta_file_id>unspecified</meta_file_id>
+      <querytitle>unspecified</querytitle>
+      <returnfield>dataset/title</returnfield>
+      <returnfield>keyword</returnfield>
+      <returnfield>originator/individualName/surName</returnfield>
+      <returndoctype>eml://ecoinformatics.org/eml-2.0.1</returndoctype>
+      <returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype>
+      <querygroup operator="UNION">
+        <queryterm casesensitive="false" searchmode="contains">
+          <value>Plant</value>
+          <pathexpr>dataset/title</pathexpr>
+        </queryterm>
+        <queryterm casesensitive="false" searchmode="contains">
+          <value>plant</value>
+          <pathexpr>keyword</pathexpr>
+        </queryterm>
+      </querygroup>
+  </pathquery>
+  
+Each ``<returnfield>`` parameter specifies a field that the data base will 
+return (in addition to the fields Metacat returns by default) for each search 
+result. 
+
+The ``<returndoctype>`` field limits the type of returned documents 
+(eg, eml://ecoinformatics.org/eml-2.0.1 and/or eml://ecoinformatics.org/eml-2.0.0). 
+If no returndoctype element is specified, all document types are returned. 
+
+A ``<querygroup>`` creates an AND or an OR statement that applies to the 
+nested ``<queryterm>`` tags. The querygroup operator can be UNION or INTERSECT. 
+A ``<queryterm>`` defines the actual field (contained in ``<pathexpr>`` tags) 
+against which the query (contained in the ``<value>`` tags) is being performed. 
+
+The ``<pathexpr>`` can also contain a document type keyword contained in 
+``<returndoc>`` tags. The specified document type applies only to documents 
+that are packaged together (e.g., a data set and its corresponding metadata file). 
+If Metacat identifies the search term in a packaged document, the servlet will 
+check to see if that document's type matches the specified one. If not, 
+Metacat will check if one of the other documents in the package matches. If so, 
+Metacat will return the matching document. For more information about packages, 
+please see the developer documentation.
+
+After Metacat has processed a Pathquery document, it returns a resultset document.
+
+::
+
+  <resultset>
+        <query>
+          <pathquery version="1.0">
+            <meta_file_id>unspecified</meta_file_id>
+            <querytitle>unspecified</querytitle>
+            <returnfield>dataset/title</returnfield>
+            <returnfield>keyword</returnfield>
+            <returnfield>originator/individualName/surName</returnfield>
+            <returndoctype>eml://ecoinformatics.org/eml-2.0.1</returndoctype>
+            <returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype>
+            <querygroup operator="UNION">
+                  <queryterm casesensitive="false" searchmode="contains">
+                      <value>Datos</value>
+                      <pathexpr>dataset/title</pathexpr>
+                  </queryterm>
+                  <queryterm casesensitive="false" searchmode="contains">
+                     <value>plant</value>
+                     <pathexpr>keyword</pathexpr>
+                  </queryterm>
+           </querygroup>
+         </pathquery>
+        </query>  
+      
+        <document>
+          <docid>nceas.44.1</docid>
+          <docname>resource</docname>
+          <doctype>eml://ecoinformatics.org/eml-2.0.1</doctype>
+          <createdate>2001-01-12 16:12:06.0</createdate>
+          <updatedate>2001-01-12 16:12:06.0</updatedate>
+          <param name="dataset/title">Datos Meteorologicos</param>
+          <param name="keyword">intertidal</param>
+          <param name="originator/individualName/surName">Smith</param>
+        </document>  
+        
+        <document>
+          <docid>nceas.42.1</docid>
+          <docname>resource</docname>
+          <doctype>eml://ecoinformatics.org/eml-2.0.1</doctype>
+          <createdate>2001-01-12 16:11:31.0</createdate>
+          <updatedate>2001-01-12 16:11:31.0</updatedate>
+          <param name="dataset/title">Ocean Surface Temperature</param>
+          <param name="keyword">Plant</param>
+          <param name="originator/individualName/surName">Henry</param>   
+       </document>
+      .....  
+  </resultset>
+
+When Metacat returns a resultset document, the servlet always includes the 
+pathquery used to create it. The pathquery XML is contained in the <query> tag, 
+the first element in the resultset.
+
+Each XML document returned by the query is represented by a ``<document>`` tag. By 
+default, Metacat will return the docid, docname, doctype, doctitle, createdate 
+and updatedate for each search result. If the user specified additional return 
+fields in the pathquery using ``<returnfield>`` tags (e.g., dataset/title to return 
+the document title), the additional fields are returned in ``<param>`` tags. 
+
+Metacat can return the XML resultset to your client as either XML or HTML.
+
+Paged Query Returns
+~~~~~~~~~~~~~~~~~~~
+Dividing large search result sets over a number of pages speeds load-time and 
+makes the result sets more readable to users (Figure 4.12). To break your search 
+results into pages, use the query action's optional pagestart and pagesize 
+parameters. The pagesize parameter indicates how many results should be 
+returned for a given page. The pagestart parameter indicates which page you 
+are currently viewing.
+
+.. figure:: images/screenshots/image045.jpg
+   :align: center
+   
+   An example of paged search results. 
+
+When a paged query is performed, the query's resultset contains four extra 
+fields: pagestart, pagesize, nextpage, and previouspage (Figure 4.13).  The 
+nextpage and previouspage fields help Metacat generate navigational links in 
+the rendered resultset using XSLT to transform the XML to HTML. 
+
+:: 
+
+  <!-- An example of an XML resultset that include support for page breaks. 
+       The pagestart parameter will always indicate the page you are currently viewing.
+  -->
+  <resultset>
+      <pagestart>1</pagestart>
+      <pagesize>10</pagesize>
+      <nextpage>2</nextpage>
+      <previouspage>0</previouspage>
+      <query> ...</query>
+      <document>...</document>
+      <document>...</document>
+    </resultset>
+
+The HTML search results displayed in the figure were rendered using Kepler's XSLT, 
+which can be found in lib/style/skins/kepler. Kepler's XSLT uses the four extra 
+resultset fields to render the "Next" and "Previous" links.
+
+::
+  
+  <a href="metacat?action=query&operator=INTERSECT&enableediting=false&anyfield=actor&qformat=kepler&pagestart=0&pagesize=10">Previous Page</a>
+  <a href="metacat?action=query&operator=INTERSECT&enableediting=false&anyfield=actor&qformat=kepler&pagestart=2&pagesize=10">Next Page</a>
+  
+In the example above, the current page is 1, and the previous page (page 0) and next page (page 2) pages are indicated by the values of the pagestart parameters.
+
+Reading Data and Metadata
+~~~~~~~~~~~~~~~~~~~~~~~~~
+To read data or metadata from Metacat, use the ``read`` action. The ``read`` action 
+takes two parameters: ``docid``, which specifies the document ID of the document 
+to return, and ``qformat``, which specifies the return format for the document 
+(``html`` or ``xml`` or the name of a configured style-set, e.g., ``default``). If ``qformat`` 
+is set to ``xml``, Metacat will return the XML document untransformed. If the 
+return format is set to ``html``, Metacat will transform the XML document into 
+HTML using the default XSLT style sheet (specified in the Metacat 
+configuration). If the name of a style-set is specified, Metacat will use the 
+XSLT styles specified in the set to transform the XML.
+
+.. figure:: images/screenshots/image047.jpg
+   :align: center
+   
+   The same document displayed using different qformat parameters (from left 
+   to right: the default style-set, XML, and HTML). 
+
+Note that the ``read`` action can be used to read both data files and metadata files. 
+To read a data file, you could use the following request::
+
+  http://yourserver.com/yourcontext/metacat?action=read&docid=nceas.55&qformat=default
+
+Where ``nceas.55`` is the docid of the data file stored in the Metacat and 
+``default`` is the name of the style (you could also use "html" or "xml" or the 
+name of a customized skin).
+
+::
+  
+  <html>
+  <head>
+    <title>Read Document</title>
+  </head>
+  <body>
+    <form method="POST" action="http://your.server/your.context/servlet/metacat">
+      <input name="action" value="read" type="hidden">
+      <input name="docid" type="text" value="" size="40">
+      <input name="qformat" value="default" type="hidden">
+      <input value="Read" type="submit">
+    </form>
+  </body>
+  </html>
+  
+Using the EarthGrid API (aka EcoGrid)
+-------------------------------------
+
+.. Note::
+
+  The EarthGrid/EcoGrid web service API is *deprecated* as of Metacat 2.0.0 and 
+  will be removed from a future version of Metacat.  Its functionality is being 
+  replaced by the standardized DataONE REST service interface. The EarthGrid API
+  will be completely removed by the end of 2013.
+   
+The EarthGrid (aka EcoGrid) provides access to disparate data on different 
+networks (e.g., KNB, GBIF, GEON) and storage systems (e.g., Metacat and SRB), 
+allowing scientists access to a wide variety of data and analytic resources 
+(e.g., data, metadata, analytic workflows and processors) networked at different 
+sites and at different organizations via the internet. 
+
+Because Metacat supports the EarthGrid API (see table), it can query the 
+distributed EarthGrid, retrieve metadata and data results, and write new and 
+updated metadata and data back to the grid nodes.
+
+For more information about each EarthGrid service and its WSDL file, navigate 
+to the "services" page on your Metacat server 
+(e.g., http://knb.ecoinformatics.org/knb/services). 
+Note that the AdminService and Version service that appear on this page are 
+not part of EarthGrid.
+
+EarthGrid/EcoGrid API Summary
+
++----------------------------+-----------------------------------------------------------------------------------------------------+
+| Service                    | Description                                                                                         |
++============================+=====================================================================================================+
+| AuthenticationQueryService | Search for and retrieve protected metadata and data from the EarthGrid as an authenticated user.    |
+|                            |                                                                                                     |
+|                            | Methods: ``query``, ``get``                                                                         |
++----------------------------+-----------------------------------------------------------------------------------------------------+
+| AuthenticationService      | Log in and out of the EarthGrid                                                                     |
+|                            |                                                                                                     |
+|                            | Methods: ``login``, ``logout``                                                                      |
++----------------------------+-----------------------------------------------------------------------------------------------------+
+| IdentifierService          | List, lookup, validate, and add Life Science Identifiers (LSIDs) to the EarthGrid                   |
+|                            |                                                                                                     |
+|                            | Methods: ``isRegistered``, ``addLSID``, ``getNextRevision``, ``getNextObject``, ``getAllIds``       |
++----------------------------+-----------------------------------------------------------------------------------------------------+
+| PutService                 | Write metadata to the EarthGrid                                                                     |
+|                            |                                                                                                     |
+|                            | Methods: ``put``                                                                                    |
++----------------------------+-----------------------------------------------------------------------------------------------------+
+| QueryService               | Search for and retrieve metadata from the EarthGrid                                                 |
+|                            |                                                                                                     |
+|                            | Methods: ``query``, ``get``                                                                         |
++----------------------------+-----------------------------------------------------------------------------------------------------+
+| RegistryService            | Add, update, remove, and search for registered EarthGrid services.                                  |
+|                            | Note: The WSDL for this  service is found under http://ecogrid.ecoinformatics.org/registry/services |
+|                            |                                                                                                     |
+|                            | Methods: ``add``, ``update``, ``remove``, ``list``, ``query``                                       |
++----------------------------+-----------------------------------------------------------------------------------------------------+
+
+Using Morpho
+------------
+Morpho is a desktop tool created to facilitate the creation, storage, and 
+retrieval of metadata. Morpho interfaces with any Metacat server, allowing 
+users to upload, download, store, query and view relevant metadata and data 
+using the network. Users can authorize the public or only selected colleagues 
+to view their data files. 
+
+Morpho is part of the Knowledge Network for Biocomplexity (KNB), a national 
+network intended to facilitate ecological and environmental research on 
+biocomplexity. To use Morpho with your Metacat, set the Metacat URL in the 
+Morpho Preferences to point to your Metacat server.
+
+.. figure:: images/screenshots/image049.png
+   :align: center
+   
+   Set the Metacat URL in the Morpho preferences to point to your Metacat.
+
+For more information about Morpho, please see: http://knb.ecoinformatics.org/morphoportal.jsp
+
+Creating Your Own Client
+------------------------
+
+.. Note::
+
+  NOTE: The Client API (and underlying servlet implementation) has been 
+  deprecated as of Metacat 2.0.0. Future development should utilize the DataONE 
+  REST service methods. The Client API will be completely removed by the end of 2013.
+  
+Metacat's client API is available in Java and Perl (the Java interface is 
+described in this section and further detailed in the appendix). Some of the 
+API is also available in Python and Ruby. The API allows client applications 
+to easily authenticate users and perform basic Metacat operations such as 
+reading metadata and data files; inserting, updating, and deleting files; and 
+searching for packages based on metadata matches. 
+
+The Client API is defined by the interface edu.ucsb.nceas.metacat.client.Metacat, 
+and all operations are fully defined in the javadoc_ documentation. To use the 
+client API, include the ``metacat-client.jar``, ``utilities.jar``, ``commons-io-2.0.jar``, and 
+``httpclient.jar`` in your classpath. After including these classes, you can 
+begin using the API methods (see the next table). 
+
+.. _javadoc: http://knb.ecoinformatics.org/software/metacat/dev/api/index.html
+
+The following code block displays a typical session for reading a document 
+from Metacat using the Java client API.
+
+::
+  
+  String metacatUrl = "http://foo.com/context/metacat";
+  String username = "uid=jones,o=NCEAS,dc=ecoinformatics,dc=org";
+  String password = "neverHarcodeAPasswordInCode";
+  try {
+      Metacat m = MetacatFactory.createMetacatConnection(metacatUrl);
+      m.login(username, password);
+      Reader r = m.read("testdocument.1.1");
+      // Do whatever you want with Reader r
+  } catch (MetacatAuthException mae) {
+      handleError("Authorization failed:\n" + mae.getMessage());
+  } catch (MetacatInaccessibleException mie) {
+      handleError("Metacat Inaccessible:\n" + mie.getMessage());
+  } catch (Exception e) {
+      handleError("General exception:\n" + e.getMessage());
+  }
+  
+  Operations provided by Client API  (Metacat.java class)
+  
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| Method               | Parameters and Throws                                                                                                                                                                                       | Description                                                                                                                               |
++======================+=============================================================================================================================================================================================================+===========================================================================================================================================+
+| delete               | ``public String delete(String docid) throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;``                                                                                   | Delete an XML document in the repository.                                                                                                 |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| getAllDocids         | ``public Vector getAllDocids(String scope) throws MetacatException;``                                                                                                                                       | Return a list of all docids that match a given scope. If scope is null, return all docids registered in the system.                       |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| getLastDocid         | ``public String getLastDocid(String scope) throws MetacatException;``                                                                                                                                       | Return the highest document ID for a given scope.  Used by clients to determine the next free identifier in a sequence for a given scope. |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| getloggedinuserinfo  | ``public String getloggedinuserinfo() throws MetacatInaccessibleException;``                                                                                                                                | Return the logged in user for this session.                                                                                               |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| getNewestDocRevision | ``public int getNewestDocRevision(String docId) throws MetacatException;``                                                                                                                                  | Return the latest revision of specified the document from Metacat                                                                         |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| getSessonId          | ``public String getSessionId();``                                                                                                                                                                           | Return the session identifier for this session.                                                                                           |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| insert               | ``public String insert(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``                                   | Insert an XML document into the repository.                                                                                               |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| isRegistered         | ``public boolean isRegistered(String docid) throws MetacatException;``                                                                                                                                      | Return true if given docid is registered; false if not.                                                                                   |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| login                | ``public String login(String username, String password) throws MetacatAuthException, MetacatInaccessibleException;``                                                                                        | Log in to a Metacat server.                                                                                                               |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| logout               | ``public String logout() throws MetacatInaccessibleException, MetacatException;``                                                                                                                           | Log out of a Metacat server.                                                                                                              |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| query                | ``public Reader query(Reader xmlQuery) throws MetacatInaccessibleException, IOException;``                                                                                                                  | Query the Metacat repository and return the result set as a Reader.                                                                       |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| query                | ``public Reader query(Reader xmlQuery, String qformat) throws MetacatInaccessibleException, IOException;``                                                                                                  | Query the Metacat repository with the given metacat-compatible query format and return the result set as a Reader.                        |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| read                 | ``public Reader read(String docid) throws InsufficientKarmaException, MetacatInaccessibleException, DocumentNotFoundException, MetacatException;``                                                          | Read an XML document from the Metacat server.                                                                                             |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| readInlineData       | ``public Reader readInlineData(String inlinedataid) throws InsufficientKarmaException, MetacatInaccessibleException, MetacatException;``                                                                    | Read inline data from the Metacat server session.                                                                                         |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| setAccess            | ``public String setAccess(String _docid, String _principal, String _permission, String _permType, String _permOrder ); throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;`` | Set permissions for an XML document in the Metacat repository.                                                                            |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| setMetacatUrl        | ``public void setMetacatUrl(String metacatUrl);``                                                                                                                                                           | Set the MetacatUrl to which connections should be made.                                                                                   |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| setSessionId         | ``public void setSessionId(String sessionId);``                                                                                                                                                             | Set the session identifier for this session.                                                                                              |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| update               | ``public String update(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``                                   | Update an XML document in the repository by providing a new version of the XML document.                                                  |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| upload               | ``public String upload(String docid, File file) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``                                                           | Upload a data document into the repository.                                                                                               |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+| upload               | ``public String publicupload(String docid, String fileName, InputStream fileData, int size) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``               | Upload a data document into the repository.                                                                                               |
++----------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
+  
Index: docs/user/metacat/source/intro.rst
===================================================================
--- docs/user/metacat/source/intro.rst	(nonexistent)
+++ docs/user/metacat/source/intro.rst	(revision 6871)
@@ -0,0 +1,112 @@
+Introduction
+============
+
+Metacat is a repository for data and metadata (descriptions of data) that helps
+scientists find, understand and effectively use the data sets they manage or
+that have been created by others. Thousands of data sets are currently
+documented in a standardized way and stored in Metacat systems, providing the
+scientific community with a broad range of science data that--because the
+data are well and consistently described--can be easily searched, compared,
+merged, or used in other ways.
+
+Not only is the Metacat repository a reliable place to store metadata and data
+(the database is replicated over a secure connection so that every record is
+stored on multiple machines and no data is ever lost to technical failures), it
+provides a user-friendly interface for information entry and retrieval.
+Scientists can search the repository via the Web using a customizable search
+form. Searches return results based on user-specified criteria, such as desired
+geographic coverage, taxonomic coverage, and/or keywords that appear in places
+such as the data set's title or owner's name. Users need only click a linked
+search result to open the corresponding data-set documentation in a browser
+window and discover whom to contact to obtain the data themselves (or how to
+immediately download the data via the Web).
+
+Metacat's user-friendly Registry application allows data providers to enter
+data set documentation into Metacat using a Web form. When the form is
+submitted, Metacat compiles the provided documentation into the required format
+and saves it. Information providers need never work directly with the XML_
+format in which the metadata are stored or with the database records themselves. In
+addition, the Metacat application can easily be extended to provide a
+customized data-entry interface that suits the particular requirements of each
+project. Metacat users can also choose to enter metadata using the Morpho
+application, which provides data entry wizards that guide information providers
+through the process of documenting each data set.
+
+The metadata stored in Metacat includes all of the information needed
+to understand what the described data are and how to use them: a
+descriptive data set title; an abstract; the temporal, spatial, and taxonomic
+coverage of the data; the data collection methods; distribution information;
+and contact information. Each information provider decides who has access to
+this information (the public, or just specified users), and whether or not to
+upload the data set itself with the data documentation. Information providers
+can also edit the metadata or delete it from the repository, again using
+Metacat's straightforward Web interface.
+
+Metacat is a `Java servlet`_ application that runs on Linux, Mac OS, and
+Windows platforms in conjunction with a database, such as 
+PostgreSQL_ (or Oracle_), and a Web
+server. The Metacat application stores data in an XML_ format using `Ecological
+Metadata Language`_ (EML) or other metadata standards such as `ISO 19139`_ or the
+`FGDC Biological Data Profile`_. For more
+information about Metacat or for examples of projects currently using Metacat,
+please see http://knb.ecoinformatics.org.
+
+.. _XML: http://en.wikipedia.org/wiki/XML
+
+.. _Java servlet: http://en.wikipedia.org/wiki/Java_Servlet
+
+.. _PostgreSQL: http://www.postgresql.org/
+
+.. _Oracle: http://www.oracle.com/
+
+.. _Ecological Metadata Language: http://knb.ecoinformatics.org/software/eml
+
+.. _ISO 19139: http://marinemetadata.org/references/iso19139 
+
+.. _FGDC Biological Data Profile: http://www.fgdc.gov/standards/projects/FGDC-standards-projects/metadata/biometadata 
+
+What's in this Guide
+--------------------
+This Administrator's guide includes information for installing, configuring,
+managing and extending Metacat for both Linux, Mac OS, and Windows systems. 
+Chapter Two contains instructions for downloading and installing Metacat and the
+applications required to run the software on Linux and Microsoft platforms.
+Chapter Three covers how to configure Metacat, both for new and upgraded
+installations. Chapter Four details the ways in which you can customize the
+Metacat interface so users can access and submit information easily: using
+Metacat's generic web-interface (the Registry), creating your own HTML forms,
+and creating your own desktop client (like Morpho). Chapter Five discusses how
+to work with Metacat's embedded Geoserver. Chapter Six describes how to set up the
+Metacat's replication service, which permits Metacat servers to share data with
+each other, effectively backing up metadata and data files. Chapter Seven looks
+at the Metacat Harvester, a program that automates the retrieval of EML
+documents from one or more sites and their subsequent upload (insert or update)
+to Metacat. Chapter Eight discusses logging, Chapter Nine contains instructions
+for creating a site map, which makes individual metadata entries available via
+Web searches. Metacat's Java API is included as an appendix at the end of the
+guide.
+
+Metacat Features
+----------------
+Metacat is a repository for data and metadata (documentation about data), that 
+helps scientists find, understand and effectively use the data sets they manage or 
+that have been created by others. Specifically,
+
+* Metacat is an open source web application, which can run on Linux, MacOS, and Windows operating systems and is written in Java
+* Metacat's Web interface facilitates the input and retrieval of data 
+* Metacat's optional mapping functionality enables you to query and visualize the geographic coverage of stored data sets
+* Metacat's replication feature ensures that all Metacat data and metadata is stored safely on multiple Metacat servers
+* The Metacat interface can be easily extended and customized via Web forms, skins, and/or user-developed client tools in Java and other languages
+* The Metacat harvester automates the process of retrieving and storing EML documents from one or more sites
+* Metacat can be customized to use Life Sciences Identifiers (LSIDs), uniquely identifying every data record
+* Metacat has a built-in logging system for tracking events such as document insertions, updates, deletes, and reads
+* The appearance of Metacat's Web interface can be customized via skins. 
+* Metacat fully supports the DataONE Member Node interface, allowing Metacat deployments to easily participate in the DataONE federation
+
+.. figure:: images/screenshots/image007.png
+   :align: center
+
+   Metacat's default home page. Users can customize the appearance using skins.
+
+
+
Index: docs/user/metacat/source/images/screenshots/image031.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image031.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/themes/readable/static/readable.css
===================================================================
--- docs/user/metacat/source/themes/readable/static/readable.css	(nonexistent)
+++ docs/user/metacat/source/themes/readable/static/readable.css	(revision 6871)
@@ -0,0 +1,604 @@
+/**
+ * Sphinx theme based on sphinxdoc and arc90 readability.css
+ * Dave Vieglais
+ */
+
+body {
+    font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva', 'Verdana', sans-serif;
+    /*font-family:"Palatino Linotype", "Book Antiqua", Palatino, serif;*/
+    font-size: 14px;
+    letter-spacing: -0.01em;
+    line-height: 150%;
+    text-align: center;
+    /*background-color: #BFD1D4;*/
+    /*background: #F4F3DB;*/
+    background: white;
+    color: black;
+    /*color: #222;*/
+    padding: 0;
+    /*border: 1px solid #aaa;*/
+
+    margin: 0px 80px 0px 80px;
+    min-width: 740px;
+}
+
+a {
+    /*color: #CA7900;*/
+    color: #003399;
+    text-decoration: none;
+}
+
+a:hover {
+    /*color: #2491CF;*/
+    text-decoration:underline;
+}
+
+pre {
+    font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
+    font-size: 0.95em;
+    font-weight: bold;
+    letter-spacing: 0.015em;
+    padding: 0.5em;
+    border: 1px solid darkGray;
+    background-color: white;
+    color: #203030;
+    margin-left: 1em;
+}
+
+td.linenos pre {
+    padding: 0.5em 0;
+    border: 0;
+    background-color: transparent;
+    color: #aaa;
+}
+
+table.highlighttable {
+    margin-left: 0.5em;
+}
+
+table.highlighttable td {
+    padding: 0 0.5em 0 0.5em;
+}
+
+cite, code, tt {
+    font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
+    font-size: 0.95em;
+    letter-spacing: 0.01em;
+}
+
+hr {
+    border: 1px solid #abc;
+    margin: 2em;
+}
+
+tt {
+    background-color: #f2f2f2;
+    border-bottom: 1px solid #ddd;
+    color: #333;
+}
+
+tt.descname {
+    background-color: transparent;
+    font-weight: bold;
+    font-size: 1.2em;
+    border: 0;
+}
+
+tt.descclassname {
+    background-color: transparent;
+    border: 0;
+}
+
+tt.xref {
+    background-color: transparent;
+    font-weight: bold;
+    border: 0;
+}
+
+a tt {
+    background-color: transparent;
+    font-weight: bold;
+    border: 0;
+    /*color: #CA7900;*/
+    color: inherit;
+}
+
+/*a tt:hover {
+    color: #2491CF;
+}*/
+
+.field-list ul {
+    margin: 0;
+    padding-left: 1em;
+}
+
+.field-list p {
+    margin: 0;
+}
+
+dl {
+    margin-bottom: 15px;
+}
+
+dd p {
+    margin-top: 0px;
+}
+
+dd ul, dd table {
+    margin-bottom: 10px;
+}
+
+dd {
+    margin-top: 3px;
+    margin-bottom: 10px;
+    margin-left: 30px;
+}
+
+.refcount {
+    color: #060;
+}
+
+dt:target,
+.highlight {
+    background-color: #fbe54e;
+}
+
+dl.glossary dt {
+    font-weight: bold;
+    font-size: 1.1em;
+}
+
+pre {
+    line-height: 120%;
+}
+
+pre a {
+    color: inherit;
+    /*text-decoration: underline;*/
+}
+
+.first {
+    margin-top: 0 !important;
+}
+
+div.document {
+    background-color: white;
+    text-align: left;
+    background-image: url(contents.png);
+    background-repeat: repeat-x;
+}
+
+/*
+div.documentwrapper {
+    width: 100%;
+}
+*/
+div.banner {
+    height: 5.5em;
+}
+
+div.banner img {
+    height: 5em;
+    float: left;
+}
+
+div.banner p.title {
+    font-weight: bold;
+    font-size: 2em;
+    text-align: left;
+    margin-left: 2em;
+}
+
+div.clearer {
+    clear: both;
+}
+
+div.related h3 {
+    display: none;
+}
+
+div.related ul {
+    background-image: url(navigation.png);
+    height: 2em;
+    list-style: none;
+    border-top: 1px solid #ddd;
+    border-bottom: 1px solid #ddd;
+    margin: 0;
+    padding-left: 10px;
+}
+
+div.related ul li {
+    margin: 0;
+    padding: 0;
+    height: 2em;
+    float: left;
+}
+
+div.related ul li.right {
+    float: right;
+    margin-right: 5px;
+}
+
+div.related ul li a {
+    margin: 0;
+    padding: 0 5px 0 5px;
+    line-height: 1.75em;
+    /*color: #EE9816;*/
+    color: #555;
+}
+
+div.related ul li a:hover {
+    /*color: #3CA8E7;*/
+}
+
+div.body {
+    margin: 0;
+    padding: 0.5em 20px 20px 20px;
+}
+
+div.bodywrapper {
+    /*margin: 0 240px 0 0;*/
+    /*border-right: 1px solid #ccc;*/
+}
+
+div.body a {
+    /*text-decoration: underline;*/
+    text-decoration:inherit;
+}
+
+div.body a:hover {
+  text-decoration: underline;
+}
+
+div.sphinxsidebar {
+    margin: 0;
+    padding: 0.5em 15px 15px 0;
+    width: 210px;
+    float: right;
+    text-align: left;
+/*    margin-left: -100%; */
+}
+
+div.sphinxsidebarwrapper {
+  position: fixed;
+  width: 210px;
+}
+
+div.sphinxsidebar h4, div.sphinxsidebar h3 {
+    font-size: 0.9em;
+    /*margin: 1em 0 0.5em 0;
+    padding: 0.1em 0 0.1em 0.5em;
+    color: white;
+    border: 1px solid #86989B;
+    background-color: #AFC1C4; */
+}
+
+div.sphinxsidebar h3 a {
+    color: white;
+}
+
+div.sphinxsidebar a {
+  color: #555;
+}
+
+div.sphinxsidebar ul {
+    padding-left: 1.5em;
+    margin-top: 7px;
+    list-style: none;
+    padding: 0;
+    line-height: 130%;
+}
+
+div.sphinxsidebar ul ul {
+    list-style: square;
+    margin-left: 20px;
+}
+
+p {
+    margin: 0.8em 0 0.5em 0;
+}
+
+p.rubric {
+    font-weight: bold;
+}
+
+div.sidebar {
+    margin: 0 0 0.5em 1em;
+    border: 1px solid #ddb;
+    padding: 7px 7px 0 7px;
+    background-color: #B3B4C9;
+    width: 40%;
+    float: right;
+}
+
+div.quotebar {
+    background-color: #f8f8f8;
+    max-width: 250px;
+    float: right;
+    padding: 2px 7px;
+    border: 1px solid #ccc;
+}
+
+p.sidebar-title {
+    font-weight: bold;
+}
+
+div.topic {
+    background-color: #f8f8f8;
+    border: 1px solid #ccc;
+    padding: 7px 7px 0 7px;
+    margin: 10px 0 10px 0;
+}
+
+p.topic-title {
+    font-size: 1.1em;
+    font-weight: bold;
+}
+
+h1 {
+    margin: 0;
+    padding: 0.7em 0 0.3em 0;
+    /*font-size: 1.5em;*/
+    /*color: #11557C;*/
+    display: block;
+    border-bottom: 1px solid #333;
+    font-size: 1.4em;
+}
+
+h2 {
+    margin: 1.3em 0 0.2em 0;
+    font-size: 1.35em;
+    padding: 0;
+}
+
+h3 {
+    margin: 1em 0 -0.3em 0;
+    font-size: 1.2em;
+}
+
+div.body h1 a, div.body h2 a, div.body h3 a, div.body h4 a, div.body h5 a, div.body h6 a {
+    color: black!important;
+}
+
+h1 a.anchor, h2 a.anchor, h3 a.anchor, h4 a.anchor, h5 a.anchor, h6 a.anchor {
+    display: none;
+    margin: 0 0 0 0.3em;
+    padding: 0 0.2em 0 0.2em;
+    color: #aaa!important;
+}
+
+h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor,
+h5:hover a.anchor, h6:hover a.anchor {
+    display: inline;
+}
+
+h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover,
+h5 a.anchor:hover, h6 a.anchor:hover {
+    color: #777;
+    background-color: #eee;
+}
+
+table {
+    border-collapse: collapse;
+    margin: 0 -0.5em 0 -0.5em;
+}
+
+table td, table th {
+    padding: 0.2em 0.5em 0.2em 0.5em;
+}
+
+div.footer {
+    /*background-color: #E3EFF1;*/
+    color: #86989B;
+    padding: 3px 8px 3px 0;
+    clear: both;
+    font-size: 0.8em;
+    text-align: right;
+}
+
+div.footer a {
+    color: #86989B;
+    text-decoration: underline;
+}
+
+div.pagination {
+    margin-top: 2em;
+    padding-top: 0.5em;
+    border-top: 1px solid black;
+    text-align: center;
+}
+
+div.sphinxsidebar ul.toc {
+    margin: 1em 0 1em 0;
+    padding: 0 0 0 0.5em;
+    list-style: none;
+}
+
+div.sphinxsidebar ul.toc li {
+    margin: 0.5em 0 0.5em 0;
+    font-size: 0.9em;
+    line-height: 130%;
+}
+
+div.sphinxsidebar ul.toc li p {
+    margin: 0;
+    padding: 0;
+}
+
+div.sphinxsidebar ul.toc ul {
+    margin: 0.2em 0 0.2em 0;
+    padding: 0 0 0 1.8em;
+}
+
+div.sphinxsidebar ul.toc ul li {
+    padding: 0;
+}
+
+div.admonition, div.warning {
+    font-size: 0.9em;
+    margin: 1em 0 0 0;
+    border: 1px solid #86989B;
+    background-color: #f7f7f7;
+}
+
+div.admonition p, div.warning p {
+    margin: 0.5em 1em 0.5em 1em;
+    padding: 0;
+}
+
+div.admonition pre, div.warning pre {
+    margin: 0.4em 1em 0.4em 1em;
+}
+
+div.admonition p.admonition-title,
+div.warning p.admonition-title {
+    margin: 0;
+    padding: 0.1em 0 0.1em 0.5em;
+    color: white;
+    border-bottom: 1px solid #86989B;
+    font-weight: bold;
+    background-color: #AFC1C4;
+}
+
+div.warning {
+    border: 1px solid #940000;
+}
+
+div.warning p.admonition-title {
+    background-color: #CF0000;
+    border-bottom-color: #940000;
+}
+
+div.admonition ul, div.admonition ol,
+div.warning ul, div.warning ol {
+    margin: 0.1em 0.5em 0.5em 3em;
+    padding: 0;
+}
+
+div.versioninfo {
+    margin: 1em 0 0 0;
+    border: 1px solid #ccc;
+    background-color: #DDEAF0;
+    padding: 8px;
+    line-height: 1.3em;
+    font-size: 0.9em;
+}
+
+
+a.headerlink {
+    color: #c60f0f!important;
+    font-size: 1em;
+    margin-left: 6px;
+    padding: 0 4px 0 4px;
+    text-decoration: none!important;
+    visibility: hidden;
+}
+
+h1:hover > a.headerlink,
+h2:hover > a.headerlink,
+h3:hover > a.headerlink,
+h4:hover > a.headerlink,
+h5:hover > a.headerlink,
+h6:hover > a.headerlink,
+dt:hover > a.headerlink {
+    visibility: visible;
+}
+
+a.headerlink:hover {
+    background-color: #ccc;
+    color: white!important;
+}
+
+table.indextable td {
+    text-align: left;
+    vertical-align: top;
+}
+
+table.indextable dl, table.indextable dd {
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+table.indextable tr.pcap {
+    height: 10px;
+}
+
+table.indextable tr.cap {
+    margin-top: 10px;
+    background-color: #f2f2f2;
+}
+
+img.toggler {
+    margin-right: 3px;
+    margin-top: 3px;
+    cursor: pointer;
+}
+
+form.pfform {
+    margin: 10px 0 20px 0;
+}
+
+table.contentstable {
+    width: 90%;
+}
+
+table.contentstable p.biglink {
+    line-height: 150%;
+}
+
+a.biglink {
+    font-size: 1.3em;
+}
+
+span.linkdescr {
+    font-style: italic;
+    padding-top: 5px;
+    font-size: 90%;
+}
+
+ul.search {
+    margin: 10px 0 0 20px;
+    padding: 0;
+}
+
+ul.search li {
+    padding: 5px 0 5px 20px;
+    background-image: url(file.png);
+    background-repeat: no-repeat;
+    background-position: 0 7px;
+}
+
+ul.search li a {
+    font-weight: bold;
+}
+
+ul.search li div.context {
+    color: #888;
+    margin: 2px 0 0 30px;
+    text-align: left;
+}
+
+ul.keywordmatches li.goodmatch a {
+    font-weight: bold;
+}
+
+img.math {
+    vertical-align: center;
+}
+
+div.math {
+    text-align: center;
+}
+
+span.eqno {
+    float: right;
+}
+
+img.logo {
+    border: 0;
+}
+
+div.banner img.logo-right {
+    border: 0;
+    float: right;
+}
Index: docs/user/metacat/source/themes/readable/static/nceas-logo.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/themes/readable/static/nceas-logo.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/themes/readable/theme.conf
===================================================================
--- docs/user/metacat/source/themes/readable/theme.conf	(nonexistent)
+++ docs/user/metacat/source/themes/readable/theme.conf	(revision 6871)
@@ -0,0 +1,7 @@
+[theme]
+inherit = sphinxdoc
+stylesheet = readable.css
+pygments_style = sphinx
+
+[options]
+bgcolor = #FFFFFF
Index: docs/user/metacat/source/images/screenshots/image015.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image015.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/contributors.rst
===================================================================
--- docs/user/metacat/source/contributors.rst	(nonexistent)
+++ docs/user/metacat/source/contributors.rst	(revision 6871)
@@ -0,0 +1,34 @@
+Contributors
+============
+
+Metacat has been designed and built by a large number of contributors to this
+open source project.  Main developers and additional patch contributors are
+listed here. We welcome participation in the project, and will work to
+incorporate code, documentation, and other useful contributions.
+
+Contributors
+------------
+  - Matt Jones (jones@nceas.ucsb.edu)
+  - Chad Berkley (berkley@nceas.ucsb.edu)
+  - Jing Tao (tao@nceas.ucsb.edu)
+  - Jivka Bojilova (bojilova@nceas.ucsb.edu)
+  - Dan Higgins (higgins@nceas.ucsb.edu)
+  - Saurabh Garg (sgarg@nceas.ucsb.edu)
+  - Duane Costa (dcosta@lternet.edu)
+  - Veronique Connolly (connolly@nceas.ucsb.edu)
+  - Chris Jones (cjones@nceas.ucsb.edu)
+  - John Harris (harris@nceas.ucsb.edu)
+  - Callie Bowdish (bowdish@ecoinformatics.org)
+  - Will Tyburczy (tyburczy@ecoinformatics.org)
+  - Matthew Perry (perry@nceas.ucsb.edu)
+  - Chad Burt (underbluewaters@gmail.com)
+  - Ben Leinfelder (leinfelder@nceas.ucsb.edu)
+  - Chris Barteau (barteau@nceas.ucsb.edu)
+  - Shaun Walbridge (walbridge@nceas.ucsb.edu)
+  - Michael Daigle (daigle@nceas.ucsb.edu)
+
+Patch contributors
+------------------
+  - Andrea Chadden (chadden@nceas.ucsb.edu)
+  - Johnoel Ancheta (johnoel@hawaii.edu)
+  - Owen Jones (owen.jones@imperial.ac.uk)
Index: docs/user/metacat/source/images/screenshots/image045.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image045.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image025.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image025.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/identifiers.rst
===================================================================
--- docs/user/metacat/source/identifiers.rst	(nonexistent)
+++ docs/user/metacat/source/identifiers.rst	(revision 6871)
@@ -0,0 +1,249 @@
+.. raw:: latex
+
+  \newpage
+  
+
+Identifier Management
+=====================
+
+.. index:: Identifiers
+
+Author
+  Matthew B. Jones
+
+Date
+  - 20100301 [MBJ] Initial draft of Identifier documentation
+
+Goal
+  Extend Metacat to support identifiers with arbitrary syntax
+
+Summary 
+  Metacat currently supports identifier strings called 'docids' that have
+  the syntax 'scope.object.revision', such as 'foo.34.1' (we will refer to
+  these as 'LocalIDs'). We now want Metacat to support identifiers that are 
+  arbitrary strings, but still enforce uniqueness and proper revision
+  handling (refer to these as GUIDs).  Metacat must be able to accept 
+  these strings as identifiers for all CRUD operations, and reference them 
+  in search results.
+
+Identifier Resolution
+---------------------
+Because Metacat uses LocalIDs throughout the code for references to objects,
+and that LocalID has a constrained structure that includes semantics about
+revisions in the identifier, it is difficult to wholesale replace it with
+less-constrained string identifiers without re-writing much of Metacat.
+Thus, our alternate strategy is to wrap the Metacat APIs with a
+identifier resolution layer that keeps track of the unconstrained GUIDs and
+maps them to constrained local identifiers which are used internally within
+Metacat. The basic identifer table model is shown in Figure 1, while the
+basic strategy for retrieving an object is shown in Figure 2, creating an 
+object is shown in Figure 3, updating an object in Figure 4, and deleting
+an object is shown in Figure 5.
+
+
+Identifier Table Structure
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+.. figure:: images/identifiers.png
+
+   Figure 1. Table structure for identifiers.
+
+..
+  This block defines the table structure diagram referenced above.
+  @startuml images/identifiers.png
+
+  identifiers "*" -- "1" xml_documents
+
+  identifiers : String identifier
+  identifiers : String docid
+  identifiers : Integer rev
+
+  xml_documents : String docid
+  xml_documents : String rev
+
+  note right of identifiers
+    "identifiers.(docid,rev) is a foreign key into xml_documents"
+  end note
+  @enduml
+
+.. raw:: latex
+
+  \newpage
+
+.. raw:: pdf
+
+  PageBreak
+
+
+Handling document read operations
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+An overview of the process needed to read an object using a GUID.
+
+
+.. figure:: images/guid_read.png
+
+   Figure 2. Basic handling for string identifiers (GUIDs) as mapped to
+   docids (LocalIDs) to retrieve an object.
+
+..
+  @startuml images/guid_read.png
+  !include plantuml.conf
+  actor User
+  participant "Client" as app_client << Application >>
+  participant "CRUD API" as c_crud << MetacatRestServlet >>
+  participant "Identifier Manager" as ident_man << IdentifierManager >>
+  participant "Handler" as handler << MetacatHandler >>
+  User -> app_client
+  app_client -> c_crud: get(token, GUID)
+  c_crud -> ident_man: getLocalID(GUID)
+  c_crud <-- ident_man: localID
+  c_crud -> handler: handleReadAction(localID)
+  c_crud <-- handler: object
+  c_crud --> app_client: object
+  
+  @enduml
+
+Handling document create operations
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+An overview of the process needed to create an object using a GUID.
+
+.. figure:: images/guid_insert.png
+
+   Figure 3. Basic handling for string identifiers (GUIDs) as mapped to
+   docids (LocalIDs) to create an object.
+
+..
+  @startuml images/guid_insert.png
+  !include plantuml.conf
+  actor User
+  participant "Client" as app_client << Application >>
+  participant "CRUD API" as c_crud << MetacatRestServlet >>
+  participant "Identifier Manager" as ident_man << IdentifierManager >>
+  participant "Handler" as handler << MetacatHandler >>
+  User -> app_client
+  app_client -> c_crud: create(token, GUID, object, sysmeta)
+  c_crud -> ident_man: identifierExists(GUID)
+  c_crud <-- ident_man: T or F 
+  alt identifierExists == "F"
+      c_crud -> ident_man: mapToLocalId(GUID)
+      c_crud <-- ident_man: localID
+      c_crud -> handler: handleInsertAction(localID)
+      c_crud <-- handler: success
+      note right of c_crud
+        "Also need to address how to handle the sysmeta information wrt insertion methods"
+      end note
+      app_client <-- c_crud: success
+  else identifierExists == "T"
+      app_client <-- c_crud: IdentifierNotUnique
+  end
+  @enduml
+
+Handling document update operations
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+An overview of the process needed to update an object using a GUID.
+
+.. figure:: images/guid_update.png
+
+   Figure 4. Basic handling for string identifiers (GUIDs) as mapped to
+   docids (LocalIDs) to update an object.
+
+..
+  @startuml images/guid_update.png
+  !include plantuml.conf
+  actor User
+  participant "Client" as app_client << Application >>
+  participant "CRUD API" as c_crud << MetacatRestServlet >>
+  participant "Identifier Manager" as ident_man << IdentifierManager >>
+  participant "Handler" as handler << MetacatHandler >>
+  User -> app_client
+  app_client -> c_crud: update(token, GUID, object, obsoletedGUID, sysmeta)
+
+  c_crud -> ident_man: identifierExists(obsoletedGUID)
+  c_crud <-- ident_man: T or F 
+  alt identifierExists == "T"
+
+      c_crud -> ident_man: identifierExists(GUID)
+      c_crud <-- ident_man: T or F 
+      alt identifierExists == "F"
+          c_crud -> ident_man: mapToLocalId(GUID, obsoletedGUID)
+          c_crud <-- ident_man: localID
+          c_crud -> handler: handleUpdateAction(localID)
+          c_crud <-- handler: success
+          note right of c_crud
+            "Also need to address how to handle the sysmeta information wrt update methods"
+          end note
+          app_client <-- c_crud: success
+      else identifierExists == "T"
+          app_client <-- c_crud: IdentifierNotUnique
+      end
+  else identifierExists == "F"
+      app_client <-- c_crud: NotFound
+  end
+  @enduml
+
+Handling document delete operations
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+An overview of the process needed to delete an object using a GUID.
+
+.. figure:: images/guid_delete.png
+
+   Figure 5. Basic handling for string identifiers (GUIDs) as mapped to
+   docids (LocalIDs) to delete an object.
+
+..
+  @startuml images/guid_delete.png
+  !include plantuml.conf
+  actor User
+  participant "Client" as app_client << Application >>
+  participant "CRUD API" as c_crud << MetacatRestServlet >>
+  participant "Identifier Manager" as ident_man << IdentifierManager >>
+  participant "Handler" as handler << MetacatHandler >>
+  User -> app_client
+  app_client -> c_crud: delete(token, GUID)
+  c_crud -> ident_man: identifierExists(GUID)
+  c_crud <-- ident_man: T or F 
+  alt identifierExists == "T"
+      c_crud -> ident_man: mapToLocalId(GUID)
+      c_crud <-- ident_man: localID
+      c_crud -> handler: handleDeleteAction(localID)
+      c_crud <-- handler: success
+      app_client <-- c_crud: success
+  else identifierExists == "F"
+      app_client <-- c_crud: NotFound
+  end
+  @enduml
+
+..
+  This block defines the interaction diagram referenced above.
+  startuml images/01_interaction.png
+    !include plantuml.conf
+    actor User
+    participant "Client" as app_client << Application >>
+    User -> app_client
+
+    participant "CRUD API" as c_crud << Coordinating Node >>
+    activate c_crud
+    app_client -> c_crud: resolve(GUID, auth_token)
+    participant "Authorization API" as c_authorize << Coordinating Node >>
+    c_crud -> c_authorize: isAuth(auth_token, GUID)
+    participant "Verify API" as c_ver << Coordinating Node >>
+    c_authorize -> c_ver: isValidToken (token)
+    c_authorize <-- c_ver: T or F
+    c_crud <-- c_authorize: T or F
+    app_client <-- c_crud: handle_list
+    deactivate c_crud
+
+    participant "CRUD API" as m_crud << Member Node >>
+    activate m_crud
+    app_client -> m_crud: get(auth_token, handle)
+    participant "Server Authentication API" as m_authenticate << Member Node >>
+    m_crud -> m_authenticate: isAuth(auth_token, GUID)
+    m_crud <-- m_authenticate: T or F
+    m_crud -> m_crud: log(get, UserID, GUID)
+    app_client <-- m_crud: object or unauth or doesNotExist
+    deactivate m_crud
+  enduml

Property changes on: docs/user/metacat/source/identifiers.rst
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Index: docs/user/metacat/source/plantuml.conf
===================================================================
--- docs/user/metacat/source/plantuml.conf	(nonexistent)
+++ docs/user/metacat/source/plantuml.conf	(revision 6871)
@@ -0,0 +1,57 @@
+skinparam activityFontColor black
+skinparam activityFontSize 10
+skinparam activityFontName arial
+skinparam activityArrowFontColor black
+skinparam activityArrowFontSize 10
+skinparam activityArrowFontName arial
+skinparam classArrowFontColor black
+skinparam classArrowFontSize 10
+skinparam classArrowFontName arial
+skinparam classAttributeFontColor black
+skinparam classAttributeFontSize 10
+skinparam classAttributeFontName arial
+skinparam classFontColor black
+skinparam classFontSize 10
+skinparam classFontName arial
+skinparam componentFontColor black
+skinparam componentFontSize 10
+skinparam componentFontName arial
+skinparam componentArrowFontColor black
+skinparam componentArrowFontSize 10
+skinparam componentArrowFontName arial
+skinparam noteFontColor black
+skinparam noteFontSize 10
+skinparam noteFontName arial
+skinparam packageFontColor black
+skinparam packageFontSize 10
+skinparam packageFontName arial
+skinparam sequenceActorFontColor black
+skinparam sequenceActorFontSize 10
+skinparam sequenceActorFontName arial
+skinparam sequenceArrowFontColor black
+skinparam sequenceArrowFontSize 10
+skinparam sequenceArrowFontName arial
+skinparam sequenceGroupingFontColor black
+skinparam sequenceGroupingFontSize 10
+skinparam sequenceGroupingFontName arial
+skinparam sequenceGroupingHeaderFontColor black
+skinparam sequenceGroupingHeaderFontSize 10
+skinparam sequenceGroupingHeaderFontName arial
+skinparam sequenceParticipantFontColor black
+skinparam sequenceParticipantFontSize 10
+skinparam sequenceParticipantFontName arial
+skinparam sequenceTitleFontColor black
+skinparam sequenceTitleFontSize 10
+skinparam sequenceTitleFontName arial
+skinparam titleFontColor black
+skinparam titleFontSize 10
+skinparam titleFontName arial
+skinparam usecaseFontColor black
+skinparam usecaseFontSize 10
+skinparam usecaseFontName arial
+skinparam usecaseActorFontColor black
+skinparam usecaseActorFontSize 10
+skinparam usecaseActorFontName arial
+skinparam usecaseArrowFontColor black
+skinparam usecaseArrowFontSize 10
+skinparam usecaseArrowFontName arial
Index: docs/user/metacat/source/images/screenshots/image029.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image029.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/identifiers.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/user/metacat/source/images/identifiers.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+image/png
\ No newline at end of property
Index: docs/user/metacat/source/geoserver.rst
===================================================================
--- docs/user/metacat/source/geoserver.rst	(nonexistent)
+++ docs/user/metacat/source/geoserver.rst	(revision 6871)
@@ -0,0 +1,249 @@
+Metacat's Use of Geoserver
+==========================
+
+GeoServer 2.0.2, an open source Web Mapping Service (WMS) written in Java, is 
+bundled with Metacat and can be used to render spatial data as web-deliverable 
+maps. Metacat uses OpenLayers (http://openlayers.org/) to provide a web-based 
+user interface for interacting with the generated maps. You can use any 
+WMS-compatible client (e.g., ArcGIS, QGIS, JUMP, UDig, OpenLayers, Mapbender, 
+Map Builder). 
+
+IMPORTANT: Regardless of whether you plan on using the mapping functionality 
+you should, for security purposes, configure GeoServer so that it doesn't 
+use the default password. For instructions, please see 
+Geoserver Configuration.
+
+.. figure:: images/screenshots/image051.jpg
+   :align: center
+   
+   A map generated by Metacat's GeoServer. Points and "bounding boxes" 
+   represent the geographic extent of datasets stored in the KNB Metacat repository.
+
+GeoServer supports a wide variety of vector GIS data sources, which can be 
+styled using Styled Layer Descriptors (SLDs) and output as images (the default) 
+or raw vector data (GML or KML).
+
+Currently, GeoServer can be used with the following limitations:
+
+* GeoServer will only map documents that are publicly available. This is 
+  because the mapping server's support for permissions control is not as 
+  fine-grained as Metacat's.
+
+Metacat developers plan to continue extending and improving Metacat's mapping 
+capabilities. If you are interested in contributing to those efforts, or if 
+you are interested in learning more about the architecture and future plans for 
+the mapping software, please contact the Metacat  development 
+team  (metacat-dev@ecoinformatics.org).
+
+Installing and Configuring
+--------------------------
+The GeoServer webapp should be installed as a sibling of Metacat. If you do 
+NOT wish to run GeoServer, the deployment can be skipped, but any skins that 
+use maps will not render correctly. (NOTE: Geoserver recommends using a PermGen 
+space setting of at least 128MB.). 
+
+Metacat comes with a pre-configured data directory to be used by GeoServer. 
+This includes a world-countries base layer and a default configuration that 
+is already aware of Metacat's spatial cache. The Metacat configuration interface 
+is used to configure GeoServer to use this shared data directory. To further 
+configure GeoServer, use the Web-based configuration utility, 
+which is available at: http://your.server.com/context/geoserver.jsp 
+(e.g., http://knb.ecoinformatics.org/knb/geoserver.jsp). 
+
+Common configuration tasks include:
+
+* Adding a Map to a Web Page or Skin
+* Configuring the Size and Initial Extent of the Map
+* Configuring the Layout of the HTML Mapping Interface
+* Configuring the "Select Location Drop-down Menu
+* Configuring the Visual Portrayal of Geospatial Data (e.g., symbology and color)
+* Adding Other Spatial Datasets to the Web Map
+
+.. figure:: images/screenshots/image053.png
+   :align: center
+   
+   GeoServer's Web-based administrative interface.
+
+Note: Some configurations may need to be made to the XML files as well.
+
+OpenLayers, which Metacat uses as the front-end for GeoServer's WMS service, 
+provides interface components or "widgets" (e.g., the map, a box zoom, layer 
+list, "Select Location" drop-down menu, scale bar, lat/long coordinates, and 
+a query form) that make it easy to deploy web-based mapping applications with 
+minimal coding.
+
+OpenLayers has three main configuration files used to customize the map interface.
+Default configurations are in::
+
+  $METACAT/lib/style/common/spatial/
+  
++----------------------------------+---------------+-------------------------------------------------------------+
+| Document                         | Location      | Description                                                 |
++==================================+===============+=============================================================+
+| The named location file          | locations.jsp | The list of pre-defined locations (name and lat/lon bounds) |
++----------------------------------+---------------+-------------------------------------------------------------+
+| Main map rendering functions     | maps.js       | Defines the map, widgets and their behavior                 |
++----------------------------------+---------------+-------------------------------------------------------------+
+| The rendered map and page layout | map.jsp       | Loads the map and controls the HTML layout of the widgets.  |
++----------------------------------+---------------+-------------------------------------------------------------+
+
+NOTE: By default, the first time Metacat is restarted, it generates a 
+"spatial cache" containing geographic information about documents in its 
+repository. This default behavior is specified in lib/metacat.properties, 
+where the regenerateCacheOnRestart parameter is set to true. The information 
+in the spatial cache is stored in a GIS-compatible format (the ESRI Shapefile) 
+and consists of the document name and its geographic coverage. When documents 
+are inserted, deleted, and updated in the Metacat repository, Metacat 
+automatically syncs the spatial cache to reflect the changes. Because 
+generating the cache can take a considerable amount of time (several minutes 
+in the case of a few thousand documents), Metacat resets the 
+regenerateCacheOnRestart property to false after the spatial cache has been 
+generated. Note that if you upgrade or reinstall Metacat, the spatial cache 
+will be regenerated again.
+
+Adding a Map to a Web Page or Skin
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+To add a map to a Web page, simply include the map interface using an iframe:: 
+
+  <iframe scrolling="no" frameborder="0" width="780" height="420" 
+          src="/knb/style/common/spatial/map.jsp">
+  </iframe>
+
+The map URL, ``/knb/style/common/spatial/map.jsp``, is 
+the default map interface. If you plan to customize the map interface, copy
+the map.jsp file into your skin's directory (either the default or 
+customized skin directory). 
+
+::
+
+  cp -r style/common/spatial/map.jsp /style/skins/<myskin>/spatial
+
+You can access the customized map with the URL: ``/knb/style/skins/<myskin>/spatial/map.jsp`` 
+
+Configuring the Size and Initial Extent of the Map
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Before you configure the size and initial extent of the map, make sure that you 
+have copied the map layout page into your skin's directory (See 
+:doc:`configuration` for directions). Once the file has been copied, you can 
+modify the map's initial extent in: ``${skin.dir}/spatial/map.jsp``.
+
+To change the map’s initial extent, edit the bounding box. The default is to 
+show the entire globe. The ``initMap()`` function should also be given the skin 
+name so that spatial search results can be correctly styled.
+
+::
+
+  <script type="text/javascript">
+      function init() {
+         var bounds = new OpenLayers.Bounds(-180,-90,180,90); 
+         // make the map for this skin 
+         initMap("<%=GEOSERVER_URL%>", "<%=SERVLET_URL%>", "default", bounds);
+      }
+  </script>
+
+The size (height/width) of the map can be controlled by the ``#map`` CSS entry 
+included in the ``map.jsp`` page.
+
+Configuring the Layout of the HTML Mapping Interface
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The size and initial extent of the map can be edited in : ${skin.dir}/spatial/map.jsp.
+
+The map.jsp is a simple container that can be included in other more complex 
+pages if desired. It contains the map, widgets and location dropdown list.
+
+Configuring the "Select Location" Drop-down Menu
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The locations that appear in the "Select Location" drop-down menu are specified 
+in the ``locations.jsp`` file. The locations.jsp can be copied from the common 
+spatial template into your skin directory. Each location is defined as an 
+HTML ``<option/>`` tag. Edit the value and label to edit or add new locations.
+
+::
+
+  <option value=“-149.725,68.475 -149.3254,68.725”> Arctic LTER (ARC)</option>
+
+Configuring the Visual Portrayal of Geospatial Data (e.g., symbology and color)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Geospatial data sets are styled through the use of Styled Layer Descriptors 
+(SLD). The default SLDs used for the data points and data bounding boxes are in
+``/lib/spatial/geoserver/data/styles/`` and are named data_points_style.sld and 
+data_bounds_style.sld, respectively. 
+
+You can find a more detailed tutorial on using SLD with GeoServer in the GeoServer documentation::
+
+  http://docs.geoserver.org/
+
+Adding Other Spatial Datasets to the Web Map
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+If you have vector GIS data sets, such as weather or topographical information, 
+on your server that you'd like to include in the interactive map, you must 
+first register the data set with GeoServer. After the data set has been 
+registered, you can add the layer to the map. You can also add spatial layers 
+that have been made publically available through WMS (There are hundreds of 
+spatial data sets available. Check out wms-sites.com for good catalog). 
+Instructions for adding publically available layers are included at the end 
+of this section. 
+
+To register the data set and add it to the map:
+
+1. Point your browser to ``http://your.server/geoserver``, log in to GeoServer, 
+   and navigate to the "Data Stores" configuration page under ``Data > Stores``. 
+2. Create a new vector data source from a Shapefile in the “metacat” workspace.
+
+.. figure:: images/screenshots/image055.png
+   :align: center
+   
+   Creating a new shapefile using GeoServers web-based administrative interface.
+
+3. The Description, if specified, is mostly used internally to provide other 
+   administrators with information about the DataStore. Click Submit.
+4. Navigate to the "Layers" configuration page under Data > Layers. 
+   Add a new Layer from your new data source.
+5. You should also define a spatial reference system (SRS) number for the new 
+   layer. Most lat/long data is "4326". If your data is in another projection, 
+   determine its spatial reference system using the help links provided.
+
+.. figure:: images/screenshots/image057.png
+   :align: center
+   
+   GeoServer's FeatureType configuration. The SRS settings discussed in step 5 are highlighted.
+
+6. Style the layer using a style from the drop-down menu on the Publishing tab, 
+   or create a new SLD to create a new style object and corresponding SLD 
+   (this option provides more control over the style). 
+7. Try out the styled data set as a WMS layer using a the Layer Preview.
+
+.. figure:: images/screenshots/image058.png
+   :align: center
+   
+   GeoServer's Layer Preview allows you to see an OpenLayer rendering of the new layer.
+
+8. Copy the default ``map.js`` file that assembles the map in OpenLayers 
+   (``style/common/spatial/map.js``) to your skin’s spatial directory.
+9. Edit the init() method to include your new layer in the map – either as an 
+   overlay or as a base layer.
+10. Point your browser to the map interface. Your new layer should appear with 
+    the existing ones.
+
+Adding External Spatial Data Made Publically Available through WMS
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+There are hundreds of sources of spatial data made publically available 
+through WMS (check out http://wms-sites.com for a good catalog). To add these 
+data sources to your map, add the layers in your skin’s ``spatial/map.js`` file.
+
+Spatial Queries
+---------------
+To find out which documents in the Metacat repository lie in a specified 
+geographic region, query the spatial cache using Metacat's spatial_query action. 
+Metacat can perform any query supported by the WFS/WMS standards.
+
+An example of a spatial query string is::
+
+  http://localhost/knb/metacat?action=spatial_query&xmin=-117.5&xmax=-64&ymin=3&ymax=46&skin=default
+
+Where ``xmin``, ``xmax``, ``ymin`` and ``ymax`` represent the western, eastern, 
+southern and northern bounding coordinates (the "bounding box"), respectively. 
+The spatial query action returns all documents that overlap or that are 
+contained inside the specified spatial coordinates. The result set is returned 
+as HTML using the style of the specified skin (in this example, default).
+
Index: docs/user/metacat/source/configuration.rst
===================================================================
--- docs/user/metacat/source/configuration.rst	(nonexistent)
+++ docs/user/metacat/source/configuration.rst	(revision 6871)
@@ -0,0 +1,430 @@
+Configuring Metacat
+===================
+
+.. contents::
+  
+When Metacat (Tomcat) is started, the Metacat servlet checks to see if it is 
+configured. If not, Metacat will automatically send you to the configuration 
+pages. 
+
+If the installation is new, or the previous version is before 1.9.0, pay close 
+attention to the configuration values. If you have upgraded Metacat, and the 
+previous version is 1.9.0 or later, Metacat will pull existing configuration 
+settings from a backup location. You should still verify that the values are 
+correct.
+
+To access your Metacat, open a Web browser and type::
+
+  http://<your_context_url>
+
+Where <your_context_url> is the URL of the server hosting the Metacat followed 
+by the name of the WAR file (i.e., the application context) that you installed.
+For instance, the context URL for the KNB Metacat is: http://knb.ecoinformatics.org/knb
+
+You can always open the configuration screen from within Metacat by typing::
+
+  http://<your_context_url>/admin
+
+Initial Configuration
+---------------------
+Before you can log in to the Metacat and configure it, you are required to 
+confirm Metacat's back-up location and authentication configuration (if not 
+already configured). Metacat will automatically attempt to locate an existing 
+back-up directory, but you may need to correct the value or specify a directory 
+(if the installation is new, or if Metacat was unable to determine the location 
+of an existing back-up directory). The authentication configuration is required 
+for logging in to the Metacat and for defining administrative accounts. 
+Instructions for changing the authentication configuration without 
+authentication are included at the end of this section.
+
+Back-up Configuration
+~~~~~~~~~~~~~~~~~~~~~
+To preserve its configuration settings, Metacat backs up all configurations to 
+a directory outside the application directories. Because a new installation/upgrade 
+does not know where this external directory is, Metacat uses a discovery 
+algorithm to locate it. If Metacat cannot identify a backup directory, you will 
+see the Backup Directory Configuration screen.
+
+.. figure:: images/screenshots/image011.png
+   :align: center
+
+   Configuring the Backup Directory.
+   
+Authentication Configuration
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Whether you are installing or upgrading the Metacat servlet, you will 
+automatically be sent to the Authentication Configuration page. You can also 
+reach the Authentication Configuration page from a running Metacat by typing::
+  
+  http://<your_context_url>/admin
+
+Metacat uses LDAP as its primary authentication mechanism, but you can define 
+your own authentication mechanism by creating a Java class that implements 
+``AuthInterface``. Required configuration values are: Authentication Class, 
+Authentication URL, Authentication Secure URL, and Metacat Administrators. 
+Make sure that your user account information is entered into the Metacat 
+Administrators field (e.g., uid=daigle,o=nceas,dc=ecoinformatics,dc=org). You 
+will not be allowed to continue with configuration if this is missing. 
+
+NOTE: To create an LDAP account on the KNB LDAP server (specified as the 
+default LDAP server), go to http://knb.ecoinformatics.org and select the 
+"create a new user account" link.
+
+If you make changes to the authentication settings, you must restart Tomcat to 
+put them into effect.
+
+.. figure:: images/screenshots/image009.png
+   :align: center
+
+   Configuring Authentication Values.
+
+Changing Authentication Configuration without Authentication
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+If you need to change or add authentication information and cannot authenticate 
+using the existing authentication settings (e.g., the existing Metacat 
+administrator is no longer available or you forgot the administrator password), 
+you must edit the Metacat configuration file by hand. This ensures that only a 
+person who has access to the Metacat server and the configuration files on that 
+server will be able to change the administrator accounts.
+
+To edit the authentication configuration file:
+
+1. Stop Tomcat and edit the Metacat properties (``metacat.properties``) file in the
+   Metacat context directory inside the Tomcat application directory. The 
+   Metacat context directory is the name of the application (usually knb):
+
+  ::
+  
+    <tomcat_app_dir>/<context_dir>/WEB-INF/metacat.properties
+
+2. Change the following properties appropriately:
+
+  ::
+  
+    auth.administrators - a colon separated list of administrators 
+    auth.url - the authentication server URL 
+    auth.surl - the authentication secure server URL
+
+3. Save the ``metacat.properties`` file and start Tomcat.
+
+
+Logging in to Metacat
+---------------------
+In order to configure Metacat, you must log in with an administrative account 
+that has been configured in the Authentication Configuration settings. If you 
+did not set up the correct administrative user there, you must change the 
+authentication configuration by hand before you can log in.
+
+In the log-in screen enter your user name and password and click 
+the "Login" button.
+
+.. figure:: images/screenshots/image015.png
+   :align: center
+
+   Logging into Metacat.
+   
+Required Configuration
+----------------------
+All required Metacat settings can be accessed from the Metacat Configuration 
+utility, which becomes available after the initial configurations 
+have been specified and an authorized administrator logs in. 
+
+.. figure:: images/screenshots/image017.png
+   :align: center
+
+   Metacat configuration menu, showing each configuration section.  Once all
+   sections are marked as green ``configured``, metacat can be accessed.
+
+The configuration settings are grouped into five sections (Metacat Global 
+Properties, Authentication Configuraion, Skins Specific Properties, Database 
+Installation/Upgrade, Geoserver Configuration), each of which is listed with its 
+current status (see table).
+
+==============  =============================================================
+Status          Description
+==============  =============================================================
+[unconfigured]  The section has yet to be configured 
+[configured]    The section has been configured. 
+[bypassed]      Used only for the Geoserver configurations. The administrator 
+                can choose not to configure the Geoserver user/password.
+==============  =============================================================
+ 
+To the right of each configuration section is one of the following options: 
+Configure Now, Reconfigure Now, Configure Global Properties First, or 
+Version:X.X.X. If the option is linked (e.g., Configure Now or Reconfigure Now), 
+you can select the link to open the associated configuration settings and add 
+or edit them, respectively. If the option is not linked (e.g., Configure Global 
+Properties First), the settings cannot be specified until the global properties 
+are set. Once the global properties are configured, the option to configure this 
+section becomes available. The Version:X.X.X option is used only for the 
+Database Installation/Upgrade section. If the database schema version detected 
+by Metacat matches the application version (eg, 1.9.0), then no further database 
+configuration is required.
+
+All settings must be in a configured or bypassed state in order to run Metacat. 
+For new installations or upgrades, click the "go to metacat" link that appears 
+after configuration is complete to go directly to Metacat. Note that Metacat 
+indexes at start-up time, so the initial start-up may take some time depending 
+on the amount of data in your database. If you are reconfiguring a running 
+version of Metacat, you must restart the Tomcat server for the changes to 
+take effect.
+
+.. Note::
+   
+   Need to update this next figure!
+   
+.. figure:: images/screenshots/image019.png
+   :align: center
+
+   The Metacat settings as they appear after having been configured.
+   
+Global Properties (server, ports, etc)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The Metacat configurations included under Global Properties represent the bulk 
+of the settings required to run Metacat. Click a blue question-mark 
+icon beside any setting for detailed instructions. More information about each 
+property is also included in the :doc:`metacat-properties`.
+
+.. figure:: images/screenshots/image021.png
+   :align: center
+
+   The Metacat Global Properties editing screen.
+   
+When you save global properties, Metacat also saves a back-up file that is 
+located in ``/var/metacat/.metacat`` (on Linux) or 
+``C:\Program Files\metacat\.metacat`` (on Windows). When you update Metacat, 
+the system automatically locates the back-up file so you do not have to re-enter 
+the configuration settings.
+
+The first time you install Metacat, the system attempts to automatically detect 
+the values for a number of settings (see table). It is important to ensure that 
+these values are correct.
+
+================  ============================================================
+Property          Description
+================  ============================================================
+Metacat Context   The name of the deployed Metacat WAR file (minus the .war 
+                  extension). E.g., "knb"
+Server Name       The DNS name of the server hosting Metacat, not including 
+                  port numbers or the "http://" header. 
+HTTP Port         The non-secure port where Metacat will be available.
+HTTP SSL Port     The secure port where Metacat will be available. 
+Deploy Location   The directory where the application is deployed. 
+================  ============================================================
+
+Authentication Configuration
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Because you must specify the Authentication settings before you can access the 
+main configuration page, the settings will always be configured when you view 
+them in the admin interface. If you wish to change the authentication settings, 
+you must restart Metacat to put the changes into effect. For more information 
+about the Authentication configurations, please see Initial Configurations.
+
+Skins Configuration
+~~~~~~~~~~~~~~~~~~~
+Customizing the look and feel of Metacat's Web interface is done via skins, 
+which are applied in the Skins Configuration section. If you have installed 
+the optional Registry, which provides a Web interface for creating, editing, 
+and submitting content to the Metacat, you can also choose which form fields 
+appear in that interface and which are required. Note that if you do not have 
+a custom skin AND you are not using the Registry, you can simply save the 
+default configuration.
+
+If your Metacat has a customized skin, it will appear as a choice in the 
+Skins Configuration settings (Figure 3.7). You can creat your own skins as 
+well. For more information about creating skins, please see the section called
+Creating a Custom Skin.
+
+.. figure:: images/screenshots/image023.png
+   :align: center
+
+   Configuring Metacat skins.
+   
+Select the checkbox next to your customized skin and click the 
+``Make <skin_name> default`` radio button. If you do not have a custom skin, 
+select the ``default`` skin. Once you have selected a skin, Metacat will open 
+a list of options that apply to the Registry interface.
+
+.. figure:: images/screenshots/image025.png
+   :align: center
+
+   Configuring Metacat skins.
+
+Select the lists and modules that you would like to appear in the Registry 
+form-interface by checking the box beside each. When you save the configuration, 
+the customized interface will appear to site visitors.
+
+Database Configuration
+~~~~~~~~~~~~~~~~~~~~~~
+Because the Database Configuration is dependent on values specified in the 
+Global Configuration section, the link to these settings does not become active 
+until after the global settings have been saved. Once the global settings have 
+been saved, Metacat automatically detects the database schema version and 
+upgrades it if necessary (and with your permission). 
+
+* New Installation
+* Upgrade
+
+New Installation
+................
+If Metacat determines that your database is new, the Database Install/Upgrade 
+utility lists the SQL scripts that will run in order to create a database 
+schema for the new version of Metacat.
+
+.. figure:: images/screenshots/image027.png
+   :align: center
+
+   Database installation creates tables needed for Metacat.
+   
+If the database is not new, or if you have any questions about whether it is 
+new or not, choose Cancel and contact support at knb-help@nceas.ucsb.edu. 
+
+When you choose Continue, Metacat runs the listed scripts and creates the 
+database schema.
+
+Upgrade
+.......
+If Metacat identifies a previous database schema, the Database Install/Upgrade 
+utility notes the existing version and lists the SQL scripts that will run in 
+order to update the schema for the new version of Metacat.
+
+If the detected schema version is incorrect, or if you have any questions about 
+whether it is correct or not, click the Cancel button and contact support at 
+knb-help@nceas.ucsb.edu.When you choose to continue, Metacat runs the listed 
+scripts and updates the database schema.
+
+.. figure:: images/screenshots/image029.png
+   :align: center
+
+   Upgrading an existing database.
+
+Geoserver Configuration (Highly Recommended)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.. sidebar:: Manual Geoserver Update
+
+  Alternatively, you can change the Geoserver username and password manually by 
+  directly logging in to the Geoserver. To configure the credentials manually: 
+
+  1. Go to the Geoserver admin page: http://<your_context_url>/geoserver/ 
+  2. Log in using the default username and password ( admin / geoserver ) 
+  3. Navigate to the Password Change Page.  Enter a new user and password and click Submit. 
+  4. Click Apply then Save to save your new password. 
+  
+Metacat comes bundled with a Web Mapping Service called Geoserver, which 
+converts spatial data into Web-deliverable map images. Geoserver installs with 
+a default administrative username and password. *We highly recommend that you 
+change the default credentials so that only local administrators can make 
+changes to your Geoserver.* For more information about Geoserver, 
+see :doc:`geoserver`.
+
+When you choose the Geoserver Configuration link from the main configuration 
+screen, Metacat will prompt you for a few important details about your Geoserver 
+installation. The data directory and context settings allow Geoserver and 
+Metacat to share the same spatial data store and render maps within Metacat skins. 
+The security configuration prompts for a new admin password. After you enter 
+the new settings, Metacat writes the information to the Geoserver deployment.
+
+The default settings are typically appropriate for most Metacat deployments, 
+but if you wish to skip the Geoserver configuration, click the Bypass button. 
+Geoserver (if deployed) will remain with a default configuration and the main 
+Metacat configuration screen will display the "bypassed" status beside the 
+Geoserver settings. You will be able to run Metacat, but maps will not be 
+rendered.
+
+.. figure:: images/screenshots/image031.png
+   :align: center
+
+   Configuring Geoserver.
+
+Additional Configuration
+------------------------
+The most dynamic Metacat properties are managed and modified with the 
+form-based Metacat Configuration utility. These configuration properties can 
+also be accessed directly (along with additional static properties) via 
+Metacat's property files: ``metacat.properties`` (which contains global 
+properties, e.g., authorization and database values) and 
+``<SKIN_NAME>.properties`` (which contains skin-specific properties). Each of 
+these property files is discussed in more depth in this section.
+
+The ``metacat.properties`` file
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Metacat's ``metacat.properties`` file contains all of Metacat's global 
+properties, both the dynamic properties, which are managed with the 
+Configuration utility, as well as the more static properties, which can only 
+be modified manually in this file. The ``metacat.properties`` file also contains 
+optional properties that are only relevant when optional Metacat features 
+(such as the harvester or replication) are enabled. The `
+`metacat.properties file`` is found here::
+
+  <CONTEXT_DIR>/WEB_INF/metacat.properties
+
+Where ``<CONTEXT_DIR>`` is the directory in which the Metacat application code 
+lives (e.g., ``/var/lib/tomcat6/webapps/knb``). The path is a combination 
+of the Web application directory (e.g., ``/var/lib/tomcat6/webapps/``) and 
+the Metacat context directory (e.g., ``knb``). Both values depend upon how your 
+system was set up during installation.
+
+For information about each property and default or example settings, please 
+see the :doc:`metacat-properties`. Properties that can only be edited manually 
+in the metacat.properties file are highlighted in the appendix.
+
+<SKIN_NAME>.properties
+~~~~~~~~~~~~~~~~~~~~~~
+The ``<SKIN_NAME>.properties`` file contains skin-specific properties 
+(e.g., template information). For each skin, the skin-specific properties are 
+found here::
+
+  <CONTEXT_DIR>/style/skins/<SKIN_NAME>/<SKIN_NAME>.properties
+
+Where ``<CONTEXT_DIR>`` is the directory in which the Metacat application code 
+lives (described above) and ``<SKIN_NAME>`` is the name of the skin 
+(e.g., ``default`` or ``nceas``).
+
+Creating a custom skin
+~~~~~~~~~~~~~~~~~~~~~~
+Skins are used in Metacat to customize the appearance of the search and display
+web interface that is presented by Metacat.  Skins can be used to make a Metacat
+instance exactly integrate into an existing web site, and are fully customizable.
+
+To create and customize your own Metacat skin, you must first create a skin 
+directory. This is most easily accomplished by copying one of the existing skin 
+directories. Step-by-step directions for creating and installing a custom skin 
+are included below:
+
+1. Copy an exisiting skin directory. We recommend using the "default" directory.
+
+  ::
+  
+    sudo cp -r <CONTEXT_DIR>/style/skins/default/ <CONTEXT_DIR>/style/skins/[yourSkin]/
+
+  Where ``<CONTEXT_DIR>`` is the directory in which the Metacat application 
+  code lives  and ``[yourSkin]`` is the name you wish to apply to your skin.
+
+2. In ``[yourSkin]`` directory, change all files named ``default.xxx`` to 
+   ``yourSkin.xxx``. The following files should be changed:
+
+  ::
+  
+    default.css
+    default.js
+    default.properties
+    default.properties.metadata.xml
+    default.xml
+
+3. In the metacat.properties file(``<CONTEXT_DIR>/WEB_INF/metacat.properties``), 
+   add ``[yourSkin]`` to the value of the skin.names property.
+
+4. Restart Tomcat. Log in as the user that runs your Tomcat server (often "tomcat") and type:
+
+  ::
+  
+    /etc/init.d/tomcat6 restart
+
+Navigate to Metacat's Configuration utility  and select the Configure Skins 
+option. Your custom skin should appear as a choice in the skins list. Change 
+the layout and style by modifying the header, footer, css, and other files in 
+your new skin directory.
+
+It is important to note that all customized skins will be overwritten when 
+Metacat is reinstalled or upgraded. Please remember to back up your skins before
+reinstalling or upgrading Metacat.
Index: docs/user/metacat/source/oaipmh.rst
===================================================================
--- docs/user/metacat/source/oaipmh.rst	(nonexistent)
+++ docs/user/metacat/source/oaipmh.rst	(revision 6871)
@@ -0,0 +1,5 @@
+OAI Protocol for Metadata Harvesting
+====================================
+
+Chapter to be written.
+
Index: docs/user/metacat/source/event-logging.rst
===================================================================
--- docs/user/metacat/source/event-logging.rst	(nonexistent)
+++ docs/user/metacat/source/event-logging.rst	(revision 6871)
@@ -0,0 +1,88 @@
+Event Logging
+=============
+
+Metacat keeps an internal log of events (such as insertions, updates, deletes, 
+and reads) that can be accessed with the getlog action. Using the getlog action, 
+event reports can be output from Metacat in XML format, and/or customized to 
+include only certain events: events from a particular IP address, user, event 
+type, or that occurred after a specified start date or before an end date. 
+
+The following URL is used to return the basic log—an XML-formatted log of all 
+events since the log was initiated::
+
+  http://some.metacat.host/context/metacat?action=getlog 
+
+Note that you must be logged in to Metacat using the HTTP interface or you 
+will get an error message. For more information about logging in, please see 
+Logging In with the HTTP Interface.
+
+::
+
+  <!-- Example of XML Log -->
+  <?xml version="1.0"?>
+  <log>
+  <logEntry><entryid>44</entryid><ipAddress>34.237.20.142</ipAddress><principal>uid=jones,
+  o=NCEAS,dc=ecoinformatics,dc=org</principal><docid>esa.2.1</docid><event>insert</event>
+  <dateLogged>2004-09-08 19:08:18.16</dateLogged></logEntry>
+  <logEntry><entryid>47</entryid><ipAddress>34.237.20.142</ipAddress><principal>uid=jones,o=NCEAS,
+  dc=ecoinformatics,dc=org</principal><docid>esa.3.1</docid><event>insert</event><dateLogged>2004-
+  09-14 19:50:40.61</dateLogged></logEntry>
+  </log>
+
+The basic log can be quite extensive. To subset the report, restrict the 
+matching events using parameters. Query parameters can be combined to further 
+restrict the report.
+
++-----------+-----------------------------------------------------+
+| Parameter | Description and Values                              |
++===========+=====================================================+
+| ipAddress | Restrict the report to this IP Address (repeatable) |
++-----------+-----------------------------------------------------+
+| principal | Restrict the report to this user (repeatable)       |
++-----------+-----------------------------------------------------+
+| docid     | Restrict the report to this docid (repeatable)      |
++-----------+-----------------------------------------------------+
+| event     | Restrict the report to this event type (repeatable) |
+|           | Values: insert, update, delete, read                |
++-----------+-----------------------------------------------------+
+| start     | Restrict the report to events after this date       |
+|           | Value: YYYY-MM-DD+hh:mm:ss                          |
++-----------+-----------------------------------------------------+
+| end       | Restrict the report to events before this date.     |
+|           | Value: YYYY-MM-DD+hh:mm:ss                          |
++-----------+-----------------------------------------------------+
+
+To view only the 'read' events, use a URL like::
+
+  http://some.metacat.host/context/metacat?action=getlog&event=read
+
+
+To view only the events for a particular IP address, use a URL like::
+
+  http://some.metacat.host/context/metacat?action=getlog&ipaddress=107.9.1.31
+
+
+To view only the events for a given user, use a URL like::
+
+  http://some.metacat.host/context/metacat?action=getlog&principal=uid=johndoe,o=NCEAS,dc=ecoinformatics,dc=org 
+
+
+To view only the events for a particular document, use a URL like::
+
+  http://some.metacat.host/context/metacat?action=getlog&docid=knb.5.1 
+
+
+To view only the events after a given date, use a URL like::
+
+  http://some.metacat.host/context/metacat?action=getlog&start=2004-09-15+12:00:00
+
+
+To view only the events before a given date, use a URL like::
+
+  http://some.metacat.host/context/metacat?action=getlog&end=2004-09-15+12:00:00
+
+
+To view the 'insert' events for September 2004 (i.e., to combine parameters) use a URL like::
+
+  http://some.metacat.host/context/metacat?action=getlog&event=insert&start=2004-09-01+12:00:00&end=2004-09-30+23:59:59 
+
Index: docs/user/metacat/source/themes/readable/layout.html
===================================================================
--- docs/user/metacat/source/themes/readable/layout.html	(nonexistent)
+++ docs/user/metacat/source/themes/readable/layout.html	(revision 6871)
@@ -0,0 +1,223 @@
+{%- block doctype -%}
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+{%- endblock %}
+{%- set reldelim1 = reldelim1 is not defined and ' &raquo;' or reldelim1 %}
+{%- set reldelim2 = reldelim2 is not defined and ' |' or reldelim2 %}
+
+{%- macro relbar() %}
+    <div class="related">
+      <h3>{{ _('Navigation') }}</h3>
+      <ul>
+
+        {%- if pagename != "search" %}
+        <li class="right">
+        <span id="searchbox" style="display: none; margin-right: 10px">
+            <form class="search" action="{{ pathto('search') }}" method="get">
+              <input type="text" name="q" size="18" />
+              <input type="submit" value="{{ _('Go') }}" />
+              <input type="hidden" name="check_keywords" value="yes" />
+              <input type="hidden" name="area" value="default" />
+            </form>
+        </span>
+        </li>
+        <script type="text/javascript">$('#searchbox').show(0);</script>
+        {%- endif %}
+
+
+        {%- for rellink in rellinks %}
+        <li class="right">
+          <a href="{{ pathto(rellink[0]) }}" title="{{ rellink[1]|striptags }}"
+             {{ accesskey(rellink[2]) }}>{{ rellink[3] }}</a>
+          {{ reldelim2 }}</li>
+        {%- endfor %}
+
+
+
+        {%- block rootrellink %}
+        <li><a href="{{ pathto(master_doc) }}">{{ shorttitle|e }}</a>{{ reldelim1 }}</li>
+        {%- endblock %}
+        {%- for parent in parents %}
+          <li><a href="{{ parent.link|e }}" {% if loop.last %}{{ accesskey("U") }}{% endif %}>{{ parent.title }}</a>{{ reldelim1 }}</li>
+        {%- endfor %}
+        {%- block relbaritems %} {% endblock %}
+      </ul>
+      
+    </div>
+{%- endmacro %}
+
+{%- macro sidebar() %}
+      {%- if not embedded %}{% if not theme_nosidebar|tobool %}
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+          {%- block sidebarlogo %}
+          {%- if logo %}
+            <p class="logo"><a href="{{ pathto(master_doc) }}">
+              <img class="logo" src="{{ pathto('_static/' + logo, 1) }}" alt="Logo"/>
+            </a></p>
+          {%- endif %}
+          {%- endblock %}
+          {%- block sidebartoc %}
+          {%- if display_toc %}
+            <h3><a href="{{ pathto(master_doc) }}">{{ _('Table Of Contents') }}</a></h3>
+            {{ toc }}
+          {%- endif %}
+          {%- endblock %}
+          {%- block sidebarrel %}
+          {%- if prev %}
+            <h4>{{ _('Previous topic') }}</h4>
+            <p class="topless"><a href="{{ prev.link|e }}"
+                                  title="{{ _('previous chapter') }}">{{ prev.title }}</a></p>
+          {%- endif %}
+          {%- if next %}
+            <h4>{{ _('Next topic') }}</h4>
+            <p class="topless"><a href="{{ next.link|e }}"
+                                  title="{{ _('next chapter') }}">{{ next.title }}</a></p>
+          {%- endif %}
+          {%- endblock %}
+          {%- block sidebarsourcelink %}
+          {%- if show_source and has_source and sourcename %}
+            <h3>{{ _('This Page') }}</h3>
+            <ul class="this-page-menu">
+              <li><a href="{{ pathto('_sources/' + sourcename, true)|e }}"
+                     rel="nofollow">{{ _('Show Source') }}</a></li>
+            </ul>
+          {%- endif %}
+          {%- endblock %}
+          {%- if customsidebar %}
+          {% include customsidebar %}
+          {%- endif %}
+          {%- block sidebarsearch %}
+          {%- if pagename != "search" %}
+          <div id="searchbox" style="display: none">
+            <h3>{{ _('Quick search') }}</h3>
+              <form class="search" action="{{ pathto('search') }}" method="get">
+                <input type="text" name="q" size="18" />
+                <input type="submit" value="{{ _('Go') }}" />
+                <input type="hidden" name="check_keywords" value="yes" />
+                <input type="hidden" name="area" value="default" />
+              </form>
+              <p class="searchtip" style="font-size: 90%">
+              {{ _('Enter search terms or a module, class or function name.') }}
+              </p>
+          </div>
+          <script type="text/javascript">$('#searchbox').show(0);</script>
+          {%- endif %}
+          {%- endblock %}
+        </div>
+      </div>
+      {%- endif %}{% endif %}
+{%- endmacro %}
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    {{ metatags }}
+    {%- if not embedded %}
+      {%- set titlesuffix = " &mdash; "|safe + docstitle|e %}
+    {%- else %}
+      {%- set titlesuffix = "" %}
+    {%- endif %}
+    <title>{{ title|striptags }}{{ titlesuffix }}</title>
+    <link rel="stylesheet" href="{{ pathto('_static/' + style, 1) }}" type="text/css" />
+    <link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" />
+    {%- if not embedded %}
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '{{ pathto("", 1) }}',
+        VERSION:     '{{ release|e }}',
+        COLLAPSE_MODINDEX: false,
+        FILE_SUFFIX: '{{ file_suffix }}',
+        HAS_SOURCE:  {{ has_source|lower }}
+      };
+    </script>
+    {%- for scriptfile in script_files %}
+    <script type="text/javascript" src="{{ pathto(scriptfile, 1) }}"></script>
+    {%- endfor %}
+    {%- if use_opensearch %}
+    <link rel="search" type="application/opensearchdescription+xml"
+          title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}"
+          href="{{ pathto('_static/opensearch.xml', 1) }}"/>
+    {%- endif %}
+    {%- if favicon %}
+    <link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/>
+    {%- endif %}
+    {%- endif %}
+{%- block linktags %}
+    {%- if hasdoc('about') %}
+    <link rel="author" title="{{ _('About these documents') }}" href="{{ pathto('about') }}" />
+    {%- endif %}
+    {%- if hasdoc('genindex') %}
+    <link rel="index" title="{{ _('Index') }}" href="{{ pathto('genindex') }}" />
+    {%- endif %}
+    {%- if hasdoc('search') %}
+    <link rel="search" title="{{ _('Search') }}" href="{{ pathto('search') }}" />
+    {%- endif %}
+    {%- if hasdoc('copyright') %}
+    <link rel="copyright" title="{{ _('Copyright') }}" href="{{ pathto('copyright') }}" />
+    {%- endif %}
+    <link rel="top" title="{{ docstitle|e }}" href="{{ pathto('index') }}" />
+    {%- if parents %}
+    <link rel="up" title="{{ parents[-1].title|striptags }}" href="{{ parents[-1].link|e }}" />
+    {%- endif %}
+    {%- if next %}
+    <link rel="next" title="{{ next.title|striptags }}" href="{{ next.link|e }}" />
+    {%- endif %}
+    {%- if prev %}
+    <link rel="prev" title="{{ prev.title|striptags }}" href="{{ prev.link|e }}" />
+    {%- endif %}
+{%- endblock %}
+{%- block extrahead %} {% endblock %}
+  </head>
+  <body>
+  <div class="banner">
+      <img class="logo" src="_static/metacat-logo.png" />
+      <img class="logo-right" src="_static/nceas-logo.png" />
+      <p class="title">Metacat: Metadata and Data Management Server</p>
+  </div>
+
+{%- block header %}{% endblock %}
+
+{%- block relbar1 %}{{ relbar() }}{% endblock %}
+
+{# Comment out the sidebar
+  {%- block sidebar1 %} {# possible location for sidebar  {% endblock %}
+#}
+    <div class="document">
+{%- block document %}
+      <div class="documentwrapper">
+      {%- if not embedded %}{% if not theme_nosidebar|tobool %}
+        <div class="bodywrapper">
+      {%- endif %}{% endif %}
+          <div class="body">
+            {% block body %} {% endblock %}
+          </div>
+      {%- if not embedded %}{% if not theme_nosidebar|tobool %}
+        </div>
+      {%- endif %}{% endif %}
+      </div>
+{%- endblock %}
+
+{# {%- block sidebar2 %}{{ sidebar() }}{% endblock %} #}
+      <div class="clearer"></div>
+    </div>
+
+{%- block relbar2 %}{{ relbar() }}{% endblock %}
+
+{%- block footer %}
+    <div class="footer">
+    {%- if hasdoc('copyright') %}
+      {% trans path=pathto('copyright'), copyright=copyright|e %}&copy; <a href="{{ path }}">Copyright</a> {{ copyright }}.{% endtrans %}
+    {%- else %}
+      {% trans copyright=copyright|e %}&copy; Copyright {{ copyright }}.{% endtrans %}
+    {%- endif %}
+    {%- if last_updated %}
+      {% trans last_updated=last_updated|e %}Last updated on {{ last_updated }}.{% endtrans %}
+    {%- endif %}
+    {%- if show_sphinx %}
+      {% trans sphinx_version=sphinx_version|e %}Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> {{ sphinx_version }}.{% endtrans %}
+    {%- endif %}
+    </div>
+{%- endblock %}
+  </body>
+</html>
Index: docs/user/metacat/source/conf.py
===================================================================
--- docs/user/metacat/source/conf.py	(nonexistent)
+++ docs/user/metacat/source/conf.py	(revision 6871)
@@ -0,0 +1,196 @@
+# -*- coding: utf-8 -*-
+#
+# Metacat documentation build configuration file, created by
+# sphinx-quickstart on Mon Mar  1 14:16:16 2010.
+#
+# This file is execfile()d with the current directory set to its containing dir.
+#
+# Note that not all possible configuration values are present in this
+# autogenerated file.
+#
+# All configuration values have a default; values that are commented out
+# serve to show the default.
+
+import sys, os
+
+# If extensions (or modules to document with autodoc) are in another directory,
+# add these directories to sys.path here. If the directory is relative to the
+# documentation root, use os.path.abspath to make it absolute, like shown here.
+#sys.path.append(os.path.abspath('.'))
+
+# -- General configuration -----------------------------------------------------
+
+# Add any Sphinx extension module names here, as strings. They can be extensions
+# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
+extensions = []
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ['_templates']
+
+# The suffix of source filenames.
+source_suffix = '.rst'
+
+# The encoding of source files.
+#source_encoding = 'utf-8'
+
+# The master toctree document.
+master_doc = 'index'
+
+# General information about the project.
+project = u'Metacat'
+copyright = u'2012, Regents of the University of California'
+
+# The version info for the project you're documenting, acts as replacement for
+# |version| and |release|, also used in various other places throughout the
+# built documents.
+#
+# The short X.Y version.
+version = '2.0'
+# The full version, including alpha/beta/rc tags.
+release = '2.0.0'
+
+# The language for content autogenerated by Sphinx. Refer to documentation
+# for a list of supported languages.
+#language = None
+
+# There are two options for replacing |today|: either, you set today to some
+# non-false value, then it is used:
+#today = ''
+# Else, today_fmt is used as the format for a strftime call.
+#today_fmt = '%B %d, %Y'
+
+# List of documents that shouldn't be included in the build.
+#unused_docs = []
+
+# List of directories, relative to source directory, that shouldn't be searched
+# for source files.
+exclude_trees = []
+
+# The reST default role (used for this markup: `text`) to use for all documents.
+#default_role = None
+
+# If true, '()' will be appended to :func: etc. cross-reference text.
+#add_function_parentheses = True
+
+# If true, the current module name will be prepended to all description
+# unit titles (such as .. function::).
+#add_module_names = True
+
+# If true, sectionauthor and moduleauthor directives will be shown in the
+# output. They are ignored by default.
+#show_authors = False
+
+# The name of the Pygments (syntax highlighting) style to use.
+pygments_style = 'sphinx'
+
+# A list of ignored prefixes for module index sorting.
+#modindex_common_prefix = []
+
+
+# -- Options for HTML output ---------------------------------------------------
+
+# The theme to use for HTML and HTML Help pages.  Major themes that come with
+# Sphinx are currently 'default' and 'sphinxdoc'.
+#html_theme = 'default'
+html_theme = 'readable'
+
+# Theme options are theme-specific and customize the look and feel of a theme
+# further.  For a list of options available for each theme, see the
+# documentation.
+#html_theme_options = {}
+
+# Add any paths that contain custom themes here, relative to this directory.
+html_theme_path = ['themes',]
+
+# The name for this set of Sphinx documents.  If None, it defaults to
+# "<project> v<release> documentation".
+#html_title = None
+
+# A shorter title for the navigation bar.  Default is the same as html_title.
+#html_short_title = None
+
+# The name of an image file (relative to this directory) to place at the top
+# of the sidebar.
+#html_logo = None
+
+# The name of an image file (within the static path) to use as favicon of the
+# docs.  This file should be a Windows icon file (.ico) being 16x16 or 32x32
+# pixels large.
+#html_favicon = None
+
+# Add any paths that contain custom static files (such as style sheets) here,
+# relative to this directory. They are copied after the builtin static files,
+# so a file named "default.css" will overwrite the builtin "default.css".
+html_static_path = ['_static']
+
+# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
+# using the given strftime format.
+#html_last_updated_fmt = '%b %d, %Y'
+
+# If true, SmartyPants will be used to convert quotes and dashes to
+# typographically correct entities.
+#html_use_smartypants = True
+
+# Custom sidebar templates, maps document names to template names.
+#html_sidebars = {}
+
+# Additional templates that should be rendered to pages, maps page names to
+# template names.
+#html_additional_pages = {}
+
+# If false, no module index is generated.
+html_use_modindex = False
+html_domain_indices = False
+
+# If false, no index is generated.
+#html_use_index = True
+
+# If true, the index is split into individual pages for each letter.
+#html_split_index = False
+
+# If true, links to the reST sources are added to the pages.
+#html_show_sourcelink = True
+
+# If true, an OpenSearch description file will be output, and all pages will
+# contain a <link> tag referring to it.  The value of this option must be the
+# base URL from which the finished HTML is served.
+#html_use_opensearch = ''
+
+# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
+#html_file_suffix = ''
+
+# Output file base name for HTML help builder.
+htmlhelp_basename = 'Metacatdoc'
+
+
+# -- Options for LaTeX output --------------------------------------------------
+
+# The paper size ('letter' or 'a4').
+#latex_paper_size = 'letter'
+
+# The font size ('10pt', '11pt' or '12pt').
+#latex_font_size = '10pt'
+
+# Grouping the document tree into LaTeX files. List of tuples
+# (source start file, target name, title, author, documentclass [howto/manual]).
+latex_documents = [
+  ('index', 'Metacat.tex', u'Metacat Documentation',
+   u'Matthew B. Jones', 'manual'),
+]
+
+# The name of an image file (relative to this directory) to place at the top of
+# the title page.
+#latex_logo = None
+
+# For "manual" documents, if this is true, then toplevel headings are parts,
+# not chapters.
+#latex_use_parts = False
+
+# Additional stuff for the LaTeX preamble.
+#latex_preamble = ''
+
+# Documents to append as an appendix to all manuals.
+#latex_appendices = []
+
+# If false, no module index is generated.
+#latex_use_modindex = True
Index: docs/user/metacat/source/images/screenshots/image007.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image007.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image017.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image017.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image053.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image053.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image009.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image009.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image055.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image055.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image057.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image057.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image058.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image058.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image051.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image051.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image059.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image059.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image061.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image061.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image063.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image063.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image065.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image065.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image067.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image067.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image049.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image049.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image011.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image011.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image033.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image033.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image035.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image035.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image037.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image037.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image039.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image039.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image019.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image019.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image021.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image021.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image023.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image023.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image047.jpg
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image047.jpg
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/screenshots/image027.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/images/screenshots/image027.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/images/guid_read.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/user/metacat/source/images/guid_read.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+image/png
\ No newline at end of property
Index: docs/user/metacat/source/images/guid_update.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = image/png

Property changes on: docs/user/metacat/source/images/guid_update.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+image/png
\ No newline at end of property
Index: docs/user/metacat/source/index.rst
===================================================================
--- docs/user/metacat/source/index.rst	(nonexistent)
+++ docs/user/metacat/source/index.rst	(revision 6871)
@@ -0,0 +1,76 @@
+
+Metacat Administrator's Guide
+=============================
+
+.. sidebar:: Version: 2.0.0
+
+    .. image:: themes/readable/static/metacat-logo.png
+       :height: 130pt
+
+    Send feedback and bugs to: 
+        metacat-dev@ecoinformatics.org
+        http://bugzilla.ecoinformatics.org
+
+    License: GPL
+    Release Date: January 20, 2012
+
+Metacat is a repository for data and metadata (documentation about data) that helps 
+scientists find, understand and effectively use data sets they manage or that 
+have been created by others. Thousands of data sets are currently documented in 
+a standardized way and stored in Metacat systems, providing the scientific 
+community with a broad range of science data that--because the data are well and 
+consistently described--can be easily searched, compared, merged, or used 
+in other ways.  
+
+- Metacat `Administrators Guide`_
+- Download Metacat
+    - Binary Distribution (A war file installation)
+        - GZIP File: metacat-bin-2.0.0.tar.gz_
+        - ZIP File: metacat-bin-2.0.0.zip_
+    - Source Distribution (Full source, requiring build)
+        - GZIP File: metacat-src-2.0.0.tar.gz_
+        - ZIP File: metacat-src-2.0.0.zip_
+    - `Older versions`_
+
+.. _Administrators Guide: http://knb.ecoinformatics.org/software/metacat/MetacatAdministratorGuide.pdf
+
+.. _metacat-bin-2.0.0.tar.gz: http://knb.ecoinformatics.org/software/dist/metacat-bin-2.0.0.tar.gz
+
+.. _metacat-bin-2.0.0.zip: http://knb.ecoinformatics.org/software/dist/metacat-bin-2.0.0.zip
+
+.. _metacat-src-2.0.0.tar.gz: http://knb.ecoinformatics.org/software/dist/metacat-src-2.0.0.tar.gz
+
+.. _metacat-src-2.0.0.zip: http://knb.ecoinformatics.org/software/dist/metacat-src-2.0.0.zip
+
+.. _Older versions: http://knb.ecoinformatics.org/software/dist/
+
+Contents
+========
+.. toctree::
+   :numbered:
+   :maxdepth: 2
+
+   intro
+   contributors
+   license
+   install
+   configuration
+   dataone
+   submitting
+   geoserver
+   replication
+   harvester
+   oaipmh
+   event-logging
+   sitemaps
+   authinterface
+   metacat-properties
+   development
+
+
+Indices and tables
+==================
+
+* :ref:`genindex`
+* :ref:`search`
+

Property changes on: docs/user/metacat/source/index.rst
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Index: docs/user/metacat/source/dataone.rst
===================================================================
--- docs/user/metacat/source/dataone.rst	(nonexistent)
+++ docs/user/metacat/source/dataone.rst	(revision 6871)
@@ -0,0 +1,5 @@
+DataONE Member Nodes
+====================
+
+Chapter to be written.
+
Index: docs/user/metacat/source/sitemaps.rst
===================================================================
--- docs/user/metacat/source/sitemaps.rst	(nonexistent)
+++ docs/user/metacat/source/sitemaps.rst	(revision 6871)
@@ -0,0 +1,56 @@
+Enabling Web Searches: Sitemaps
+===============================
+
+Sitemaps are XML files that tell search engines—such as Google, which is 
+discussed in this section--which URLs on your websites are available for 
+crawling. Currently, the only way for a search engine to crawl and index 
+Metacat so that individual metadata entries are available via Web searches 
+is with a sitemap. Metacat automatically creates sitemaps for all public 
+documents in the repository. However, you must register the sitemaps with 
+the search engine before it will take effect.
+
+
+Creating a Sitemap
+------------------
+
+Metacat automatically generates a sitemap file for all public documents in 
+the repository on a daily basis. The sitemap file(s) must be available via 
+the Web on your server, and must be registered with Google before they take 
+effect. For information on the sitemap protocol, please refer to the Google 
+page on using the sitemap protocol. You can view Metacat's sitemap files at:: 
+
+  <webapps_dir>/sitemaps
+
+The directory contains one or more XML files named::
+
+  metacat<X>.xml
+
+where ``<X>`` is a number (e.g., 1 or 2) used to increment each sitemap file. 
+Because Metacat limits the number of sitemap entries in each sitemap file to 
+25,000, the servlet creates an additional sitemap file for each group of 
+25,000 entries. 
+
+Verify that your sitemap files are available to the Web by browsing to::
+
+  <your_web_context>/sitemaps/metacat<X>.xml 
+  (e.g., your.server.org/knb/sitemaps/metacat1.xml)
+
+Registering a Sitemap
+---------------------
+Before Google will begin indexing the public files in your Metacat, you must 
+register the sitemaps. To register your sitemaps and ensure that they are up 
+to date:
+
+1. Register for a Google Webmaster Tools account, and add your Metacat 
+   site to the Dashboard.
+2. From your Google Webmaster Tools site account, register your sitemaps. 
+   See the Google help site for more information about how to register sitemaps. 
+   Note: Register the full URL path to your sitemap files, including 
+   the http:// (or https://) headers.
+
+Once the sitemaps are registered, Google will begin to index the public 
+documents in your Metacat repository. 
+
+NOTE: As you add more publicly accessible data to Metacat, you will need to 
+periodically revisit the Google Webmaster Tools utility to refresh your 
+sitemap registration.
Index: docs/user/metacat/source/themes/readable/static/metacat-logo.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: docs/user/metacat/source/themes/readable/static/metacat-logo.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: docs/user/metacat/source/development.rst
===================================================================
--- docs/user/metacat/source/development.rst	(nonexistent)
+++ docs/user/metacat/source/development.rst	(revision 6871)
@@ -0,0 +1,17 @@
+Appendix: Development Issues
+============================
+
+Metacat is an open source application, and we welcome contributions to the
+source from members of the community who are interested in helping out.  This
+section will contain a series of technical details about Metacat that will help
+contributors understand and extend Metacat.  Much of the detail needed here is
+contained in the Administrator's guide, which we will gradually migrate to this
+format.
+
+Contents:
+
+.. toctree::
+   :maxdepth: 2
+
+   identifiers
+
Index: docs/user/metacat/Makefile
===================================================================
--- docs/user/metacat/Makefile	(nonexistent)
+++ docs/user/metacat/Makefile	(revision 6871)
@@ -0,0 +1,99 @@
+# Makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line.
+SPHINXOPTS    =
+SPHINXBUILD   = sphinx-build
+PAPER         =
+BUILDDIR      = build
+GRAPHVIZ      = /opt/local/bin/dot
+
+# Internal variables.
+PAPEROPT_a4     = -D latex_paper_size=a4
+PAPEROPT_letter = -D latex_paper_size=letter
+ALLSPHINXOPTS   = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
+
+.PHONY: help clean html dirhtml pickle json htmlhelp qthelp latex changes linkcheck doctest pdf
+
+help:
+	@echo "Please use \`make <target>' where <target> is one of"
+	@echo "  html      to make standalone HTML files"
+	@echo "  dirhtml   to make HTML files named index.html in directories"
+	@echo "  pickle    to make pickle files"
+	@echo "  json      to make JSON files"
+	@echo "  htmlhelp  to make HTML files and a HTML help project"
+	@echo "  qthelp    to make HTML files and a qthelp project"
+	@echo "  latex     to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
+	@echo "  changes   to make an overview of all changed/added/deprecated items"
+	@echo "  linkcheck to check all external links for integrity"
+	@echo "  doctest   to run all doctests embedded in the documentation (if enabled)"
+	@echo "  pdf       to make PDF files"
+
+clean:
+	-rm -rf $(BUILDDIR)/*
+
+plantuml:
+	GRAPHVIZ_DOT=$(GRAPHVIZ) plantuml source 
+
+html: 
+	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
+	@echo
+	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
+
+dirhtml:
+	$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
+	@echo
+	@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
+
+pickle:
+	$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
+	@echo
+	@echo "Build finished; now you can process the pickle files."
+
+json:
+	$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
+	@echo
+	@echo "Build finished; now you can process the JSON files."
+
+pdf:
+	$(SPHINXBUILD) -b pdf $(ALLSPHINXOPTS) $(BUILDDIR)/pdf
+	@echo
+	@echo "Build finished. The PDF files are in $(BUILDDIR)/pdf."
+
+htmlhelp:
+	$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
+	@echo
+	@echo "Build finished; now you can run HTML Help Workshop with the" \
+	      ".hhp project file in $(BUILDDIR)/htmlhelp."
+
+qthelp:
+	$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
+	@echo
+	@echo "Build finished; now you can run "qcollectiongenerator" with the" \
+	      ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
+	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/DataONEArchitecture.qhcp"
+	@echo "To view the help file:"
+	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/DataONEArchitecture.qhc"
+
+latex:
+	$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
+	@echo
+	@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
+	@echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
+	      "run these through (pdf)latex."
+
+changes:
+	$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
+	@echo
+	@echo "The overview file is in $(BUILDDIR)/changes."
+
+linkcheck:
+	$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
+	@echo
+	@echo "Link check complete; look for any errors in the above output " \
+	      "or in $(BUILDDIR)/linkcheck/output.txt."
+
+doctest:
+	$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
+	@echo "Testing of doctests in the sources finished, look at the " \
+	      "results in $(BUILDDIR)/doctest/output.txt."
