Skip to main content

DOI Build PyPI version Coverage Maintainability Rating docs GitHub

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 talbot. Commonmeta-py is modelled after the commonmeta-ruby ruby gem.

commonmeta-py uses semantic versioning. Currently, its major version number is still at 0, meaning the API is not yet stable, and breaking changes are expected in the internal API and commonmeta JSON format.

Installation

Stable version

uv add 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 XML crossref_xml application/vnd.crossref.unixref+xml yes yes
Crossref crossref application/vnd.crossref+json yes yes
DataCite datacite application/vnd.datacite.datacite+json yes yes
Schema.org (in JSON-LD) schema_org application/vnd.schemaorg.ld+json yes yes
RDF XML rdf_xml application/rdf+xml no later
RDF Turtle turtle text/turtle no later
CSL-JSON csl application/vnd.citationstyles.csl+json yes yes
Formatted text citation citation text/x-bibliography n/a yes
Codemeta codemeta application/vnd.codemeta.ld+json yes later
Citation File Format (CFF) cff application/vnd.cff+yaml yes later
JATS jats application/vnd.jats+xml later later
CSV csv text/csv no later
BibTex bibtex application/x-bibtex yes yes
RIS ris application/x-research-info-systems yes yes
InvenioRDM inveniordm application/vnd.inveniordm.v1+json yes yes
JSON Feed jsonfeed application/feed+json yes later
OpenAlex openalex yes no

commonmeta: the Commonmeta format is the native format for the library and used internally. Planned: we plan to implement this format for the v1.0 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 website and includes several interactive Jupyter Notebooks .

This repository includes a Nixpacks configuration to build and serve the Quarto documentation site in the docs/ folder.

Coolify setup

  • App type: Nixpacks
  • Repository/branch: this repo, main
  • Build: auto-detected via Nixpacks
  • Port: Coolify provides PORT. The start command respects ${PORT} and falls back to 3000 for local runs.
  • Healthcheck: HTTP path /, interval 10s, timeout 5s, retries 3

Meta

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

License: MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

commonmeta_py-0.252.tar.gz (435.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

commonmeta_py-0.252-py3-none-any.whl (489.7 kB view details)

Uploaded Python 3

File details

Details for the file commonmeta_py-0.252.tar.gz.

File metadata

  • Download URL: commonmeta_py-0.252.tar.gz
  • Upload date:
  • Size: 435.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for commonmeta_py-0.252.tar.gz
Algorithm Hash digest
SHA256 3c5ba30a53052681c97c001a2cb27e5177233d13e58da87e1a6c35eab6142401
MD5 8b5c68b4497f6d38a5bf52b9952fc288
BLAKE2b-256 4ec0f532c270c27d794e4e946675ac2242de4ecd032ed1147dab4936b8239b0a

See more details on using hashes here.

File details

Details for the file commonmeta_py-0.252-py3-none-any.whl.

File metadata

  • Download URL: commonmeta_py-0.252-py3-none-any.whl
  • Upload date:
  • Size: 489.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for commonmeta_py-0.252-py3-none-any.whl
Algorithm Hash digest
SHA256 f1242dab7a60d64438f20c725dce7fa073a9895124f0f65745b6958005b62f6e
MD5 477da971785d55d72de502aa9a37ddf0
BLAKE2b-256 6be19f5c73ec52968af854e1a146d097b9bea52bbcee96f1e4449c8fb8430bbf

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page