Skip to content

informatics-isi-edu/bagit-profiles-validator

 
 

Repository files navigation

Bagit Profile (validator)

Build Status

Description

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

This module is intended for use with bagit 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/ruebot/bagit-profiles-validator.git
  2. cd bagit-profiles/python
  3. sudo python setup.py install

or:

pip install bagit_profile

Usage

import bagit
import bagit_profile

Instantiate an existing Bag using bagit.

bag = bagit.Bag('mydir')

Instantiate a profile, supplying its URI.

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

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 69.8%
  • Makefile 15.8%
  • Batchfile 14.4%