Expand description
commonmeta — a Rust port of front-matter/commonmeta.
Convert scholarly metadata between formats. The native model is Data;
format modules read into it and write out of it.
Re-exports§
Modules§
- crockford
- Generate, encode and decode random base32 identifiers. This encoder/decoder:
- crossref
- data
- Core Commonmeta data model.
- doi_
utils - Utilities for working with DOIs
- error
- file_
utils - progress
- schema_
utils - JSON Schema validation utilities.
- traits
- Reader and Writer traits for format modules.
- utils
- vocab
- Controlled vocabularies from the commonmeta schema.
Structs§
- Affiliation
Match - A single match result from the ROR affiliation API.
- Push
Result - The outcome of pushing a single record to InvenioRDM.
Constants§
Functions§
- convert
- Read from one format and write to another in a single call.
- convert_
citation - Like
convert, but passes CSLstyleandlocalethrough to the citation writer. - fetch_
vraix_ dump - Fetch commonmeta records from a VRAIX daily dump for
from(“crossref” or “datacite”) anddate(YYYY-MM-DD). - match_
ror_ affiliation - Match a free-text affiliation string against ROR organizations using the ROR v2 affiliation endpoint.
- push_
inveniordm - Create-or-update, then publish, a list of records in InvenioRDM.
- put_
inveniordm - Create-or-update, then publish, a single record in InvenioRDM.
- read
- Read a single record from
fromformat, without writing it back out. - read_
parquet - Read a list of commonmeta records back from the Parquet schema written by
write_parquet. Lossless: each record is restored from itsjsoncolumn, the complete original serialization. - read_
vraix_ sqlite - Read commonmeta records from a VRAIX daily dump SQLite file already on
disk at
sqlite_path, e.g. an already-downloadedcrossref-2026-06-14.sqlite3. - write
- Write an already-loaded record to
toformat. - write_
archive - Render
listtotoformat, split into entries of at mostbatch_sizerecords each — suitable for packing into an archive viafile_utils::write_zip_archive/file_utils::write_tar_gz_archive.base_name(e.g."out.json") names the single entry directly when there’s only one batch, or gets a numbered suffix ("out-00000.json","out-00001.json", …) when there are several. - write_
list - Render a list of records to
toformat as a single buffer: a JSON array for object-shaped formats (commonmeta,csl,datacite,inveniordm,schemaorg,ror), or newline-joined output for line/document-shaped formats (e.g.bibtex,ris,crossref_xml). - write_
parquet - Write a list of commonmeta records as a single Parquet file. Alongside a
flattened tabular projection of each record’s fields (for filtering in
tools like DuckDB without parsing JSON), every row also carries a
jsoncolumn with the record’s complete serialization, soread_parquetround-trips losslessly. - write_
ror_ json - Write a ROR-derived record as raw ROR-shaped JSON (as opposed to
write("ror", data), which produces InvenioRDM vocabulary YAML).