Äï������ådocutils.nodesîådocumentîìî)Åî}î(å rawsourceîå�îåchildrenî]îh�åsectionîìî)Åî}î(hhh]î(h�åtitleîìî)Åî}î(hå*Accessing and Submitting Metadata and Dataîh]îh�åTextîìîå*Accessing and Submitting Metadata and DataîÖîÅî}î(hhåparentîhhhåsourceîNålineîNubaå attributesî}î(åidsî]îåclassesî]îånamesî]îådupnamesî]îåbackrefsî]îårefidîåid10îuåtagnameîhhhhhhå\/var/lib/jenkins/jobs/metacat_beta/workspace/metacat/docs/user/metacat/source/submitting.rstîhKubh�åtopicîìî)Åî}î(hhh]î(h)Åî}î(håContentsîh]îhåContentsîÖîÅî}î(hhhh2ubah}î(h]îh!]îh#]îh%]îh']îuh+hhh/ubh�åbullet_listîìî)Åî}î(hhh]îh�å list_itemîìî)Åî}î(hhh]î(h�å paragraphîìî)Åî}î(hhh]îh�å referenceîìî)Åî}î(hhh]îhå*Accessing and Submitting Metadata and DataîÖîÅî}î(hhhhQubah}î(h]îh*ah!]îh#]îh%]îh']îårefidîå*accessing-and-submitting-metadata-and-dataîuh+hOhhLubah}î(h]îh!]îh#]îh%]îh']îuh+hJhhGubhA)Åî}î(hhh]î(hF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhå,A Brief Note about How Information is StoredîÖîÅî}î(hå,A Brief Note about How Information is Storedîhhoubah}î(h]îåid11îah!]îh#]îh%]îh']îårefidîå,a-brief-note-about-how-information-is-storedîuh+hOhhlubah}î(h]îh!]îh#]îh%]îh']îuh+hJhhiubah}î(h]îh!]îh#]îh%]îh']îuh+hEhhfubhF)Åî}î(hhh]î(hK)Åî}î(hhh]îhP)Åî}î(hhh]îhåUsing the RegistryîÖîÅî}î(håUsing the Registryîhhíubah}î(h]îåid12îah!]îh#]îh%]îh']îårefidîåusing-the-registryîuh+hOhhèubah}î(h]îh!]îh#]îh%]îh']îuh+hJhhåubhA)Åî}î(hhh]î(hF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåInstalling the RegistryîÖîÅî}î(håInstalling the Registryîhh≤ubah}î(h]îåid13îah!]îh#]îh%]îh']îårefidîåinstalling-the-registryîuh+hOhhØubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh¨ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhh©ubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåCustomizing the RegistryîÖîÅî}î(håCustomizing the Registryîhh’ubah}î(h]îåid14îah!]îh#]îh%]îh']îårefidîåcustomizing-the-registryîuh+hOhh“ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhhœubah}î(h]îh!]îh#]îh%]îh']îuh+hEhh©ubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåLDAP account managementîÖîÅî}î(håLDAP account managementîhh¯ubah}î(h]îåid15îah!]îh#]îh%]îh']îårefidîåldap-account-managementîuh+hOhhıubah}î(h]îh!]îh#]îh%]îh']îuh+hJhhÚubah}î(h]îh!]îh#]îh%]îh']îuh+hEhh©ubeh}î(h]îh!]îh#]îh%]îh']îuh+h@hhåubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhhfubhF)Åî}î(hhh]î(hK)Åî}î(hhh]îhP)Åî}î(hhh]îhå%Using HTML Forms (the HTTP Interface)îÖîÅî}î(hå%Using HTML Forms (the HTTP Interface)îhj'��ubah}î(h]îåid16îah!]îh#]îh%]îh']îårefidîå#using-html-forms-the-http-interfaceîuh+hOhj$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhj!��ubhA)Åî}î(hhh]î(hF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåSupported ActionsîÖîÅî}î(håSupported ActionsîhjG��ubah}î(h]îåid17îah!]îh#]îh%]îh']îårefidîåsupported-actionsîuh+hOhjD��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhjA��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj>��ubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhå Logging InîÖîÅî}î(hå Logging Inîhjj��ubah}î(h]îåid18îah!]îh#]îh%]îh']îårefidîå logging-inîuh+hOhjg��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhjd��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj>��ubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhå8Inserting, Updating, and Deleting XML and Data DocumentsîÖîÅî}î(hå8Inserting, Updating, and Deleting XML and Data Documentsîhjç��ubah}î(h]îåid19îah!]îh#]îh%]îh']îårefidîå6inserting-updating-and-deleting-xml-and-data-documentsîuh+hOhjä��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhjá��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj>��ubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåSearching MetacatîÖîÅî}î(håSearching Metacatîhj∞��ubah}î(h]îåid20îah!]îh#]îh%]îh']îårefidîåsearching-metacatîuh+hOhj≠��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhj™��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj>��ubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåPaged Query ReturnsîÖîÅî}î(håPaged Query Returnsîhj”��ubah}î(h]îåid21îah!]îh#]îh%]îh']îårefidîåpaged-query-returnsîuh+hOhj–��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhjÕ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj>��ubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåReading Data and MetadataîÖîÅî}î(håReading Data and Metadataîhjˆ��ubah}î(h]îåid22îah!]îh#]îh%]îh']îårefidîåreading-data-and-metadataîuh+hOhjÛ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj>��ubeh}î(h]îh!]îh#]îh%]îh']îuh+h@hj!��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhhfubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhå%Using the EarthGrid API (aka EcoGrid)îÖîÅî}î(hå%Using the EarthGrid API (aka EcoGrid)îhj%��ubah}î(h]îåid23îah!]îh#]îh%]îh']îårefidîå#using-the-earthgrid-api-aka-ecogridîuh+hOhj"��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhhfubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåUsing MorphoîÖîÅî}î(håUsing MorphoîhjH��ubah}î(h]îåid24îah!]îh#]îh%]îh']îårefidîåusing-morphoîuh+hOhjE��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhjB��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhhfubhF)Åî}î(hhh]îhK)Åî}î(hhh]îhP)Åî}î(hhh]îhåCreating Your Own ClientîÖîÅî}î(håCreating Your Own Clientîhjk��ubah}î(h]îåid25îah!]îh#]îh%]îh']îårefidîåcreating-your-own-clientîuh+hOhjh��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhje��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhhfubeh}î(h]îh!]îh#]îh%]îh']îuh+h@hhGubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhhBubah}î(h]îh!]îh#]îh%]îh']îuh+h@hh/hhhNhNubeh}î(h]îåcontentsîah!]îåcontentsîah#]îåcontentsîah%]îh']îuh+h-hh,hKhhhhubhK)Åî}î(håVThe Metacat repository can be accessed and updated using a number of tools, including:îh]îhåVThe Metacat repository can be accessed and updated using a number of tools, including:îÖîÅî}î(hj•��hj£��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKhhhhubhA)Åî}î(hhh]î(hF)Åî}î(hå.the Registry, Metacat's optional Web interfaceîh]îhK)Åî}î(hj∂��h]îhå0the Registry, Metacat‚Äôs optional Web interfaceîÖîÅî}î(hj∂��hj∏��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK hj¥��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj±��hhhh,hNubhF)Åî}î(håuser-created HTML formsîh]îhK)Åî}î(hjÕ��h]îhåuser-created HTML formsîÖîÅî}î(hjÕ��hjœ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK hjÀ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj±��hhhh,hNubhF)Åî}î(håMetacat's EarthGrid APIîh]îhK)Åî}î(hj‰��h]îhåMetacat‚Äôs EarthGrid APIîÖîÅî}î(hj‰��hjÊ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKhj‚��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj±��hhhh,hNubhF)Åî}î(håqexisting clients, such as KNB's Morpho application, designed to help scientists create, edit, and manage metadataîh]îhK)Åî}î(håqexisting clients, such as KNB's Morpho application, designed to help scientists create, edit, and manage metadataîh]îhåsexisting clients, such as KNB‚Äôs Morpho application, designed to help scientists create, edit, and manage metadataîÖîÅî}î(hjˇ��hj˝��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKhj˘��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj±��hhhh,hNubhF)Åî}î(håHuser-created desktop clients that take advantage of Metacat's Java API. îh]îhK)Åî}î(håGuser-created desktop clients that take advantage of Metacat's Java API.îh]îhåIuser-created desktop clients that take advantage of Metacat‚Äôs Java API.îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj±��hhhh,hNubeh}î(h]îh!]îh#]îh%]îh']îåbulletîå*îuh+h@hh,hK hhhhubhK)Åî}î(hånIn this section, we will look at how to take advantage of these tools to customize Metacat for your user-base.îh]îhånIn this section, we will look at how to take advantage of these tools to customize Metacat for your user-base.îÖîÅî}î(hj3��hj1��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKhhhhubh )Åî}î(hhh]î(h)Åî}î(hhvh]îhå,A Brief Note about How Information is StoredîÖîÅî}î(hhvhjB��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)hyuh+hhj?��hhhh,hKubhK)Åî}î(hX ��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.îh]îhX–��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.îÖîÅî}î(hjQ��hjO��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKhj?��hhubeh}î(h]îhah!]îh#]îå,a brief note about how information is storedîah%]îh']îuh+h hhhhhh,hKubh )Åî}î(hhh]î(h)Åî}î(hhôh]îhåUsing the RegistryîÖîÅî}î(hhôhjg��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)húuh+hhjd��hhhh,hK!ubhK)Åî}î(hXÏ��Metacat's optional Registry provides a simple Web-based interface for creating, editing, and submitting metadata to the Metacat repository (screenshot below). 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.îh]î(hXs��Metacat‚Äôs optional Registry provides a simple Web-based interface for creating, editing, and submitting metadata to the Metacat repository (screenshot below). 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 (îÖîÅî}î(hXo��Metacat's optional Registry provides a simple Web-based interface for creating, editing, and submitting metadata to the Metacat repository (screenshot below). 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 (îhjt��hhhNhNubhP)Åî}î(håhttp://knb.ecoinformatics.org/îh]îhåhttp://knb.ecoinformatics.org/îÖîÅî}î(hhhj}��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîj��uh+hOhjt��ubhå_). Please note that at this time, the Registry interface has only been tested on Linux systems.îÖîÅî}î(hå_). Please note that at this time, the Registry interface has only been tested on Linux systems.îhjt��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK"hjd��hhubh�åfigureîìî)Åî}î(hhh]î(h�åimageîìî)Åî}î(hå“.. 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. îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image033.jpgîå candidatesî}îj0��j©��suh+jú��hjô��hh,hK0ubh�åcaptionîìî)Åî}î(hååAn example installation of the Register's web interface. Customize the displayed and required modules with the Skins Configuration settings.îh]îhåéAn example installation of the Register‚Äôs web interface. Customize the displayed and required modules with the Skins Configuration settings.îÖîÅî}î(hj∞��hjÆ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hK0hjô��ubeh}î(h]îåid1îah!]îh#]îh%]îh']îåalignîåcenterîuh+jó��hK0hjd��hhhh,ubhK)Åî}î(hå¶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îh]îhåÆ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îÖîÅî}î(hj«��hj≈��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK3hjd��hhubh )Åî}î(hhh]î(h)Åî}î(hhπh]îhåInstalling the RegistryîÖîÅî}î(hhπhj÷��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)hºuh+hhj”��hhhh,hK8ubhK)Åî}î(hå‰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).îh]îhå‰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).îÖîÅî}î(hjÂ��hj„��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK9hj”��hhubhK)Åî}î(hå To install and run the Registry:îh]îhå To install and run the Registry:îÖîÅî}î(hjÛ��hjÒ��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK=hj”��hhubh�åenumerated_listîìî)Åî}î(hhh]îhF)Åî}î(hå\Install the required system libraries using Ubuntu/Debian (instructions Red Hat in sidebar) îh]îhK)Åî}î(hå[Install the required system libraries using Ubuntu/Debian (instructions Red Hat in sidebar)îh]îhå[Install the required system libraries using Ubuntu/Debian (instructions Red Hat in sidebar)îÖîÅî}î(hj ��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK@hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj��hhhh,hNubah}î(h]îh!]îh#]îh%]îh']îåenumtypeîåarabicîåprefixîhåsuffixîå.îuh+jˇ��hj”��hhhh,hK@ubh�åblock_quoteîìî)Åî}î(hhh]îhA)Åî}î(hhh]î(hF)Åî}î(hå˚Install the libraries :: sudo apt-get install ant libappconfig-perl libxml-libxml-perl \ libxml-libxslt-perl libtemplate-perl libcgi-session-perl \ build-essential libnet-ldap-perl libterm-readkey-perl \ libxml-dom-perl libsoap-lite-perl -y îh]î(hK)Åî}î(håInstall the librariesîh]îhåInstall the librariesîÖîÅî}î(hj5��hj3��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKChj/��ubh�å literal_blockîìî)Åî}î(hå◊sudo apt-get install ant libappconfig-perl libxml-libxml-perl \ libxml-libxslt-perl libtemplate-perl libcgi-session-perl \ build-essential libnet-ldap-perl libterm-readkey-perl \ libxml-dom-perl libsoap-lite-perl -yîh]îhå◊sudo apt-get install ant libappconfig-perl libxml-libxml-perl \ libxml-libxslt-perl libtemplate-perl libcgi-session-perl \ build-essential libnet-ldap-perl libterm-readkey-perl \ libxml-dom-perl libsoap-lite-perl -yîÖîÅî}î(hhhjC��ubah}î(h]îh!]îh#]îh%]îh']îå xml:spaceîåpreserveîuh+jA��hKGhj/��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhj,��ubhF)Åî}î(håÒInstall two more package using cpan :: sudo cpan -i Digest::SHA1 sudo cpan -i Config::Properties sudo cpan -i Scalar::Util sudo cpan -i Captcha:reCAPTCHA sudo cpan -i DateTime sudo cpan -i Crypt::JWT sudo cpan -i Crypt::X509 îh]î(hK)Åî}î(hå#Install two more package using cpanîh]îhå#Install two more package using cpanîÖîÅî}î(hj_��hj]��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKLhjY��ubjB��)Åî}î(håπsudo cpan -i Digest::SHA1 sudo cpan -i Config::Properties sudo cpan -i Scalar::Util sudo cpan -i Captcha:reCAPTCHA sudo cpan -i DateTime sudo cpan -i Crypt::JWT sudo cpan -i Crypt::X509îh]îhåπsudo cpan -i Digest::SHA1 sudo cpan -i Config::Properties sudo cpan -i Scalar::Util sudo cpan -i Captcha:reCAPTCHA sudo cpan -i DateTime sudo cpan -i Crypt::JWT sudo cpan -i Crypt::X509îÖîÅî}î(hhhjk��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hKPhjY��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhj,��ubeh}î(h]îh!]îh#]îh%]îh']îj/��j0��uh+h@hh,hKChj)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j'��hj”��hhhNhNubh�åsidebarîìî)Åî}î(hXå��* 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 install Captcha:reCAPTCHA install DateTime install Crypt::JWT install Crypt::X509îh]î(h)Åî}î(hå+Instructions for Red Hat (Alternate Step 2)îh]îhå+Instructions for Red Hat (Alternate Step 2)îÖîÅî}î(hjì��hjë��ubah}î(h]îh!]îh#]îh%]îh']îuh+hhjç��ubhA)Åî}î(hhh]î(hF)Åî}î(håUInstall the libraries :: sudo yum install gcc libxml2-devel libxslt-devel ant -y îh]î(hK)Åî}î(håInstall the librariesîh]îhåInstall the librariesîÖîÅî}î(hj®��hj¶��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKZhj¢��ubjB��)Åî}î(hå7sudo yum install gcc libxml2-devel libxslt-devel ant -yîh]îhå7sudo yum install gcc libxml2-devel libxslt-devel ant -yîÖîÅî}î(hhhj¥��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hK^hj¢��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhjü��ubhF)Åî}î(hX��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 îh]î(hK)Åî}î(hå◊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.îh]îhå€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.îÖîÅî}î(hjŒ��hjÃ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK`hj»��ubjB��)Åî}î(hå$sudo yum install perl-CPAN sudo cpanîh]îhå$sudo yum install perl-CPAN sudo cpanîÖîÅî}î(hhhj⁄��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hKfhj»��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhjü��ubhF)Åî}î(hå;You should now see a prompt which looks like: :: cpan> îh]î(hK)Åî}î(hå-You should now see a prompt which looks like:îh]îhå-You should now see a prompt which looks like:îÖîÅî}î(hjÙ��hjÚ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKihjÓ��ubjB��)Åî}î(håcpan>îh]îhåcpan>îÖîÅî}î(hhhj���ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hKmhjÓ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhjü��ubhF)Åî}î(håfiThe 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 îh]î(hK)Åî}î(hå≥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.îh]îhå∑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.îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKohj��ubjB��)Åî}î(hå install Bundle::CPAN reload cpanîh]îhå install Bundle::CPAN reload cpanîÖîÅî}î(hhhj&��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hKuhj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhjü��ubhF)Åî}î(hX–��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 install Captcha:reCAPTCHA install DateTime install Crypt::JWT install Crypt::X509îh]î(hK)Åî}î(håΩ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.îh]îhå√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.îÖîÅî}î(hj@��hj>��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKxhj:��ubjB��)Åî}î(håı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 install Captcha:reCAPTCHA install DateTime install Crypt::JWT install Crypt::X509îh]îhåı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 install Captcha:reCAPTCHA install DateTime install Crypt::JWT install Crypt::X509îÖîÅî}î(hhhjL��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hK~hj:��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhjü��ubeh}î(h]îh!]îh#]îh%]îh']îj/��j0��uh+h@hh,hKZhjç��ubeh}î(h]îh!]îh#]îh%]îh']îuh+jã��hj”��hhhNhNubj���)Åî}î(hhh]î(hF)Åî}î(håDouble-check that Metacat's temporary folder, application.tempDir, is writable by the apache user, usually www-data or apache. îh]îhK)Åî}î(hå~Double-check that Metacat's temporary folder, application.tempDir, is writable by the apache user, usually www-data or apache.îh]îhåÄDouble-check that Metacat‚Äôs temporary folder, application.tempDir, is writable by the apache user, usually www-data or apache.îÖîÅî}î(hju��hjs��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKåhjo��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhjl��hhhh,hNubhF)Åî}î(håêMake sure that the following scripts (found in ``<tomcat-home>/webapps/metacat/cgi-bin``) are executable: register-dataset.cgi and ldapweb.cgi. îh]îhK)Åî}î(håèMake sure that the following scripts (found in ``<tomcat-home>/webapps/metacat/cgi-bin``) are executable: register-dataset.cgi and ldapweb.cgi.îh]î(hå/Make sure that the following scripts (found in îÖîÅî}î(hå/Make sure that the following scripts (found in îhjã��ubh�åliteralîìî)Åî}î(hå)``<tomcat-home>/webapps/metacat/cgi-bin``îh]îhå%<tomcat-home>/webapps/metacat/cgi-binîÖîÅî}î(hhhjñ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjã��ubhå7) are executable: register-dataset.cgi and ldapweb.cgi.îÖîÅî}î(hå7) are executable: register-dataset.cgi and ldapweb.cgi.îhjã��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKèhjá��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhjl��hhhh,hNubeh}î(h]îh!]îh#]îh%]îh']îj"��j#��j$��hj%��j&��åstartîKuh+jˇ��hj”��hhhh,hKåubj(��)Åî}î(hhh]îjB��)Åî}î(hå9sudo chmod +x <tomcat-home>/webapps/metacat/cgi-bin/*.cgiîh]îhå9sudo chmod +x <tomcat-home>/webapps/metacat/cgi-bin/*.cgiîÖîÅî}î(hhhjø��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hKîhjº��ubah}î(h]îh!]îh#]îh%]îh']îuh+j'��hj”��hhhh,hNubj���)Åî}î(hhh]î(hF)Åî}î(hå<Ensure apache CGI module is enabled :: sudo a2enmod cgid îh]î(hK)Åî}î(hå#Ensure apache CGI module is enabledîh]îhå#Ensure apache CGI module is enabledîÖîÅî}î(hj‹��hj⁄��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKñhj÷��ubjB��)Åî}î(håsudo a2enmod cgidîh]îhåsudo a2enmod cgidîÖîÅî}î(hhhjË��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hKöhj÷��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hEhj”��hhhh,hNubhF)Åî}î(håRestart Apache. îh]îhK)Åî}î(håRestart Apache.îh]îhåRestart Apache.îÖîÅî}î(hj��hj���ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKúhj¸��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj”��hhhh,hNubeh}î(h]îh!]îh#]îh%]îh']îj"��j#��j$��hj%��j&��jª��Kuh+jˇ��hj”��hhhh,hKñubj(��)Åî}î(hhh]îjB��)Åî}î(hå sudo /etc/init.d/apache2 restartîh]îhå sudo /etc/init.d/apache2 restartîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hK†hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+j'��hj”��hhhh,hNubj���)Åî}î(hhh]îhF)Åî}î(hXX��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. îh]îhK)Åî}î(hXW��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.îh]î(håVisit the resulting URL: îÖîÅî}î(håVisit the resulting URL: îhj8��ubhP)Åî}î(håhttp:/îh]îhåhttp:/îÖîÅî}î(hhhjA��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîjC��uh+hOhj8��ubhåC/<your_context_url>/cgi-bin/register-dataset.cgi?cfg=default Where îÖîÅî}î(håC/<your_context_url>/cgi-bin/register-dataset.cgi?cfg=default Where îhj8��ubjï��)Åî}î(hå``<your_context_url>``îh]îhå<your_context_url>îÖîÅî}î(hhhjU��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj8��ubhåΩ 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: îÖîÅî}î(håΩ 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: îhj8��ubhP)Åî}î(hå!http://knb.ecoinformatics.org/knbîh]îhå!http://knb.ecoinformatics.org/knbîÖîÅî}î(hhhjh��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîjj��uh+hOhj8��ubhå.îÖîÅî}î(hj&��hj8��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK¢hj4��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj1��hhhh,hNubah}î(h]îh!]îh#]îh%]îh']îj"��j#��j$��hj%��j&��jª��Kuh+jˇ��hj”��hhhh,hK¢ubhK)Åî}î(håNIf everything worked correctly, the registry home page will open (see figure).îh]îhåNIf everything worked correctly, the registry home page will open (see figure).îÖîÅî}î(hjè��hjç��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK©hj”��hhubjò��)Åî}î(hhh]î(jù��)Åî}î(håÄ.. figure:: images/screenshots/image035.jpg :align: center An example of the Registry home page (with the default skin). îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image035.jpgîj™��}îj0��j©��suh+jú��hjõ��hh,hKÆubj≠��)Åî}î(hå=An example of the Registry home page (with the default skin).îh]îhå=An example of the Registry home page (with the default skin).îÖîÅî}î(hj≠��hj´��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hKÆhjõ��ubeh}î(h]îåid2îah!]îh#]îh%]îh']îj√��åcenterîuh+jó��hKÆhj”��hhhh,ubeh}î(h]îh¬ah!]îh#]îåinstalling the registryîah%]îh']îuh+h hjd��hhhh,hK8ubh )Åî}î(hhh]î(h)Åî}î(hh‹h]îhåCustomizing the RegistryîÖîÅî}î(hh‹hjÀ��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)hfluh+hhj»��hhhh,hK±ubhK)Åî}î(hXÖ��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>/metacat/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.îh]î(hX®��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 (îÖîÅî}î(hX¢��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 (îhjÿ��hhhNhNubhP)Åî}î(håhttp:/îh]îhåhttp:/îÖîÅî}î(hhhj·��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîj„��uh+hOhjÿ��ubhå›/<your.context.url>/metacat/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.îÖîÅî}î(hå›/<your.context.url>/metacat/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.îhjÿ��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK≤hj»��hhubhK)Åî}î(hå‘Once you have saved your changes, you must restart Tomcat for them to come into effect. To restart Tomcat, type: ``sudo /etc/init.d/tomcat7 restart`` or an equivalent command appropriate to your operating system.îh]î(håqOnce you have saved your changes, you must restart Tomcat for them to come into effect. To restart Tomcat, type: îÖîÅî}î(håqOnce you have saved your changes, you must restart Tomcat for them to come into effect. To restart Tomcat, type: îhj˚��hhhNhNubjï��)Åî}î(hå$``sudo /etc/init.d/tomcat7 restart``îh]îhå sudo /etc/init.d/tomcat7 restartîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj˚��ubhå? or an equivalent command appropriate to your operating system.îÖîÅî}î(hå? or an equivalent command appropriate to your operating system.îhj˚��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKºhj»��hhubjò��)Åî}î(hhh]î(jù��)Åî}î(hXL��.. 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. îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image037.jpgîj™��}îj0��j+��suh+jú��hj��hh,hK√ubj≠��)Åî}î(hX���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.îh]îhX��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.îÖîÅî}î(hj/��hj-��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hK√hj��ubeh}î(h]îåid3îah!]îh#]îh%]îh']îj√��åcenterîuh+jó��hK√hj»��hhhh,ubeh}î(h]îhÂah!]îh#]îåcustomizing the registryîah%]îh']îuh+h hjd��hhhh,hK±ubh )Åî}î(hhh]î(h)Åî}î(hhˇh]îhåLDAP account managementîÖîÅî}î(hhˇhjM��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)j��uh+hhjJ��hhhh,hK…ubhK)Åî}î(håàIf you intend to use Metacat's built-in LDAP account management feature, you will need public and private keys for the reCaptcha widget.îh]îhåäIf you intend to use Metacat‚Äôs built-in LDAP account management feature, you will need public and private keys for the reCaptcha widget.îÖîÅî}î(hj\��hjZ��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK hjJ��hhubhK)Åî}î(hå}1. Get private and public recaptcha keys from Google using your Google account: https://www.google.com/recaptcha/admin/createîh]î(håP1. Get private and public recaptcha keys from Google using your Google account: îÖîÅî}î(håP1. Get private and public recaptcha keys from Google using your Google account: îhjh��hhhNhNubhP)Åî}î(hå-https://www.google.com/recaptcha/admin/createîh]îhå-https://www.google.com/recaptcha/admin/createîÖîÅî}î(hhhjq��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîjs��uh+hOhjh��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKÕhjJ��hhubj���)Åî}î(hhh]îhF)Åî}î(håDConfigure Metacat to use those keys in the metacat.properties file: îh]îhK)Åî}î(håCConfigure Metacat to use those keys in the metacat.properties file:îh]îhåCConfigure Metacat to use those keys in the metacat.properties file:îÖîÅî}î(hjè��hjç��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK–hjâ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhjÜ��hhhh,hNubah}î(h]îh!]îh#]îh%]îh']îj"��j#��j$��hj%��j&��jª��Kuh+jˇ��hjJ��hhhh,hK–ubj(��)Åî}î(hhh]îjB��)Åî}î(håWldap.recaptcha.publickey=<your public key> ldap.recaptcha.privatekey=<your private key>îh]îhåWldap.recaptcha.publickey=<your public key> ldap.recaptcha.privatekey=<your private key>îÖîÅî}î(hhhj™��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hK‘hjß��ubah}î(h]îh!]îh#]îh%]îh']îuh+j'��hjJ��hhhh,hNubj���)Åî}î(hhh]îhF)Åî}î(håRestart Tomcat îh]îhK)Åî}î(håRestart Tomcatîh]îhåRestart TomcatîÖîÅî}î(hj«��hj≈��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK◊hj¡��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhjæ��hhhh,hNubah}î(h]îh!]îh#]îh%]îh']îj"��j#��j$��hj%��j&��jª��Kuh+jˇ��hjJ��hhhh,hK◊ubeh}î(h]îj��ah!]îh#]îåldap account managementîah%]îh']îuh+h hjd��hhhh,hK…ubeh}î(h]îh¢ah!]îh#]îåusing the registryîah%]îh']îuh+h hhhhhh,hK!ubh )Åî}î(hhh]î(h)Åî}î(hj.��h]îhå%Using HTML Forms (the HTTP Interface)îÖîÅî}î(hj.��hj��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)j1��uh+hhjÌ��hhhh,hK€ubhK)Åî}î(håˆ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.îh]îhå˙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.îÖîÅî}î(hjˇ��hj˝��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK‹hjÌ��hhubhA)Åî}î(hhh]î(hF)Åî}î(håSupported Actions (API)îh]îhK)Åî}î(hj��h]îhåSupported Actions (API)îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKfihj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj��hhhh,hNubhF)Åî}î(hå Logging inîh]îhK)Åî}î(hj'��h]îhå Logging inîÖîÅî}î(hj'��hj)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKflhj%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj��hhhh,hNubhF)Åî}î(hå8Inserting, Updating, and Deleting XML and Data Documentsîh]îhK)Åî}î(hj>��h]îhå8Inserting, Updating, and Deleting XML and Data DocumentsîÖîÅî}î(hj>��hj@��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK‡hj<��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj��hhhh,hNubhF)Åî}î(håSearching Metacatîh]îhK)Åî}î(hjU��h]îhåSearching MetacatîÖîÅî}î(hjU��hjW��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK·hjS��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj��hhhh,hNubhF)Åî}î(håPaged Query Returnîh]îhK)Åî}î(hjl��h]îhåPaged Query ReturnîÖîÅî}î(hjl��hjn��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK‚hjj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj��hhhh,hNubhF)Åî}î(håReading Data and Metadata îh]îhK)Åî}î(håReading Data and Metadataîh]îhåReading Data and MetadataîÖîÅî}î(hjá��hjÖ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK„hjÅ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hEhj��hhhh,hNubeh}î(h]îh!]îh#]îh%]îh']îj/��j0��uh+h@hh,hKfihjÌ��hhubh )Åî}î(hhh]î(h)Åî}î(hjN��h]îhåSupported ActionsîÖîÅî}î(hjN��hj¢��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)jQ��uh+hhjü��hhhh,hKÊubhK)Åî}î(hå÷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).îh]îhå÷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).îÖîÅî}î(hj±��hjØ��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKÁhjü��hhubhK)Åî}î(hå±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`.îh]î(håûNote that if Replication is enabled, Metacat recognizes several additional actions, included in Table 4.2. For more information about replication, please see îÖîÅî}î(håûNote that if Replication is enabled, Metacat recognizes several additional actions, included in Table 4.2. For more information about replication, please see îhjΩ��hhhNhNubåsphinx.addnodesîåpending_xrefîìî)Åî}î(hå:doc:`replication`îh]îh�åinlineîìî)Åî}î(hjÀ��h]îhåreplicationîÖîÅî}î(hhhjœ��ubah}î(h]îh!]î(åxrefîåstdîåstd-docîeh#]îh%]îh']îuh+jÕ��hj…��ubah}î(h]îh!]îh#]îh%]îh']îåreftypeîådocîå refdomainîj⁄��årefexplicitîâå reftargetîåreplicationîårefdocîå submittingîårefwarnîàuh+j«��hh,hKÎhjΩ��ubhå.îÖîÅî}î(hj&��hjΩ��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKÎhjü��hhubh�åtableîìî)Åî}î(hhh]îh�åtgroupîìî)Åî}î(hhh]î(h�åcolspecîìî)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîKuh+j ��hjˇ��ubj ��)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîMuh+j ��hjˇ��ubh�åtheadîìî)Åî}î(hhh]îh�årowîìî)Åî}î(hhh]î(h�åentryîìî)Åî}î(hhh]îhK)Åî}î(håActionîh]îhåActionîÖîÅî}î(hj) ��hj' ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKhj$ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj ��ubj# ��)Åî}î(hhh]îhK)Åî}î(håDescription and Parametersîh]îhåDescription and ParametersîÖîÅî}î(hj@ ��hj> ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKhj; ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j ��hjˇ��ubh�åtbodyîìî)Åî}î(hhh]î(j ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hådeleteîh]îhådeleteîÖîÅî}î(hjk ��hji ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKÚhjf ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjc ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håÖDelete the specified document from the database. For an example, please see Inserting, Updating, and Deleting XML and Data Documents.îh]îhåÖDelete the specified document from the database. For an example, please see Inserting, Updating, and Deleting XML and Data Documents.îÖîÅî}î(hjÇ ��hjÄ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKÚhj} ��ubhK)Åî}î(hå/``docid`` - the docid of the document to deleteîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhjí ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjé ��ubhå& - the docid of the document to deleteîÖîÅî}î(hå& - the docid of the document to deleteîhjé ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKˆhj} ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjc ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håexportîh]îhåexportîÖîÅî}î(hjø ��hjΩ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK¯hj∫ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∑ ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå$Export a data package in a zip file.îh]îhå$Export a data package in a zip file.îÖîÅî}î(hj÷ ��hj‘ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK¯hj— ��ubhK)Åî}î(hå/``docid`` - the docid of the document to deleteîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhjÊ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj‚ ��ubhå& - the docid of the document to deleteîÖîÅî}î(hå& - the docid of the document to deleteîhj‚ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK˙hj— ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∑ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetaccesscontrolîh]îhågetaccesscontrolîÖîÅî}î(hj ��hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK¸hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå=Get the access control list (ACL) for the specified document.îh]îhå=Get the access control list (ACL) for the specified document.îÖîÅî}î(hj* ��hj( ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hK¸hj% ��ubhK)Åî}î(hå/``docid`` - the docid of the document to deleteîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj: ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj6 ��ubhå& - the docid of the document to deleteîÖîÅî}î(hå& - the docid of the document to deleteîhj6 ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hKˇhj% ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetalldocidsîh]îhågetalldocidsîÖîÅî}î(hjg ��hje ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjb ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj_ ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå9Retrieve a list of all docids registered with the system.îh]îhå9Retrieve a list of all docids registered with the system.îÖîÅî}î(hj~ ��hj| ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjy ��ubhK)Åî}î(håL``scope`` - a string used to match a range of docids in a SQL LIKE statementîh]î(jï��)Åî}î(hå ``scope``îh]îhåscopeîÖîÅî}î(hhhjé ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjä ��ubhåC - a string used to match a range of docids in a SQL LIKE statementîÖîÅî}î(håC - a string used to match a range of docids in a SQL LIKE statementîhjä ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjy ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj_ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå0getdataguide DEPRECATED Use getdtdschema insteadîh]îhå0getdataguide DEPRECATED Use getdtdschema insteadîÖîÅî}î(hjª ��hjπ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj∂ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj≥ ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå1Read a data guide for the specified document typeîh]îhå1Read a data guide for the specified document typeîÖîÅî}î(hj“ ��hj– ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjÕ ��ubhK)Åî}î(hå9``doctype`` - the doctype for which to get the data guideîh]î(jï��)Åî}î(hå``doctype``îh]îhådoctypeîÖîÅî}î(hhhj‚ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjfi ��ubhå. - the doctype for which to get the data guideîÖîÅî}î(hå. - the doctype for which to get the data guideîhjfi ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjÕ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj≥ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetdoctypesîh]îhågetdoctypesîÖîÅî}î(hj��hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj��ubj# ��)Åî}î(hhh]îhK)Åî}î(håRGet all doctypes currently available in the Metacat Catalog System. No parameters.îh]îhåRGet all doctypes currently available in the Metacat Catalog System. No parameters.îÖîÅî}î(hj&��hj$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hj!��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetdtdschemaîh]îhågetdtdschemaîÖîÅî}î(hjF��hjD��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjA��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj>��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå9Read the DTD or XMLSchema file for the specified doctype.îh]îhå9Read the DTD or XMLSchema file for the specified doctype.îÖîÅî}î(hj]��hj[��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjX��ubhK)Åî}î(håB``doctype`` - the doctype for which DTD or XMLSchema files to readîh]î(jï��)Åî}î(hå``doctype``îh]îhådoctypeîÖîÅî}î(hhhjm��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hji��ubhå7 - the doctype for which DTD or XMLSchema files to readîÖîÅî}î(hå7 - the doctype for which DTD or XMLSchema files to readîhji��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hjX��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj>��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetlastdocidîh]îhågetlastdocidîÖîÅî}î(hjö��hjò��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjï��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjí��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå8Get the latest docid with revision number used by scope.îh]îhå8Get the latest docid with revision number used by scope.îÖîÅî}î(hj±��hjØ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj¨��ubhK)Åî}î(hå#``scope`` - the scope to be queriedîh]î(jï��)Åî}î(hå ``scope``îh]îhåscopeîÖîÅî}î(hhhj¡��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjΩ��ubhå - the scope to be queriedîÖîÅî}î(hå - the scope to be queriedîhjΩ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj¨��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjí��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetlogîh]îhågetlogîÖîÅî}î(hjÓ��hjÏ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjÈ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÊ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå7Get the latest docid with revision number used by user.îh]îhå7Get the latest docid with revision number used by user.îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj���ubhK)Åî}î(hX=��``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îh]î(jï��)Åî}î(hå ``ipaddress``îh]îhå ipaddressîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå/ - the internet protocol address for the event îÖîÅî}î(hå/ - the internet protocol address for the event îhj��ubjï��)Åî}î(hå ``principal``îh]îhå principalîÖîÅî}î(hhhj(��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå1 - the principal for the event (a username, etc) îÖîÅî}î(hå1 - the principal for the event (a username, etc) îhj��ubjï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj;��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå= - the identifier of the document to which the event applies îÖîÅî}î(hå= - the identifier of the document to which the event applies îhj��ubjï��)Åî}î(hå ``event``îh]îhåeventîÖîÅî}î(hhhjN��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå! - the string code for the event îÖîÅî}î(hå! - the string code for the event îhj��ubjï��)Åî}î(hå ``start``îh]îhåstartîÖîÅî}î(hhhja��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå% - beginning of date-range for query îÖîÅî}î(hå% - beginning of date-range for query îhj��ubjï��)Åî}î(hå``end``îh]îhåendîÖîÅî}î(hhhjt��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå - end of date-range for queryîÖîÅî}î(hå - end of date-range for queryîhj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj���ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÊ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetloggedinuserinfoîh]îhågetloggedinuserinfoîÖîÅî}î(hj°��hjü��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjú��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjô��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå>Get user info for the currently logged in user. No parameters.îh]îhå>Get user info for the currently logged in user. No parameters.îÖîÅî}î(hj∏��hj∂��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj≥��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjô��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetpricipalsîh]îhågetpricipalsîÖîÅî}î(hjÿ��hj÷��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj”��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj–��ubj# ��)Åî}î(hhh]îhK)Åî}î(håMGet all users and groups in the current authentication schema. No parameters.îh]îhåMGet all users and groups in the current authentication schema. No parameters.îÖîÅî}î(hjÔ��hjÌ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjÍ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj–��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetrevisionanddoctypeîh]îhågetrevisionanddoctypeîÖîÅî}î(hj ��hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håaReturn the revision and doctype of a document. The output is String that looks like "rev;doctype"îh]îhåeReturn the revision and doctype of a document. The output is String that looks like ‚Äúrev;doctype‚ÄùîÖîÅî}î(hj& ��hj$ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hj! ��ubhK)Åî}î(hå%``docid`` - the docid of the documentîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj6 ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj2 ��ubhå - the docid of the documentîÖîÅî}î(hå - the docid of the documentîhj2 ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM#hj! ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå getversionîh]îhå getversionîÖîÅî}î(hjc ��hja ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM%hj^ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj[ ��ubj# ��)Åî}î(hhh]îhK)Åî}î(håSGet Metacat version. Return the current version of Metacat as XML. No parameters.îh]îhåSGet Metacat version. Return the current version of Metacat as XML. No parameters.îÖîÅî}î(hjz ��hjx ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM%hju ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj[ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håinsertîh]îhåinsertîÖîÅî}î(hjö ��hjò ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM'hjï ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjí ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå}Insert an XML document into the database. For an example, please see Inserting, Updating, and Deleting XML and Data Documentsîh]îhå}Insert an XML document into the database. For an example, please see Inserting, Updating, and Deleting XML and Data DocumentsîÖîÅî}î(hj± ��hjØ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM'hj¨ ��ubhK)Åî}î(håy``docid`` - the user-defined docid to assign to the new XML document ``doctext`` - the text of the XML document to insertîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj¡ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjΩ ��ubhå< - the user-defined docid to assign to the new XML document îÖîÅî}î(hå< - the user-defined docid to assign to the new XML document îhjΩ ��ubjï��)Åî}î(hå``doctext``îh]îhådoctextîÖîÅî}î(hhhj‘ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjΩ ��ubhå) - the text of the XML document to insertîÖîÅî}î(hå) - the text of the XML document to insertîhjΩ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM*hj¨ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjí ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håinsertmultipartîh]îhåinsertmultipartîÖîÅî}î(hj��hjˇ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM-hj¸ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj˘ ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håBInsert an XML document using multipart encoding into the database.îh]îhåBInsert an XML document using multipart encoding into the database.îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM-hj��ubhK)Åî}î(håy``docid`` - the user-defined docid to assign to the new XML document ``doctext`` - the text of the XML document to insertîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj(��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj$��ubhå< - the user-defined docid to assign to the new XML document îÖîÅî}î(hå< - the user-defined docid to assign to the new XML document îhj$��ubjï��)Åî}î(hå``doctext``îh]îhådoctextîÖîÅî}î(hhhj;��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj$��ubhå) - the text of the XML document to insertîÖîÅî}î(hå) - the text of the XML document to insertîhj$��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM/hj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj˘ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håisregisteredîh]îhåisregisteredîÖîÅî}î(hjh��hjf��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM2hjc��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj`��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håπ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.îh]îhåª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.îÖîÅî}î(hj��hj}��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM2hjz��ubhK)Åî}î(hå%``docid`` - the docid of the documentîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhjè��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjã��ubhå - the docid of the documentîÖîÅî}î(hå - the docid of the documentîhjã��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM5hjz��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj`��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håloginîh]îhåloginîÖîÅî}î(hjº��hj∫��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM7hj∑��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¥��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håí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.îh]îhåí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.îÖîÅî}î(hj”��hj—��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM7hjŒ��ubhK)Åî}î(håG``username`` - the user's login name ``password`` - the user's passwordîh]î(jï��)Åî}î(hå``username``îh]îhåusernameîÖîÅî}î(hhhj„��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjfl��ubhå - the user‚Äôs login name îÖîÅî}î(hå - the user's login name îhjfl��ubjï��)Åî}î(hå``password``îh]îhåpasswordîÖîÅî}î(hhhjˆ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjfl��ubhå - the user‚Äôs passwordîÖîÅî}î(hå - the user's passwordîhjfl��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM:hjŒ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¥��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hålogoutîh]îhålogoutîÖîÅî}î(hj#��hj!��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM=hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj��ubj# ��)Åî}î(hhh]îhK)Åî}î(håKLog the current user out and destroy the associated session. No parameters.îh]îhåKLog the current user out and destroy the associated session. No parameters.îÖîÅî}î(hj:��hj8��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM=hj5��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håqueryîh]îhåqueryîÖîÅî}î(hjZ��hjX��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM?hjU��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjR��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håHPerform a free text query. For an example, please see Searching Metacat.îh]îhåHPerform a free text query. For an example, please see Searching Metacat.îÖîÅî}î(hjq��hjo��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM?hjl��ubhK)Åî}î(hXL��``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.îh]î(jï��)Åî}î(hå``returndoctype``îh]îhå returndoctypeîÖîÅî}î(hhhjÅ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhåV - the doctype to use for your Package View. For more information about packages, see îÖîÅî}î(håV - the doctype to use for your Package View. For more information about packages, see îhj}��ubhP)Åî}î(hå<http://knb.ecoinformatics.org/software/metacat/packages.htmlîh]îhå<http://knb.ecoinformatics.org/software/metacat/packages.htmlîÖîÅî}î(hhhjî��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîjñ��uh+hOhj}��ubhå îÖîÅî}î(hå îhj}��ubjï��)Åî}î(hå``qformat``îh]îhåqformatîÖîÅî}î(hhhj®��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhåx - the format of the returned result set. Possible values are html or xml or the name of your servlet‚Äôs Metacat skin. îÖîÅî}î(håv - the format of the returned result set. Possible values are html or xml or the name of your servlet's Metacat skin. îhj}��ubjï��)Åî}î(hå``querytitle``îh]îhå querytitleîÖîÅî}î(hhhjª��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhå% - OPTIONAL - the title of the query îÖîÅî}î(hå% - OPTIONAL - the title of the query îhj}��ubjï��)Åî}î(hå``doctype``îh]îhådoctypeîÖîÅî}î(hhhjŒ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhå¯ - 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 îÖîÅî}î(hå¯ - 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 îhj}��ubjï��)Åî}î(hå``returnfield``îh]îhåreturnfieldîÖîÅî}î(hhhj·��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhå6 - a custom field to be returned by any hit document. îÖîÅî}î(hå6 - a custom field to be returned by any hit document. îhj}��ubjï��)Åî}î(hå``operator``îh]îhåoperatorîÖîÅî}î(hhhjÙ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhåW - the Boolean operator to apply to the query. Possible values are: union or intersect îÖîÅî}î(håW - the Boolean operator to apply to the query. Possible values are: union or intersect îhj}��ubjï��)Åî}î(hå``searchmode``îh]îhå searchmodeîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhå≥ - 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. îÖîÅî}î(hå≥ - 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. îhj}��ubjï��)Åî}î(hå``anyfield``îh]îhåanyfieldîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhåu - a free-text search variable. The value placed in this parameter will be searched for in any document in any node. îÖîÅî}î(håu - a free-text search variable. The value placed in this parameter will be searched for in any document in any node. îhj}��ubjï��)Åî}î(hå``pagesize``îh]îhåpagesizeîÖîÅî}î(hhhj-��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhåä - 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. îÖîÅî}î(håä - 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. îhj}��ubjï��)Åî}î(hå ``pagestart``îh]îhå pagestartîÖîÅî}î(hhhj@��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj}��ubhåd - the displayed search results page (e.g, 1). Used with pagesize. See section 4.3.4 for an example.îÖîÅî}î(håd - the displayed search results page (e.g, 1). Used with pagesize. See section 4.3.4 for an example.îhj}��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMAhjl��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjR��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håreadîh]îhåreadîÖîÅî}î(hjm��hjk��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMLhjh��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hje��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håmGet a document from the database and return it in the specified format. See Searching Metacat for an example.îh]îhåmGet a document from the database and return it in the specified format. See Searching Metacat for an example.îÖîÅî}î(hjÑ��hjÇ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMLhj��ubhK)Åî}î(hå¡``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.îh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhjî��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjê��ubhå' - the docid of the document to return îÖîÅî}î(hå' - the docid of the document to return îhjê��ubjï��)Åî}î(hå``qformat``îh]îhåqformatîÖîÅî}î(hhhjß��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjê��ubhå> - the format to return the document in. Possible values are: îÖîÅî}î(hå> - the format to return the document in. Possible values are: îhjê��ubjï��)Åî}î(hå``html``îh]îhåhtmlîÖîÅî}î(hhhj∫��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjê��ubhå, îÖîÅî}î(hå, îhjê��ubjï��)Åî}î(hå``xml``îh]îhåxmlîÖîÅî}î(hhhjÕ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjê��ubhå7,or, if your Metacat uses a skin, the name of the skin.îÖîÅî}î(hå7,or, if your Metacat uses a skin, the name of the skin.îhjê��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMNhj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hje��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håreadinlinedataîh]îhåreadinlinedataîÖîÅî}î(hj˙��hj¯��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMQhjı��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÚ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håRead inline data only.îh]îhåRead inline data only.îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMQhj��ubhK)Åî}î(hå4``inlinedataid`` - the id of the inline data to readîh]î(jï��)Åî}î(hå``inlinedataid``îh]îhåinlinedataidîÖîÅî}î(hhhj!��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå$ - the id of the inline data to readîÖîÅî}î(hå$ - the id of the inline data to readîhj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMShj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÚ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå setaccessîh]îhå setaccessîÖîÅî}î(hjN��hjL��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMUhjI��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjF��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå=Change access permissions for a user on a specified document.îh]îhå=Change access permissions for a user on a specified document.îÖîÅî}î(hje��hjc��ubaï�������h}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMUhj`��ubhK)Åî}î(hXC��``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)îh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhju��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjq��ubhå- - the docid of the document to be modified. îÖîÅî}î(hå- - the docid of the document to be modified. îhjq��ubjï��)Åî}î(hå ``principal``îh]îhå principalîÖîÅî}î(hhhjà��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjq��ubhå8 - the user or group whose permissions will be modified îÖîÅî}î(hå8 - the user or group whose permissions will be modified îhjq��ubjï��)Åî}î(hå``permission``îh]îhå permissionîÖîÅî}î(hhhjõ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjq��ubhå- - the permission to set (read, write, all) îÖîÅî}î(hå- - the permission to set (read, write, all) îhjq��ubjï��)Åî}î(hå``permType``îh]îhåpermTypeîÖîÅî}î(hhhjÆ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjq��ubhå/ - the type of permission to set (allow, deny) îÖîÅî}î(hå/ - the type of permission to set (allow, deny) îhjq��ubjï��)Åî}î(hå ``permOrder``îh]îhå permOrderîÖîÅî}î(hhhj¡��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjq��ubhåE - the order in which to apply the permission (allowFirst, denyFirst)îÖîÅî}î(håE - the order in which to apply the permission (allowFirst, denyFirst)îhjq��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMWhj`��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjF��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå spatial_queryîh]îhå spatial_queryîÖîÅî}î(hjÓ��hjÏ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM]hjÈ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÊ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håñPerform a spatial query. These queries may include any of the queries supported by the WFS / WMS standards. For more information, see Spatial Queries.îh]îhåñPerform a spatial query. These queries may include any of the queries supported by the WFS / WMS standards. For more information, see Spatial Queries.îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM]hj���ubhK)Åî}î(håè``xmax`` - max x spatial coordinate ``ymax`` - max y spatial coordinate ``xmin`` - min x spatial coordinate ``ymin`` - min y spatial coordinateîh]î(jï��)Åî}î(hå``xmax``îh]îhåxmaxîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå - max x spatial coordinate îÖîÅî}î(hå - max x spatial coordinate îhj��ubjï��)Åî}î(hå``ymax``îh]îhåymaxîÖîÅî}î(hhhj(��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå - max y spatial coordinate îÖîÅî}î(hå - max y spatial coordinate îhj��ubjï��)Åî}î(hå``xmin``îh]îhåxminîÖîÅî}î(hhhj;��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå - min x spatial coordinate îÖîÅî}î(hå - min x spatial coordinate îhj��ubjï��)Åî}î(hå``ymin``îh]îhåyminîÖîÅî}î(hhhjN��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå - min y spatial coordinateîÖîÅî}î(hå - min y spatial coordinateîhj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM`hj���ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÊ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håsqueryîh]îhåsqueryîÖîÅî}î(hj{��hjy��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMehjv��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjs��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håIPerform a structured query. For an example, please see Searching Metacat.îh]îhåIPerform a structured query. For an example, please see Searching Metacat.îÖîÅî}î(hjí��hjê��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMehjç��ubhK)Åî}î(håÆ``query`` - the text of the pathquery document sent to the server ``qformat`` - the format to return the results in. Possible values are: ``xml``, or the name of the a skin.îh]î(jï��)Åî}î(hå ``query``îh]îhåqueryîÖîÅî}î(hhhj¢��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjû��ubhå9 - the text of the pathquery document sent to the server îÖîÅî}î(hå9 - the text of the pathquery document sent to the server îhjû��ubjï��)Åî}î(hå``qformat``îh]îhåqformatîÖîÅî}î(hhhjµ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjû��ubhå> - the format to return the results in. Possible values are: îÖîÅî}î(hå> - the format to return the results in. Possible values are: îhjû��ubjï��)Åî}î(hå``xml``îh]îhåxmlîÖîÅî}î(hhhj»��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjû��ubhå, or the name of the a skin.îÖîÅî}î(hå, or the name of the a skin.îhjû��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMghjç��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjs��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håupdateîh]îhåupdateîÖîÅî}î(hjı��hjÛ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMjhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÌ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håƒ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.îh]îhåƒ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.îÖîÅî}î(hj��hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMjhj��ubhK)Åî}î(hål``docid`` - the docid of the document to update ``doctext`` - the text with which to update the XML documentîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå' - the docid of the document to update îÖîÅî}î(hå' - the docid of the document to update îhj��ubjï��)Åî}î(hå``doctext``îh]îhådoctextîÖîÅî}î(hhhj/��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå1 - the text with which to update the XML documentîÖîÅî}î(hå1 - the text with which to update the XML documentîhj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMnhj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÌ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håuploadîh]îhåuploadîÖîÅî}î(hj\��hjZ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMqhjW��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjT��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå∞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.îh]îhå∞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.îÖîÅî}î(hjs��hjq��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMqhjn��ubhK)Åî}î(håW``docid`` - the docid of the data file to upload ``datafile`` - the data file to uploadîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhjÉ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå( - the docid of the data file to upload îÖîÅî}î(hå( - the docid of the data file to upload îhj��ubjï��)Åî}î(hå``datafile``îh]îhådatafileîÖîÅî}î(hhhjñ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå - the data file to uploadîÖîÅî}î(hå - the data file to uploadîhj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMthjn��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjT��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håvalidateîh]îhåvalidateîÖîÅî}î(hj√��hj¡��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMwhjæ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjª��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå.Validate a specified document against its DTD.îh]îhå.Validate a specified document against its DTD.îÖîÅî}î(hj⁄��hjÿ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMwhj’��ubhK)Åî}î(håj``docid`` - the docid of the document to validate ``valtext`` - the DTD by which to validate this documentîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhjÍ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÊ��ubhå) - the docid of the document to validate îÖîÅî}î(hå) - the docid of the document to validate îhjÊ��ubjï��)Åî}î(hå``valtext``îh]îhåvaltextîÖîÅî}î(hhhj˝��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÊ��ubhå- - the DTD by which to validate this documentîÖîÅî}î(hå- - the DTD by which to validate this documentîhjÊ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMyhj’��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjª��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj` ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j^ ��hjˇ��ubeh}î(h]îh!]îh#]îh%]îh']îåcolsîKuh+j˝��hj˙��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¯��hjü��hhhh,hNubhK)Åî}î(håMetacat Replication Parametersîh]îhåMetacat Replication ParametersîÖîÅî}î(hj7��hj5��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM~hjü��hhubj˘��)Åî}î(hhh]îj˛��)Åî}î(hhh]î(j ��)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîKuh+j ��hjF��ubj ��)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîK°uh+j ��hjF��ubj ��)Åî}î(hhh]îj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håActionîh]îhåActionîÖîÅî}î(hjh��hjf��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÅhjc��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj`��ubj# ��)Åî}î(hhh]îhK)Åî}î(håDescription and Parametersîh]îhåDescription and ParametersîÖîÅî}î(hj��hj}��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÅhjz��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj`��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj]��ubah}î(h]îh!]îh#]îh%]îh']îuh+j ��hjF��ubj_ ��)Åî}î(hhh]î(j ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håforcereplicateîh]îhåforcereplicateîÖîÅî}î(hj®��hj¶��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÉhj£��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj†��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håJForce the local server to get the specified document from the remote host.îh]îhåJForce the local server to get the specified document from the remote host.îÖîÅî}î(hjø��hjΩ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÉhj∫��ubhK)Åî}î(håø``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)îh]î(jï��)Åî}î(hå ``server``îh]îhåserverîÖîÅî}î(hhhjœ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÀ��ubhå3 - The server to which this document is being sent îÖîÅî}î(hå3 - The server to which this document is being sent îhjÀ��ubjï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj‚��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÀ��ubhå% - The docid of the document to send îÖîÅî}î(hå% - The docid of the document to send îhjÀ��ubjï��)Åî}î(hå``dbaction``îh]îhådbactionîÖîÅî}î(hhhjı��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÀ��ubhåH - The action to perform on the document: insert or update (the default)îÖîÅî}î(håH - The action to perform on the document: insert or update (the default)îhjÀ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÖhj∫��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj†��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetallîh]îhågetallîÖîÅî}î(hj"��hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMâhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj��ubj# ��)Åî}î(hhh]îhK)Åî}î(håWForce the local server to check all known servers for updated documents. No parameters.îh]îhåWForce the local server to check all known servers for updated documents. No parameters.îÖîÅî}î(hj9��hj7��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMâhj4��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå getcatalogîh]îhå getcatalogîÖîÅî}î(hjY��hjW��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMãhjT��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjQ��ubj# ��)Åî}î(hhh]îhK)Åî}î(håISend the contents of the xml_catalog table encoded in XML. No parameters.îh]îhåISend the contents of the xml_catalog table encoded in XML. No parameters.îÖîÅî}î(hjp��hjn��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMãhjk��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjQ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetlockîh]îhågetlockîÖîÅî}î(hjê��hjé��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMçhjã��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjà��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå)Request a lock on the specified document.îh]îhå)Request a lock on the specified document.îÖîÅî}î(hjß��hj•��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMçhj¢��ubhK)Åî}î(håR``docid`` - the docid of the document ``updaterev`` - the revision number of docidîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj∑��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj≥��ubhå - the docid of the document îÖîÅî}î(hå - the docid of the document îhj≥��ubjï��)Åî}î(hå ``updaterev``îh]îhå updaterevîÖîÅî}î(hhhj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj≥��ubhå - the revision number of docidîÖîÅî}î(hå - the revision number of docidîhj≥��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMèhj¢��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjà��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågettimeîh]îhågettimeîÖîÅî}î(hj˜��hjı��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMíhjÚ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÔ��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå4Return the local time on this server. No parameters.îh]îhå4Return the local time on this server. No parameters.îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMíhj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjÔ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå servercontrolîh]îhå servercontrolîÖîÅî}î(hj.��hj,��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMîhj)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj&��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håDPerform the specified replication control on the Replication daemon.îh]îhåDPerform the specified replication control on the Replication daemon.îÖîÅî}î(hjE��hjC��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMîhj@��ubhK)Åî}î(hXF��``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îh]î(jï��)Åî}î(hå``add``îh]îhåaddîÖîÅî}î(hhhjU��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjQ��ubhå, - add a new server to the replication list îÖîÅî}î(hå, - add a new server to the replication list îhjQ��ubjï��)Åî}î(hå ``delete``îh]îhådeleteîÖîÅî}î(hhhjh��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjQ��ubhå- - remove a server from the replication list îÖîÅî}î(hå- - remove a server from the replication list îhjQ��ubjï��)Åî}î(hå``list``îh]îhålistîÖîÅî}î(hhhj{��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjQ��ubhå8 - list all of the servers currently in the server list îÖîÅî}î(hå8 - list all of the servers currently in the server list îhjQ��ubjï��)Åî}î(hå ``replicate``îh]îhå replicateîÖîÅî}î(hhhjé��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjQ��ubhåj - a Boolean flag (1 or 0) which determines if this server should copy files from the newly added server. îÖîÅî}î(håj - a Boolean flag (1 or 0) which determines if this server should copy files from the newly added server. îhjQ��ubjï��)Åî}î(hå ``server``îh]îhåserverîÖîÅî}î(hhhj°��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjQ��ubhå - the server to add/deleteîÖîÅî}î(hå - the server to add/deleteîhjQ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMñhj@��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj&��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håreadîh]îhåreadîÖîÅî}î(hjŒ��hjÃ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMúhj…��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∆��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håSends docid to the remote host.îh]îhåSends docid to the remote host.îÖîÅî}î(hjÂ��hj„��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMúhj‡��ubhK)Åî}î(hå-``docid`` - the docid of the document to readîh]î(jï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhjı��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÒ��ubhå$ - the docid of the document to readîÖîÅî}î(hå$ - the docid of the document to readîhjÒ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMûhj‡��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∆��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håstartîh]îhåstartîÖîÅî}î(hj"��hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM†hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå<Start the Replication daemon with a time interval of deltaT.îh]îhå<Start the Replication daemon with a time interval of deltaT.îÖîÅî}î(hj9��hj7��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM†hj4��ubhK)Åî}î(håü``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îh]î(jï��)Åî}î(hå``rate``îh]îhårateîÖîÅî}î(hhhjI��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjE��ubhåó - 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îÖîÅî}î(håó - 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îhjE��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM¢hj4��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håstopîh]îhåstopîÖîÅî}î(hjv��hjt��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM§hjq��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjn��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå+Stop the Replication daemon. No parameters.îh]îhå+Stop the Replication daemon. No parameters.îÖîÅî}î(hjç��hjã��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM§hjà��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjn��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håupdateîh]îhåupdateîÖîÅî}î(hj≠��hj´��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM¶hj®��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj•��ubj# ��)Åî}î(hhh]îhK)Åî}î(håbSend a list of all documents on the local server along with their revision numbers. No parameters.îh]îhåbSend a list of all documents on the local server along with their revision numbers. No parameters.îÖîÅî}î(hjƒ��hj¬��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM¶hjø��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj•��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjù��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j^ ��hjF��ubeh}î(h]îh!]îh#]îh%]îh']îåcolsîKuh+j˝��hjC��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¯��hjü��hhhh,hNubeh}î(h]îjW��ah!]îh#]îåsupported actionsîah%]îh']îuh+h hjÌ��hhhh,hKÊubh )Åî}î(hhh]î(h)Åî}î(hjq��h]îhå Logging InîÖîÅî}î(hjq��hj˘��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)jt��uh+hhjˆ��hhhh,hM™ubhK)Åî}î(hå/To log in to Metacat, use the ``login`` action.îh]î(håTo log in to Metacat, use the îÖîÅî}î(håTo log in to Metacat, use the îhj��hhhNhNubjï��)Åî}î(hå ``login``îh]îhåloginîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå action.îÖîÅî}î(hå action.îhj��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM´hjˆ��hhubhK)Åî}î(håà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.îh]îhåà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.îÖîÅî}î(hj*��hj(��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM≠hjˆ��hhubjò��)Åî}î(hhh]î(jù��)Åî}î(håk.. figure:: images/screenshots/image039.jpg :align: center Logging into Metacat using an HTML form. îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image039.jpgîj™��}îj0��jD��suh+jú��hj6��hh,hM≥ubj≠��)Åî}î(hå(Logging into Metacat using an HTML form.îh]îhå(Logging into Metacat using an HTML form.îÖîÅî}î(hjH��hjF��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hM≥hj6��ubeh}î(h]îåid4îah!]îh#]îh%]îh']îj√��åcenterîuh+jó��hM≥hjˆ��hhhh,ubjB��)Åî}î(hX- ��<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>— choose one —</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"> </td> </tr> </table> </td> </tr> </table> </form> </body> </html>îh]îhX- ��<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>— choose one —</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"> </td> </tr> </table> </td> </tr> </table> </form> </body> </html>îÖîÅî}î(hhhj\��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hM∑hjˆ��hhhh,ubeh}î(h]îjz��ah!]îh#]îå logging inîah%]îh']îuh+h hjÌ��hhhh,hM™ubh )Åî}î(hhh]î(h)Åî}î(hjî��h]îhå8Inserting, Updating, and Deleting XML and Data DocumentsîÖîÅî}î(hjî��hjt��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)jó��uh+hhjq��hhhh,hM¸ubhK)Åî}î(hX��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.îh]îhX��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.îÖîÅî}î(hjÉ��hjÅ��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM˝hjq��hhubh�ådefinition_listîìî)Åî}î(hhh]î(h�ådefinition_list_itemîìî)Åî}î(hå[``insert`` Insert a new XML or data document into Metacat. You must specify a document ID. îh]î(h�återmîìî)Åî}î(hå ``insert``îh]îjï��)Åî}î(hjû��h]îhåinsertîÖîÅî}î(hhhj†��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjú��ubah}î(h]îh!]îh#]îh%]îh']îuh+jö��hh,hMhjñ��ubh�å definitionîìî)Åî}î(hhh]îhK)Åî}î(håOInsert a new XML or data document into Metacat. You must specify a document ID.îh]îhåOInsert a new XML or data document into Metacat. You must specify a document ID.îÖîÅî}î(hj∫��hj∏��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjµ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j≥��hjñ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+jî��hh,hMhjë��ubjï��)Åî}î(håe``update`` Update an existing Metacat document. The original document is archived, then overwritten. îh]î(jõ��)Åî}î(hå ``update``îh]îjï��)Åî}î(hjÿ��h]îhåupdateîÖîÅî}î(hhhj⁄��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj÷��ubah}î(h]îh!]îh#]îh%]îh']îuh+jö��hh,hMhj“��ubj¥��)Åî}î(hhh]îhK)Åî}î(håYUpdate an existing Metacat document. The original document is archived, then overwritten.îh]îhåYUpdate an existing Metacat document. The original document is archived, then overwritten.îÖîÅî}î(hjÚ��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjÌ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j≥��hj“��ubeh}î(h]îh!]îh#]îh%]îh']îuh+jî��hh,hMhjë��hhubjï��)Åî}î(hXI��``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. No further updates will be allowed for the Metacat document that was "deleted". All revisions of this identifier are no longer public. îh]î(jõ��)Åî}î(hå ``delete``îh]îjï��)Åî}î(hj��h]îhådeleteîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jö��hh,hMhj ��ubj¥��)Åî}î(hhh]îhK)Åî}î(hX=��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. No further updates will be allowed for the Metacat document that was "deleted". All revisions of this identifier are no longer public.îh]îhXE��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. No further updates will be allowed for the Metacat document that was ‚Äúdeleted‚Äù. All revisions of this identifier are no longer public.îÖîÅî}î(hj*��hj(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hj%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j≥��hj ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+jî��hh,hMhjë��hhubeh}î(h]îh!]îh#]îh%]îh']îuh+jè��hjq��hhhh,hNubh�åwarningîìî)Åî}î(håcIt is not possible to "delete" one revision without "deleting" all revisions of a given identifier.îh]îhK)Åî}î(håcIt is not possible to "delete" one revision without "deleting" all revisions of a given identifier.îh]îhåkIt is not possible to ‚Äúdelete‚Äù one revision without ‚Äúdeleting‚Äù all revisions of a given identifier.îÖîÅî}î(hjP��hjN��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjJ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jH��hjq��hhhh,hNubhK)Åî}î(håÜ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.îh]îhåÜ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.îÖîÅî}î(hjd��hjb��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhjq��hhubjò��)Åî}î(hhh]î(jù��)Åî}î(håó.. figure:: images/screenshots/image041.jpg :align: center An example of a Web form used to insert, delete, or update XML documents in Metacat. îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image041.jpgîj™��}îj0��j~��suh+jú��hjp��hh,hMubj≠��)Åî}î(håTAn example of a Web form used to insert, delete, or update XML documents in Metacat.îh]îhåTAn example of a Web form used to insert, delete, or update XML documents in Metacat.îÖîÅî}î(hjÇ��hjÄ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hMhjp��ubeh}î(h]îåid5îah!]îh#]îh%]îh']îj√��åcenterîuh+jó��hMhjq��hhhh,ubjB��)Åî}î(hX8��<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>îh]îhX8��<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>îÖîÅî}î(hhhjñ��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hMhjq��hhhh,ubeh}î(h]îjù��ah!]îh#]îå8inserting, updating, and deleting xml and data documentsîah%]îh']îuh+h hjÌ��hhhh,hM¸ubh )Åî}î(hhh]î(h)Åî}î(hj∑��h]îhåSearching MetacatîÖîÅî}î(hj∑��hjÆ��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)j∫��uh+hhj´��hhhh,hM;ubhK)Åî}î(hå:To search Metacat use the ``query`` or ``squery`` actions.îh]î(håTo search Metacat use the îÖîÅî}î(håTo search Metacat use the îhjª��hhhNhNubjï��)Åî}î(hå ``query``îh]îhåqueryîÖîÅî}î(hhhjƒ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjª��ubhå or îÖîÅî}î(hå or îhjª��hhhNhNubjï��)Åî}î(hå ``squery``îh]îhåsqueryîÖîÅî}î(hhhj◊��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjª��ubhå actions.îÖîÅî}î(hå actions.îhjª��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM<hj´��hhubjê��)Åî}î(hhh]î(jï��)Åî}î(hå¢``query``: Perform a free text query. Specify the returndoctype, qformat, returnfield, operator, searchmode, anyfield, and (optionally) a querytitle and doctype. îh]î(jõ��)Åî}î(hå ``query``:îh]î(jï��)Åî}î(hå ``query``îh]îhåqueryîÖîÅî}î(hhhj˚��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj˜��ubhå:îÖîÅî}î(hå:îhj˜��ubeh}î(h]îh!]îh#]îh%]îh']îuh+jö��hh,hM@hjÛ��ubj¥��)Åî}î(hhh]îhK)Åî}î(håñPerform a free text query. Specify the returndoctype, qformat, returnfield, operator, searchmode, anyfield, and (optionally) a querytitle and doctype.îh]îhåñPerform a free text query. Specify the returndoctype, qformat, returnfield, operator, searchmode, anyfield, and (optionally) a querytitle and doctype.îÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM?hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+j≥��hjÛ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+jî��hh,hM@hj��ubjï��)Åî}î(håg``squery``: Perform a structured query by submitting an XML pathquery document to the Metacat server. îh]î(jõ��)Åî}î(hå``squery``:îh]î(jï��)Åî}î(hå ``squery``îh]îhåsqueryîÖîÅî}î(hhhj9��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj5��ubhå:îÖîÅî}î(hj ��hj5��ubeh}î(h]îh!]îh#]îh%]îh']îuh+jö��hh,hMEhj1��ubj¥��)Åî}î(hhh]îhK)Åî}î(håYPerform a structured query by submitting an XML pathquery document to the Metacat server.îh]îhåYPerform a structured query by submitting an XML pathquery document to the Metacat server.îÖîÅî}î(hjV��hjT��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMChjQ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j≥��hj1��ubeh}î(h]îh!]îh#]îh%]îh']îuh+jî��hh,hMEhj��hhubeh}î(h]îh!]îh#]îh%]îh']îuh+jè��hj´��hhhh,hNubhK)Åî}î(hX!��When Metacat receives a query via HTTP (screenshot below), the server creates a "pathquery" document, which is an XML document populated with the specified search criteria. The pathquery document is then translated into SQL statements that are executed against the database. 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.îh]îhX)��When Metacat receives a query via HTTP (screenshot below), the server creates a ‚Äúpathquery‚Äù document, which is an XML document populated with the specified search criteria. The pathquery document is then translated into SQL statements that are executed against the database. 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.îÖîÅî}î(hjv��hjt��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMGhj´��hhubjò��)Åî}î(hhh]î(jù��)Åî}î(hå±.. figure:: images/screenshots/image043.jpg :align: center Example of a basic search form using a query action. The HTML code used to create the form is displayed below. îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image043.jpgîj™��}îj0��jê��suh+jú��hjÇ��hh,hMSubj≠��)Åî}î(hånExample of a basic search form using a query action. The HTML code used to create the form is displayed below.îh]îhånExample of a basic search form using a query action. The HTML code used to create the form is displayed below.îÖîÅî}î(hjî��hjí��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hMShjÇ��ubeh}î(h]îåid6îah!]îh#]îh%]îh']îj√��åcenterîuh+jó��hMShj´��hhhh,ubjB��)Åî}î(hXa��<html> <head> <title>Search</title> </head> <body> <form method="POST" action="http://panucci.nceas.ucsb.edu/metacat/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>îh]îhXa��<html> <head> <title>Search</title> </head> <body> <form method="POST" action="http://panucci.nceas.ucsb.edu/metacat/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>îÖîÅî}î(hhhj®��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hMWhj´��hhhh,ubhK)Åî}î(hå≈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.îh]îhå«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.îÖîÅî}î(hj∏��hj∂��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMshj´��hhubjB��)Åî}î(hX��<pathquery version="1.0"> <meta_file_id>unspecified</meta_file_id> <querytitle>unspecified</querytitle> <returnfield>dataset/title</returnfield> <returnfield>keyword</returnfield> <returnfield>dataset/creator/individualName/surName</returnfield> <returndoctype>eml://ecoinformatics.org/eml-2.1.0</returndoctype> <returndoctype>eml://ecoinformatics.org/eml-2.0.1</returndoctype> <returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype> <querygroup operator="UNION"> <queryterm casesensitive="true" searchmode="contains"> <value>Charismatic megafauna</value> <pathexpr>dataset/title</pathexpr> </queryterm> <queryterm casesensitive="false" searchmode="starts-with"> <value>sea otter</value> <pathexpr>keyword</pathexpr> </queryterm> <queryterm casesensitive="false" searchmode="contains"> <value>Enhydra</value> <pathexpr>abstract/para</pathexpr> </queryterm> </querygroup> </pathquery> </pathquery>îh]îhX��<pathquery version="1.0"> <meta_file_id>unspecified</meta_file_id> <querytitle>unspecified</querytitle> <returnfield>dataset/title</returnfield> <returnfield>keyword</returnfield> <returnfield>dataset/creator/individualName/surName</returnfield> <returndoctype>eml://ecoinformatics.org/eml-2.1.0</returndoctype> <returndoctype>eml://ecoinformatics.org/eml-2.0.1</returndoctype> <returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype> <querygroup operator="UNION"> <queryterm casesensitive="true" searchmode="contains"> <value>Charismatic megafauna</value> <pathexpr>dataset/title</pathexpr> </queryterm> <queryterm casesensitive="false" searchmode="starts-with"> <value>sea otter</value> <pathexpr>keyword</pathexpr> </queryterm> <queryterm casesensitive="false" searchmode="contains"> <value>Enhydra</value> <pathexpr>abstract/para</pathexpr> </queryterm> </querygroup> </pathquery> </pathquery>îÖîÅî}î(hhhjƒ��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hMyhj´��hhhh,ubhK)Åî}î(håüEach ``<returnfield>`` parameter specifies a field that the database will return (in addition to the fields Metacat returns by default) for each search result.îh]î(håEach îÖîÅî}î(håEach îhj“��hhhNhNubjï��)Åî}î(hå``<returnfield>``îh]îhå <returnfield>îÖîÅî}î(hhhj€��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj“��ubhåâ parameter specifies a field that the database will return (in addition to the fields Metacat returns by default) for each search result.îÖîÅî}î(håâ parameter specifies a field that the database will return (in addition to the fields Metacat returns by default) for each search result.îhj“��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMìhj´��hhubhK)Åî}î(hå‚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.îh]î(håThe îÖîÅî}î(håThe îhjÙ��hhhNhNubjï��)Åî}î(hå``<returndoctype>``îh]îhå<returndoctype>îÖîÅî}î(hhhj˝��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÙ��ubhåÀ 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.îÖîÅî}î(håÀ 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.îhjÙ��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMóhj´��hhubhK)Åî}î(hX6��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.îh]î(håA îÖîÅî}î(håA îhj��hhhNhNubjï��)Åî}î(hå``<querygroup>``îh]îhå<querygroup>îÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå> creates an AND or an OR statement that applies to the nested îÖîÅî}î(hå> creates an AND or an OR statement that applies to the nested îhj��hhhNhNubjï��)Åî}î(hå``<queryterm>``îh]îhå<queryterm>îÖîÅî}î(hhhj2��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå< tags. The querygroup operator can be UNION or INTERSECT. A îÖîÅî}î(hå< tags. The querygroup operator can be UNION or INTERSECT. A îhj��hhhNhNubjï��)Åî}î(hå``<queryterm>``îh]îhå<queryterm>îÖîÅî}î(hhhjE��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå( defines the actual field (contained in îÖîÅî}î(hå( defines the actual field (contained in îhj��hhhNhNubjï��)Åî}î(hå``<pathexpr>``îh]îhå <pathexpr>îÖîÅî}î(hhhjX��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå1 tags) against which the query (contained in the îÖîÅî}î(hå1 tags) against which the query (contained in the îhj��hhhNhNubjï��)Åî}î(hå``<value>``îh]îhå<value>îÖîÅî}î(hhhjk��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå tags) is being performed.îÖîÅî}î(hå tags) is being performed.îhj��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMõhj´��hhubhK)Åî}î(hXF��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.îh]î(håThe îÖîÅî}î(håThe îhjÑ��hhhNhNubjï��)Åî}î(hå``<pathexpr>``îh]îhå <pathexpr>îÖîÅî}î(hhhjç��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÑ��ubhå7 can also contain a document type keyword contained in îÖîÅî}î(hå7 can also contain a document type keyword contained in îhjÑ��hhhNhNubjï��)Åî}î(hå``<returndoc>``îh]îhå<returndoc>îÖîÅî}î(hhhj†��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÑ��ubhX�� 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.îÖîÅî}î(hXÓ�� 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.îhjÑ��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM†hj´��hhubhK)Åî}î(håRAfter Metacat has processed a Pathquery document, it returns a resultset document.îh]îhåRAfter Metacat has processed a Pathquery document, it returns a resultset document.îÖîÅî}î(hjª��hjπ��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM©hj´��hhubjB��)Åî}î(hX3 ��<resultset> <query> <pathquery version="1.0"> <meta_file_id>unspecified</meta_file_id> <querytitle>unspecified</querytitle> <returnfield>dataset/title</returnfield> <returnfield>keyword</returnfield> <returnfield>dataset/creator/individualName/surName</returnfield> <returndoctype>eml://ecoinformatics.org/eml-2.1.0</returndoctype> <returndoctype>eml://ecoinformatics.org/eml-2.0.1</returndoctype> <returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype> <querygroup operator="UNION"> <queryterm casesensitive="true" searchmode="contains"> <value>Charismatic megafauna</value> <pathexpr>dataset/title</pathexpr> </queryterm> <queryterm casesensitive="false" searchmode="starts-with"> <value>sea otter</value> <pathexpr>keyword</pathexpr> </queryterm> <queryterm casesensitive="false" searchmode="contains"> <value>Enhydra</value> <pathexpr>abstract/para</pathexpr> </queryterm> </querygroup> </pathquery> </query> <document> <docid>nrs.569.3</docid> <docname>eml</docname> <doctype>eml://ecoinformatics.org/eml-2.0.0</doctype> <createdate>2012-06-06</createdate> <updatedate>2012-06-06</updatedate> <param name="dataset/title">Marine Mammal slides</param> <param name="creator/individualName/surName">Bancroft</param> </document> <document> <docid>knb-lter-sbc.61.1</docid> <docname>eml</docname> <doctype>eml://ecoinformatics.org/eml-2.1.0</doctype> <createdate>2012-06-06</createdate> <updatedate>2012-06-06</updatedate> <param name="dataset/creator/individualName/surName">Nelson</param> <param name="dataset/creator/individualName/surName">Harrer</param> <param name="dataset/creator/individualName/surName">Reed</param> <param name="dataset/title">SBC LTER: Reef: Sightings of Sea Otters (Enhydra lutris) near Santa Barbara and Channel Islands, ongoing since 2007</param> </document> ..... </resultset>îh]îhX3 ��<resultset> <query> <pathquery version="1.0"> <meta_file_id>unspecified</meta_file_id> <querytitle>unspecified</querytitle> <returnfield>dataset/title</returnfield> <returnfield>keyword</returnfield> <returnfield>dataset/creator/individualName/surName</returnfield> <returndoctype>eml://ecoinformatics.org/eml-2.1.0</returndoctype> <returndoctype>eml://ecoinformatics.org/eml-2.0.1</returndoctype> <returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype> <querygroup operator="UNION"> <queryterm casesensitive="true" searchmode="contains"> <value>Charismatic megafauna</value> <pathexpr>dataset/title</pathexpr> </queryterm> <queryterm casesensitive="false" searchmode="starts-with"> <value>sea otter</value> <pathexpr>keyword</pathexpr> </queryterm> <queryterm casesensitive="false" searchmode="contains"> <value>Enhydra</value> <pathexpr>abstract/para</pathexpr> </queryterm> </querygroup> </pathquery> </query> <document> <docid>nrs.569.3</docid> <docname>eml</docname> <doctype>eml://ecoinformatics.org/eml-2.0.0</doctype> <createdate>2012-06-06</createdate> <updatedate>2012-06-06</updatedate> <param name="dataset/title">Marine Mammal slides</param> <param name="creator/individualName/surName">Bancroft</param> </document> <document> <docid>knb-lter-sbc.61.1</docid> <docname>eml</docname> <doctype>eml://ecoinformatics.org/eml-2.1.0</doctype> <createdate>2012-06-06</createdate> <updatedate>2012-06-06</updatedate> <param name="dataset/creator/individualName/surName">Nelson</param> <param name="dataset/creator/individualName/surName">Harrer</param> <param name="dataset/creator/individualName/surName">Reed</param> <param name="dataset/title">SBC LTER: Reef: Sightings of Sea Otters (Enhydra lutris) near Santa Barbara and Channel Islands, ongoing since 2007</param> </document> ..... </resultset>îÖîÅî}î(hhhj«��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hM≠hj´��hhhh,ubhK)Åî}î(håæ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.îh]îhåæ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.îÖîÅî}î(hj◊��hj’��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM·hj´��hhubhK)Åî}î(hXë��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.îh]î(hå<Each XML document returned by the query is represented by a îÖîÅî}î(hå<Each XML document returned by the query is represented by a îhj„��hhhNhNubjï��)Åî}î(hå``<document>``îh]îhå <document>îÖîÅî}î(hhhjÏ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj„��ubhå≈ 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 îÖîÅî}î(hå≈ 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 îhj„��hhhNhNubjï��)Åî}î(hå``<returnfield>``îh]îhå <returnfield>îÖîÅî}î(hhhjˇ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj„��ubhå` tags (e.g., dataset/title to return the document title), the additional fields are returned in îÖîÅî}î(hå` tags (e.g., dataset/title to return the document title), the additional fields are returned in îhj„��hhhNhNubjï��)Åî}î(hå``<param>``îh]îhå<param>îÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj„��ubhå tags.îÖîÅî}î(hå tags.îhj„��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÂhj´��hhubhK)Åî}î(håJMetacat can return the XML resultset to your client as either XML or HTML.îh]îhåJMetacat can return the XML resultset to your client as either XML or HTML.îÖîÅî}î(hj-��hj+��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÎhj´��hhubeh}î(h]îj¿��ah!]îh#]îåsearching metacatîah%]îh']îuh+h hjÌ��hhhh,hM;ubh )Åî}î(hhh]î(h)Åî}î(hj⁄��h]îhåPaged Query ReturnsîÖîÅî}î(hj⁄��hjC��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)j›��uh+hhj@��hhhh,hMÓubhK)Åî}î(hXî��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.îh]îhXñ��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.îÖîÅî}î(hjR��hjP��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÔhj@��hhubjò��)Åî}î(hhh]î(jù��)Åî}î(håf.. figure:: images/screenshots/image045.jpg :align: center An example of paged search results. îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image045.jpgîj™��}îj0��jl��suh+jú��hj^��hh,hM˘ubj≠��)Åî}î(hå#An example of paged search results.îh]îhå#An example of paged search results.îÖîÅî}î(hjp��hjn��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hM˘hj^��ubeh}î(h]îåid7îah!]îh#]îh%]îh']îj√��åcenterîuh+jó��hM˘hj@��hhhh,ubhK)Åî}î(hX#��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.îh]îhX%��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.îÖîÅî}î(hjÜ��hjÑ��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM˚hj@��hhubjB��)Åî}î(hXá��<!-- 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>îh]îhXá��<!-- 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>îÖîÅî}î(hhhjí��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hMhj@��hhhh,ubhK)Åî}î(håfiThe 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.îh]îhåÍ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.îÖîÅî}î(hj¢��hj†��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj@��hhubjB��)Åî}î(hX��<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>îh]îhX��<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>îÖîÅî}î(hhhjÆ��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hMhj@��hhhh,ubhK)Åî}î(hå°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.îh]îhå°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.îÖîÅî}î(hjæ��hjº��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj@��hhubeh}î(h]îj„��ah!]îh#]îåpaged query returnsîah%]îh']îuh+h hjÌ��hhhh,hMÓubh )Åî}î(hhh]î(h)Åî}î(hj˝��h]îhåReading Data and MetadataîÖîÅî}î(hj˝��hj‘��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)j���uh+hhj—��hhhh,hMubhK)Åî}î(hX∂��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.îh]î(hå/To read data or metadata from Metacat, use the îÖîÅî}î(hå/To read data or metadata from Metacat, use the îhj·��hhhNhNubjï��)Åî}î(hå``read``îh]îhåreadîÖîÅî}î(hhhjÍ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhå action. The îÖîÅî}î(hå action. The îhj·��hhhNhNubjï��)Åî}î(hå``read``îh]îhåreadîÖîÅî}î(hhhj˝��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhå action takes two parameters: îÖîÅî}î(hå action takes two parameters: îhj·��hhhNhNubjï��)Åî}î(hå ``docid``îh]îhådocidîÖîÅî}î(hhhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhåA, which specifies the document ID of the document to return, and îÖîÅî}î(håA, which specifies the document ID of the document to return, and îhj·��hhhNhNubjï��)Åî}î(hå``qformat``îh]îhåqformatîÖîÅî}î(hhhj#��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhå6, which specifies the return format for the document (îÖîÅî}î(hå6, which specifies the return format for the document (îhj·��hhhNhNubjï��)Åî}î(hå``html``îh]îhåhtmlîÖîÅî}î(hhhj6��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhå or îÖîÅî}î(hå or îhj·��hhhNhNubjï��)Åî}î(hå``xml``îh]îhåxmlîÖîÅî}î(hhhjI��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhå. or the name of a configured style-set, e.g., îÖîÅî}î(hå. or the name of a configured style-set, e.g., îhj·��hhhNhNubjï��)Åî}î(hå``default``îh]îhådefaultîÖîÅî}î(hhhj\��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhå). If îÖîÅî}î(hå). If îhj·��hhhNhNubjï��)Åî}î(hå``qformat``îh]îhåqformatîÖîÅî}î(hhhjo��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhå is set to îÖîÅî}î(hå is set to îhj·��hhhNhNubjï��)Åî}î(hå``xml``îh]îhåxmlîÖîÅî}î(hhhjÇ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhåU, Metacat will return the XML document untransformed. If the return format is set to îÖîÅî}î(håU, Metacat will return the XML document untransformed. If the return format is set to îhj·��hhhNhNubjï��)Åî}î(hå``html``îh]îhåhtmlîÖîÅî}î(hhhjï��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj·��ubhåı, 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.îÖîÅî}î(håı, 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.îhj·��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhj—��hhubjò��)Åî}î(hhh]î(jù��)Åî}î(hå¿.. 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). îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image047.jpgîj™��}îj0��jº��suh+jú��hjÆ��hh,hM)ubj≠��)Åî}î(håzThe same document displayed using different qformat parameters (from left to right: the default style-set, XML, and HTML).îh]îhåzThe same document displayed using different qformat parameters (from left to right: the default style-set, XML, and HTML).îÖîÅî}î(hj¿��hjæ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hM)hjÆ��ubeh}î(h]îåid8îah!]îh#]îh%]îh']îj√��åcenterîuh+jó��hM)hj—��hhhh,ubhK)Åî}î(håê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::îh]î(håNote that the îÖîÅî}î(håNote that the îhj‘��hhhNhNubjï��)Åî}î(hå``read``îh]îhåreadîÖîÅî}î(hhhj›��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj‘��ubhåy action can be used to read both data files and metadata files. To read a data file, you could use the following request:îÖîÅî}î(håy action can be used to read both data files and metadata files. To read a data file, you could use the following request:îhj‘��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM,hj—��hhubjB��)Åî}î(håThttp://yourserver.com/yourcontext/metacat?action=read&docid=nceas.55&qformat=defaultîh]îhåThttp://yourserver.com/yourcontext/metacat?action=read&docid=nceas.55&qformat=defaultîÖîÅî}î(hhhjˆ��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hM/hj—��hhhh,ubhK)Åî}î(hå∂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).îh]î(håWhere îÖîÅî}î(håWhere îhj��hhhNhNubjï��)Åî}î(hå``nceas.55``îh]îhånceas.55îÖîÅî}î(hhhj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj��ubhå9 is the docid of the data file stored in the Metacat and îÖîÅî}î(hå9 is the docid of the data file stored in the Metacat and îhj��hhhNhNubjï��)Åî}î(hå``default``îh]îhådefaultîÖîÅî}î(hhhj ��ubah}î(h]îh!]îh#]îh%]îh']îuï�¥������h+jî��hj��ubhåh is the name of the style (you could also use ‚Äúhtml‚Äù or ‚Äúxml‚Äù or the name of a customized skin).îÖîÅî}î(hå` is the name of the style (you could also use "html" or "xml" or the name of a customized skin).îhj��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM1hj—��hhubjB��)Åî}î(hXr��<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>îh]îhXr��<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>îÖîÅî}î(hhhj9��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hM7hj—��hhhh,ubeh}î(h]îj��ah!]îh#]îåreading data and metadataîah%]îh']îuh+h hjÌ��hhhh,hMubeh}î(h]îj7��ah!]îh#]îå%using html forms (the http interface)îah%]îh']îuh+h hhhhhh,hK€ubh )Åî}î(hhh]î(h)Åî}î(hj,��h]îhå%Using the EarthGrid API (aka EcoGrid)îÖîÅî}î(hj,��hjX��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)j/��uh+hhjU��hhhh,hMFubh�ånoteîìî)Åî}î(hX��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.îh]îhK)Åî}î(hX��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.îh]î(hå)The EarthGrid/EcoGrid web service API is îÖîÅî}î(hå)The EarthGrid/EcoGrid web service API is îhjk��ubh�åemphasisîìî)Åî}î(hå*deprecated*îh]îhå deprecatedîÖîÅî}î(hhhjv��ubah}î(h]îh!]îh#]îh%]îh']îuh+jt��hjk��ubhå‰ 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.îÖîÅî}î(hå‰ 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.îhjk��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMJhjg��ubah}î(h]îh!]îh#]îh%]îh']îuh+je��hjU��hhhh,hNubhK)Åî}î(hXl��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.îh]îhXl��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.îÖîÅî}î(hjó��hjï��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMOhjU��hhubhK)Åî}î(hå«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.îh]îhå«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.îÖîÅî}î(hj•��hj£��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMUhjU��hhubhK)Åî}î(hX��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/metacat/services). Note that the AdminService and Version service that appear on this page are not part of EarthGrid.îh]î(håáFor more information about each EarthGrid service and its WSDL file, navigate to the ‚Äúservices‚Äù page on your Metacat server (e.g., îÖîÅî}î(håÉFor more information about each EarthGrid service and its WSDL file, navigate to the "services" page on your Metacat server (e.g., îhj±��hhhNhNubhP)Åî}î(hå.http://knb.ecoinformatics.org/metacat/servicesîh]îhå.http://knb.ecoinformatics.org/metacat/servicesîÖîÅî}î(hhhj∫��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîjº��uh+hOhj±��ubhåe). Note that the AdminService and Version service that appear on this page are not part of EarthGrid.îÖîÅî}î(håe). Note that the AdminService and Version service that appear on this page are not part of EarthGrid.îhj±��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMYhjU��hhubhK)Åî}î(håEarthGrid/EcoGrid API Summaryîh]îhåEarthGrid/EcoGrid API SummaryîÖîÅî}î(hj÷��hj‘��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM_hjU��hhubj˘��)Åî}î(hhh]îj˛��)Åî}î(hhh]î(j ��)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîKuh+j ��hjÂ��ubj ��)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîKeuh+j ��hjÂ��ubj ��)Åî}î(hhh]îj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håServiceîh]îhåServiceîÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMbhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjˇ��ubj# ��)Åî}î(hhh]îhK)Åî}î(håDescriptionîh]îhåDescriptionîÖîÅî}î(hj��hj��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMbhj��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjˇ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj¸��ubah}î(h]îh!]îh#]îh%]îh']îuh+j ��hjÂ��ubj_ ��)Åî}î(hhh]î(j ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håAuthenticationQueryServiceîh]îhåAuthenticationQueryServiceîÖîÅî}î(hjG��hjE��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMdhjB��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj?��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå`Search for and retrieve protected metadata and data from the EarthGrid as an authenticated user.îh]îhå`Search for and retrieve protected metadata and data from the EarthGrid as an authenticated user.îÖîÅî}î(hj^��hj\��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMdhjY��ubhK)Åî}î(håMethods: ``query``, ``get``îh]î(hå Methods: îÖîÅî}î(hå Methods: îhjj��ubjï��)Åî}î(hå ``query``îh]îhåqueryîÖîÅî}î(hhhjs��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjj��ubhå, îÖîÅî}î(hå, îhjj��ubjï��)Åî}î(hå``get``îh]îhågetîÖîÅî}î(hhhjÜ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjj��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMfhjY��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj?��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj<��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håAuthenticationServiceîh]îhåAuthenticationServiceîÖîÅî}î(hjÆ��hj¨��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhhj©��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¶��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håLog in and out of the EarthGridîh]îhåLog in and out of the EarthGridîÖîÅî}î(hj≈��hj√��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMhhj¿��ubhK)Åî}î(håMethods: ``login``, ``logout``îh]î(hå Methods: îÖîÅî}î(hå Methods: îhj—��ubjï��)Åî}î(hå ``login``îh]îhåloginîÖîÅî}î(hhhj⁄��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj—��ubhå, îÖîÅî}î(hå, îhj—��ubjï��)Åî}î(hå ``logout``îh]îhålogoutîÖîÅî}î(hhhjÌ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj—��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMjhj¿��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¶��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj<��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håIdentifierServiceîh]îhåIdentifierServiceîÖîÅî}î(hj ��hj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMlhj ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håQList, lookup, validate, and add Life Science Identifiers (LSIDs) to the EarthGridîh]îhåQList, lookup, validate, and add Life Science Identifiers (LSIDs) to the EarthGridîÖîÅî}î(hj, ��hj* ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMlhj' ��ubhK)Åî}î(hå]Methods: ``isRegistered``, ``addLSID``, ``getNextRevision``, ``getNextObject``, ``getAllIds``îh]î(hå Methods: îÖîÅî}î(hå Methods: îhj8 ��ubjï��)Åî}î(hå``isRegistered``îh]îhåisRegisteredîÖîÅî}î(hhhjA ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj8 ��ubhå, îÖîÅî}î(hå, îhj8 ��ubjï��)Åî}î(hå``addLSID``îh]îhåaddLSIDîÖîÅî}î(hhhjT ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj8 ��ubhå, îÖîÅî}î(hå, îhj8 ��ubjï��)Åî}î(hå``getNextRevision``îh]îhågetNextRevisionîÖîÅî}î(hhhjg ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj8 ��ubhå, îÖîÅî}î(hå, îhj8 ��ubjï��)Åî}î(hå``getNextObject``îh]îhå getNextObjectîÖîÅî}î(hhhjz ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj8 ��ubhå, îÖîÅî}î(hjS ��hj8 ��ubjï��)Åî}î(hå ``getAllIds``îh]îhå getAllIdsîÖîÅî}î(hhhjå ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj8 ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMnhj' ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj<��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå PutServiceîh]îhå PutServiceîÖîÅî}î(hj¥ ��hj≤ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMphjØ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¨ ��ubj# ��)Åî}î(hhh]î(hK)Åî}î(håWrite metadata to the EarthGridîh]îhåWrite metadata to the EarthGridîÖîÅî}î(hjÀ ��hj… ��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMphj∆ ��ubhK)Åî}î(håMethods: ``put``îh]î(hå Methods: îÖîÅî}î(hå Methods: îhj◊ ��ubjï��)Åî}î(hå``put``îh]îhåputîÖîÅî}î(hhhj‡ ��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj◊ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMrhj∆ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¨ ��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj<��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håQueryServiceîh]îhåQueryServiceîÖîÅî}î(hj!��hj!��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMthj!��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj�!��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå3Search for and retrieve metadata from the EarthGridîh]îhå3Search for and retrieve metadata from the EarthGridîÖîÅî}î(hj!��hj!��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMthj!��ubhK)Åî}î(håMethods: ``query``, ``get``îh]î(hå Methods: îÖîÅî}î(hå Methods: îhj+!��ubjï��)Åî}î(hå ``query``îh]îhåqueryîÖîÅî}î(hhhj4!��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj+!��ubhå, îÖîÅî}î(hå, îhj+!��ubjï��)Åî}î(hå``get``îh]îhågetîÖîÅî}î(hhhjG!��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj+!��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMvhj!��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj�!��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj<��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håRegistryServiceîh]îhåRegistryServiceîÖîÅî}î(hjo!��hjm!��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMxhjj!��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjg!��ubj# ��)Åî}î(hhh]î(hK)Åî}î(hå¶Add, update, remove, and search for registered EarthGrid services. Note: The WSDL for this service is found under http://ecogrid.ecoinformatics.org/registry/servicesîh]î(håsAdd, update, remove, and search for registered EarthGrid services. Note: The WSDL for this service is found under îÖîÅî}î(håsAdd, update, remove, and search for registered EarthGrid services. Note: The WSDL for this service is found under îhjÑ!��ubhP)Åî}î(hå3http://ecogrid.ecoinformatics.org/registry/servicesîh]îhå3http://ecogrid.ecoinformatics.org/registry/servicesîÖîÅî}î(hhhjç!��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîjè!��uh+hOhjÑ!��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMxhjÅ!��ubhK)Åî}î(hå=Methods: ``add``, ``update``, ``remove``, ``list``, ``query``îh]î(hå Methods: îÖîÅî}î(hå Methods: îhj¢!��ubjï��)Åî}î(hå``add``îh]îhåaddîÖîÅî}î(hhhj´!��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj¢!��ubhå, îÖîÅî}î(hå, îhj¢!��ubjï��)Åî}î(hå ``update``îh]îhåupdateîÖîÅî}î(hhhjæ!��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj¢!��ubhå, îÖîÅî}î(hå, îhj¢!��ubjï��)Åî}î(hå ``remove``îh]îhåremoveîÖîÅî}î(hhhj—!��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj¢!��ubhå, îÖîÅî}î(hå, îhj¢!��ubjï��)Åî}î(hå``list``îh]îhålistîÖîÅî}î(hhhj‰!��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj¢!��ubhå, îÖîÅî}î(hjΩ!��hj¢!��ubjï��)Åî}î(hå ``query``îh]îhåqueryîÖîÅî}î(hhhjˆ!��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj¢!��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM{hjÅ!��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjg!��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hj<��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j^ ��hjÂ��ubeh}î(h]îh!]îh#]îh%]îh']îåcolsîKuh+j˝��hj‚��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¯��hjU��hhhh,hNubeh}î(h]îj5��ah!]îh#]îå%using the earthgrid api (aka ecogrid)îah%]îh']îuh+h hhhhhh,hMFubh )Åî}î(hhh]î(h)Åî}î(hjO��h]îhåUsing MorphoîÖîÅî}î(hjO��hj3"��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)jR��uh+hhj0"��hhhh,hMubhK)Åî}î(hXH��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.îh]îhXH��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.îÖîÅî}î(hjB"��hj@"��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÄhj0"��hhubhK)Åî}î(hX��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.îh]îhX��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.îÖîÅî}î(hjP"��hjN"��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÜhj0"��hhubjò��)Åî}î(hhh]î(jù��)Åî}î(håä.. figure:: images/screenshots/image049.png :align: center Set the Metacat URL in the Morpho preferences to point to your Metacat. îh]îh}î(h]îh!]îh#]îh%]îh']îåuriîåimages/screenshots/image049.pngîj™��}îj0��jj"��suh+jú��hj\"��hh,hMéubj≠��)Åî}î(håGSet the Metacat URL in the Morpho preferences to point to your Metacat.îh]îhåGSet the Metacat URL in the Morpho preferences to point to your Metacat.îÖîÅî}î(hjn"��hjl"��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¨��hh,hMéhj\"��ubeh}î(h]îåid9îah!]îh#]îh%]îh']îj√��åcenterîuh+jó��hMéhj0"��hhhh,ubhK)Åî}î(håMFor more information about Morpho, please see: http://knb.ecoinformatics.org/îh]î(hå/For more information about Morpho, please see: îÖîÅî}î(hå/For more information about Morpho, please see: îhjÇ"��hhhNhNubhP)Åî}î(håhttp://knb.ecoinformatics.org/îh]îhåhttp://knb.ecoinformatics.org/îÖîÅî}î(hhhjã"��ubah}î(h]îh!]îh#]îh%]îh']îårefuriîjç"��uh+hOhjÇ"��ubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMêhj0"��hhubeh}î(h]îjX��ah!]îh#]îåusing morphoîah%]îh']îuh+h hhhhhh,hMubh )Åî}î(hhh]î(h)Åî}î(hjr��h]îhåCreating Your Own ClientîÖîÅî}î(hjr��hj™"��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îh)ju��uh+hhjß"��hhhh,hMìubjf��)Åî}î(håÁ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.îh]îhK)Åî}î(håÁ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.îh]îhåÁ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.îÖîÅî}î(hjΩ"��hjª"��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMóhj∑"��ubah}î(h]îh!]îh#]îh%]îh']îuh+je��hjß"��hhhh,hNubhK)Åî}î(hX≠��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.îh]îhXØ��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.îÖîÅî}î(hj—"��hjœ"��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMõhjß"��hhubhK)Åî}î(hX~��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).îh]î(hå~The Client API is defined by the interface edu.ucsb.nceas.metacat.client.Metacat, and all operations are fully defined in the îÖîÅî}î(hå~The Client API is defined by the interface edu.ucsb.nceas.metacat.client.Metacat, and all operations are fully defined in the îhj›"��hhhNhNubhP)Åî}î(håjavadoc_îh]îhåjavadocîÖîÅî}î(hhhjÊ"��ubah}î(h]îh!]îh#]îh%]îh']îånameîåjavadocîårefuriîåAhttp://knb.ecoinformatics.org/software/metacat/dev/api/index.htmlîuh+hOhj›"��åresolvedîKubhå3 documentation. To use the client API, include the îÖîÅî}î(hå3 documentation. To use the client API, include the îhj›"��hhhNhNubjï��)Åî}î(hå``metacat-client.jar``îh]îhåmetacat-client.jarîÖîÅî}î(hhhj˛"��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj›"��ubhå, îÖîÅî}î(hå, îhj›"��hhhNhNubjï��)Åî}î(hå``utilities.jar``îh]îhå utilities.jarîÖîÅî}î(hhhj#��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj›"��ubhå, îÖîÅî}î(hj#��hj›"��ubjï��)Åî}î(hå``commons-io-2.0.jar``îh]îhåcommons-io-2.0.jarîÖîÅî}î(hhhj##��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj›"��ubhå, and îÖîÅî}î(hå, and îhj›"��hhhNhNubjï��)Åî}î(hå``httpclient.jar``îh]îhåhttpclient.jarîÖîÅî}î(hhhj6#��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj›"��ubhål in your classpath. After including these classes, you can begin using the API methods (see the next table).îÖîÅî}î(hål in your classpath. After including these classes, you can begin using the API methods (see the next table).îhj›"��hhhNhNubeh}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM¢hjß"��hhubh�åtargetîìî)Åî}î(håN.. _javadoc: http://knb.ecoinformatics.org/software/metacat/dev/api/index.htmlîh]îh}î(h]îåjavadocîah!]îh#]îåjavadocîah%]îh']îjˆ"��j˜"��uh+jO#��hM®hjß"��hhhh,å referencedîKubhK)Åî}î(hårThe following code block displays a typical session for reading a document from Metacat using the Java client API.îh]îhårThe following code block displays a typical session for reading a document from Metacat using the Java client API.îÖîÅî}î(hj`#��hj^#��hhhNhNubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM™hjß"��hhubjB��)Åî}î(hX√��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)îh]îhX√��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)îÖîÅî}î(hhhjl#��ubah}î(h]îh!]îh#]îh%]îh']îjQ��jR��uh+jA��hMØhjß"��hhhh,ubj˘��)Åî}î(hhh]îj˛��)Åî}î(hhh]î(j ��)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîKuh+j ��hj}#��ubj ��)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîKÕuh+j ��hj}#��ubj ��)Åî}î(hhh]îh}î(h]îh!]îh#]îh%]îh']îåcolwidthîKãuh+j ��hj}#��ubj ��)Åî}î(hhh]îj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håMethodîh]îhåMethodîÖîÅî}î(hj©#��hjß#��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM¬hj§#��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj°#��ubj# ��)Åî}î(hhh]îhK)Åî}î(håParameters and Throwsîh]îhåParameters and ThrowsîÖîÅî}î(hj¿#��hjæ#��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM¬hjª#��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj°#��ubj# ��)Åî}î(hhh]îhK)Åî}î(håDescriptionîh]îhåDescriptionîÖîÅî}î(hj◊#��hj’#��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM¬hj“#��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj°#��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjû#��ubah}î(h]îh!]îh#]îh%]îh']îuh+j ��hj}#��ubj_ ��)Åî}î(hhh]î(j ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hådeleteîh]îhådeleteîÖîÅî}î(hj�$��hj˛#��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMƒhj˚#��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¯#��ubj# ��)Åî}î(hhh]îhK)Åî}î(håy``public String delete(String docid) throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;``îh]îjï��)Åî}î(hj$��h]îhåupublic String delete(String docid) throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;îÖîÅî}î(hhhj$��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMƒhj$��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¯#��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå)Delete an XML document in the repository.îh]îhå)Delete an XML document in the repository.îÖîÅî}î(hj7$��hj5$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMƒhj2$��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¯#��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetAllDocidsîh]îhågetAllDocidsîÖîÅî}î(hjW$��hjU$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM∆hjR$��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjO$��ubj# ��)Åî}î(hhh]îhK)Åî}î(håE``public Vector getAllDocids(String scope) throws MetacatException;``îh]îjï��)Åî}î(hjn$��h]îhåApublic Vector getAllDocids(String scope) throws MetacatException;îÖîÅî}î(hhhjp$��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjl$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM∆hji$��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjO$��ubj# ��)Åî}î(hhh]îhK)Åî}î(håsReturn a list of all docids that match a given scope. If scope is null, return all docids registered in the system.îh]îhåsReturn a list of all docids that match a given scope. If scope is null, return all docids registered in the system.îÖîÅî}î(hjé$��hjå$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM∆hjâ$��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjO$��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetLastDocidîh]îhågetLastDocidîÖîÅî}î(hjÆ$��hj¨$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM»hj©$��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¶$��ubj# ��)Åî}î(hhh]îhK)Åî}î(håE``public String getLastDocid(String scope) throws MetacatException;``îh]îjï��)Åî}î(hj≈$��h]îhåApublic String getLastDocid(String scope) throws MetacatException;îÖîÅî}î(hhhj«$��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj√$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM»hj¿$��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¶$��ubj# ��)Åî}î(hhh]îhK)Åî}î(håâ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.îh]îhåâ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.îÖîÅî}î(hjÂ$��hj„$��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM»hj‡$��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj¶$��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetloggedinuserinfoîh]îhågetloggedinuserinfoîÖîÅî}î(hj%��hj%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hj�%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj˝$��ubj# ��)Åî}î(hhh]îhK)Åî}î(håL``public String getloggedinuserinfo() throws MetacatInaccessibleException;``îh]îjï��)Åî}î(hj%��h]îhåHpublic String getloggedinuserinfo() throws MetacatInaccessibleException;îÖîÅî}î(hhhj%��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hj%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj˝$��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå+Return the logged in user for this session.îh]îhå+Return the logged in user for this session.îÖîÅî}î(hj<%��hj:%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM hj7%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj˝$��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetNewestDocRevisionîh]îhågetNewestDocRevisionîÖîÅî}î(hj\%��hjZ%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÃhjW%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjT%��ubj# ��)Åî}î(hhh]îhK)Åî}î(håJ``public int getNewestDocRevision(String docId) throws MetacatException;``îh]îjï��)Åî}î(hjs%��h]îhåFpublic int getNewestDocRevision(String docId) throws MetacatException;îÖîÅî}î(hhhju%��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjq%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÃhjn%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjT%��ubj# ��)Åî}î(hhh]îhK)Åî}î(håAReturn the latest revision of specified the document from Metacatîh]îhåAReturn the latest revision of specified the document from MetacatîÖîÅî}î(hjì%��hjë%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÃhjé%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjT%��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hågetSessonIdîh]îhågetSessonIdîÖîÅî}î(hj≥%��hj±%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMŒhjÆ%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj´%��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå!``public String getSessionId();``îh]îjï��)Åî}î(hj %��h]îhåpublic String getSessionId();îÖîÅî}î(hhhjÃ%��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj»%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMŒhj≈%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj´%��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå/Return the session identifier for this session.îh]îhå/Return the session identifier for this session.îÖîÅî}î(hjÍ%��hjË%��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMŒhjÂ%��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj´%��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håinsertîh]îhåinsertîÖîÅî}î(hj &��hj&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM–hj&��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj&��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå©``public String insert(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``îh]îjï��)Åî}î(hj!&��h]îhå•public String insert(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;îÖîÅî}î(hhhj#&��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM–hj&��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj&��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå+Insert an XML document into the repository.îh]îhå+Insert an XML document into the repository.îÖîÅî}î(hjA&��hj?&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM–hj<&��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj&��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håisRegisteredîh]îhåisRegisteredîÖîÅî}î(hja&��hj_&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM“hj\&��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjY&��ubj# ��)Åî}î(hhh]îhK)Åî}î(håF``public boolean isRegistered(String docid) throws MetacatException;``îh]îjï��)Åî}î(hjx&��h]îhåBpublic boolean isRegistered(String docid) throws MetacatException;îÖîÅî}î(hhhjz&��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjv&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM“hjs&��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjY&��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå7Return true if given docid is registered; false if not.îh]îhå7Return true if given docid is registered; false if not.îÖîÅî}î(hjò&��hjñ&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM“hjì&��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjY&��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håloginîh]îhåloginîÖîÅî}î(hj∏&��hj∂&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‘hj≥&��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∞&��ubj# ��)Åî}î(hhh]îhK)Åî}î(håt``public String login(String username, String password) throws MetacatAuthException, MetacatInaccessibleException;``îh]îjï��)Åî}î(hjœ&��h]îhåppublic String login(String username, String password) throws MetacatAuthException, MetacatInaccessibleException;îÖîÅî}î(hhhj—&��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÕ&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‘hj &��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∞&��ubj# ��)Åî}î(hhh]îhK)Åî}î(håLog in to a Metacat server.îh]îhåLog in to a Metacat server.îÖîÅî}î(hjÔ&��hjÌ&��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‘hjÍ&��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∞&��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hålogoutîh]îhålogoutîÖîÅî}î(hj'��hj '��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM÷hj '��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj'��ubj# ��)Åî}î(hhh]îhK)Åî}î(håQ``public String logout() throws MetacatInaccessibleException, MetacatException;``îh]îjï��)Åî}î(hj&'��h]îhåMpublic String logout() throws MetacatInaccessibleException, MetacatException;îÖîÅî}î(hhhj('��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj$'��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM÷hj!'��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj'��ubj# ��)Åî}î(hhh]îhK)Åî}î(håLog out of a Metacat server.îh]îhåLog out of a Metacat server.îÖîÅî}î(hjF'��hjD'��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM÷hjA'��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj'��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håqueryîh]îhåqueryîÖîÅî}î(hjf'��hjd'��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÿhja'��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj^'��ubj# ��)Åî}î(hhh]îhK)Åî}î(håZ``public Reader query(Reader xmlQuery) throws MetacatInaccessibleException, IOException;``îh]îjï��)Åî}î(hj}'��h]îhåVpublic Reader query(Reader xmlQuery) throws MetacatInaccessibleException, IOException;îÖîÅî}î(hhhj'��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj{'��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÿhjx'��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj^'��ubj# ��)Åî}î(hhh]îhK)Åî}î(håCQuery the Metacat repository and return the result set as a Reader.îh]îhåCQuery the Metacat repository and return the result set as a Reader.îÖîÅî}î(hjù'��hjõ'��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÿhjò'��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj^'��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håqueryîh]îhåqueryîÖîÅî}î(hjΩ'��hjª'��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM⁄hj∏'��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjµ'��ubj# ��)Åî}î(hhh]îhK)Åî}î(håj``public Reader query(Reader xmlQuery, String qformat) throws MetacatInaccessibleException, IOException;``îh]îjï��)Åî}î(hj‘'��h]îhåfpublic Reader query(Reader xmlQuery, String qformat) throws MetacatInaccessibleException, IOException;îÖîÅî}î(hhhj÷'��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj“'��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM⁄hjœ'��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjµ'��ubj# ��)Åî}î(hhh]îhK)Åî}î(hårQuery the Metacat repository with the given metacat-compatible query format and return the result set as a Reader.îh]îhårQuery the Metacat repository with the given metacat-compatible query format and return the result set as a Reader.îÖîÅî}î(hjÙ'��hjÚ'��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM⁄hjÔ'��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjµ'��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håreadîh]îhåreadîÖîÅî}î(hj(��hj(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‹hj(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj(��ubj# ��)Åî}î(hhh]îhK)Åî}î(håí``public Reader read(String docid) throws InsufficientKarmaException, MetacatInaccessibleException, DocumentNotFoundException, MetacatException;``îh]îjï��)Åî}î(hj+(��h]îhåépublic Reader read(String docid) throws InsufficientKarmaException, MetacatInaccessibleException, DocumentNotFoundException, MetacatException;îÖîÅî}î(hhhj-(��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj)(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‹hj&(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj(��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå-Read an XML document from the Metacat server.îh]îhå-Read an XML document from the Metacat server.îÖîÅî}î(hjK(��hjI(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‹hjF(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj(��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håreadInlineDataîh]îhåreadInlineDataîÖîÅî}î(hjk(��hji(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMfihjf(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjc(��ubj# ��)Åî}î(hhh]îhK)Åî}î(håà``public Reader readInlineData(String inlinedataid) throws InsufficientKarmaException, MetacatInaccessibleException, MetacatException;``îh]îjï��)Åî}î(hjÇ(��h]îhåÑpublic Reader readInlineData(String inlinedataid) throws InsufficientKarmaException, MetacatInaccessibleException, MetacatException;îÖîÅî}î(hhhjÑ(��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÄ(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMfihj}(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjc(��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå1Read inline data from the Metacat server session.îh]îhå1Read inline data from the Metacat server session.îÖîÅî}î(hj¢(��hj†(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMfihjù(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjc(��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå setAccessîh]îhå setAccessîÖîÅî}î(hj¬(��hj¿(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‡hjΩ(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∫(��ubj# ��)Åî}î(hhh]îhK)Åî}î(håÀ``public String setAccess(String _docid, String _principal, String _permission, String _permType, String _permOrder ); throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;``îh]îjï��)Åî}î(hjŸ(��h]îhå«public String setAccess(String _docid, String _principal, String _permission, String _permType, String _permOrder ); throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;îÖîÅî}î(hhhj€(��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj◊(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‡hj‘(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∫(��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå>Set permissions for an XML document in the Metacat repository.îh]îhå>Set permissions for an XML document in the Metacat repository.îÖîÅî}î(hj˘(��hj˜(��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‡hjÙ(��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj∫(��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(hå setMetacatUrlîh]îhå setMetacatUrlîÖîÅî}î(hj)��hj)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‚hj)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj)��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå1``public void setMetacatUrl(String metacatUrl);``îh]îjï��)Åî}î(hj0)��h]îhå-public void setMetacatUrl(String metacatUrl);îÖîÅî}î(hhhj2)��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj.)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‚hj+)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj)��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå7Set the MetacatUrl to which connections should be made.îh]îhå7Set the MetacatUrl to which connections should be made.îÖîÅî}î(hjP)��hjN)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‚hjK)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj)��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håsetSessionIdîh]îhåsetSessionIdîÖîÅî}î(hjp)��hjn)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‰hjk)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjh)��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå/``public void setSessionId(String sessionId);``îh]îjï��)Åî}î(hjá)��h]îhå+public void setSessionId(String sessionId);îÖîÅî}î(hhhjâ)��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjÖ)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‰hjÇ)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjh)��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå,Set the session identifier for this session.îh]îhå,Set the session identifier for this session.îÖîÅî}î(hjß)��hj•)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hM‰hj¢)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjh)��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håupdateîh]îhåupdateîÖîÅî}î(hj«)��hj≈)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÊhj¬)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjø)��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå©``public String update(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``îh]îjï��)Åî}î(hjfi)��h]îhå•public String update(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;îÖîÅî}î(hhhj‡)��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj‹)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÊhjŸ)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjø)��ubj# ��)Åî}î(hhh]îhK)Åî}î(håXUpdate an XML document in the repository by providing a new version of the XML document.îh]îhåXUpdate an XML document in the repository by providing a new version of the XML document.îÖîÅî}î(hj˛)��hj¸)��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÊhj˘)��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjø)��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håuploadîh]îhåuploadîÖîÅî}î(hj*��hj*��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMËhj*��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj*��ubj# ��)Åî}î(hhh]îhK)Åî}î(håë``public String upload(String docid, File file) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``îh]îjï��)Åî}î(hj5*��h]îhåçpublic String upload(String docid, File file) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;îÖîÅî}î(hhhj7*��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hj3*��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMËhj0*��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj*��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå+Upload a data document into the repository.îh]îhå+Upload a data document into the repository.îÖîÅî}î(hjU*��hjS*��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMËhjP*��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hj*��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubj ��)Åî}î(hhh]î(j# ��)Åî}î(hhh]îhK)Åî}î(håuploadîh]îhåuploadîÖîÅî}î(hju*��hjs*��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÍhjp*��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjm*��ubj# ��)Åî}î(hhh]îhK)Åî}î(håΩ``public String publicupload(String docid, String fileName, InputStream fileData, int size) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;``îh]îjï��)Åî}î(hjå*��h]îhåπpublic String publicupload(String docid, String fileName, InputStream fileData, int size) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;îÖîÅî}î(hhhjé*��ubah}î(h]îh!]îh#]îh%]îh']îuh+jî��hjä*��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÍhjá*��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjm*��ubj# ��)Åî}î(hhh]îhK)Åî}î(hå+Upload a data document into the repository.îh]îhå+Upload a data document into the repository.îÖîÅî}î(hj¨*��hj™*��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhh,hMÍhjß*��ubah}î(h]îh!]îh#]îh%]îh']îuh+j" ��hjm*��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j ��hjı#��ubeh}î(h]îh!]îh#]îh%]îh']îuh+j^ ��hj}#��ubeh}î(h]îh!]îh#]îh%]îh']îåcolsîKuh+j˝��hjz#��ubah}î(h]îh!]îh#]îh%]îh']îuh+j¯��hjß"��hhhh,hNubeh}î(h]îj{��ah!]îh#]îåcreating your own clientîah%]îh']îuh+h hhhhhh,hMìubeh}î(h]îh_ah!]îh#]îå*accessing and submitting metadata and dataîah%]îh']îuh+h hhhhhh,hKubah}î(h]îh!]îh#]îh%]îh']îåsourceîh,uh+håcurrent_sourceîNåcurrent_lineîNåsettingsîådocutils.frontendîåValuesîìî)Åî}î(hNå generatorîNå datestampîNåsource_linkîNå source_urlîNå toc_backlinksîj" ��åfootnote_backlinksîKå sectnum_xformîKåstrip_commentsîNåstrip_elements_with_classesîNå strip_classesîNåreport_levelîKå halt_levelîKåexit_status_levelîKådebugîNåwarning_streamîNå tracebackîàåinput_encodingîå utf-8-sigîåinput_encoding_error_handlerîåstrictîåoutput_encodingîåutf-8îåoutput_encoding_error_handlerîj+��åerror_encodingîåUTF-8îåerror_encoding_error_handlerîåbackslashreplaceîå language_codeîåenîårecord_dependenciesîNåconfigîNå id_prefixîhåauto_id_prefixîåidîå dump_settingsîNådump_internalsîNådump_transformsîNådump_pseudo_xmlîNåexpose_internalsîNåstrict_visitorîNå_disable_configîNå_sourceîh,å_destinationîNå _config_filesî]îåpep_referencesîNåpep_base_urlîå https://www.python.org/dev/peps/îåpep_file_url_templateîåpep-%04dîårfc_referencesîNårfc_base_urlîåhttps://tools.ietf.org/html/îå tab_widthîKåtrim_footnote_reference_spaceîâåfile_insertion_enabledîàåraw_enabledîKåsyntax_highlightîålongîåsmart_quotesîàåsmartquotes_localesîNåcharacter_level_inline_markupîâådoctitle_xformîâå docinfo_xformîKåsectsubtitle_xformîâåembed_stylesheetîâåcloak_email_addressesîàåenvîNågettext_compactîàubåreporterîNåindirect_targetsî]îåsubstitution_defsî}îåsubstitution_namesî}îårefnamesî}îåjavadocî]îjÊ"��asårefidsî}îånameidsî}î(j‚*��h_j†��jú��ja��hjÍ��h¢j≈��h¬jG��hÂj„��j��jR��j7��jÛ��jW��jn��jz��j®��jù��j=��j¿��jŒ��j„��jK��j��j-"��j5��j§"��jX��j€*��j{��jZ#��jW#��uå nametypesî}î(j‚*��Nj†��Nja��NjÍ��Nj≈��NjG��Nj„��NjR��NjÛ��Njn��Nj®��Nj=��NjŒ��NjK��Nj-"��Nj§"��Nj€*��NjZ#��àuh}î(h_hjú��h/hj?��h¢jd��h¬j”��hÂj»��j��jJ��j7��jÌ��jW��jü��jz��jˆ��jù��jq��j¿��j´��j„��j@��j��j—��j5��jU��jX��j0"��j{��jß"��jW#��jQ#��jæ��jô��jª��jõ��j=��j��jV��j6��jê��jp��j¢��jÇ��j~��j^��jŒ��jÆ��j|"��j\"��h*hQhyhohúhíhºh≤hflh’j��h¯j1��j'��jQ��jG��jt��jj��jó��jç��j∫��j∞��j›��j”��j���jˆ��j/��j%��jR��jH��ju��jk��uå footnote_refsî}îå citation_refsî}îå autofootnotesî]îåautofootnote_refsî]îåsymbol_footnotesî]îåsymbol_footnote_refsî]îå footnotesî]îå citationsî]îåautofootnote_startîKåsymbol_footnote_startîK�åid_startîKåparse_messagesî]î(h�åsystem_messageîìî)Åî}î(hhh]îhK)Åî}î(hå:Enumerated list start value not ordinal-1: "2" (ordinal 2)îh]îhå>Enumerated list start value not ordinal-1: ‚Äú2‚Äù (ordinal 2)îÖîÅî}î(hhhje+��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhjb+��ubah}î(h]îh!]îh#]îh%]îh']îålevelîKåtypeîåINFOîåsourceîh,ålineîKuh+j`+��hj”��hhhh,hKåubja+��)Åî}î(hhh]îhK)Åî}î(hå:Enumerated list start value not ordinal-1: "4" (ordinal 4)îh]îhå>Enumerated list start value not ordinal-1: ‚Äú4‚Äù (ordinal 4)îÖîÅî}î(hhhjÅ+��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhj~+��ubah}î(h]îh!]îh#]îh%]îh']îålevelîKåtypeîj{+��åsourceîh,ålineîKuh+j`+��hj”��hhhh,hKñubja+��)Åî}î(hhh]îhK)Åî}î(hå:Enumerated list start value not ordinal-1: "6" (ordinal 6)îh]îhå>Enumerated list start value not ordinal-1: ‚Äú6‚Äù (ordinal 6)îÖîÅî}î(hhhjú+��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhjô+��ubah}î(h]îh!]îh#]îh%]îh']îålevelîKåtypeîj{+��åsourceîh,ålineîKuh+j`+��hj”��hhhh,hK¢ubja+��)Åî}î(hhh]îhK)Åî}î(hå:Enumerated list start value not ordinal-1: "2" (ordinal 2)îh]îhå>Enumerated list start value not ordinal-1: ‚Äú2‚Äù (ordinal 2)îÖîÅî}î(hhhj∑+��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhj¥+��ubah}î(h]îh!]îh#]îh%]îh']îålevelîKåtypeîj{+��åsourceîh,ålineîKuh+j`+��hjJ��hhhh,hK–ubja+��)Åî}î(hhh]îhK)Åî}î(hå:Enumerated list start value not ordinal-1: "3" (ordinal 3)îh]îhå>Enumerated list start value not ordinal-1: ‚Äú3‚Äù (ordinal 3)îÖîÅî}î(hhhj“+��ubah}î(h]îh!]îh#]îh%]îh']îuh+hJhjœ+��ubah}î(h]îh!]îh#]îh%]îh']îålevelîKåtypeîj{+��åsourceîh,ålineîKuh+j`+��hjJ��hhhh,hK◊ubeåtransform_messagesî]îåtransformerîNå decorationîNhhub.