Skip to main content

A database builder for digital preservation information.

Project description

Preservation Status Database Builder

Returns the preservation status of a Crossref DOI matched against mainstream digital preservation platforms.

license activity Code style: black

Django Git GitHub Linux Python

This application allows you to build a database of digital preservation sources and then to match a DOI against common digital preservation systems.

Installation

The easiest install is via pip:

pip install preservation-database

Then add "preservationdatabase" (no hyphen) to your list of INSTALLED_APPS.

Usage

export DJANGO_SETTINGS_MODULE=import_settings.settings

Usage: python -m preservationdatabase.cli [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
    clear-cache                    Clear the import cache
    import-all                     Download and import all data (excluding...
    import-cariniana               Download and import data from Cariniana
    import-clockss                 Download and import data from CLOCKSS
    import-hathi                   Import data from Hathi (requires local...
    import-internet-archive        Import data from Internet Archive...
    import-internet-archive-items  Import item data from Internet Archive
    import-issnl                   Import ISSN-L mappings
    import-lockss                  Download and import data from LOCKSS
    import-ocul                    Import data from Ocul (requires local...
    import-pkp                     Download and import data from PKP's...
    import-portico                 Download and import data from Portico
    random-samples                 Return random samples that occur in and...
    show-archives                  Clear the import cache
    show-cache                     Show last fill date/times and cache status
    show-issn                      Show preservation items that match an ISSN
    show-preservation              Determine whether a DOI is preserved
    stamp-cache-today              Mark the latest imports as today

Features

  • Cariniana import.
  • CLOCKSS import.
  • HathiTrust import.
  • Internet Archive import.
  • Internet Archive item-level import.
  • LOCKSS import.
  • PKP PLN import.
  • Portico import.
  • Crossref DOI lookup.

First-Run Setup

First, copy example_settings.py to settings.py and check settings.py to ensure that the database you want to use is set correctly. The default is db.sqlite. You should carefully read and check all of settings.py.

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

Next, run the database build commands:

python3 manage.py makemigrations
python3 manage.py makemigrations preservation-database
python3 manage.py migrate 

You should then have a working database into which you can import new preservation data.

Archive Notes

Internet Archive

The Internet Archive gives a KBART file for the Keepers Registry that we use as a primary ingest source: https://archive.org/details/ia-keepers-registry-kbart. However, this source is not the total coverage of the Internet Archive. However, sadly, the Internet Archive snapshots do not contain external identifiers and the container-level snapshots do not present coverage extent. While it is possible to download the entire 217GB FATCAT database snapshot, this will not be viable for many users. We have therefore stuck with the KBART file that Keepers uses. Extent of coverage in the Internet Archive may, therefore, be under-reported.

Credits

© Crossref 2023

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

preservation-database-0.0.92.tar.gz (28.4 kB view details)

Uploaded Source

Built Distribution

preservation_database-0.0.92-py3-none-any.whl (31.1 kB view details)

Uploaded Python 3

File details

Details for the file preservation-database-0.0.92.tar.gz.

File metadata

File hashes

Hashes for preservation-database-0.0.92.tar.gz
Algorithm Hash digest
SHA256 e6c3999230d6616b29c8559f9b427a9551a9a27700170ff416e28d7c9cb63bba
MD5 ec7f0c02b114695b5ba65541e9b37c13
BLAKE2b-256 a26377f79fb0d63cd3ffd07176d3e2169bf5e0e60a93da6630c57e330cb08ac9

See more details on using hashes here.

File details

Details for the file preservation_database-0.0.92-py3-none-any.whl.

File metadata

File hashes

Hashes for preservation_database-0.0.92-py3-none-any.whl
Algorithm Hash digest
SHA256 5ffc8900f5075be4b1b27b824633a6933c7ed642e365111214a876d3692fcb93
MD5 f5397c4d613fccc7fdbf7bf28ae5938a
BLAKE2b-256 675189f1d14f8f2bbca491e0240c9fabcb185efeb2ddc4b4f7dd931fbbf904a1

See more details on using hashes here.

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