SWORDv2 Python client
Project description
SWORD2 python client
A python library and client to connect to and use SWORD v2 compliant servers.
SWORD overview
SWORD was originally a JISC-funded initiative to define and develop a standard mechanism for depositing into repositories and other systems. Why was it created? because there was no standard way of doing this. A standard deposit interface to repositories allows more services to be built which can offer functionality such as deposit from multiple locations, e.g. disparate repositories, desktop drag’n'drop tools or from within standard office applications. SWORD can also facilitate deposit to multiple repositories, increasingly important for depositors who wish to deposit to funder, institutional or subject repositories. Other possibilities include migration of content between repositories, transfer to preservation services and many more.
SWORD is an Atom Publishing Profile
Rather than develop a new standard from scratch, SWORD chose to leverage the existing Atom Publishing Protocol (APP), “an application-level protocol for publishing and editing Web resources”. APP is based on the HTTP transfer of Atom-formatted representations yet SWORD has focussed on two key aspects of the protocol – the deposit of files, rather than Atom documents, and the extension mechanism for specifying additional deposit parameters. Also worth noting is that SWORD does not specify the implementation of all of the functionality of APP, rather it supports deposit only – implementations are free to support update and delete if they wish but this is out of the SWORD remit.
Python Client library
Dependencies
The core dependency is httplib2, and uses this for all of its HTTP requests and response handling.
The python client tries to use any suitable ElementTree library implementation (lxml, xml.etree, cElementTree, ElementTree) and will fail without one.
Installation:
$ pip install .
(use of a virtualenv is recommended)
Software links:
Usage documentation: https://github.com/swordapp/python-client-sword2/wiki
API documentation: http://packages.python.org/sword2/
Repository: https://github.com/swordapp/python-client-sword2
Issue-tracker: https://github.com/swordapp/python-client-sword2/issues
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file sword2-0.3.tar.gz
.
File metadata
- Download URL: sword2-0.3.tar.gz
- Upload date:
- Size: 42.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.4 CPython/3.9.1 Linux/5.10.10-200.fc33.x86_64
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 720f171ff13ff69baef682f753b8636b074469c38441dfaedaa08de1d4f419ec |
|
MD5 | 0108922ca7a8294c1aa79333cc265f1c |
|
BLAKE2b-256 | 1e2a98cbe2520f5ba0c1e13c067f2131e8019615f609ac1904ada25ddafd539e |
File details
Details for the file sword2-0.3-py3-none-any.whl
.
File metadata
- Download URL: sword2-0.3-py3-none-any.whl
- Upload date:
- Size: 47.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.4 CPython/3.9.1 Linux/5.10.10-200.fc33.x86_64
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae8a7165b2c0389cc1aa4ad75a4ca866c232e4506e6a4b7dd50b81082049c89f |
|
MD5 | 958ff7f7beb5bd6a21bfd40168f73093 |
|
BLAKE2b-256 | 3bf0a363b19787eb9a4631d7a1941ee677bed188305e4541525c688333f1473b |