Submission System Technology

Dryad's submission system is a heavily modified version of the DSpace submission system. This page describes the portion of the submission system that is used by the original submitter. In DSpace terms, this is the "Workspace" stage. For details of how content is managed between submitters and curators, see Submission System Workflow. For more information about the curation process and tools available for curators, see Curation.

Functionality
Dryad's submission system allows users to quickly and easily submit data packages. Key features include:
 * 1) Integration with journals -- allowing authors to automatically fill the Dryad forms with information from the journal's description of an article, and automatically notifying journal editors when a Dryad submission is completed.
 * 2) Minimal description requirements -- Dryad minimizes the amount of typing/clicking required by submitters. Descriptions are automatically propagated from the article description to descriptions for individual data files. Reasonable defaults are set for the various choices available.
 * 3) Integration with partner repositories -- allowing submitters to use Dryad information as a starting point for submitting content to another repository.

See also the journal-oriented Submission Integration page.

Workflow

 * 1) When the user navigates to datadryad.org/submit (via button or link, with or without parameters), the submission aspect is activated. For a new submission:
 * 2) Apache rewrites /submit to /handle/10255/3/submit
 * 3) The high-level configuration for modules/xmlui/src/main/resources/aspects/Submission/sitemap.xmap hands off to the DSpace Configurable Submission System.
 * 4) The config/item-submission.xml settings start the user at SelectPublicationStep.
 * 5) Depending on the article status, SelectPublicationStep will attempt to fetch details regarding the article
 * 6) For articles in Published status:
 * 7) * Metadata is fetched from PubMed API (if a PubMed ID is provided)
 * 8) * Metadata is fetched from CrossRef API (if a DOI is provided)
 * 9) For articles in Accepted, In Review, or Not Submitted status:
 * 10) Metadata is read from an XML file on the server generated by Journal Metadata Processing Technology
 * 11) The location of the XML file is specified in dspace.cfg submit.journals.dir. It is usually /opt/dryad/submission/journalMetadata/
 * 12) The file name is based on the Manuscript ID, which the user provided at submission
 * 13) ModelPublication.java processes the information and chooses the correct metadata file for import.
 * 14) The metadata from the file is parsed. All metadata is marshalled through a PublicationBean into a DSpace Item
 * 15) The field mapping (to DSpace metadata fields) is determined by dspace.cfg submit.journal.metadata.XX, and used in SelectPublicationStep
 * 16) When a user completes the initial submission and the package is sent to curators, it enters the Workflow system. For details of the Workflow, see Submission System Workflow.

Configuration
/opt/dryad/bin/dspace dsrun com.atmire.authority.IndexClient
 * dspace.cfg contains high-level configuration options that affect the entire submission system. These configuration properties all start with "submit.".
 * modules/xmlui/src/main/resources/aspects/Submission/sitemap.xmap maps URLs to portions of the submission system.
 * config/item-submission.xml controls the relationships between pages of the submission system and the Java code that handles them.
 * DryadJournalSubmission.properties configures submission settings that vary between journals.
 * To update the list of journals for the auto-complete list on the initial submission page:

Relation to DSpace
Dryad's submission system builds off the basic framework for the DSpace submission system, but it bypasses the user interface and substantially modifies some of the underlying classes.

(need to integrate @mire's documentation here)