Skip to main content

Tools for working with EAD XML files.

Project description

EAD Toolbox
===========

26th September 2013 (2013-09-26)

Contents
--------

- `Description`_
- `Author(s)`_
- `Latest Version`_
- `Documentation`_
- `Requirements / Dependencies`_
- `Installation`_
- `Examples`_

- `Command-line`_
- `Web-based GUI`_
- `Python API`_

- `Bugs, Feature requests etc.`_
- `Copyright & Licensing`_


Description
-----------

The EAD Toolbox provides a number of tools for working with `Encoded Archival
Description`_ (EAD) XML documents.

Current capabilities include validation to the DTD, cross-walk to other
metadata schemas, and extraction and display of subjects and named entities.

It also includes a web-based user interface for validating, cross-walking and
extracting data from your own EAD files, provided via a Python_ WSGI_ compliant
web application


Author(s)
---------

John Harrison <john.harrison@liv.ac.uk> at the `University of Liverpool`_


Latest Version
--------------

Latest version is available from PyPI:
https://pypi.python.org/pypi/eadtoolbox

Source code is under version control and available from:
https://github.com/bloomonkey/ead-toolbox


Documentation
-------------

All executable commands are self documenting, i.e. you can get help on how to
use them with the ``-h`` or ``--help`` option. e.g. ::

ead-validate --help

At this time the only additional documentation that exists can be found in this
README file!


Requirements / Dependencies
---------------------------

- Python_ >= 2.6
- lxml_


Installation
------------

Users
~~~~~

::

pip install eadtoolbox


Developers
~~~~~~~~~~

I recommend that you use virtualenv_ to isolate your development environment
from system Python_ and any packages that may be installed there.

1. In GitHub_, fork the repository

2. Clone your fork::

git clone git@github.com:<username>/ead-toolbox.git

3. Install dependencies::

pip install -r requirements.txt

4. Install in develop / editable mode::

pip install -e .


Examples
--------

Command-line
~~~~~~~~~~~~

EAD Validation
''''''''''''''

To validate using the EAD 2002 DTD::

ead-validate FILE

The EAD Toolbox currently only supports validation using the EAD 2002 DTD. I
hope to add validation using the XSD schema in the near future.


Web-based GUI
~~~~~~~~~~~~~

The features availble though the commnad-line can also be accessed, and made
available to other users over a local network or the web, through the EAD
Sandbox application. Run the application using the following command::

ead-sandbox [--hostname=HOSTNAME] [--port=PORT]


This will start a quick demonstration WSGI server (not recommended for
production use) to serve the application, and also open the application in a
new browser window/tab if possible. If you don't want the browser window/tab,
you can launch the application with the ``--no-browser`` option::

ead-sandbox --no-browser [--hostname=HOSTNAME] [--port=PORT]


Python API
~~~~~~~~~~

EAD Validation
''''''''''''''

.. code-block:: python

from lxml import etree
from eadtoolbox.validate import EAD2002DTDValidator
ead = etree.parse(open('eadfile.xml', 'r'))
validator = EAD2002DTDValidator()
if validator.validate(ead):
print "VALID"
else:
print "INVALID"
for e in validator.errors:
print str(e)


Bugs, Feature requests etc.
---------------------------

Bug reports and feature requests can be submitted to the GitHub issue tracker:
http://github.com/bloomonkey/ead-toolbox/issues

If you'd like to contribute code, patches etc. please email the author, or
submit a pull request on GitHub.


Copyright & Licensing
---------------------

Copyright (c) University of Liverpool, 2010-2013

See LICENSE.rst for licensing details.


.. Links
.. _Python: http://www.python.org/
.. _WSGI: http://wsgi.org
.. _lxml: https://pypi.python.org/pypi/lxml
.. _`Encoded Archival Description`: http://www.loc.gov/ead/
.. _`University of Liverpool`: http://www.liv.ac.uk
.. _GitHub: http://github.com
.. _virtualenv: http://www.virtualenv.org/en/latest/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eadtoolbox-0.1c1.tar.gz (39.6 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page