NIH Framework Site
  Browse the Catalog
  Search the Catalog
     - HTML Form
     - XML (Expert)
  Submit Entry
     - HTML Form
     - XML (Expert)
  Update Entry
  Catalog Structure
  Catalog Dump
  About this Project
     - Participants
     - NIH Liaison
     - Documents
     - Terminology
  NIH Blueprint
  SfN Gateway
User ID

  neurogateway.org Server Documentation

Catalog Submission Overview

PDF version

Table of Contents


This server allows users to input catalog entries describing neuroscience resources for the Neuroscience Information Framework project. The tentative range of resources to be listed includes online databases, research supply companies, and active research laboratories. This server is a prototype built to aid development of the NIF inventory. A more sophisticated interface will be built as part of (optional) Phase II. Currently, entries can be submitted to this server through either manually through an HTML form or by software using XML.

Return to top

Account Required

In either case, submitting entries requires an account. One can be applied for by entering a desired user name and password in the form at lower left and clicking the "Sign up" button. Before doing so you should first check that your lab or research group does not already have an account. At the current stage, only NIF project member groups are being given accounts.

Return to top


The HTML form is intended for manual entry, and contains instructions on the use of the various fields. It may be accessed through clicking "HTML Form" under "Submit Entry" on the left hand navigation bar. Before making an entry for a resource, you should first check to make sure an entry does not already exist for it. This may be done by utilizing the query facilities on this server.

Return to top

XML Submission

This server is also set up to accept submissions in XML, which is best for import from existing catalog data. Ordinarily (see below), this interface is accessed directly over HTTP by a software client other than a browser. However, for testing purposes, a form is provided in which an XML query can be edited and passed to the server for processing. This is accessed by clicking "XML (Expert)" on the left.

The XML accepted conforms to the BrainML-X protocols (description, and definition) and the data model describing the catalog entry format. A sample may be seen by clicking the "XML (Expert)" link.

This sample has all fields filled in, however some of them are optional. You can determine which ones either by looking at the model definition (see above) or by checking the "Validate only" box and submitting XML with various fields excluded.

Note that multiple entries can be included in one submission. Just include multiple <nsci_resource_informal> tags underneath the <catalog_submission> tag.

Return to top

Submission Protocol

In order to POST XML directly to the server, authorization must be obtained first. This is done by first sending a login message to the server with the username and password of an account. In return, the server will send an authorization key which the agent should then submit along with the XML submission. In greater detail, the process is as follows (see also here):

	1) HTTP POST XML under parameter 'xml' to /catalog/login.do:

<login xmlns="urn:bml/brainml.org:internal/Protocols/3"
          userID="USERNAME" password="PASSWORD" />

        2) Response is like:

<login_response xmlns="urn:bml/brainml.org:internal/Protocols/3"
                   authKey="yBiBwKTVE9J2n5yrZsBGPc6qqwMh4LEK88G8BH0e" />

        3) HTTP POST submission XML under parameter 'xml' to

<catalog_submission xmlns="urn:bml/brainml.org:internal/Protocols/3"
         userID="nif" authKey="yBiBwKTVE9J2n5yrZsBGPc6qqwMh4LEK88G8BH0e"
       (content -- see above)

        4) Response is like:

<catalog_acknowledgement xmlns="urn:bml/brainml.org:internal/Protocols/3"
    userID="lni" identifier="whateverYouPutHereBefore" status="SUCCESS">
   <submittedEntity type=
   <submittedEntity type=

Return to top


Updates to existing entries may be done by either HTML form (click the "Update Entry" link on the left) or over XML. For XML, the process is similar to that for upload, with the following differences:

    1) The URL /catalog/update.do is used instead of /catalog/upload.do.

    2) The root tag is <catalog_update> instead of <catalog_submission>

    3) The 'id' attribute of each submission component
       (<nsci_resource_informal>) should be set to the id of the
       entry being updated.  (These are returned in both the XML and
       HTML submission acknowledgements.)
Return to top

Validation Only

It is possible to just validate the XML instead of actually submitting it. This is done on the text-box web form by checking the "Validate Only" checkbox. When accessing directly using HTTP POST, you can either use '/validate.do' in place of '/upload.do' or add 'validateOnly=true' to the query string.

Return to top


NIH Neuroscience Blueprint