bagit-profile
This module can be used to validate BagitProfiles.
What it is and what it does
bagit-profile is a Python module for validating BagIt bags against profile specifications. It works alongside the bagit library to check whether a bag conforms to a given BagIt profile, including validation of serialization format and structural requirements defined in the profile.
The package provides both a Python API and a command-line interface. You instantiate a profile from a URI, then call validate methods to check serialization constraints and overall profile compliance. It is designed for use in digital preservation workflows where BagIt is used as a container format and profiles enforce specific requirements.
Use it for:
- Validate digital preservation bags against institutional or domain-specific BagIt profiles before ingest
- Enforce serialization requirements (e.g., tar, zip) in automated bag processing pipelines
- Check structural compliance of bags in archival workflows without extending the bagit library itself
- Integrate profile validation into preservation system quality assurance steps
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Validates BagIt bags against BagIt profile specifications, checking serialization and structural compliance with a profile URI.
No. The package is abandoned (last release 2020-03-24, no commits since) and classifiers indicate support only through Python 3.7. While it has low install friction and no known vulnerabilities, the lack of maintenance means it will not adapt to changes in Python, bagit, or the BagIt Profiles Specification. Use only if you are locked into an older Python environment and cannot migrate to an actively maintained alternative.
Install
bagit-profile on PyPI
pip
pip install bagit-profileuv
uv add bagit-profilepoetry
poetry add bagit-profileInstalling bagit-profile
Before you install
Low install friction with a pure Python wheel. However, the package is abandoned—last release was 2020-03-24 and no commits since. Depends on bagit and requests, both stable libraries, but expect no maintenance or updates.
License in practice
Licensed under CC0 (public domain equivalent), imposing no restrictions on use, modification, or distribution.
Quickstart
pip install bagit-profile
import bagit
import bagit_profile
bag = bagit.Bag('mydir')
profile = bagit_profile.Profile('http://example.com/bagitprofile.json')
if profile.validate(bag):
print('Validates')
Requires a valid BagIt bag directory and a reachable profile URI; bagit package must be installed separately.
Verify before relying
- Whether the package works reliably with current Python versions (classifiers list 2.7 through 3.7, but last release was 2020)
- Whether bagit and requests dependencies have evolved in ways that break this validator
- Current state of BagIt Profiles Specification and whether this implementation remains compliant
Package facts
| License | CC0 (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — bagit, requests |
| Maintenance | abandoned — 2,334 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 119,109/month — #12,088 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: bagit_profile-1.3.1-py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
bagitCreate, validate, and manage BagIt-style…
permissive · top 15,000 on PyPI
bdbagbdbag creates, validates, and manages BagIt…
permissive · top 15,000 on PyPI
swagger-spec-validatorValidates Swagger/OpenAPI specifications…
permissive · top 15,000 on PyPI
yamaleYamale validates YAML files against a schema…
permissive · top 5,000 on PyPI
openapi-schema-validatorValidates data and schemas against OpenAPI…
permissive · top 1,000 on PyPI
barcodenumberValidates product codes across multiple barcode…
copyleft · top 15,000 on PyPI
rfc3339-validatorValidates whether a string conforms to the…
permissive · top 1,000 on PyPI
fastjsonschemaValidates JSON data against JSON Schema…
permissive · top 1,000 on PyPI
kubernetes-validateValidates Kubernetes resource definitions…
permissive · top 15,000 on PyPI
spdx3-validateValidates SPDX 3 documents with context-aware…
permissive · top 15,000 on PyPI