datacite


Namedatacite JSON
Version 1.2.0 PyPI version JSON
download
home_pagehttps://github.com/inveniosoftware/datacite
Summary"A Python client for DataCite MDS and REST APIs."
upload_time2024-10-17 20:48:38
maintainerNone
docs_urlhttps://pythonhosted.org/datacite/
authorInvenio Collaboration
requires_pythonNone
licenseBSD
keywords datacite doi
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            ==========
 DataCite
==========

.. image:: https://github.com/inveniosoftware/datacite/actions/workflows/tests.yml/badge.svg
        :target: https://github.com/inveniosoftware/datacite/actions/workflows/tests.yml

.. image:: https://img.shields.io/coveralls/inveniosoftware/datacite.svg
   :target: https://coveralls.io/r/inveniosoftware/datacite?branch=master

.. image:: https://img.shields.io/pypi/v/datacite.svg?maxAge=2592000
   :target: https://pypi.python.org/pypi/datacite/

.. image:: https://pepy.tech/badge/datacite?maxAge=2592000
   :target: https://pypi.python.org/pypi/datacite/

.. image:: https://img.shields.io/pypi/l/datacite.svg
   :target: https://github.com/inveniosoftware/datacite/blob/master/LICENSE

.. image:: https://img.shields.io/github/tag/inveniosoftware/datacite.svg
   :target: https://github.com/inveniosoftware/datacite/releases/




About
=====

Python API wrapper for the DataCite Metadata Store API and DataCite XML
generation.


Installation
============
The datacite package is on PyPI so all you need is: ::

    pip install datacite


Documentation
=============

Documentation is readable at http://datacite.readthedocs.io/ or can be
built using Sphinx: ::

    pip install datacite[docs]
    python setup.py build_sphinx


Testing
=======
Running the test suite is as simple as: ::

    pip install -e .[all]
    ./run-tests.sh

If you're using zsh, use this pip command instead:

    pip install -e .'[all]'

Some tests require a DataCite Test Account.  
Set the following environment variables 
$DATACITE_USER, $DATACITE_PW, $DATACITE_PREFIX 
with your account information for doi.test.datacite.org and
run: ::

    ./run-tests-pw.sh

Changes
=======

Version v1.2.0 (released 2024-10-17):

- Updates package setup and adds black formatting
- Adds support for DataCite Metadata Schema v4.5.
  The version 4.5 jsonschema includes a number of 
  changes and improvements:

  - Switches to jsonschema 2019-09 and adds more complete validation
    to catch mistyped elements
  - Switches publisher from a string to an object. This means
    you will need to change publisher to be structured like 
    `"publisher": {"name": "Invenio Software"}` 
    when you use version 4.5. This change is needed to
    support the addition of publisher identifiers.
  - Removes the identifiers field and added doi, prefix, and suffix fields.
    These fields are clearer, and DataCite appears to be moving away from the
    combined identifiers field. doi is not a required field since you may or
    may not have a DOI depending on your workflow.
  - Adds new relatedItem elements for publication metadata
  - Switches geolocation point values to numbers. This is to enable 
    validation and is consistent with GeoJson and InvenioRDM. It is 
    different from the DataCite REST API which uses strings, and
    submitted numbers will be turned into strings by DataCite.
  - Reorganizes geolocationPolygon to how DataCite is currently rendering this
    metadata
  - Adds support for the new resourceTypeGeneral and relationType values
  - General jsonschema organization improvements

Version v1.1.3 (released 2023-03-20):

- Updates dependency versions and adds python 3.9 support
- Changes internal definition name for affiliation in 4.3 schema

Version v1.1.2 (released 2021-06-22):

- Standardizes function names in DataCiteRESTClient. Old functions will be
  depreciated in a future release

Version v1.1.1 (released 2021-04-20):

- Fixes DataCiteRESTClient attributes' type. Prefix, username and password
  are always cast to string.

Version v1.1.0 (released 2021-04-15):

- Adds full support for DataCite Metadata Schema v4.2 and v4.3 XML generation.
- Uses Official DataCite JSON Schema, which has the following notable changes
  from the previous schema:

  - Uses "identifiers" which is a combination of the XML "identifier" and
    "alternativeIdentifiers" elements
  - "creatorName" is now "name"
  - "contributorName" is now "name"
  - "affiliations" is now "affiliation" (is still an array)
  - "affilition" is now "name"
  - There is no longer a funder identifier object (the identifier and type are just
    elements)
- Removes Python 2 support
- Removes the old way of testing with DataCite: test mode for the MDS APIs and
  the test DOI 10.5072

Version v1.0.1 (released 2018-03-08):

- Fixes schema location url for DataCite v4.1

Version v1.0.0 (released 2018-02-28):

- Adds full support for DataCite Metadata Schema v4.1 XML generation.

Version v0.3.0 (released 2016-11-18):

- Adds full support for DataCite Metadata Schema v4.0 XML generation.

- Adds the message from the server in the error exceptions.

Version v0.2.2 (released 2016-09-23):

- Fixes issue with generated order of nameIdentifier and affiliation tags.

Version v0.2.1 (released 2016-03-29):

- Fixes issue with JSON schemas not being included when installing from PyPI.

Version v0.2.0 (released 2016-03-21):

- Adds DataCite XML generation support.

Version 0.1 (released 2015-02-25):

- Initial public release.



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/inveniosoftware/datacite",
    "name": "datacite",
    "maintainer": null,
    "docs_url": "https://pythonhosted.org/datacite/",
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "datacite doi",
    "author": "Invenio Collaboration",
    "author_email": "info@inveniosoftware.org",
    "download_url": "https://files.pythonhosted.org/packages/fd/65/50d319f7a60be79a4e865ffdb725c566fdbfbd532c60a6fa3b4d21a84596/datacite-1.2.0.tar.gz",
    "platform": null,
    "description": "==========\n DataCite\n==========\n\n.. image:: https://github.com/inveniosoftware/datacite/actions/workflows/tests.yml/badge.svg\n        :target: https://github.com/inveniosoftware/datacite/actions/workflows/tests.yml\n\n.. image:: https://img.shields.io/coveralls/inveniosoftware/datacite.svg\n   :target: https://coveralls.io/r/inveniosoftware/datacite?branch=master\n\n.. image:: https://img.shields.io/pypi/v/datacite.svg?maxAge=2592000\n   :target: https://pypi.python.org/pypi/datacite/\n\n.. image:: https://pepy.tech/badge/datacite?maxAge=2592000\n   :target: https://pypi.python.org/pypi/datacite/\n\n.. image:: https://img.shields.io/pypi/l/datacite.svg\n   :target: https://github.com/inveniosoftware/datacite/blob/master/LICENSE\n\n.. image:: https://img.shields.io/github/tag/inveniosoftware/datacite.svg\n   :target: https://github.com/inveniosoftware/datacite/releases/\n\n\n\n\nAbout\n=====\n\nPython API wrapper for the DataCite Metadata Store API and DataCite XML\ngeneration.\n\n\nInstallation\n============\nThe datacite package is on PyPI so all you need is: ::\n\n    pip install datacite\n\n\nDocumentation\n=============\n\nDocumentation is readable at http://datacite.readthedocs.io/ or can be\nbuilt using Sphinx: ::\n\n    pip install datacite[docs]\n    python setup.py build_sphinx\n\n\nTesting\n=======\nRunning the test suite is as simple as: ::\n\n    pip install -e .[all]\n    ./run-tests.sh\n\nIf you're using zsh, use this pip command instead:\n\n    pip install -e .'[all]'\n\nSome tests require a DataCite Test Account.  \nSet the following environment variables \n$DATACITE_USER, $DATACITE_PW, $DATACITE_PREFIX \nwith your account information for doi.test.datacite.org and\nrun: ::\n\n    ./run-tests-pw.sh\n\nChanges\n=======\n\nVersion v1.2.0 (released 2024-10-17):\n\n- Updates package setup and adds black formatting\n- Adds support for DataCite Metadata Schema v4.5.\n  The version 4.5 jsonschema includes a number of \n  changes and improvements:\n\n  - Switches to jsonschema 2019-09 and adds more complete validation\n    to catch mistyped elements\n  - Switches publisher from a string to an object. This means\n    you will need to change publisher to be structured like \n    `\"publisher\": {\"name\": \"Invenio Software\"}` \n    when you use version 4.5. This change is needed to\n    support the addition of publisher identifiers.\n  - Removes the identifiers field and added doi, prefix, and suffix fields.\n    These fields are clearer, and DataCite appears to be moving away from the\n    combined identifiers field. doi is not a required field since you may or\n    may not have a DOI depending on your workflow.\n  - Adds new relatedItem elements for publication metadata\n  - Switches geolocation point values to numbers. This is to enable \n    validation and is consistent with GeoJson and InvenioRDM. It is \n    different from the DataCite REST API which uses strings, and\n    submitted numbers will be turned into strings by DataCite.\n  - Reorganizes geolocationPolygon to how DataCite is currently rendering this\n    metadata\n  - Adds support for the new resourceTypeGeneral and relationType values\n  - General jsonschema organization improvements\n\nVersion v1.1.3 (released 2023-03-20):\n\n- Updates dependency versions and adds python 3.9 support\n- Changes internal definition name for affiliation in 4.3 schema\n\nVersion v1.1.2 (released 2021-06-22):\n\n- Standardizes function names in DataCiteRESTClient. Old functions will be\n  depreciated in a future release\n\nVersion v1.1.1 (released 2021-04-20):\n\n- Fixes DataCiteRESTClient attributes' type. Prefix, username and password\n  are always cast to string.\n\nVersion v1.1.0 (released 2021-04-15):\n\n- Adds full support for DataCite Metadata Schema v4.2 and v4.3 XML generation.\n- Uses Official DataCite JSON Schema, which has the following notable changes\n  from the previous schema:\n\n  - Uses \"identifiers\" which is a combination of the XML \"identifier\" and\n    \"alternativeIdentifiers\" elements\n  - \"creatorName\" is now \"name\"\n  - \"contributorName\" is now \"name\"\n  - \"affiliations\" is now \"affiliation\" (is still an array)\n  - \"affilition\" is now \"name\"\n  - There is no longer a funder identifier object (the identifier and type are just\n    elements)\n- Removes Python 2 support\n- Removes the old way of testing with DataCite: test mode for the MDS APIs and\n  the test DOI 10.5072\n\nVersion v1.0.1 (released 2018-03-08):\n\n- Fixes schema location url for DataCite v4.1\n\nVersion v1.0.0 (released 2018-02-28):\n\n- Adds full support for DataCite Metadata Schema v4.1 XML generation.\n\nVersion v0.3.0 (released 2016-11-18):\n\n- Adds full support for DataCite Metadata Schema v4.0 XML generation.\n\n- Adds the message from the server in the error exceptions.\n\nVersion v0.2.2 (released 2016-09-23):\n\n- Fixes issue with generated order of nameIdentifier and affiliation tags.\n\nVersion v0.2.1 (released 2016-03-29):\n\n- Fixes issue with JSON schemas not being included when installing from PyPI.\n\nVersion v0.2.0 (released 2016-03-21):\n\n- Adds DataCite XML generation support.\n\nVersion 0.1 (released 2015-02-25):\n\n- Initial public release.\n\n\n",
    "bugtrack_url": null,
    "license": "BSD",
    "summary": "\"A Python client for DataCite MDS and REST APIs.\"",
    "version": "1.2.0",
    "project_urls": {
        "Homepage": "https://github.com/inveniosoftware/datacite"
    },
    "split_keywords": [
        "datacite",
        "doi"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b4273168279180fa3e2797617a022c30861415357e6fffa14d4b038de3e7f110",
                "md5": "956876500b1816bb4677d87f9d576d3c",
                "sha256": "be2731b189ddc558a42efcd402268f03edbc206fe1030c80147c1c48cc7552a7"
            },
            "downloads": -1,
            "filename": "datacite-1.2.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "956876500b1816bb4677d87f9d576d3c",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": null,
            "size": 51326,
            "upload_time": "2024-10-17T20:48:36",
            "upload_time_iso_8601": "2024-10-17T20:48:36.669277Z",
            "url": "https://files.pythonhosted.org/packages/b4/27/3168279180fa3e2797617a022c30861415357e6fffa14d4b038de3e7f110/datacite-1.2.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fd6550d319f7a60be79a4e865ffdb725c566fdbfbd532c60a6fa3b4d21a84596",
                "md5": "78637039cb1e1317223e9834fbce126e",
                "sha256": "e506dc6ce62bd930d6980b32c07c3186f3dfc8d327cd2f817b8423e4f9dd171d"
            },
            "downloads": -1,
            "filename": "datacite-1.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "78637039cb1e1317223e9834fbce126e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 143128,
            "upload_time": "2024-10-17T20:48:38",
            "upload_time_iso_8601": "2024-10-17T20:48:38.482249Z",
            "url": "https://files.pythonhosted.org/packages/fd/65/50d319f7a60be79a4e865ffdb725c566fdbfbd532c60a6fa3b4d21a84596/datacite-1.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-17 20:48:38",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "inveniosoftware",
    "github_project": "datacite",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "datacite"
}
        
Elapsed time: 0.34889s