docutils.nodesdocument)}( rawsourcechildren]hsection)}(hhh](htitle)}(h*Accessing and Submitting Metadata and Datah]hText*Accessing and Submitting Metadata and Data}(hhparenthhhsourceNlineNuba attributes}(ids]classes]names]dupnames]backrefs]refidid10utagnamehhh hhh\/var/lib/jenkins/jobs/metacat_beta/workspace/metacat/docs/user/metacat/source/submitting.rsthKubhtopic)}(hhh](h)}(hContentsh]hContents}(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-datauh+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 Storedhhoubah}(h]id11ah!]h#]h%]h']refid,a-brief-note-about-how-information-is-storeduh+hOhhlubah}(h]h!]h#]h%]h']uh+hJhhiubah}(h]h!]h#]h%]h']uh+hEhhfubhF)}(hhh](hK)}(hhh]hP)}(hhh]hUsing the Registry}(hUsing the Registryhhubah}(h]id12ah!]h#]h%]h']refidusing-the-registryuh+hOhhubah}(h]h!]h#]h%]h']uh+hJhhubhA)}(hhh](hF)}(hhh]hK)}(hhh]hP)}(hhh]hInstalling the Registry}(hInstalling the Registryhhubah}(h]id13ah!]h#]h%]h']refidinstalling-the-registryuh+hOhhubah}(h]h!]h#]h%]h']uh+hJhhubah}(h]h!]h#]h%]h']uh+hEhhubhF)}(hhh]hK)}(hhh]hP)}(hhh]hCustomizing the Registry}(hCustomizing the Registryhhubah}(h]id14ah!]h#]h%]h']refidcustomizing-the-registryuh+hOhhubah}(h]h!]h#]h%]h']uh+hJhhubah}(h]h!]h#]h%]h']uh+hEhhubhF)}(hhh]hK)}(hhh]hP)}(hhh]hLDAP account management}(hLDAP account managementhhubah}(h]id15ah!]h#]h%]h']refidldap-account-managementuh+hOhhubah}(h]h!]h#]h%]h']uh+hJhhubah}(h]h!]h#]h%]h']uh+hEhhubeh}(h]h!]h#]h%]h']uh+h@hhubeh}(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]id16ah!]h#]h%]h']refid#using-html-forms-the-http-interfaceuh+hOhj$ubah}(h]h!]h#]h%]h']uh+hJhj!ubhA)}(hhh](hF)}(hhh]hK)}(hhh]hP)}(hhh]hSupported Actions}(hSupported ActionshjGubah}(h]id17ah!]h#]h%]h']refidsupported-actionsuh+hOhjDubah}(h]h!]h#]h%]h']uh+hJhjAubah}(h]h!]h#]h%]h']uh+hEhj>ubhF)}(hhh]hK)}(hhh]hP)}(hhh]h Logging In}(h Logging Inhjjubah}(h]id18ah!]h#]h%]h']refid logging-inuh+hOhjgubah}(h]h!]h#]h%]h']uh+hJhjdubah}(h]h!]h#]h%]h']uh+hEhj>ubhF)}(hhh]hK)}(hhh]hP)}(hhh]h8Inserting, Updating, and Deleting XML and Data Documents}(h8Inserting, Updating, and Deleting XML and Data Documentshjubah}(h]id19ah!]h#]h%]h']refid6inserting-updating-and-deleting-xml-and-data-documentsuh+hOhjubah}(h]h!]h#]h%]h']uh+hJhjubah}(h]h!]h#]h%]h']uh+hEhj>ubhF)}(hhh]hK)}(hhh]hP)}(hhh]hSearching Metacat}(hSearching Metacathjubah}(h]id20ah!]h#]h%]h']refidsearching-metacatuh+hOhjubah}(h]h!]h#]h%]h']uh+hJhjubah}(h]h!]h#]h%]h']uh+hEhj>ubhF)}(hhh]hK)}(hhh]hP)}(hhh]hPaged Query Returns}(hPaged Query Returnshjubah}(h]id21ah!]h#]h%]h']refidpaged-query-returnsuh+hOhjubah}(h]h!]h#]h%]h']uh+hJhjubah}(h]h!]h#]h%]h']uh+hEhj>ubhF)}(hhh]hK)}(hhh]hP)}(hhh]hReading Data and Metadata}(hReading Data and Metadatahjubah}(h]id22ah!]h#]h%]h']refidreading-data-and-metadatauh+hOhjubah}(h]h!]h#]h%]h']uh+hJhjubah}(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]id23ah!]h#]h%]h']refid#using-the-earthgrid-api-aka-ecogriduh+hOhj"ubah}(h]h!]h#]h%]h']uh+hJhjubah}(h]h!]h#]h%]h']uh+hEhhfubhF)}(hhh]hK)}(hhh]hP)}(hhh]h Using Morpho}(h Using MorphohjHubah}(h]id24ah!]h#]h%]h']refid using-morphouh+hOhjEubah}(h]h!]h#]h%]h']uh+hJhjBubah}(h]h!]h#]h%]h']uh+hEhhfubhF)}(hhh]hK)}(hhh]hP)}(hhh]hCreating Your Own Client}(hCreating Your Own Clienthjkubah}(h]id25ah!]h#]h%]h']refidcreating-your-own-clientuh+hOhjhubah}(h]h!]h#]h%]h']uh+hJhjeubah}(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]contentsah!]contentsah#]contentsah%]h']uh+h-hh,hKhh hhubhK)}(hVThe Metacat repository can be accessed and updated using a number of tools, including:h]hVThe Metacat repository can be accessed and updated using a number of tools, including:}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hKhh hhubhA)}(hhh](hF)}(h.the Registry, Metacat's optional Web interfaceh]hK)}(hjh]h0the Registry, Metacat’s optional Web interface}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hK hjubah}(h]h!]h#]h%]h']uh+hEhjhhhh,hNubhF)}(huser-created HTML formsh]hK)}(hjh]huser-created HTML forms}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hK hjubah}(h]h!]h#]h%]h']uh+hEhjhhhh,hNubhF)}(hMetacat's EarthGrid APIh]hK)}(hjh]hMetacat’s EarthGrid API}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hK hjubah}(h]h!]h#]h%]h']uh+hEhjhhhh,hNubhF)}(hqexisting clients, such as KNB's Morpho application, designed to help scientists create, edit, and manage metadatah]hK)}(hqexisting clients, such as KNB's Morpho application, designed to help scientists create, edit, and manage metadatah]hsexisting clients, such as KNB’s Morpho application, designed to help scientists create, edit, and manage metadata}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hK hjubah}(h]h!]h#]h%]h']uh+hEhjhhhh,hNubhF)}(hHuser-created desktop clients that take advantage of Metacat's Java API. h]hK)}(hGuser-created desktop clients that take advantage of Metacat's Java API.h]hIuser-created desktop clients that take advantage of Metacat’s Java API.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hKhjubah}(h]h!]h#]h%]h']uh+hEhjhhhh,hNubeh}(h]h!]h#]h%]h']bullet*uh+h@hh,hK hh hhubhK)}(hnIn this section, we will look at how to take advantage of these tools to customize Metacat for your user-base.h]hnIn this section, we will look at how to take advantage of these tools to customize Metacat for your user-base.}(hj3hj1hhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hKhh hhubh )}(hhh](h)}(hhvh]h,A Brief Note about How Information is Stored}(hhvhjBhhhNhNubah}(h]h!]h#]h%]h']h)hyuh+hhj?hhhh,hKubhK)}(hXMetacat 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]hXMetacat 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.}(hjQhjOhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hKhj?hhubeh}(h]hah!]h#],a brief note about how information is storedah%]h']uh+h hh hhhh,hKubh )}(hhh](h)}(hhh]hUsing the Registry}(hhhjghhhNhNubah}(h]h!]h#]h%]h']h)huh+hhjdhhhh,hK!ubhK)}(hXMetacat'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](hXsMetacat’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 (}(hXoMetacat'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 (hjthhhNhNubhP)}(hhttp://knb.ecoinformatics.org/h]hhttp://knb.ecoinformatics.org/}(hhhj}ubah}(h]h!]h#]h%]h']refurijuh+hOhjtubh_). 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.hjthhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hK"hjdhhubhfigure)}(hhh](himage)}(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']uriimages/screenshots/image033.jpg candidates}j0jsuh+jhjhh,hK0ubhcaption)}(hAn example installation of the Register's web interface. Customize the displayed and required modules with the Skins Configuration settings.h]hAn example installation of the Register’s web interface. Customize the displayed and required modules with the Skins Configuration settings.}(hjhjubah}(h]h!]h#]h%]h']uh+jhh,hK0hjubeh}(h]id1ah!]h#]h%]h']aligncenteruh+jhK0hjdhhhh,ubhK)}(hYou can customize which modules (e.g., "Name of Submitter" or "Temporal Coverage of Data") are displayed and which are required using the Skins Configuration settingsh]hYou 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}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hK3hjdhhubh )}(hhh](h)}(hhh]hInstalling the Registry}(hhhjhhhNhNubah}(h]h!]h#]h%]h']h)huh+hhjhhhh,hK8ubhK)}(hIn 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]hIn 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).}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hK9hjhhubhK)}(h To install and run the Registry:h]h To install and run the Registry:}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hK=hjhhubhenumerated_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 hjubah}(h]h!]h#]h%]h']uh+hJhh,hK@hjubah}(h]h!]h#]h%]h']uh+hEhjhhhh,hNubah}(h]h!]h#]h%]h']enumtypearabicprefixhsuffix.uh+jhjhhhh,hK@ubh block_quote)}(hhh]hA)}(hhh](hF)}(hInstall 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)}(hInstall the librariesh]hInstall the libraries}(hj5hj3ubah}(h]h!]h#]h%]h']uh+hJhh,hKChj/ubh literal_block)}(hsudo 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 -yh]hsudo 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}(hhhjCubah}(h]h!]h#]h%]h'] xml:spacepreserveuh+jAhKGhj/ubeh}(h]h!]h#]h%]h']uh+hEhj,ubhF)}(hInstall 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 cpanh]h#Install two more package using cpan}(hj_hj]ubah}(h]h!]h#]h%]h']uh+hJhh,hKLhjYubjB)}(hsudo 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::X509h]hsudo 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}(hhhjkubah}(h]h!]h#]h%]h']jQjRuh+jAhKPhjYubeh}(h]h!]h#]h%]h']uh+hEhj,ubeh}(h]h!]h#]h%]h']j/j0uh+h@hh,hKChj)ubah}(h]h!]h#]h%]h']uh+j'hjhhhNhNubhsidebar)}(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::X509h](h)}(h+Instructions for Red Hat (Alternate Step 2)h]h+Instructions for Red Hat (Alternate Step 2)}(hjhjubah}(h]h!]h#]h%]h']uh+hhjubhA)}(hhh](hF)}(hUInstall the libraries :: sudo yum install gcc libxml2-devel libxslt-devel ant -y h](hK)}(hInstall the librariesh]hInstall the libraries}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hKZhjubjB)}(h7sudo yum install gcc libxml2-devel libxslt-devel ant -yh]h7sudo yum install gcc libxml2-devel libxslt-devel ant -y}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhK^hjubeh}(h]h!]h#]h%]h']uh+hEhjubhF)}(hXInstall 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)}(hInstall 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]hInstall 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.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hK`hjubjB)}(h$sudo yum install perl-CPAN sudo cpanh]h$sudo yum install perl-CPAN sudo cpan}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhKfhjubeh}(h]h!]h#]h%]h']uh+hEhjubhF)}(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:}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hKihjubjB)}(hcpan>h]hcpan>}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhKmhjubeh}(h]h!]h#]h%]h']uh+hEhjubhF)}(hThe 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)}(hThe 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]hThe 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.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hKohjubjB)}(h install Bundle::CPAN reload cpanh]h install Bundle::CPAN reload cpan}(hhhj&ubah}(h]h!]h#]h%]h']jQjRuh+jAhKuhjubeh}(h]h!]h#]h%]h']uh+hEhjubhF)}(hXInstall 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::X509h](hK)}(hInstall 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]hInstall 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)}(hinstall 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::X509h]hinstall 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}(hhhjLubah}(h]h!]h#]h%]h']jQjRuh+jAhK~hj:ubeh}(h]h!]h#]h%]h']uh+hEhjubeh}(h]h!]h#]h%]h']j/j0uh+h@hh,hKZhjubeh}(h]h!]h#]h%]h']uh+jhjhhhNhNubj)}(hhh](hF)}(hDouble-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]hDouble-check that Metacat’s temporary folder, application.tempDir, is writable by the apache user, usually www-data or apache.}(hjuhjsubah}(h]h!]h#]h%]h']uh+hJhh,hKhjoubah}(h]h!]h#]h%]h']uh+hEhjlhhhh,hNubhF)}(hMake sure that the following scripts (found in ``/webapps/metacat/cgi-bin``) are executable: register-dataset.cgi and ldapweb.cgi. h]hK)}(hMake sure that the following scripts (found in ``/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 hjubhliteral)}(h)``/webapps/metacat/cgi-bin``h]h%/webapps/metacat/cgi-bin}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh7) are executable: register-dataset.cgi and ldapweb.cgi.}(h7) are executable: register-dataset.cgi and ldapweb.cgi.hjubeh}(h]h!]h#]h%]h']uh+hJhh,hKhjubah}(h]h!]h#]h%]h']uh+hEhjlhhhh,hNubeh}(h]h!]h#]h%]h']j"j#j$hj%j&startKuh+jhjhhhh,hKubj()}(hhh]jB)}(h9sudo chmod +x /webapps/metacat/cgi-bin/*.cgih]h9sudo chmod +x /webapps/metacat/cgi-bin/*.cgi}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhKhjubah}(h]h!]h#]h%]h']uh+j'hjhhhh,hNubj)}(hhh](hF)}(h/cgi-bin/register-dataset.cgi?cfg=default Where ```` 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)}(hXWVisit the resulting URL: http:///cgi-bin/register-dataset.cgi?cfg=default Where ```` 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](hVisit the resulting URL: }(hVisit the resulting URL: hj8ubhP)}(hhttp:/h]hhttp:/}(hhhjAubah}(h]h!]h#]h%]h']refurijCuh+hOhj8ubhC//cgi-bin/register-dataset.cgi?cfg=default Where }(hC//cgi-bin/register-dataset.cgi?cfg=default Where hj8ubj)}(h````h]h}(hhhjUubah}(h]h!]h#]h%]h']uh+jhj8ubh 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: hj8ubhP)}(h!http://knb.ecoinformatics.org/knbh]h!http://knb.ecoinformatics.org/knb}(hhhjhubah}(h]h!]h#]h%]h']refurijjuh+hOhj8ubh.}(hj&hj8ubeh}(h]h!]h#]h%]h']uh+hJhh,hKhj4ubah}(h]h!]h#]h%]h']uh+hEhj1hhhh,hNubah}(h]h!]h#]h%]h']j"j#j$hj%j&jKuh+jhjhhhh,hKubhK)}(hNIf everything worked correctly, the registry home page will open (see figure).h]hNIf everything worked correctly, the registry home page will open (see figure).}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hKhjhhubj)}(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']uriimages/screenshots/image035.jpgj}j0jsuh+jhjhh,hKubj)}(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).}(hjhjubah}(h]h!]h#]h%]h']uh+jhh,hKhjubeh}(h]id2ah!]h#]h%]h']jcenteruh+jhKhjhhhh,ubeh}(h]hah!]h#]installing the registryah%]h']uh+h hjdhhhh,hK8ubh )}(hhh](h)}(hhh]hCustomizing the Registry}(hhhjhhhNhNubah}(h]h!]h#]h%]h']h)huh+hhjhhhh,hKubhK)}(hXBefore 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:///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](hXBefore 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 (}(hXBefore 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 (hjhhhNhNubhP)}(hhttp:/h]hhttp:/}(hhhjubah}(h]h!]h#]h%]h']refurijuh+hOhjubh//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//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.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hKhjhhubhK)}(hOnce 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](hqOnce you have saved your changes, you must restart Tomcat for them to come into effect. To restart Tomcat, type: }(hqOnce you have saved your changes, you must restart Tomcat for them to come into effect. To restart Tomcat, type: hjhhhNhNubj)}(h$``sudo /etc/init.d/tomcat7 restart``h]h sudo /etc/init.d/tomcat7 restart}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh? or an equivalent command appropriate to your operating system.}(h? or an equivalent command appropriate to your operating system.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hKhjhhubj)}(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']uriimages/screenshots/image037.jpgj}j0j+suh+jhjhh,hKubj)}(hXUncheck 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]hXUncheck 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+jhh,hKhjubeh}(h]id3ah!]h#]h%]h']jcenteruh+jhKhjhhhh,ubeh}(h]hah!]h#]customizing the registryah%]h']uh+h hjdhhhh,hKubh )}(hhh](h)}(hhh]hLDAP account management}(hhhjMhhhNhNubah}(h]h!]h#]h%]h']h)juh+hhjJhhhh,hKubhK)}(hIf you intend to use Metacat's built-in LDAP account management feature, you will need public and private keys for the reCaptcha widget.h]hIf you intend to use Metacat’s built-in LDAP account management feature, you will need public and private keys for the reCaptcha widget.}(hj\hjZhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hKhjJhhubhK)}(h}1. Get private and public recaptcha keys from Google using your Google account: https://www.google.com/recaptcha/admin/createh](hP1. Get private and public recaptcha keys from Google using your Google account: }(hP1. Get private and public recaptcha keys from Google using your Google account: hjhhhhNhNubhP)}(h-https://www.google.com/recaptcha/admin/createh]h-https://www.google.com/recaptcha/admin/create}(hhhjqubah}(h]h!]h#]h%]h']refurijsuh+hOhjhubeh}(h]h!]h#]h%]h']uh+hJhh,hKhjJhhubj)}(hhh]hF)}(hDConfigure Metacat to use those keys in the metacat.properties file: h]hK)}(hCConfigure Metacat to use those keys in the metacat.properties file:h]hCConfigure Metacat to use those keys in the metacat.properties file:}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hKhjubah}(h]h!]h#]h%]h']uh+hEhjhhhh,hNubah}(h]h!]h#]h%]h']j"j#j$hj%j&jKuh+jhjJhhhh,hKubj()}(hhh]jB)}(hWldap.recaptcha.publickey= ldap.recaptcha.privatekey=h]hWldap.recaptcha.publickey= ldap.recaptcha.privatekey=}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhKhjubah}(h]h!]h#]h%]h']uh+j'hjJhhhh,hNubj)}(hhh]hF)}(hRestart Tomcat h]hK)}(hRestart Tomcath]hRestart Tomcat}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hKhjubah}(h]h!]h#]h%]h']uh+hEhjhhhh,hNubah}(h]h!]h#]h%]h']j"j#j$hj%j&jKuh+jhjJhhhh,hKubeh}(h]jah!]h#]ldap account managementah%]h']uh+h hjdhhhh,hKubeh}(h]hah!]h#]using the registryah%]h']uh+h hh hhhh,hK!ubh )}(hhh](h)}(hj.h]h%Using HTML Forms (the HTTP Interface)}(hj.hjhhhNhNubah}(h]h!]h#]h%]h']h)j1uh+hhjhhhh,hKubhK)}(hMetacat'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]hMetacat’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.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hKhjhhubhA)}(hhh](hF)}(hSupported Actions (API)h]hK)}(hjh]hSupported Actions (API)}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hKhjubah}(h]h!]h#]h%]h']uh+hEhj hhhh,hNubhF)}(h Logging inh]hK)}(hj'h]h Logging in}(hj'hj)ubah}(h]h!]h#]h%]h']uh+hJhh,hKhj%ubah}(h]h!]h#]h%]h']uh+hEhj hhhh,hNubhF)}(h8Inserting, Updating, and Deleting XML and Data Documentsh]hK)}(hj>h]h8Inserting, Updating, and Deleting XML and Data Documents}(hj>hj@ubah}(h]h!]h#]h%]h']uh+hJhh,hKhj<ubah}(h]h!]h#]h%]h']uh+hEhj hhhh,hNubhF)}(hSearching Metacath]hK)}(hjUh]hSearching Metacat}(hjUhjWubah}(h]h!]h#]h%]h']uh+hJhh,hKhjSubah}(h]h!]h#]h%]h']uh+hEhj hhhh,hNubhF)}(hPaged Query Returnh]hK)}(hjlh]hPaged Query Return}(hjlhjnubah}(h]h!]h#]h%]h']uh+hJhh,hKhjjubah}(h]h!]h#]h%]h']uh+hEhj hhhh,hNubhF)}(hReading Data and Metadata h]hK)}(hReading Data and Metadatah]hReading Data and Metadata}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hKhjubah}(h]h!]h#]h%]h']uh+hEhj hhhh,hNubeh}(h]h!]h#]h%]h']j/j0uh+h@hh,hKhjhhubh )}(hhh](h)}(hjNh]hSupported Actions}(hjNhjhhhNhNubah}(h]h!]h#]h%]h']h)jQuh+hhjhhhh,hKubhK)}(hMetacat 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]hMetacat 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).}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hKhjhhubhK)}(hNote 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](hNote that if Replication is enabled, Metacat recognizes several additional actions, included in Table 4.2. For more information about replication, please see }(hNote that if Replication is enabled, Metacat recognizes several additional actions, included in Table 4.2. For more information about replication, please see hjhhhNhNubsphinx.addnodes pending_xref)}(h:doc:`replication`h]hinline)}(hjh]h replication}(hhhjubah}(h]h!](xrefstdstd-doceh#]h%]h']uh+jhjubah}(h]h!]h#]h%]h']reftypedoc refdomainj refexplicit reftarget replicationrefdoc submittingrefwarnuh+jhh,hKhjubh.}(hj&hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hKhjhhubhtable)}(hhh]htgroup)}(hhh](hcolspec)}(hhh]h}(h]h!]h#]h%]h']colwidthKuh+j hjubj )}(hhh]h}(h]h!]h#]h%]h']colwidthMuh+j hjubhthead)}(hhh]hrow)}(hhh](hentry)}(hhh]hK)}(hActionh]hAction}(hj) hj' ubah}(h]h!]h#]h%]h']uh+hJhh,hKhj$ ubah}(h]h!]h#]h%]h']uh+j" hj ubj# )}(hhh]hK)}(hDescription and Parametersh]hDescription 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 hjubhtbody)}(hhh](j )}(hhh](j# )}(hhh]hK)}(hdeleteh]hdelete}(hjk hji ubah}(h]h!]h#]h%]h']uh+hJhh,hKhjf ubah}(h]h!]h#]h%]h']uh+j" hjc ubj# )}(hhh](hK)}(hDelete the specified document from the database. For an example, please see Inserting, Updating, and Deleting XML and Data Documents.h]hDelete 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,hKhj} ubhK)}(h/``docid`` - the docid of the document to deleteh](j)}(h ``docid``h]hdocid}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj ubh& - the docid of the document to delete}(h& - the docid of the document to deletehj ubeh}(h]h!]h#]h%]h']uh+hJhh,hKhj} ubeh}(h]h!]h#]h%]h']uh+j" hjc ubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hexporth]hexport}(hj hj ubah}(h]h!]h#]h%]h']uh+hJhh,hKhj 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,hKhj ubhK)}(h/``docid`` - the docid of the document to deleteh](j)}(h ``docid``h]hdocid}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj ubh& - the docid of the document to delete}(h& - the docid of the document to deletehj ubeh}(h]h!]h#]h%]h']uh+hJhh,hKhj ubeh}(h]h!]h#]h%]h']uh+j" hj ubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hgetaccesscontrolh]hgetaccesscontrol}(hj hj ubah}(h]h!]h#]h%]h']uh+hJhh,hKhj 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,hKhj% ubhK)}(h/``docid`` - the docid of the document to deleteh](j)}(h ``docid``h]hdocid}(hhhj: ubah}(h]h!]h#]h%]h']uh+jhj6 ubh& - the docid of the document to delete}(h& - the docid of the document to deletehj6 ubeh}(h]h!]h#]h%]h']uh+hJhh,hKhj% ubeh}(h]h!]h#]h%]h']uh+j" hj ubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(h getalldocidsh]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)}(h9Retrieve a list of all docids registered with the system.h]h9Retrieve a list of all docids registered with the system.}(hj~ hj| ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjy ubhK)}(hL``scope`` - a string used to match a range of docids in a SQL LIKE statementh](j)}(h ``scope``h]hscope}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj ubhC - a string used to match a range of docids in a SQL LIKE statement}(hC - a string used to match a range of docids in a SQL LIKE statementhj 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)}(h0getdataguide DEPRECATED Use getdtdschema insteadh]h0getdataguide 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)}(h1Read a data guide for the specified document typeh]h1Read a data guide for the specified document type}(hj hj ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj ubhK)}(h9``doctype`` - the doctype for which to get the data guideh](j)}(h ``doctype``h]hdoctype}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj ubh. - the doctype for which to get the data guide}(h. - the doctype for which to get the data guidehj 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 getdoctypesh]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)}(hRGet all doctypes currently available in the Metacat Catalog System. No parameters.h]hRGet 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 getdtdschemah]h getdtdschema}(hjF hjD ubah}(h]h!]h#]h%]h']uh+hJhh,hM hjA ubah}(h]h!]h#]h%]h']uh+j" hj> ubj# )}(hhh](hK)}(h9Read the DTD or XMLSchema file for the specified doctype.h]h9Read the DTD or XMLSchema file for the specified doctype.}(hj] hj[ ubah}(h]h!]h#]h%]h']uh+hJhh,hM hjX ubhK)}(hB``doctype`` - the doctype for which DTD or XMLSchema files to readh](j)}(h ``doctype``h]hdoctype}(hhhjm ubah}(h]h!]h#]h%]h']uh+jhji ubh7 - the doctype for which DTD or XMLSchema files to read}(h7 - the doctype for which DTD or XMLSchema files to readhji 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 getlastdocidh]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)}(h8Get the latest docid with revision number used by scope.h]h8Get 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 queriedh](j)}(h ``scope``h]hscope}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj ubh - the scope to be queried}(h - the scope to be queriedhj 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)}(hgetlogh]hgetlog}(hj hj ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj ubah}(h]h!]h#]h%]h']uh+j" hj ubj# )}(hhh](hK)}(h7Get the latest docid with revision number used by user.h]h7Get 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 queryh](j)}(h ``ipaddress``h]h ipaddress}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj 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+jhj ubh1 - the principal for the event (a username, etc) }(h1 - the principal for the event (a username, etc) hj ubj)}(h ``docid``h]hdocid}(hhhj; ubah}(h]h!]h#]h%]h']uh+jhj 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]hevent}(hhhjN ubah}(h]h!]h#]h%]h']uh+jhj ubh! - the string code for the event }(h! - the string code for the event hj ubj)}(h ``start``h]hstart}(hhhja ubah}(h]h!]h#]h%]h']uh+jhj ubh% - beginning of date-range for query }(h% - beginning of date-range for query hj ubj)}(h``end``h]hend}(hhhjt ubah}(h]h!]h#]h%]h']uh+jhj ubh - end of date-range for query}(h - end of date-range for queryhj 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)}(hgetloggedinuserinfoh]hgetloggedinuserinfo}(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 getpricipalsh]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)}(hMGet all users and groups in the current authentication schema. No parameters.h]hMGet 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)}(hgetrevisionanddoctypeh]hgetrevisionanddoctype}(hj hj ubah}(h]h!]h#]h%]h']uh+hJhh,hM hj ubah}(h]h!]h#]h%]h']uh+j" hj ubj# )}(hhh](hK)}(haReturn the revision and doctype of a document. The output is String that looks like "rev;doctype"h]heReturn 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 documenth](j)}(h ``docid``h]hdocid}(hhhj6 ubah}(h]h!]h#]h%]h']uh+jhj2 ubh - the docid of the document}(h - the docid of the documenthj2 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 getversionh]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)}(hSGet Metacat version. Return the current version of Metacat as XML. No parameters.h]hSGet 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)}(hinserth]hinsert}(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 Documentsh]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)}(hy``docid`` - the user-defined docid to assign to the new XML document ``doctext`` - the text of the XML document to inserth](j)}(h ``docid``h]hdocid}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj 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]hdoctext}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj ubh) - the text of the XML document to insert}(h) - the text of the XML document to inserthj 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)}(hinsertmultiparth]hinsertmultipart}(hjhj ubah}(h]h!]h#]h%]h']uh+hJhh,hM-hj ubah}(h]h!]h#]h%]h']uh+j" hj ubj# )}(hhh](hK)}(hBInsert an XML document using multipart encoding into the database.h]hBInsert an XML document using multipart encoding into the database.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hM-hjubhK)}(hy``docid`` - the user-defined docid to assign to the new XML document ``doctext`` - the text of the XML document to inserth](j)}(h ``docid``h]hdocid}(hhhj(ubah}(h]h!]h#]h%]h']uh+jhj$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]hdoctext}(hhhj;ubah}(h]h!]h#]h%]h']uh+jhj$ubh) - the text of the XML document to insert}(h) - the text of the XML document to inserthj$ubeh}(h]h!]h#]h%]h']uh+hJhh,hM/hjubeh}(h]h!]h#]h%]h']uh+j" hj ubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(h isregisteredh]h isregistered}(hjhhjfubah}(h]h!]h#]h%]h']uh+hJhh,hM2hjcubah}(h]h!]h#]h%]h']uh+j" hj`ubj# )}(hhh](hK)}(hCheck 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]hCheck 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.}(hjhj}ubah}(h]h!]h#]h%]h']uh+hJhh,hM2hjzubhK)}(h%``docid`` - the docid of the documenth](j)}(h ``docid``h]hdocid}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh - the docid of the document}(h - the docid of the documenthjubeh}(h]h!]h#]h%]h']uh+hJhh,hM5hjzubeh}(h]h!]h#]h%]h']uh+j" hj`ubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hloginh]hlogin}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hM7hjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(hLog 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]hLog 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.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hM7hjubhK)}(hG``username`` - the user's login name ``password`` - the user's passwordh](j)}(h ``username``h]husername}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh - the user’s login name }(h - the user's login name hjubj)}(h ``password``h]hpassword}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh - the user’s password}(h - the user's passwordhjubeh}(h]h!]h#]h%]h']uh+hJhh,hM:hjubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hlogouth]hlogout}(hj#hj!ubah}(h]h!]h#]h%]h']uh+hJhh,hM=hjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh]hK)}(hKLog the current user out and destroy the associated session. No parameters.h]hKLog the current user out and destroy the associated session. No parameters.}(hj:hj8ubah}(h]h!]h#]h%]h']uh+hJhh,hM=hj5ubah}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hqueryh]hquery}(hjZhjXubah}(h]h!]h#]h%]h']uh+hJhh,hM?hjUubah}(h]h!]h#]h%]h']uh+j" hjRubj# )}(hhh](hK)}(hHPerform a free text query. For an example, please see Searching Metacat.h]hHPerform a free text query. For an example, please see Searching Metacat.}(hjqhjoubah}(h]h!]h#]h%]h']uh+hJhh,hM?hjlubhK)}(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}(hhhjubah}(h]h!]h#]h%]h']uh+jhj}ubhV - the doctype to use for your Package View. For more information about packages, see }(hV - the doctype to use for your Package View. For more information about packages, see hj}ubhP)}(h - the format to return the document in. Possible values are: }(h> - the format to return the document in. Possible values are: hjubj)}(h``html``h]hhtml}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh, }(h, hjubj)}(h``xml``h]hxml}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh7,or, if your Metacat uses a skin, the name of the skin.}(h7,or, if your Metacat uses a skin, the name of the skin.hjubeh}(h]h!]h#]h%]h']uh+hJhh,hMNhjubeh}(h]h!]h#]h%]h']uh+j" hjeubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hreadinlinedatah]hreadinlinedata}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMQhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(hRead inline data only.h]hRead inline data only.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMQhj ubhK)}(h4``inlinedataid`` - the id of the inline data to readh](j)}(h``inlinedataid``h]h inlinedataid}(hhhj!ubah}(h]h!]h#]h%]h']uh+jhjubh$ - the id of the inline data to read}(h$ - the id of the inline data to readhjubeh}(h]h!]h#]h%]h']uh+hJhh,hMShj ubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(h setaccessh]h setaccess}(hjNhjLubah}(h]h!]h#]h%]h']uh+hJhh,hMUhjIubah}(h]h!]h#]h%]h']uh+j" hjFubj# )}(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.}(hjehjcubah}(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]hdocid}(hhhjuubah}(h]h!]h#]h%]h']uh+jhjqubh- - the docid of the document to be modified. }(h- - the docid of the document to be modified. hjqubj)}(h ``principal``h]h principal}(hhhjubah}(h]h!]h#]h%]h']uh+jhjqubh8 - the user or group whose permissions will be modified }(h8 - the user or group whose permissions will be modified hjqubj)}(h``permission``h]h permission}(hhhjubah}(h]h!]h#]h%]h']uh+jhjqubh- - the permission to set (read, write, all) }(h- - the permission to set (read, write, all) hjqubj)}(h ``permType``h]hpermType}(hhhjubah}(h]h!]h#]h%]h']uh+jhjqubh/ - the type of permission to set (allow, deny) }(h/ - the type of permission to set (allow, deny) hjqubj)}(h ``permOrder``h]h permOrder}(hhhjubah}(h]h!]h#]h%]h']uh+jhjqubhE - the order in which to apply the permission (allowFirst, denyFirst)}(hE - the order in which to apply the permission (allowFirst, denyFirst)hjqubeh}(h]h!]h#]h%]h']uh+hJhh,hMWhj`ubeh}(h]h!]h#]h%]h']uh+j" hjFubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(h spatial_queryh]h spatial_query}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hM]hjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(hPerform a spatial query. These queries may include any of the queries supported by the WFS / WMS standards. For more information, see Spatial Queries.h]hPerform a spatial query. These queries may include any of the queries supported by the WFS / WMS standards. For more information, see Spatial Queries.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hM]hjubhK)}(h``xmax`` - max x spatial coordinate ``ymax`` - max y spatial coordinate ``xmin`` - min x spatial coordinate ``ymin`` - min y spatial coordinateh](j)}(h``xmax``h]hxmax}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh - max x spatial coordinate }(h - max x spatial coordinate hjubj)}(h``ymax``h]hymax}(hhhj(ubah}(h]h!]h#]h%]h']uh+jhjubh - max y spatial coordinate }(h - max y spatial coordinate hjubj)}(h``xmin``h]hxmin}(hhhj;ubah}(h]h!]h#]h%]h']uh+jhjubh - min x spatial coordinate }(h - min x spatial coordinate hjubj)}(h``ymin``h]hymin}(hhhjNubah}(h]h!]h#]h%]h']uh+jhjubh - min y spatial coordinate}(h - min y spatial coordinatehjubeh}(h]h!]h#]h%]h']uh+hJhh,hM`hjubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hsqueryh]hsquery}(hj{hjyubah}(h]h!]h#]h%]h']uh+hJhh,hMehjvubah}(h]h!]h#]h%]h']uh+j" hjsubj# )}(hhh](hK)}(hIPerform a structured query. For an example, please see Searching Metacat.h]hIPerform a structured query. For an example, please see Searching Metacat.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMehjubhK)}(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]hquery}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh9 - the text of the pathquery document sent to the server }(h9 - the text of the pathquery document sent to the server hjubj)}(h ``qformat``h]hqformat}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh> - the format to return the results in. Possible values are: }(h> - the format to return the results in. Possible values are: hjubj)}(h``xml``h]hxml}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh, or the name of the a skin.}(h, or the name of the a skin.hjubeh}(h]h!]h#]h%]h']uh+hJhh,hMghjubeh}(h]h!]h#]h%]h']uh+j" hjsubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hupdateh]hupdate}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMjhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(hOverwrite 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]hOverwrite 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,hMjhjubhK)}(hl``docid`` - the docid of the document to update ``doctext`` - the text with which to update the XML documenth](j)}(h ``docid``h]hdocid}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh' - the docid of the document to update }(h' - the docid of the document to update hjubj)}(h ``doctext``h]hdoctext}(hhhj/ubah}(h]h!]h#]h%]h']uh+jhjubh1 - the text with which to update the XML document}(h1 - the text with which to update the XML documenthjubeh}(h]h!]h#]h%]h']uh+hJhh,hMnhjubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(huploadh]hupload}(hj\hjZubah}(h]h!]h#]h%]h']uh+hJhh,hMqhjWubah}(h]h!]h#]h%]h']uh+j" hjTubj# )}(hhh](hK)}(hUpload (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]hUpload (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.}(hjshjqubah}(h]h!]h#]h%]h']uh+hJhh,hMqhjnubhK)}(hW``docid`` - the docid of the data file to upload ``datafile`` - the data file to uploadh](j)}(h ``docid``h]hdocid}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh( - the docid of the data file to upload }(h( - the docid of the data file to upload hjubj)}(h ``datafile``h]hdatafile}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh - the data file to upload}(h - the data file to uploadhjubeh}(h]h!]h#]h%]h']uh+hJhh,hMthjnubeh}(h]h!]h#]h%]h']uh+j" hjTubeh}(h]h!]h#]h%]h']uh+j hj` ubj )}(hhh](j# )}(hhh]hK)}(hvalidateh]hvalidate}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMwhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(h.Validate a specified document against its DTD.h]h.Validate a specified document against its DTD.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMwhjubhK)}(hj``docid`` - the docid of the document to validate ``valtext`` - the DTD by which to validate this documenth](j)}(h ``docid``h]hdocid}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh) - the docid of the document to validate }(h) - the docid of the document to validate hjubj)}(h ``valtext``h]hvaltext}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh- - the DTD by which to validate this document}(h- - the DTD by which to validate this documenthjubeh}(h]h!]h#]h%]h']uh+hJhh,hMyhjubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hj` ubeh}(h]h!]h#]h%]h']uh+j^ hjubeh}(h]h!]h#]h%]h']colsKuh+jhjubah}(h]h!]h#]h%]h']uh+jhjhhhh,hNubhK)}(hMetacat Replication Parametersh]hMetacat Replication Parameters}(hj7hj5hhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hM~hjhhubj)}(hhh]j)}(hhh](j )}(hhh]h}(h]h!]h#]h%]h']colwidthKuh+j hjFubj )}(hhh]h}(h]h!]h#]h%]h']colwidthKuh+j hjFubj )}(hhh]j )}(hhh](j# )}(hhh]hK)}(hActionh]hAction}(hjhhjfubah}(h]h!]h#]h%]h']uh+hJhh,hMhjcubah}(h]h!]h#]h%]h']uh+j" hj`ubj# )}(hhh]hK)}(hDescription and Parametersh]hDescription and Parameters}(hjhj}ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjzubah}(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 hjFubj_ )}(hhh](j )}(hhh](j# )}(hhh]hK)}(hforcereplicateh]hforcereplicate}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(hJForce the local server to get the specified document from the remote host.h]hJForce the local server to get the specified document from the remote host.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubhK)}(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]hserver}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh3 - The server to which this document is being sent }(h3 - The server to which this document is being sent hjubj)}(h ``docid``h]hdocid}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh% - The docid of the document to send }(h% - The docid of the document to send hjubj)}(h ``dbaction``h]hdbaction}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubhH - The action to perform on the document: insert or update (the default)}(hH - The action to perform on the document: insert or update (the default)hjubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hjubj )}(hhh](j# )}(hhh]hK)}(hgetallh]hgetall}(hj"hj ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh]hK)}(hWForce the local server to check all known servers for updated documents. No parameters.h]hWForce the local server to check all known servers for updated documents. No parameters.}(hj9hj7ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj4ubah}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hjubj )}(hhh](j# )}(hhh]hK)}(h getcatalogh]h getcatalog}(hjYhjWubah}(h]h!]h#]h%]h']uh+hJhh,hMhjTubah}(h]h!]h#]h%]h']uh+j" hjQubj# )}(hhh]hK)}(hISend the contents of the xml_catalog table encoded in XML. No parameters.h]hISend the contents of the xml_catalog table encoded in XML. No parameters.}(hjphjnubah}(h]h!]h#]h%]h']uh+hJhh,hMhjkubah}(h]h!]h#]h%]h']uh+j" hjQubeh}(h]h!]h#]h%]h']uh+j hjubj )}(hhh](j# )}(hhh]hK)}(hgetlockh]hgetlock}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(h)Request a lock on the specified document.h]h)Request a lock on the specified document.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubhK)}(hR``docid`` - the docid of the document ``updaterev`` - the revision number of docidh](j)}(h ``docid``h]hdocid}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh - the docid of the document }(h - the docid of the document hjubj)}(h ``updaterev``h]h updaterev}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh - the revision number of docid}(h - the revision number of docidhjubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hjubj )}(hhh](j# )}(hhh]hK)}(hgettimeh]hgettime}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh]hK)}(h4Return the local time on this server. No parameters.h]h4Return the local time on this server. No parameters.}(hjhj ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj ubah}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hjubj )}(hhh](j# )}(hhh]hK)}(h servercontrolh]h servercontrol}(hj.hj,ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj)ubah}(h]h!]h#]h%]h']uh+j" hj&ubj# )}(hhh](hK)}(hDPerform the specified replication control on the Replication daemon.h]hDPerform the specified replication control on the Replication daemon.}(hjEhjCubah}(h]h!]h#]h%]h']uh+hJhh,hMhj@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/deleteh](j)}(h``add``h]hadd}(hhhjUubah}(h]h!]h#]h%]h']uh+jhjQubh, - add a new server to the replication list }(h, - add a new server to the replication list hjQubj)}(h ``delete``h]hdelete}(hhhjhubah}(h]h!]h#]h%]h']uh+jhjQubh- - remove a server from the replication list }(h- - remove a server from the replication list hjQubj)}(h``list``h]hlist}(hhhj{ubah}(h]h!]h#]h%]h']uh+jhjQubh8 - list all of the servers currently in the server list }(h8 - list all of the servers currently in the server list hjQubj)}(h ``replicate``h]h replicate}(hhhjubah}(h]h!]h#]h%]h']uh+jhjQubhj - a Boolean flag (1 or 0) which determines if this server should copy files from the newly added server. }(hj - a Boolean flag (1 or 0) which determines if this server should copy files from the newly added server. hjQubj)}(h ``server``h]hserver}(hhhjubah}(h]h!]h#]h%]h']uh+jhjQubh - the server to add/delete}(h - the server to add/deletehjQubeh}(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 hjubj )}(hhh](j# )}(hhh]hK)}(hreadh]hread}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(hSends docid to the remote host.h]hSends docid to the remote host.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubhK)}(h-``docid`` - the docid of the document to readh](j)}(h ``docid``h]hdocid}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh$ - the docid of the document to read}(h$ - the docid of the document to readhjubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hjubj )}(hhh](j# )}(hhh]hK)}(hstarth]hstart}(hj"hj ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(h
username:
organization:
password:
 
h]hX-
username:
organization:
password:
 
}(hhhj\ubah}(h]h!]h#]h%]h']jQjRuh+jAhMhjhhhh,ubeh}(h]jzah!]h#] logging inah%]h']uh+h hjhhhh,hMubh )}(hhh](h)}(hjh]h8Inserting, Updating, and Deleting XML and Data Documents}(hjhjthhhNhNubah}(h]h!]h#]h%]h']h)juh+hhjqhhhh,hMubhK)}(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.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhjqhhubhdefinition_list)}(hhh](hdefinition_list_item)}(h[``insert`` Insert a new XML or data document into Metacat. You must specify a document ID. h](hterm)}(h ``insert``h]j)}(hjh]hinsert}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubah}(h]h!]h#]h%]h']uh+jhh,hMhjubh definition)}(hhh]hK)}(hOInsert a new XML or data document into Metacat. You must specify a document ID.h]hOInsert a new XML or data document into Metacat. You must specify a document ID.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubah}(h]h!]h#]h%]h']uh+jhjubeh}(h]h!]h#]h%]h']uh+jhh,hMhjubj)}(he``update`` Update an existing Metacat document. The original document is archived, then overwritten. h](j)}(h ``update``h]j)}(hjh]hupdate}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubah}(h]h!]h#]h%]h']uh+jhh,hMhjubj)}(hhh]hK)}(hYUpdate an existing Metacat document. The original document is archived, then overwritten.h]hYUpdate an existing Metacat document. The original document is archived, then overwritten.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhjubah}(h]h!]h#]h%]h']uh+jhjubeh}(h]h!]h#]h%]h']uh+jhh,hMhjhhubj)}(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)}(hjh]hdelete}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubah}(h]h!]h#]h%]h']uh+jhh,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]hXEArchive 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+jhj ubeh}(h]h!]h#]h%]h']uh+jhh,hMhjhhubeh}(h]h!]h#]h%]h']uh+jhjqhhhh,hNubhwarning)}(hcIt is not possible to "delete" one revision without "deleting" all revisions of a given identifier.h]hK)}(hcIt is not possible to "delete" one revision without "deleting" all revisions of a given identifier.h]hkIt is not possible to “delete” one revision without “deleting” all revisions of a given identifier.}(hjPhjNubah}(h]h!]h#]h%]h']uh+hJhh,hMhjJubah}(h]h!]h#]h%]h']uh+jHhjqhhhh,hNubhK)}(hThe 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]hThe following is an example of a Web form (see figure) that can perform all three tasks. Example HTML code is included in the sidebar.}(hjdhjbhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhjqhhubj)}(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']uriimages/screenshots/image041.jpgj}j0j~suh+jhjphh,hMubj)}(hTAn example of a Web form used to insert, delete, or update XML documents in Metacat.h]hTAn example of a Web form used to insert, delete, or update XML documents in Metacat.}(hjhjubah}(h]h!]h#]h%]h']uh+jhh,hMhjpubeh}(h]id5ah!]h#]h%]h']jcenteruh+jhMhjqhhhh,ubjB)}(hX8 MetaCat MetaCat XML Loader

Upload, Change, or Delete an XML document using this form.

1. Choose an action: Insert Update Delete
2. Provide a Document ID (optional for Insert) Public Document
3. Provide XML text (not needed for Delete)

4. Provide DTD text for upload (optional; not needed for Delete)
h]hX8 MetaCat MetaCat XML Loader

Upload, Change, or Delete an XML document using this form.

1. Choose an action: Insert Update Delete
2. Provide a Document ID (optional for Insert) Public Document
3. Provide XML text (not needed for Delete)

4. Provide DTD text for upload (optional; not needed for Delete)
}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhMhjqhhhh,ubeh}(h]jah!]h#]8inserting, updating, and deleting xml and data documentsah%]h']uh+h hjhhhh,hMubh )}(hhh](h)}(hjh]hSearching Metacat}(hjhjhhhNhNubah}(h]h!]h#]h%]h']h)juh+hhjhhhh,hM;ubhK)}(h:To search Metacat use the ``query`` or ``squery`` actions.h](hTo search Metacat use the }(hTo search Metacat use the hjhhhNhNubj)}(h ``query``h]hquery}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh or }(h or hjhhhNhNubj)}(h ``squery``h]hsquery}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh actions.}(h actions.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hM<hjhhubj)}(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]hquery}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh:}(h:hjubeh}(h]h!]h#]h%]h']uh+jhh,hM@hjubj)}(hhh]hK)}(hPerform a free text query. Specify the returndoctype, qformat, returnfield, operator, searchmode, anyfield, and (optionally) a querytitle and doctype.h]hPerform a free text query. Specify the returndoctype, qformat, returnfield, operator, searchmode, anyfield, and (optionally) a querytitle and doctype.}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hM?hjubah}(h]h!]h#]h%]h']uh+jhjubeh}(h]h!]h#]h%]h']uh+jhh,hM@hjubj)}(hg``squery``: Perform a structured query by submitting an XML pathquery document to the Metacat server. h](j)}(h ``squery``:h](j)}(h ``squery``h]hsquery}(hhhj9ubah}(h]h!]h#]h%]h']uh+jhj5ubh:}(hj hj5ubeh}(h]h!]h#]h%]h']uh+jhh,hMEhj1ubj)}(hhh]hK)}(hYPerform a structured query by submitting an XML pathquery document to the Metacat server.h]hYPerform a structured query by submitting an XML pathquery document to the Metacat server.}(hjVhjTubah}(h]h!]h#]h%]h']uh+hJhh,hMChjQubah}(h]h!]h#]h%]h']uh+jhj1ubeh}(h]h!]h#]h%]h']uh+jhh,hMEhjhhubeh}(h]h!]h#]h%]h']uh+jhjhhhh,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.}(hjvhjthhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMGhjhhubj)}(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']uriimages/screenshots/image043.jpgj}j0jsuh+jhjhh,hMSubj)}(hnExample of a basic search form using a query action. The HTML code used to create the form is displayed below.h]hnExample of a basic search form using a query action. The HTML code used to create the form is displayed below.}(hjhjubah}(h]h!]h#]h%]h']uh+jhh,hMShjubeh}(h]id6ah!]h#]h%]h']jcenteruh+jhMShjhhhh,ubjB)}(hXa Search
Search for:
h]hXa Search
Search for:
}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhMWhjhhhh,ubhK)}(hMetacat'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]hMetacat’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.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMshjhhubjB)}(hX  unspecified unspecified dataset/title keyword dataset/creator/individualName/surName eml://ecoinformatics.org/eml-2.1.0 eml://ecoinformatics.org/eml-2.0.1 eml://ecoinformatics.org/eml-2.0.0 Charismatic megafauna dataset/title sea otter keyword Enhydra abstract/para h]hX  unspecified unspecified dataset/title keyword dataset/creator/individualName/surName eml://ecoinformatics.org/eml-2.1.0 eml://ecoinformatics.org/eml-2.0.1 eml://ecoinformatics.org/eml-2.0.0 Charismatic megafauna dataset/title sea otter keyword Enhydra abstract/para }(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhMyhjhhhh,ubhK)}(hEach ```` parameter specifies a field that the database will return (in addition to the fields Metacat returns by default) for each search result.h](hEach }(hEach hjhhhNhNubj)}(h````h]h }(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh 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.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubhK)}(hThe ```` 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](hThe }(hThe hjhhhNhNubj)}(h````h]h}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh 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.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubhK)}(hX6A ```` creates an AND or an OR statement that applies to the nested ```` tags. The querygroup operator can be UNION or INTERSECT. A ```` defines the actual field (contained in ```` tags) against which the query (contained in the ```` tags) is being performed.h](hA }(hA hjhhhNhNubj)}(h````h]h }(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh> 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 hjhhhNhNubj)}(h````h]h }(hhhj2ubah}(h]h!]h#]h%]h']uh+jhjubh< tags. The querygroup operator can be UNION or INTERSECT. A }(h< tags. The querygroup operator can be UNION or INTERSECT. A hjhhhNhNubj)}(h````h]h }(hhhjEubah}(h]h!]h#]h%]h']uh+jhjubh( defines the actual field (contained in }(h( defines the actual field (contained in hjhhhNhNubj)}(h````h]h }(hhhjXubah}(h]h!]h#]h%]h']uh+jhjubh1 tags) against which the query (contained in the }(h1 tags) against which the query (contained in the hjhhhNhNubj)}(h ````h]h}(hhhjkubah}(h]h!]h#]h%]h']uh+jhjubh tags) is being performed.}(h tags) is being performed.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubhK)}(hXFThe ```` can also contain a document type keyword contained in ```` 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](hThe }(hThe hjhhhNhNubj)}(h````h]h }(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh7 can also contain a document type keyword contained in }(h7 can also contain a document type keyword contained in hjhhhNhNubj)}(h````h]h }(hhhjubah}(h]h!]h#]h%]h']uh+jhjubhX 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.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubhK)}(hRAfter Metacat has processed a Pathquery document, it returns a resultset document.h]hRAfter Metacat has processed a Pathquery document, it returns a resultset document.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubjB)}(hX3 unspecified unspecified dataset/title keyword dataset/creator/individualName/surName eml://ecoinformatics.org/eml-2.1.0 eml://ecoinformatics.org/eml-2.0.1 eml://ecoinformatics.org/eml-2.0.0 Charismatic megafauna dataset/title sea otter keyword Enhydra abstract/para nrs.569.3 eml eml://ecoinformatics.org/eml-2.0.0 2012-06-06 2012-06-06 Marine Mammal slides Bancroft knb-lter-sbc.61.1 eml eml://ecoinformatics.org/eml-2.1.0 2012-06-06 2012-06-06 Nelson Harrer Reed SBC LTER: Reef: Sightings of Sea Otters (Enhydra lutris) near Santa Barbara and Channel Islands, ongoing since 2007 ..... h]hX3 unspecified unspecified dataset/title keyword dataset/creator/individualName/surName eml://ecoinformatics.org/eml-2.1.0 eml://ecoinformatics.org/eml-2.0.1 eml://ecoinformatics.org/eml-2.0.0 Charismatic megafauna dataset/title sea otter keyword Enhydra abstract/para nrs.569.3 eml eml://ecoinformatics.org/eml-2.0.0 2012-06-06 2012-06-06 Marine Mammal slides Bancroft knb-lter-sbc.61.1 eml eml://ecoinformatics.org/eml-2.1.0 2012-06-06 2012-06-06 Nelson Harrer Reed SBC LTER: Reef: Sightings of Sea Otters (Enhydra lutris) near Santa Barbara and Channel Islands, ongoing since 2007 ..... }(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhMhjhhhh,ubhK)}(hWhen Metacat returns a resultset document, the servlet always includes the pathquery used to create it. The pathquery XML is contained in the tag, the first element in the resultset.h]hWhen Metacat returns a resultset document, the servlet always includes the pathquery used to create it. The pathquery XML is contained in the tag, the first element in the resultset.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubhK)}(hXEach XML document returned by the query is represented by a ```` 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 ```` tags (e.g., dataset/title to return the document title), the additional fields are returned in ```` tags.h](h``h]h }(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh 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 hjhhhNhNubj)}(h````h]h }(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh` 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 hjhhhNhNubj)}(h ````h]h}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh tags.}(h tags.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubhK)}(hJMetacat can return the XML resultset to your client as either XML or HTML.h]hJMetacat can return the XML resultset to your client as either XML or HTML.}(hj-hj+hhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubeh}(h]jah!]h#]searching metacatah%]h']uh+h hjhhhh,hM;ubh )}(hhh](h)}(hjh]hPaged Query Returns}(hjhjChhhNhNubah}(h]h!]h#]h%]h']h)juh+hhj@hhhh,hMubhK)}(hXDividing 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]hXDividing 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.}(hjRhjPhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhj@hhubj)}(hhh](j)}(hf.. figure:: images/screenshots/image045.jpg :align: center An example of paged search results. h]h}(h]h!]h#]h%]h']uriimages/screenshots/image045.jpgj}j0jlsuh+jhj^hh,hMubj)}(h#An example of paged search results.h]h#An example of paged search results.}(hjphjnubah}(h]h!]h#]h%]h']uh+jhh,hMhj^ubeh}(h]id7ah!]h#]h%]h']jcenteruh+jhMhj@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.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhj@hhubjB)}(hX 1 10 2 0 ... ... ... h]hX 1 10 2 0 ... ... ... }(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhMhj@hhhh,ubhK)}(hThe 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]hThe 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.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhj@hhubjB)}(hXPrevious Page Next Pageh]hXPrevious Page Next Page}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhMhj@hhhh,ubhK)}(hIn 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]hIn 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.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMhj@hhubeh}(h]jah!]h#]paged query returnsah%]h']uh+h hjhhhh,hMubh )}(hhh](h)}(hjh]hReading Data and Metadata}(hjhjhhhNhNubah}(h]h!]h#]h%]h']h)juh+hhjhhhh,hMubhK)}(hXTo 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 hjhhhNhNubj)}(h``read``h]hread}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh action. The }(h action. The hjhhhNhNubj)}(h``read``h]hread}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh action takes two parameters: }(h action takes two parameters: hjhhhNhNubj)}(h ``docid``h]hdocid}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubhA, which specifies the document ID of the document to return, and }(hA, which specifies the document ID of the document to return, and hjhhhNhNubj)}(h ``qformat``h]hqformat}(hhhj#ubah}(h]h!]h#]h%]h']uh+jhjubh6, which specifies the return format for the document (}(h6, which specifies the return format for the document (hjhhhNhNubj)}(h``html``h]hhtml}(hhhj6ubah}(h]h!]h#]h%]h']uh+jhjubh or }(h or hjhhhNhNubj)}(h``xml``h]hxml}(hhhjIubah}(h]h!]h#]h%]h']uh+jhjubh. or the name of a configured style-set, e.g., }(h. or the name of a configured style-set, e.g., hjhhhNhNubj)}(h ``default``h]hdefault}(hhhj\ubah}(h]h!]h#]h%]h']uh+jhjubh). If }(h). If hjhhhNhNubj)}(h ``qformat``h]hqformat}(hhhjoubah}(h]h!]h#]h%]h']uh+jhjubh is set to }(h is set to hjhhhNhNubj)}(h``xml``h]hxml}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubhU, Metacat will return the XML document untransformed. If the return format is set to }(hU, Metacat will return the XML document untransformed. If the return format is set to hjhhhNhNubj)}(h``html``h]hhtml}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh, 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.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hMhjhhubj)}(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']uriimages/screenshots/image047.jpgj}j0jsuh+jhjhh,hM)ubj)}(hzThe same document displayed using different qformat parameters (from left to right: the default style-set, XML, and HTML).h]hzThe same document displayed using different qformat parameters (from left to right: the default style-set, XML, and HTML).}(hjhjubah}(h]h!]h#]h%]h']uh+jhh,hM)hjubeh}(h]id8ah!]h#]h%]h']jcenteruh+jhM)hjhhhh,ubhK)}(hNote 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](hNote that the }(hNote that the hjhhhNhNubj)}(h``read``h]hread}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubhy action can be used to read both data files and metadata files. To read a data file, you could use the following request:}(hy action can be used to read both data files and metadata files. To read a data file, you could use the following request:hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hM,hjhhubjB)}(hThttp://yourserver.com/yourcontext/metacat?action=read&docid=nceas.55&qformat=defaulth]hThttp://yourserver.com/yourcontext/metacat?action=read&docid=nceas.55&qformat=default}(hhhjubah}(h]h!]h#]h%]h']jQjRuh+jAhM/hjhhhh,ubhK)}(hWhere ``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](hWhere }(hWhere hjhhhNhNubj)}(h ``nceas.55``h]hnceas.55}(hhhj ubah}(h]h!]h#]h%]h']uh+jhjubh9 is the docid of the data file stored in the Metacat and }(h9 is the docid of the data file stored in the Metacat and hjhhhNhNubj)}(h ``default``h]hdefault}(hhhj ubah}(h]h!]h#]h%]h']uh+jhjubhh 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).hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hM1hjhhubjB)}(hXr Read Document
h]hXr Read Document
}(hhhj9ubah}(h]h!]h#]h%]h']jQjRuh+jAhM7hjhhhh,ubeh}(h]jah!]h#]reading data and metadataah%]h']uh+h hjhhhh,hMubeh}(h]j7ah!]h#]%using html forms (the http interface)ah%]h']uh+h hh hhhh,hKubh )}(hhh](h)}(hj,h]h%Using the EarthGrid API (aka EcoGrid)}(hj,hjXhhhNhNubah}(h]h!]h#]h%]h']h)j/uh+hhjUhhhh,hMFubhnote)}(hXThe 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)}(hXThe 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 hjkubhemphasis)}(h *deprecated*h]h deprecated}(hhhjvubah}(h]h!]h#]h%]h']uh+jthjkubh 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.hjkubeh}(h]h!]h#]h%]h']uh+hJhh,hMJhjgubah}(h]h!]h#]h%]h']uh+jehjUhhhh,hNubhK)}(hXlThe 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]hXlThe 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.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMOhjUhhubhK)}(hBecause 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]hBecause 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.}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hMUhjUhhubhK)}(hXFor 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](hFor more information about each EarthGrid service and its WSDL file, navigate to the “services” page on your Metacat server (e.g., }(hFor more information about each EarthGrid service and its WSDL file, navigate to the "services" page on your Metacat server (e.g., hjhhhNhNubhP)}(h.http://knb.ecoinformatics.org/metacat/servicesh]h.http://knb.ecoinformatics.org/metacat/services}(hhhjubah}(h]h!]h#]h%]h']refurijuh+hOhjubhe). Note that the AdminService and Version service that appear on this page are not part of EarthGrid.}(he). Note that the AdminService and Version service that appear on this page are not part of EarthGrid.hjhhhNhNubeh}(h]h!]h#]h%]h']uh+hJhh,hMYhjUhhubhK)}(hEarthGrid/EcoGrid API Summaryh]hEarthGrid/EcoGrid API Summary}(hjhjhhhNhNubah}(h]h!]h#]h%]h']uh+hJhh,hM_hjUhhubj)}(hhh]j)}(hhh](j )}(hhh]h}(h]h!]h#]h%]h']colwidthKuh+j hjubj )}(hhh]h}(h]h!]h#]h%]h']colwidthKeuh+j hjubj )}(hhh]j )}(hhh](j# )}(hhh]hK)}(hServiceh]hService}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMbhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh]hK)}(h Descriptionh]h Description}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMbhjubah}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hjubah}(h]h!]h#]h%]h']uh+j hjubj_ )}(hhh](j )}(hhh](j# )}(hhh]hK)}(hAuthenticationQueryServiceh]hAuthenticationQueryService}(hjGhjEubah}(h]h!]h#]h%]h']uh+hJhh,hMdhjBubah}(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,hMdhjYubhK)}(hMethods: ``query``, ``get``h](h Methods: }(h Methods: hjjubj)}(h ``query``h]hquery}(hhhjsubah}(h]h!]h#]h%]h']uh+jhjjubh, }(h, hjjubj)}(h``get``h]hget}(hhhjubah}(h]h!]h#]h%]h']uh+jhjjubeh}(h]h!]h#]h%]h']uh+hJhh,hMfhjYubeh}(h]h!]h#]h%]h']uh+j" hj?ubeh}(h]h!]h#]h%]h']uh+j hj<ubj )}(hhh](j# )}(hhh]hK)}(hAuthenticationServiceh]hAuthenticationService}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhhjubah}(h]h!]h#]h%]h']uh+j" hjubj# )}(hhh](hK)}(hLog in and out of the EarthGridh]hLog in and out of the EarthGrid}(hjhjubah}(h]h!]h#]h%]h']uh+hJhh,hMhhjubhK)}(hMethods: ``login``, ``logout``h](h Methods: }(h Methods: hjubj)}(h ``login``h]hlogin}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubh, }(h, hjubj)}(h ``logout``h]hlogout}(hhhjubah}(h]h!]h#]h%]h']uh+jhjubeh}(h]h!]h#]h%]h']uh+hJhh,hMjhjubeh}(h]h!]h#]h%]h']uh+j" hjubeh}(h]h!]h#]h%]h']uh+j hj<ubj )}(hhh](j# )}(hhh]hK)}(hIdentifierServiceh]hIdentifierService}(hj hj ubah}(h]h!]h#]h%]h']uh+hJhh,hMlhj ubah}(h]h!]h#]h%]h']uh+j" hj ubj# )}(hhh](hK)}(hQList, lookup, validate, and add Life Science Identifiers (LSIDs) to the EarthGridh]hQList, 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+jhj8 ubh, }(h, hj8 ubj)}(h ``addLSID``h]haddLSID}(hhhjT ubah}(h]h!]h#]h%]h']uh+jhj8 ubh, }(h, hj8 ubj)}(h``getNextRevision``h]hgetNextRevision}(hhhjg ubah}(h]h!]h#]h%]h']uh+jhj8 ubh, }(h, hj8 ubj)}(h``getNextObject``h]h getNextObject}(hhhjz ubah}(h]h!]h#]h%]h']uh+jhj8 ubh, }(hjS hj8 ubj)}(h ``getAllIds``h]h getAllIds}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj8 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 PutServiceh]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)}(hWrite metadata to the EarthGridh]hWrite metadata to the EarthGrid}(hj hj ubah}(h]h!]h#]h%]h']uh+hJhh,hMphj ubhK)}(hMethods: ``put``h](h Methods: }(h Methods: hj ubj)}(h``put``h]hput}(hhhj ubah}(h]h!]h#]h%]h']uh+jhj 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 QueryServiceh]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)}(h3Search for and retrieve metadata from the EarthGridh]h3Search for and retrieve metadata from the EarthGrid}(hj!hj!ubah}(h]h!]h#]h%]h']uh+hJhh,hMthj!ubhK)}(hMethods: ``query``, ``get``h](h Methods: }(h Methods: hj+!ubj)}(h ``query``h]hquery}(hhhj4!ubah}(h]h!]h#]h%]h']uh+jhj+!ubh, }(h, hj+!ubj)}(h``get``h]hget}(hhhjG!ubah}(h]h!]h#]h%]h']uh+jhj+!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)}(hRegistryServiceh]hRegistryService}(hjo!hjm!ubah}(h]h!]h#]h%]h']uh+hJhh,hMxhjj!ubah}(h]h!]h#]h%]h']uh+j" hjg!ubj# )}(hhh](hK)}(hAdd, update, remove, and search for registered EarthGrid services. Note: The WSDL for this service is found under http://ecogrid.ecoinformatics.org/registry/servicesh](hsAdd, update, remove, and search for registered EarthGrid services. Note: The WSDL for this service is found under }(hsAdd, update, remove, and search for registered EarthGrid services. Note: The WSDL for this service is found under hj!ubhP)}(h3http://ecogrid.ecoinformatics.org/registry/servicesh]h3http://ecogrid.ecoinformatics.org/registry/services}(hhhj!ubah}(h]h!]h#]h%]h']refurij!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]hadd}(hhhj!ubah}(h]h!]h#]h%]h']uh+jhj!ubh, }(h, hj!ubj)}(h ``update``h]hupdate}(hhhj!ubah}(h]h!]h#]h%]h']uh+jhj!ubh, }(h, hj!ubj)}(h ``remove``h]hremove}(hhhj!ubah}(h]h!]h#]h%]h']uh+jhj!ubh, }(h, hj!ubj)}(h``list``h]hlist}(hhhj!ubah}(h]h!]h#]h%]h']uh+jhj!ubh, }(hj!hj!ubj)}(h ``query``h]hquery}(hhhj!ubah}(h]h!]h#]h%]h']uh+jhj!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^ hjubeh}(h]h!]h#]h%]h']colsKuh+jhjubah}(h]h!]h#]h%]h']uh+jhjUhhhh,hNubeh}(h]j5ah!]h#]%using the earthgrid api (aka ecogrid)ah%]h']uh+h hh hhhh,hMFubh )}(hhh](h)}(hjOh]h Using Morpho}(hjOhj3"hhhNhNubah}(h]h!]h#]h%]h']h)jRuh+hhj0"hhhh,hMubhK)}(hXHMorpho 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]hXHMorpho 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,hMhj0"hhubhK)}(hXMorpho 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]hXMorpho 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,hMhj0"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']uriimages/screenshots/image049.pngj}j0jj"suh+jhj\"hh,hMubj)}(hGSet the Metacat URL in the Morpho preferences to point to your Metacat.h]hGSet the Metacat URL in the Morpho preferences to point to your Metacat.}(hjn"hjl"ubah}(h]h!]h#]h%]h']uh+jhh,hMhj\"ubeh}(h]id9ah!]h#]h%]h']jcenteruh+jhMhj0"hhhh,ubhK)}(hMFor 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)}(hhttp://knb.ecoinformatics.org/h]hhttp://knb.ecoinformatics.org/}(hhhj"ubah}(h]h!]h#]h%]h']refurij"uh+hOhj"ubeh}(h]h!]h#]h%]h']uh+hJhh,hMhj0"hhubeh}(h]jXah!]h#] using morphoah%]h']uh+h hh hhhh,hMubh )}(hhh](h)}(hjrh]hCreating Your Own Client}(hjrhj"hhhNhNubah}(h]h!]h#]h%]h']h)juuh+hhj"hhhh,hMubjf)}(hNOTE: 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)}(hNOTE: 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]hNOTE: 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,hMhj"ubah}(h]h!]h#]h%]h']uh+jehj"hhhh,hNubhK)}(hXMetacat'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]hXMetacat’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,hMhj"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)}(hjavadoc_h]hjavadoc}(hhhj"ubah}(h]h!]h#]h%]h']namejavadocrefuriAhttp://knb.ecoinformatics.org/software/metacat/dev/api/index.htmluh+hOhj"resolvedKubh3 documentation. To use the client API, include the }(h3 documentation. To use the client API, include the hj"hhhNhNubj)}(h``metacat-client.jar``h]hmetacat-client.jar}(hhhj"ubah}(h]h!]h#]h%]h']uh+jhj"ubh, }(h, hj"hhhNhNubj)}(h``utilities.jar``h]h utilities.jar}(hhhj#ubah}(h]h!]h#]h%]h']uh+jhj"ubh, }(hj#hj"ubj)}(h``commons-io-2.0.jar``h]hcommons-io-2.0.jar}(hhhj##ubah}(h]h!]h#]h%]h']uh+jhj"ubh, and }(h, and hj"hhhNhNubj)}(h``httpclient.jar``h]hhttpclient.jar}(hhhj6#ubah}(h]h!]h#]h%]h']uh+jhj"ubhl in your classpath. After including these classes, you can begin using the API methods (see the next table).}(hl 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,hMhj"hhubhtarget)}(hN.. _javadoc: http://knb.ecoinformatics.org/software/metacat/dev/api/index.htmlh]h}(h]javadocah!]h#]javadocah%]h']j"j"uh+jO#hMhj"hhhh, referencedKubhK)}(hrThe following code block displays a typical session for reading a document from Metacat using the Java client API.h]hrThe 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,hMhj"hhubjB)}(hXString 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]hXString 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']jQjRuh+jAhMhj"hhhh,ubj)}(hhh]j)}(hhh](j )}(hhh]h}(h]h!]h#]h%]h']colwidthKuh+j hj}#ubj )}(hhh]h}(h]h!]h#]h%]h']colwidthKuh+j hj}#ubj )}(hhh]h}(h]h!]h#]h%]h']colwidthKuh+j hj}#ubj )}(hhh]j )}(hhh](j# )}(hhh]hK)}(hMethodh]hMethod}(hj#hj#ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj#ubah}(h]h!]h#]h%]h']uh+j" hj#ubj# )}(hhh]hK)}(hParameters and Throwsh]hParameters and Throws}(hj#hj#ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj#ubah}(h]h!]h#]h%]h']uh+j" hj#ubj# )}(hhh]hK)}(h Descriptionh]h Description}(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#ubah}(h]h!]h#]h%]h']uh+j hj}#ubj_ )}(hhh](j )}(hhh](j# )}(hhh]hK)}(hdeleteh]hdelete}(hj$hj#ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj#ubah}(h]h!]h#]h%]h']uh+j" hj#ubj# )}(hhh]hK)}(hy``public String delete(String docid) throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;``h]j)}(hj$h]hupublic String delete(String docid) throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;}(hhhj$ubah}(h]h!]h#]h%]h']uh+jhj$ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj$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,hMhj2$ubah}(h]h!]h#]h%]h']uh+j" hj#ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(h getAllDocidsh]h getAllDocids}(hjW$hjU$ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjR$ubah}(h]h!]h#]h%]h']uh+j" hjO$ubj# )}(hhh]hK)}(hE``public Vector getAllDocids(String scope) throws MetacatException;``h]j)}(hjn$h]hApublic Vector getAllDocids(String scope) throws MetacatException;}(hhhjp$ubah}(h]h!]h#]h%]h']uh+jhjl$ubah}(h]h!]h#]h%]h']uh+hJhh,hMhji$ubah}(h]h!]h#]h%]h']uh+j" hjO$ubj# )}(hhh]hK)}(hsReturn a list of all docids that match a given scope. If scope is null, return all docids registered in the system.h]hsReturn 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,hMhj$ubah}(h]h!]h#]h%]h']uh+j" hjO$ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(h getLastDocidh]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)}(hE``public String getLastDocid(String scope) throws MetacatException;``h]j)}(hj$h]hApublic String getLastDocid(String scope) throws MetacatException;}(hhhj$ubah}(h]h!]h#]h%]h']uh+jhj$ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj$ubah}(h]h!]h#]h%]h']uh+j" hj$ubj# )}(hhh]hK)}(hReturn 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]hReturn 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,hMhj$ubah}(h]h!]h#]h%]h']uh+j" hj$ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(hgetloggedinuserinfoh]hgetloggedinuserinfo}(hj%hj%ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj%ubah}(h]h!]h#]h%]h']uh+j" hj$ubj# )}(hhh]hK)}(hL``public String getloggedinuserinfo() throws MetacatInaccessibleException;``h]j)}(hj%h]hHpublic String getloggedinuserinfo() throws MetacatInaccessibleException;}(hhhj%ubah}(h]h!]h#]h%]h']uh+jhj%ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj%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,hMhj7%ubah}(h]h!]h#]h%]h']uh+j" hj$ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(hgetNewestDocRevisionh]hgetNewestDocRevision}(hj\%hjZ%ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjW%ubah}(h]h!]h#]h%]h']uh+j" hjT%ubj# )}(hhh]hK)}(hJ``public int getNewestDocRevision(String docId) throws MetacatException;``h]j)}(hjs%h]hFpublic int getNewestDocRevision(String docId) throws MetacatException;}(hhhju%ubah}(h]h!]h#]h%]h']uh+jhjq%ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjn%ubah}(h]h!]h#]h%]h']uh+j" hjT%ubj# )}(hhh]hK)}(hAReturn the latest revision of specified the document from Metacath]hAReturn the latest revision of specified the document from Metacat}(hj%hj%ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj%ubah}(h]h!]h#]h%]h']uh+j" hjT%ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(h getSessonIdh]h getSessonId}(hj%hj%ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj%ubah}(h]h!]h#]h%]h']uh+j" hj%ubj# )}(hhh]hK)}(h!``public String getSessionId();``h]j)}(hj%h]hpublic String getSessionId();}(hhhj%ubah}(h]h!]h#]h%]h']uh+jhj%ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj%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,hMhj%ubah}(h]h!]h#]h%]h']uh+j" hj%ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(hinserth]hinsert}(hj &hj&ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj&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]hpublic String insert(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;}(hhhj#&ubah}(h]h!]h#]h%]h']uh+jhj&ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj&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,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 isRegisteredh]h isRegistered}(hja&hj_&ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj\&ubah}(h]h!]h#]h%]h']uh+j" hjY&ubj# )}(hhh]hK)}(hF``public boolean isRegistered(String docid) throws MetacatException;``h]j)}(hjx&h]hBpublic boolean isRegistered(String docid) throws MetacatException;}(hhhjz&ubah}(h]h!]h#]h%]h']uh+jhjv&ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjs&ubah}(h]h!]h#]h%]h']uh+j" hjY&ubj# )}(hhh]hK)}(h7Return true if given docid is registered; false if not.h]h7Return true if given docid is registered; false if not.}(hj&hj&ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj&ubah}(h]h!]h#]h%]h']uh+j" hjY&ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(hloginh]hlogin}(hj&hj&ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj&ubah}(h]h!]h#]h%]h']uh+j" hj&ubj# )}(hhh]hK)}(ht``public String login(String username, String password) throws MetacatAuthException, MetacatInaccessibleException;``h]j)}(hj&h]hppublic String login(String username, String password) throws MetacatAuthException, MetacatInaccessibleException;}(hhhj&ubah}(h]h!]h#]h%]h']uh+jhj&ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj&ubah}(h]h!]h#]h%]h']uh+j" hj&ubj# )}(hhh]hK)}(hLog in to a Metacat server.h]hLog in to a Metacat server.}(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)}(hlogouth]hlogout}(hj'hj 'ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj 'ubah}(h]h!]h#]h%]h']uh+j" hj'ubj# )}(hhh]hK)}(hQ``public String logout() throws MetacatInaccessibleException, MetacatException;``h]j)}(hj&'h]hMpublic String logout() throws MetacatInaccessibleException, MetacatException;}(hhhj('ubah}(h]h!]h#]h%]h']uh+jhj$'ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj!'ubah}(h]h!]h#]h%]h']uh+j" hj'ubj# )}(hhh]hK)}(hLog out of a Metacat server.h]hLog out of a Metacat server.}(hjF'hjD'ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjA'ubah}(h]h!]h#]h%]h']uh+j" hj'ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(hqueryh]hquery}(hjf'hjd'ubah}(h]h!]h#]h%]h']uh+hJhh,hMhja'ubah}(h]h!]h#]h%]h']uh+j" hj^'ubj# )}(hhh]hK)}(hZ``public Reader query(Reader xmlQuery) throws MetacatInaccessibleException, IOException;``h]j)}(hj}'h]hVpublic Reader query(Reader xmlQuery) throws MetacatInaccessibleException, IOException;}(hhhj'ubah}(h]h!]h#]h%]h']uh+jhj{'ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjx'ubah}(h]h!]h#]h%]h']uh+j" hj^'ubj# )}(hhh]hK)}(hCQuery the Metacat repository and return the result set as a Reader.h]hCQuery the Metacat repository and return the result set as a Reader.}(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)}(hqueryh]hquery}(hj'hj'ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj'ubah}(h]h!]h#]h%]h']uh+j" hj'ubj# )}(hhh]hK)}(hj``public Reader query(Reader xmlQuery, String qformat) throws MetacatInaccessibleException, IOException;``h]j)}(hj'h]hfpublic Reader query(Reader xmlQuery, String qformat) throws MetacatInaccessibleException, IOException;}(hhhj'ubah}(h]h!]h#]h%]h']uh+jhj'ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj'ubah}(h]h!]h#]h%]h']uh+j" hj'ubj# )}(hhh]hK)}(hrQuery the Metacat repository with the given metacat-compatible query format and return the result set as a Reader.h]hrQuery 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,hMhj'ubah}(h]h!]h#]h%]h']uh+j" hj'ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(hreadh]hread}(hj(hj(ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj(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]hpublic Reader read(String docid) throws InsufficientKarmaException, MetacatInaccessibleException, DocumentNotFoundException, MetacatException;}(hhhj-(ubah}(h]h!]h#]h%]h']uh+jhj)(ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj&(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,hMhjF(ubah}(h]h!]h#]h%]h']uh+j" hj (ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(hreadInlineDatah]hreadInlineData}(hjk(hji(ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjf(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]hpublic Reader readInlineData(String inlinedataid) throws InsufficientKarmaException, MetacatInaccessibleException, MetacatException;}(hhhj(ubah}(h]h!]h#]h%]h']uh+jhj(ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj}(ubah}(h]h!]h#]h%]h']uh+j" hjc(ubj# )}(hhh]hK)}(h1Read inline data from the Metacat server session.h]h1Read inline data from the Metacat server session.}(hj(hj(ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj(ubah}(h]h!]h#]h%]h']uh+j" hjc(ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(h setAccessh]h setAccess}(hj(hj(ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj(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]hpublic String setAccess(String _docid, String _principal, String _permission, String _permType, String _permOrder ); throws InsufficientKarmaException, MetacatException, MetacatInaccessibleException;}(hhhj(ubah}(h]h!]h#]h%]h']uh+jhj(ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj(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,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 setMetacatUrlh]h setMetacatUrl}(hj)hj)ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj)ubah}(h]h!]h#]h%]h']uh+j" hj)ubj# )}(hhh]hK)}(h1``public void setMetacatUrl(String metacatUrl);``h]j)}(hj0)h]h-public void setMetacatUrl(String metacatUrl);}(hhhj2)ubah}(h]h!]h#]h%]h']uh+jhj.)ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj+)ubah}(h]h!]h#]h%]h']uh+j" hj)ubj# )}(hhh]hK)}(h7Set the MetacatUrl to which connections should be made.h]h7Set the MetacatUrl to which connections should be made.}(hjP)hjN)ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjK)ubah}(h]h!]h#]h%]h']uh+j" hj)ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(h setSessionIdh]h setSessionId}(hjp)hjn)ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjk)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+jhj)ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj)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,hMhj)ubah}(h]h!]h#]h%]h']uh+j" hjh)ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(hupdateh]hupdate}(hj)hj)ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj)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)}(hj)h]hpublic String update(String docid, Reader xmlDocument, Reader schema) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;}(hhhj)ubah}(h]h!]h#]h%]h']uh+jhj)ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj)ubah}(h]h!]h#]h%]h']uh+j" hj)ubj# )}(hhh]hK)}(hXUpdate an XML document in the repository by providing a new version of the XML document.h]hXUpdate 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,hMhj)ubah}(h]h!]h#]h%]h']uh+j" hj)ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(huploadh]hupload}(hj*hj*ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj*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]hpublic String upload(String docid, File file) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;}(hhhj7*ubah}(h]h!]h#]h%]h']uh+jhj3*ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj0*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,hMhjP*ubah}(h]h!]h#]h%]h']uh+j" hj*ubeh}(h]h!]h#]h%]h']uh+j hj#ubj )}(hhh](j# )}(hhh]hK)}(huploadh]hupload}(hju*hjs*ubah}(h]h!]h#]h%]h']uh+hJhh,hMhjp*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]hpublic String publicupload(String docid, String fileName, InputStream fileData, int size) throws InsufficientKarmaException, MetacatException, IOException, MetacatInaccessibleException;}(hhhj*ubah}(h]h!]h#]h%]h']uh+jhj*ubah}(h]h!]h#]h%]h']uh+hJhh,hMhj*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,hMhj*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']colsKuh+jhjz#ubah}(h]h!]h#]h%]h']uh+jhj"hhhh,hNubeh}(h]j{ah!]h#]creating your own clientah%]h']uh+h hh hhhh,hMubeh}(h]h_ah!]h#]*accessing and submitting metadata and dataah%]h']uh+h hhhhhh,hKubah}(h]h!]h#]h%]h']sourceh,uh+hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksj" footnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerj+error_encodingUTF-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh, _destinationN _config_files]pep_referencesN pep_base_url https://www.python.org/dev/peps/pep_file_url_templatepep-%04drfc_referencesN rfc_base_urlhttps://tools.ietf.org/html/ tab_widthKtrim_footnote_reference_spacefile_insertion_enabled raw_enabledKsyntax_highlightlong smart_quotessmartquotes_localesNcharacter_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xformembed_stylesheetcloak_email_addressesenvNgettext_compactubreporterNindirect_targets]substitution_defs}substitution_names}refnames}javadoc]j"asrefids}nameids}(j*h_jjjahjhjhjGhjjjRj7jjWjnjzjjj=jjjjKjj-"j5j"jXj*j{jZ#jW#u nametypes}(j*NjNjaNjNjNjGNjNjRNjNjnNjNj=NjNjKNj-"Nj"Nj*NjZ#uh}(h_h jh/hj?hjdhjhjjjJj7jjWjjzjjjqjjjj@jjj5jUjXj0"j{j"jW#jQ#jjjjj=jjVj6jjpjjj~j^jjj|"j\"h*hQhyhohhhhhhjhj1j'jQjGjtjjjjjjjjjjj/j%jRjHjujku footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startKid_startKparse_messages](hsystem_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']levelKtypeINFOsourceh,lineKuh+j`+hjhhhh,hKubja+)}(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']levelKtypej{+sourceh,lineKuh+j`+hjhhhh,hKubja+)}(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']levelKtypej{+sourceh,lineKuh+j`+hjhhhh,hKubja+)}(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']levelKtypej{+sourceh,lineKuh+j`+hjJhhhh,hKubja+)}(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']levelKtypej{+sourceh,lineKuh+j`+hjJhhhh,hKubetransform_messages] transformerN decorationNhhub.