Difference between revisions of "PubMan Sword"
Kleinfercher (talk | contribs) (→Useful information: added new sword deposit formats) |
Kleinfercher (talk | contribs) |
||
Line 129: | Line 129: | ||
** '''escidoc''' publication metadata (file ending .xml) | ** '''escidoc''' publication metadata (file ending .xml) | ||
** '''tei''' metadata (file ending .tei), the mapping is optimized for the use of the PEER Project | ** '''tei''' metadata (file ending .tei), the mapping is optimized for the use of the PEER Project | ||
** ''' | ** '''BibTex''' metadata (file ending .bib) | ||
** '''EndNote''' metadata (file ending .enl) | ** '''EndNote''' metadata (file ending .enl) |
Revision as of 13:42, 15 June 2009
This page briefly describes the SWORD Server implementation in the PubMan solution. General Information about SWORD can be found here.
Implementation[edit]
For start the SWORD functionality is directly implemented in PubMan by exploiting and extending the sword api provided by JISC. In future we could have a separate SWORD service for all eSciDoc solutions.
PubMan implements 3 classes for the SWORD service:
- PubManSwordServer - Processing of requests
- PubManServiceDocumentServlet - Accepting requests for the Service Document (dependent on user credentials)
- PubManDepositServlet - Accepting requests for the deposits (dependent on user credentials)
Interface[edit]
The PubMan SWORD interface is deployed within the PubMan ear, therefore one can access the above described servlets by the PubMan baseURL + the servlet path.
(Example with PubMan base url http://pubman.mpdl.mpg.de, note that sword functionality is not yet deployed on live server)
Service Document[edit]
http://pubman.mpdl.mpg.de/pubman/faces/sword-app/servicedocument
Request:
GET with user credentials
Response:
Code 200
A servicedocument containing all open collections a user may deposit to.
<service> <sword:level>0</sword:level> <sword:verbose>false</sword:verbose> <sword:noOp>true</sword:noOp> <workspace> <atom:title type="text">PubMan SWORD Workspace</atom:title> <collection href="collectionIdentifier"> <atom:title type="text">demo publications</atom:title> <accept>application/zip</accept> <sword:collectionPolicy>todo</sword:collectionPolicy> <dcterms:abstract>Description of the demo publication collection</dcterms:abstract> <sword:mediation>false</sword:mediation> <sword:treatment> Zip archives recognised as content packages are opened and the individual files contained in them are stored. All other files are stored as is. </sword:treatment> <sword:formatNamespace>http://www.tei-c.org/ns/1.0</sword:formatNamespace> </collection> </workspace> </service>
Deposit Service[edit]
http://pubman.mpdl.mpg.de/pubman/faces/sword-app/deposit?collection=collectionIdentifier
Request:
POST with user credentials and depositing item as zip
Response:
Code 201: Created
- - Item action: Save, Submit, Release
- - Item action: Save, Submit, Release
Code 202: Accepted
- - Item action: Save
- Item action: Save, Submit
- - Item action: Save
Code 203:
- - No user credentials were provided
- - User was not recognized
- - No user credentials were provided
Code 403:
- - No collection was provided
- No rights to deposit to the provided collection
- - No collection was provided
Code 415:
- - Media Type not supported in PubMan
- No metadata file was provided
- Metadata could not be transformed into publication format
- - Media Type not supported in PubMan
Code 400:
- - Authentication Failure
- - Validation Failure
Code 500:
- - Internal Server Error
Code 413:
- - Mediation not allowed
Plus an Atom Entry Document which contains information about the deposit:
<atom:entry xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sword="http://purl.org/net/sword/"> <atom:author> <atom:name>Friederike, Kleinfercher</atom:name> </atom:author> <atom:content src="http://pubman.mpdl.mpg.de/pubman/item/escidoc:142247"/> <atom:summary>item.xml ,0808.1121.pdf</atom:summary> <atom:title>First Sword item</atom:title> <atom:source> <atom:generator>http://pubman.mpdl.mpg.de/pubman</atom:generator> </atom:source> <atom:updated>2009-04-02T14:23:02Z</atom:updated> <sword:treatment>Zip archives recognised as content packages are opened and the individual files contained in them are stored. All other files are stored as is.</sword:treatment> <sword:formatNamespace>http://www.tei-c.org/ns/1.0</sword:formatNamespace> <sword:noOp>false</sword:noOp> </atom:entry>
- The zip file may contain several files but must contain exactly one metadata file. All files not containing metadata are transformed to PubFiles and are added to the Publication item.
- The item is deposited to the collection: collectionIdentifier
- The validation of the item depends on the collection
- The action of deposit depends on the collection
Action Mapping[edit]
SWORD Action | PubMan Action | Comment | Status |
---|---|---|---|
Deposit | Save Save, Submit Save, Submit,Release |
depending on the collection workflow and collection policies. | Implemented |
Edit | Save Save, Submit Save, Submit,Release |
depending on the collection workflow and collection policies. | Not implemented |
Delete | Withdraw Delete |
If item is in state released If item is in state pending or In-Revision |
Not implemented |
Useful information[edit]
- File visibility will be set to public
- File content category will be set to Publisher Version
- PubMan SWORD deposit interface can process the following metadata files:
- escidoc publication metadata (file ending .xml)
- tei metadata (file ending .tei), the mapping is optimized for the use of the PEER Project
- BibTex metadata (file ending .bib)
- EndNote metadata (file ending .enl)