Metadata-Version: 2.1
Name: commonmeta-py
Version: 0.6.0
Summary: Library for conversions to/from the Commonmeta scholarly metadata format
Author: Martin Fenner
Author-email: martin@front-matter.io
Requires-Python: >=3.7.1,<4.0.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: PyYAML (>=6.0,<7.0)
Requires-Dist: beautifulsoup4 (>=4.11,<5.0)
Requires-Dist: bibtexparser (>=1.4,<2.0)
Requires-Dist: bleach (>=6.0,<7.0)
Requires-Dist: citeproc-py (>=0.6,<0.7)
Requires-Dist: citeproc-py-styles (>0.1)
Requires-Dist: codecov (>=2.1,<3.0)
Requires-Dist: datacite (>=1.1,<2.0)
Requires-Dist: dateparser (>=1.1.7,<2.0.0)
Requires-Dist: docutils (>=0.19,<0.20)
Requires-Dist: jsonschema (>=4.17,<5.0)
Requires-Dist: lxml (>=4.9,<5.0)
Requires-Dist: mkdocs (>=1.4,<2.0)
Requires-Dist: mkdocs-jupyter (>=0.22,<0.23)
Requires-Dist: mkdocs-material (>=8.0,<9.0)
Requires-Dist: mkdocs-material-extensions (>=1.1,<2.0)
Requires-Dist: pydash (>=6.0,<7.0)
Requires-Dist: pytest (>=7.2,<8.0)
Requires-Dist: pytest-cov (>=4.0,<5.0)
Requires-Dist: pytest-recording (>=0.12,<0.13)
Requires-Dist: requests (>=2.28,<3.0)
Requires-Dist: simplejson (>=3.18,<4.0)
Requires-Dist: sphinx-autodoc-typehints (>=1.19,<2.0)
Requires-Dist: sphinxcontrib-issuetracker (>=0.11,<0.12)
Requires-Dist: tqdm (>=4.64,<5.0)
Requires-Dist: types-PyYAML (>=6.0,<7.0)
Requires-Dist: types-beautifulsoup4 (>=4.11,<5.0)
Requires-Dist: types-bleach (>=6.0,<7.0)
Requires-Dist: types-dateparser (>=1.1,<2.0)
Requires-Dist: types-requests (>=2.28,<3.0)
Requires-Dist: vcrpy (>=4.2,<5.0)
Requires-Dist: xmltodict (>=0.13,<0.14)
Description-Content-Type: text/markdown

[![Build](https://github.com/front-matter/commonmeta-py/actions/workflows/build.yml/badge.svg)](https://github.com/front-matter/commonmeta-py/actions/workflows/build.yml)
[![PyPI version](https://img.shields.io/pypi/v/commonmeta-py.svg)](https://pypi.org/project/commonmeta-py/)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=front-matter_commonmeta-py&metric=coverage)](https://sonarcloud.io/summary/new_code?id=front-matter_commonmeta-py)
[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=front-matter_commonmeta-py&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=front-matter_commonmeta-py)
[![docs](https://img.shields.io/badge/docs-passing-blue)](https://commonmeta-py.docs.front-matter.io/)
![GitHub](https://img.shields.io/github/license/front-matter/commonmeta-py?logo=MIT)

# commonmeta-py

commonmeta-py is a Python library to implement Commonmeta, the common Metadata Model for Scholarly Metadata. Use commonmeta-py to convert scholarly metadata, in a variety of formats, listed below. Commonmeta-py is work in progress, the first release on PyPi (version 0.5.0) was on February 16, 2023. Up until version 0.5.1, the library was called commonmeta-py. Commonmeta-py is modelled after the [briard ruby gem](https://github.com/front-matter/briard).

## Installation

Stable version

    pip (or pip3) install commonmeta-py

Dev version

    pip install git+https://github.com/front-matter/commonmeta-py.git#egg=commonmeta-py

## Supported Metadata Formats

Commometa-py reads and/or writes these metadata formats:

| Format                                                                                           | Name          | Content Type                           | Read    | Write   |
| ------------------------------------------------------------------------------------------------ | ------------- | -------------------------------------- | ------- | ------- |
| Commonmeta  | commonmeta    | application/vnd.commonmeta+json        | yes     | yes     |
| [CrossRef Unixref XML](https://www.crossref.org/schema/documentation/unixref1.1/unixref1.1.html) | crossref_xml      | application/vnd.crossref.unixref+xml   | later | planned |
| [Crossref](https://api.crossref.org)                                                             | crossref | application/vnd.crossref+json          | yes     | no      |
| [DataCite XML](https://schema.datacite.org/)                                                     | datacite_xml      | application/vnd.datacite.datacite+xml  | later | later |
| [DataCite](https://api.datacite.org/)                                                            | datacite | application/vnd.datacite.datacite+json | yes     | yes |
| [Schema.org (in JSON-LD)](http://schema.org/)                                                    | schema_org    | application/vnd.schemaorg.ld+json      | yes     | yes     |
| [RDF XML](http://www.w3.org/TR/rdf-syntax-grammar/)                                              | rdf_xml       | application/rdf+xml                    | no      | later   |
| [RDF Turtle](http://www.w3.org/TeamSubmission/turtle/)                                           | turtle        | text/turtle                            | no      | later   |
| [Citeproc JSON](https://citationstyles.org/)                                                     | citeproc      | pplication/vnd.citationstyles.csl+json | yes | yes     |
| [Formatted text citation](https://citationstyles.org/)                                           | citation      | text/x-bibliography                    | no      | yes     |
| [Codemeta](https://codemeta.github.io/)                                                          | codemeta      | application/vnd.codemeta.ld+json       | yes | later |
| [Citation File Format (CFF)](https://citation-file-format.github.io/)                            | cff           | application/vnd.cff+yaml               | yes | later |
| [JATS](https://jats.nlm.nih.gov/)                                                                | jats          | application/vnd.jats+xml               | later   | later   |
| [CSV](ttps://en.wikipedia.org/wiki/Comma-separated_values)                                       | csv           | text/csv                               | no      | later   |
| [BibTex](http://en.wikipedia.org/wiki/BibTeX)                                                    | bibtex        | application/x-bibtex                   | later | yes     |
| [RIS](http://en.wikipedia.org/wiki/RIS_(file_format))                                            | ris           | application/x-research-info-systems    | later | yes     |

_commonmeta_: the Commonmeta format is the native format for the library and used internally.
_Planned_: we plan to implement this format for the v0.8 public release.  
_Later_: we plan to implement this format in a later release.

## Documentation

Documentation (work in progress) for using the library is available at the [commonmeta-py Documentation](https://commonmeta-py.docs.front-matter.io) website and includes several interactive Jupyter Notebooks .

## Meta

Please note that this project is released with a [Contributor Code of Conduct](https://github.com/front-matter/commonmeta-py/blob/main/CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.  

License: [MIT](https://github.com/front-matter/commonmeta-py/blob/main/LICENSE)

