Skip to content

Latest commit

 

History

History
94 lines (64 loc) · 2.27 KB

README.rst

File metadata and controls

94 lines (64 loc) · 2.27 KB

Bagit Profile (validator)

https://circleci.com/gh/bagit-profiles/bagit-profiles-validator.svg?style=svg

Description

A simple Python module for validating BagIt profiles. See the BagIt Profiles Specification for more information.

This module is intended for use with bagit-python but does not extend it.

Installation

bagit_profile.py is a single-file python module that you can drop into your project as needed or you can install globally with:

  1. git clone https://github.com/bagit-profiles/bagit-profiles-validator.git
  2. cd bagit-profiles-validator
  3. sudo python setup.py install

or:

pip install bagit_profile

Usage

import bagit
import bagit_profile

Instantiate an existing Bag using bagit. python bag = bagit.Bag('mydir')

Instantiate a profile, supplying its URI. python my_profile = bagit_profile.Profile('http://example.com/bagitprofile.json')

Validate 'Serialization' and 'Accept-Serialization'. This must be done before .validate(bag) is called. 'mydir' is the path to the Bag.

if my_profile.validate_serialization('mydir'):
    print "Serialization validates"
else:
    print "Serialization does not validate"

Validate the rest of the profile.

if my_profile.validate(bag):
    print "Validates"
else:
    print "Does not validate"

Or from the commandline:

bagit_profile.py 'http://uri.for.profile/profile.json' path/to/bag

Test suite

python setup.py test

Development

  1. Fork the repository
  2. Do something awesome!
  3. Submit a pull request explianing what your code does

License

CC0

CC0