Skip to main content

Module data

Module data 

Source
Expand description

Core Commonmeta data model.

Data mirrors the commonmeta v1.0 JSON schema (resources/commonmeta_v1.0.json) directly — field names and nesting match the schema 1:1, the same way commonmeta-py’s Metadata class is the v1.0 shape rather than an internal model translated to/from it.

A few sub-structs carry fields beyond what the schema defines, because other formats’ writers genuinely need them for round-tripping (e.g. Reference.unstructured/.asserted_by, Dates.collected/.valid/ .other/.copyrighted). These ride along unserialized-by-default wherever empty and don’t affect schema validation, since the schema’s nested item definitions don’t set additionalProperties: false.

Structs§

Affiliation
Citation
Container
Contributor
type_ is “Person” or “Organization”; exactly one of person/ organization is set accordingly.
Data
The native Commonmeta record, shaped like the v1.0 JSON schema.
Dates
“Other dates” beyond date_published/date_updated. All fields are ISO 8601 date strings. collected/valid/other/copyrighted are carried for DataCite/InvenioRDM round-tripping and aren’t part of the v1.0 schema’s dates definition.
Description
File
FundingReference
GeoLocation
Flattened to match the v1.0 schema’s geo_locations shape directly (no nested point/box objects).
Identifier
License
Organization
Person
Publisher
Reference
publisher/publication_year/volume/issue/first_page/last_page/ unstructured/asserted_by ride along for internal use (e.g. the crossref_xml and InvenioRDM writers); only key/id/type_/ reference are part of the v1.0 schema’s references definition.
Relation
Subject
Title