commonmeta is a Go library to implement Commonmeta, the common Metadata Model for Scholarly Metadata. Use commonmeta to convert scholarly metadata, in a variety of formats, listed below. Commonmeta is work in progress, the first release was on April 19, 2024. Implementations in other languages are also available (Ruby, Python).
commonmeta 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.
Commonmeta reads and/or writes these metadata formats:
Format | Name | Content Type | Read | Write |
---|---|---|---|---|
Commonmeta | commonmeta | application/vnd.commonmeta+json | yes | yes |
CrossRef XML | crossrefxml | application/vnd.crossref.unixref+xml | yes | yes |
Crossref | crossref | application/vnd.crossref+json | yes | n/a |
DataCite | datacite | application/vnd.datacite.datacite+json | yes | yes |
Schema.org (in JSON-LD) | schemaorg | application/vnd.schemaorg.ld+json | later | yes |
RDF XML | rdf | 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 | later | later |
Citation File Format (CFF) | cff | application/vnd.cff+yaml | later | later |
JATS | jats | application/vnd.jats+xml | later | later |
CSV | csv | text/csv | no | later |
BibTex | bibtex | application/x-bibtex | later | later |
RIS | ris | application/x-research-info-systems | later | later |
InvenioRDM | inveniordm | application/vnd.inveniordm.v1+json | yes | yes |
JSON Feed | jsonfeed | application/feed+json | yes | later |
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.
Commonmeta is a single Go binary, available for download from the releases page. Download the binary for your platform (Linux, Mac, Windows; X86 or ARM architecture), and place it in your PATH.
To install commonmeta on macOS using Homebrew, run:
brew tap front-matter/commonmeta
brew install commonmeta
To install commonmeta using Go, run:
go install github.com/front-matter/commonmeta@latest
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