invenio-subjects-lcsh


Nameinvenio-subjects-lcsh JSON
Version 2024.1.1 PyPI version JSON
download
home_pageNone
SummaryLCSH subject terms for InvenioRDM
upload_time2024-08-12 12:04:50
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseMIT License Copyright (C) 2021 Northwestern University. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords invenio inveniordm subjects lcsh
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # invenio-subjects-lcsh

*LCSH subject terms for InvenioRDM*

Install this extension to get [Library of Congress Subject Headings](https://id.loc.gov/authorities/subjects.html) into your instance.

Note that this list excludes `-781` geographical variations as it's not their original intent to be independent tagging terms.

## Installation

From your instance directory:

```bash
pipenv install invenio-subjects-lcsh
```

This will add it to your Pipfile.

## Versions

This repository follows [calendar versioning](https://calver.org/) for year and month. It does a "best effort" attempt at tracking the LCSH updates in an *up-to-and-including* version date manner. The following are illustrative cases of how to understand the versioning of this distribution package:

| Last LCSH update included | version of this project | date of release of this project |
| ------------------------- | ----------------------- | ------------------------------- |
| 2024-01-31                | 2024.1.X                | any time after 2024-01-31       |
| 2023-12-31                | 2023.12.X               | any time after 2023-12-31       |


`2021.06.18` is both a valid semantic version and an indicator of the year-month corresponding to the loaded terms.
`18` here is a patch number (not a day).


## Usage

There are 2 types of users for this package. Maintainers of the package and instance administrators.

### Update terms in an instance

For instance administrators, after you have installed the extension as per the steps above, you will want to reload your instance's fixtures: `pipenv run invenio rdm-records fixtures`. This will install the new terms in your instance.

Alternatively, or if you want to update your already loaded subjects to a new listing (e.g. from one year's list to another), you can update your instance's LCSH subjects as per below. Updating subjects this way takes care of everything for you: the subjects themselves and the records/drafts using those subjects. **WARNING** This operation can _remove_ subjects.

```bash
# In your instance's project
# Download up-to-date listings
invenio galter_subjects lcsh download -d /path/to/downloads/storage/
# Generate deprecated entries - metadata expert COULD look at them
invenio galter_subjects lcsh deprecated -d /path/to/downloads/storage/
# Generate replacement entries from those - metadata expert COULD look at them
invenio galter_subjects lcsh replacements /path/to/downloads/storage/replacements.csv
# Generate file containing deltas to transition your instance to the downloaded listing - metadata expert SHOULD look at them
invenio galter_subjects lcsh deltas -d /path/to/downloads/storage/ -o /path/to/deltas_lcsh.csv
# Update your instance - *this operation will modify your instance*
invenio galter_subjects update /path/to/deltas_lcsh.csv
```

Look at the help text for these commands to see additional options that can be passed.
In particular, options for `galter_subjects update` allow you to store renamed, replaced or removed subjects on records according to a template of your choice.

### Maintain the initial vocabulary list

When a new list of LCSH terms comes out, this package should be updated to provide an up-to-date starting fixture. Here we show how.

**Pre-requisite/Context**

[Install the distribution package for development](#development) before you do anything.

**Commands**

Once you have that dependency installed, you can run the following commands (`(venv)` denotes the isolated environment):

```bash
# In this project
# Download up-to-date listings
(venv) invenio galter_subjects lcsh download -d /path/to/downloads/storage/
# Generate file containing initial listing
(venv) invenio galter_subjects lcsh file -d /path/to/downloads/storage/ -o invenio_subjects_lcsh/vocabularies/subjects_lcsh.csv
```

When you are happy with the list, bump the version in `pyproject.toml` and release it.

## Development

Install the project in editable mode with `dev` dependencies in an isolated virtualenv (`(venv)` denotes that going forward):

```bash
(venv) pip install -e .[dev]
# or if using pipenv
pipenv run pip install -e .[dev]
```

Run tests:

```bash
(venv) invoke test
# or shorter
(venv) inv test
# or if using pipenv
pipenv run inv test
```

Check manifest:

```bash
(venv) inv check-manifest
# or if using pipenv
pipenv run inv check-manifest
```

Clean out artefacts:

```bash
(venv) inv clean
# or if using pipenv
pipenv run inv clean
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "invenio-subjects-lcsh",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "invenio, inveniordm, subjects, LCSH",
    "author": null,
    "author_email": "Northwestern University <DL_FSM_GDS@e.northwestern.edu>",
    "download_url": "https://files.pythonhosted.org/packages/c0/b0/de2dacd1bc01f53298288e472a0e6fd5628ba6e82648a9761dd07392c30a/invenio_subjects_lcsh-2024.1.1.tar.gz",
    "platform": null,
    "description": "# invenio-subjects-lcsh\n\n*LCSH subject terms for InvenioRDM*\n\nInstall this extension to get [Library of Congress Subject Headings](https://id.loc.gov/authorities/subjects.html) into your instance.\n\nNote that this list excludes `-781` geographical variations as it's not their original intent to be independent tagging terms.\n\n## Installation\n\nFrom your instance directory:\n\n```bash\npipenv install invenio-subjects-lcsh\n```\n\nThis will add it to your Pipfile.\n\n## Versions\n\nThis repository follows [calendar versioning](https://calver.org/) for year and month. It does a \"best effort\" attempt at tracking the LCSH updates in an *up-to-and-including* version date manner. The following are illustrative cases of how to understand the versioning of this distribution package:\n\n| Last LCSH update included | version of this project | date of release of this project |\n| ------------------------- | ----------------------- | ------------------------------- |\n| 2024-01-31                | 2024.1.X                | any time after 2024-01-31       |\n| 2023-12-31                | 2023.12.X               | any time after 2023-12-31       |\n\n\n`2021.06.18` is both a valid semantic version and an indicator of the year-month corresponding to the loaded terms.\n`18` here is a patch number (not a day).\n\n\n## Usage\n\nThere are 2 types of users for this package. Maintainers of the package and instance administrators.\n\n### Update terms in an instance\n\nFor instance administrators, after you have installed the extension as per the steps above, you will want to reload your instance's fixtures: `pipenv run invenio rdm-records fixtures`. This will install the new terms in your instance.\n\nAlternatively, or if you want to update your already loaded subjects to a new listing (e.g. from one year's list to another), you can update your instance's LCSH subjects as per below. Updating subjects this way takes care of everything for you: the subjects themselves and the records/drafts using those subjects. **WARNING** This operation can _remove_ subjects.\n\n```bash\n# In your instance's project\n# Download up-to-date listings\ninvenio galter_subjects lcsh download -d /path/to/downloads/storage/\n# Generate deprecated entries - metadata expert COULD look at them\ninvenio galter_subjects lcsh deprecated -d /path/to/downloads/storage/\n# Generate replacement entries from those - metadata expert COULD look at them\ninvenio galter_subjects lcsh replacements /path/to/downloads/storage/replacements.csv\n# Generate file containing deltas to transition your instance to the downloaded listing - metadata expert SHOULD look at them\ninvenio galter_subjects lcsh deltas -d /path/to/downloads/storage/ -o /path/to/deltas_lcsh.csv\n# Update your instance - *this operation will modify your instance*\ninvenio galter_subjects update /path/to/deltas_lcsh.csv\n```\n\nLook at the help text for these commands to see additional options that can be passed.\nIn particular, options for `galter_subjects update` allow you to store renamed, replaced or removed subjects on records according to a template of your choice.\n\n### Maintain the initial vocabulary list\n\nWhen a new list of LCSH terms comes out, this package should be updated to provide an up-to-date starting fixture. Here we show how.\n\n**Pre-requisite/Context**\n\n[Install the distribution package for development](#development) before you do anything.\n\n**Commands**\n\nOnce you have that dependency installed, you can run the following commands (`(venv)` denotes the isolated environment):\n\n```bash\n# In this project\n# Download up-to-date listings\n(venv) invenio galter_subjects lcsh download -d /path/to/downloads/storage/\n# Generate file containing initial listing\n(venv) invenio galter_subjects lcsh file -d /path/to/downloads/storage/ -o invenio_subjects_lcsh/vocabularies/subjects_lcsh.csv\n```\n\nWhen you are happy with the list, bump the version in `pyproject.toml` and release it.\n\n## Development\n\nInstall the project in editable mode with `dev` dependencies in an isolated virtualenv (`(venv)` denotes that going forward):\n\n```bash\n(venv) pip install -e .[dev]\n# or if using pipenv\npipenv run pip install -e .[dev]\n```\n\nRun tests:\n\n```bash\n(venv) invoke test\n# or shorter\n(venv) inv test\n# or if using pipenv\npipenv run inv test\n```\n\nCheck manifest:\n\n```bash\n(venv) inv check-manifest\n# or if using pipenv\npipenv run inv check-manifest\n```\n\nClean out artefacts:\n\n```bash\n(venv) inv clean\n# or if using pipenv\npipenv run inv clean\n```\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (C) 2021 Northwestern University.  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "LCSH subject terms for InvenioRDM",
    "version": "2024.1.1",
    "project_urls": {
        "Repository": "https://github.com/galterlibrary/invenio-subjects-lcsh"
    },
    "split_keywords": [
        "invenio",
        " inveniordm",
        " subjects",
        " lcsh"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "80ff38a0e8882a132dd3c90b65c96d2c9d51eee3e5ddb258bac32f3ed06d82a4",
                "md5": "288b2ae04195e15b727d6ce6d272647a",
                "sha256": "baaccdce45adca0eaffb9b75b91e82e380bcdbead99862f3498ca056b57f0258"
            },
            "downloads": -1,
            "filename": "invenio_subjects_lcsh-2024.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "288b2ae04195e15b727d6ce6d272647a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 6001020,
            "upload_time": "2024-08-12T12:04:48",
            "upload_time_iso_8601": "2024-08-12T12:04:48.838940Z",
            "url": "https://files.pythonhosted.org/packages/80/ff/38a0e8882a132dd3c90b65c96d2c9d51eee3e5ddb258bac32f3ed06d82a4/invenio_subjects_lcsh-2024.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c0b0de2dacd1bc01f53298288e472a0e6fd5628ba6e82648a9761dd07392c30a",
                "md5": "9524ce1a62394b9d771b300c9981596e",
                "sha256": "072bbea8caee00359d76587c8205aad82618fc28c03f9fe468d317b1a183fdfa"
            },
            "downloads": -1,
            "filename": "invenio_subjects_lcsh-2024.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "9524ce1a62394b9d771b300c9981596e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 5897078,
            "upload_time": "2024-08-12T12:04:50",
            "upload_time_iso_8601": "2024-08-12T12:04:50.484432Z",
            "url": "https://files.pythonhosted.org/packages/c0/b0/de2dacd1bc01f53298288e472a0e6fd5628ba6e82648a9761dd07392c30a/invenio_subjects_lcsh-2024.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-12 12:04:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "galterlibrary",
    "github_project": "invenio-subjects-lcsh",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "invenio-subjects-lcsh"
}
        
Elapsed time: 5.02459s