JSON Schema
Commonmeta is defined by a JSON Schema (draft 2020-12). The current
version is v1.0, released as stable. Download it from
https://commonmeta.org/commonmeta_v1.0.json.
commonmeta-schema package on PyPI,
crates.io, and npm.
Earlier versions (v0.10–v0.15) are still available, e.g. commonmeta_v0.15.json,
but are not compatible with v1.0.Document structure
A Commonmeta document is a JSON array of entities. Each entity is a work, a
person, an organization, or a container. The first
item is the subject of the document; in a collection, the items that follow are entities related
to it. Property names use snake_case, and records declare the schema version they conform to
in schema_version.
[
{
"id": "https://doi.org/10.59350/abcde-fghij",
"type": "BlogPost",
"title": "Hello World",
"contributors": [
{
"type": "Person",
"person": {
"id": "https://orcid.org/0000-0002-1825-0097",
"given_name": "Josiah",
"family_name": "Carberry"
},
"roles": ["Author"]
}
],
"date_published": "2025-02-10",
"language": "en",
"provider": "Crossref",
"schema_version": "https://commonmeta.org/commonmeta_v1.0.json"
},
{
"id": "https://orcid.org/0000-0002-1825-0097",
"given_name": "Josiah",
"family_name": "Carberry",
"affiliations": [
{
"identifier": "https://ror.org/05gq02987",
"identifier_type": "ROR",
"name": "Brown University"
}
]
}
]Schema reference
The tables below are generated from the schema file.
entity
A single Commonmeta entity: a work, a person, an organization, or a container.
One of: work, person, organization, container.
Entities
work
A commonmeta work object.
| Property | Type | Description |
|---|---|---|
additional_descriptions | array of object | The additional descriptions of the resource. Properties: description, language, type. |
additional_titles | array of object | Additional titles of the resource. Properties: language, title, type. |
additional_type | string | The additional type of the resource. |
archive_locations | array of string | The locations where content is archived. One of: CLOCKSS, LOCKSS, Portico, KB, Internet Archive, DWT. |
container | container | The container of the resource. |
content | string | The full text content of the resource, e.g. the body of a blog post. |
contributors | array of contributor | The contributors to the resource. |
date_published | date | |
date_updated | date | |
dates | object | Other dates for the resource. Properties: accepted, accessed, available, collected, copyrighted, created, other, submitted, valid, withdrawn. |
description | string | The description of the resource. |
files | array of object | The downloadable files for the resource. Properties: bucket, checksum, key, mime_type, size, url. |
funding_references | array of object | The funding references for the resource. Properties: asserted_by, award_id, award_number, award_title, funder_id, funder_name. |
geo_locations | array of geo_location | |
idrequired | id | |
identifiers | array of identifier | Identifiers for the resource, excluding the id. |
image | string (uri) | The image for the resource, e.g. a thumbnail for a blog post. |
language | language | |
license | license | |
provider | provider | |
publisher | organization | |
references | array of reference | References cited by this resource. |
relations | array of object | Other resolvable persistent unique IDs related to the resource. Properties: asserted_by, id, name, type. |
schema_version | string | The URI of the commonmeta JSON Schema version used. |
subjects | array of object | Properties: id, language, scheme, scheme_uri, subject. |
title | string | The title of the resource. |
typerequired | type | |
url | string (uri) | The URL of the resource. |
version | string | The version of the resource. |
person
At least one of id, name, given_name, family_name is required.
| Property | Type | Description |
|---|---|---|
additional_names | array of string | Alternate names, pseudonyms, or previous names of the person. |
affiliations | array of affiliation | The affiliations of the person. |
asserted_by | provider | |
country | string | The country of the person, as an ISO 3166-1 alpha-2 code. Pattern: ^[A-Z]{2}$. |
date_updated | date | The date the person record was last updated. |
description | string | A biographical description of the person. |
family_name | string | The family name of the person. |
given_name | string | The given name of the person. |
id | string (uri) | ORCID identifier URL. Pattern: ^https://orcid\.org/\d{4}-\d{4}-\d{4}-\d{3}[0-9X]$. |
identifiers | array of identifier | External identifiers for the person, e.g. Scopus Author ID or ResearcherID. |
name | string | The display or credit name of the person. |
urls | array of object | Personal or professional URLs associated with the person. Properties: name, url. |
organization
| Property | Type | Description |
|---|---|---|
acronym | string | The acronym or abbreviation of the organization. |
additional_names | array of string | Alternate names, aliases, or translated names of the organization. |
asserted_by | provider | |
country | string | The country of the organization, as an ISO 3166-1 alpha-2 code. Pattern: ^[A-Z]{2}$. |
date_updated | date | The date the organization record was last updated. |
established | integer | The year the organization was established. |
geo_locations | array of geo_location | Geographic locations of the organization. |
id | string (uri) | ROR identifier URL. Pattern: ^https://ror\.org/[0-9a-z]{9}$. |
identifiers | array of identifier | External identifiers for the organization, e.g. GRID, ISNI, FundRef, or Wikidata. |
name | string | The name of the organization. |
relations | array of object | Other organizations related to this organization. Properties: asserted_by, id, name, type. |
status | string | The status of the organization. One of: active, inactive, withdrawn. |
types | array of string | The types of the organization. One of: education, funder, healthcare, company, archive, nonprofit, government, facility, other. |
urls | array of object | Website and other URLs associated with the organization. Properties: name, url. |
container
| Property | Type | Description |
|---|---|---|
additional_titles | array of string | Abbreviated or alternate titles of the container. |
country | string | ISO 3166-1 alpha-2 country code of the container. |
date_updated | date | The date the container record was last updated. |
description | string | A description of the container. |
first_page | string | The first page of the resource. |
identifiers | array of object | External identifiers for the container (e.g. its OpenAlex source id, ISSN, DOI, or ISBN). Properties: identifier, identifier_type. |
image | string (uri) | The image for the container. |
issue | string | The issue of the resource. |
language | language | |
last_page | string | The last page of the resource. |
license | license | |
location | string | The location of the conference or event. |
platform | string | The platform of the container. |
publisher | object | The publisher or host organization of the container. Properties: id, name. |
series | string | The series name or acronym for the conference or event. |
title | string | The name of the container. |
type | string | The type of the container. One of: Blog, Book, BookSeries, Journal, Proceedings, ProceedingsSeries, Repository, DataRepository, Periodical, Series, igsnCatalog, raidRegistry, Other. |
url | string (uri) | The homepage URL of the container. |
volume | string | The volume of the resource. |
Components
affiliation
An organizational affiliation of a person, optionally scoped by role and date range.
At least one of identifier, name is required.
| Property | Type | Description |
|---|---|---|
asserted_by | provider | |
end_date | date | The date the affiliation ended. |
identifier | string | The identifier of the affiliated organization. |
identifier_type | string | The type of the identifier. One of: ROR, FundRef, GRID, ISNI, Ringgold, URL, Wikidata, Other. |
name | string | The name of the affiliated organization. |
role | string | The role or job title held at the organization. |
start_date | date | The date the affiliation began. |
contributor
A contributor of type Person requires person; any other contributor requires organization.
| Property | Type | Description |
|---|---|---|
organization | organization | |
person | person | |
roles | array of contributor_role | List of roles assumed by the contributor when working on the resource. |
typerequired | string | One of: Person, Organization. |
geo_location
A geographic location associated with the resource.
| Property | Type | Description |
|---|---|---|
box_east_longitude | longitude | |
box_north_latitude | latitude | |
box_south_latitude | latitude | |
box_west_longitude | longitude | |
id | id | |
place | string | |
point_latitude | latitude | |
point_longitude | longitude | |
polygon | string | The polygon geometry, formatted as Well-Known Text (WKT). |
identifier
An identifier for the resource.
| Property | Type | Description |
|---|---|---|
asserted_by | provider | |
identifierrequired | string | |
identifier_typerequired | string | One of: ARK, arXiv, article_id, Bibcode, DOI, FundRef, GeoNames, GRID, Handle, ISBN, ISNI, ISSN, OpenAlex, PMID, PMCID, PURL, RAiD, ResearcherID, ROR, ScopusID, SWHID, URL, URN, UUID, GUID, Wikidata, Other. |
scheme | string | The scheme for identifiers with identifier_type 'Other', e.g. 'IGSN' or 'MGDS'. |
license
The license for the resource. Use one of the SPDX license identifiers.
| Property | Type | Description |
|---|---|---|
asserted_by | provider | |
id | string | |
title | string | |
url | string (uri) |
reference
A cited or citing work. Used for both references (works cited by this resource) and citations (works that cite this resource).
| Property | Type | Description |
|---|---|---|
asserted_by | provider | |
id | id | |
key | string | |
reference | string | The reference formatted as string. |
type | type |
Vocabularies
type
Type: string. One of: Preprint, Audiovisual, Blog, BlogPost, BlogVolume, Book, BookChapter, BookPart, BookSection, BookSeries, BookSet, Collection, Component, ComputationalNotebook, Database, Dataset, Dissertation, Document, Entry, Event, Figure, Grant, Image, Instrument, InteractiveResource, Journal, JournalArticle, JournalIssue, JournalVolume, LegalDocument, Manuscript, Map, Model, OutputManagementPlan, Patent, PeerReview, Performance, PersonalCommunication, PhysicalObject, Poster, Presentation, Proceedings, ProceedingsArticle, ProceedingsSeries, Report, ReportComponent, ReportSeries, Review, Service, Software, Sound, Standard, StudyRegistration, WebPage, Workflow, Other.
contributor_role
The type of contribution made by a contributor
Type: string. One of: Author, Chair, Conceptualization, ContactPerson, CorrespondingAuthor, DataCollector, DataCuration, DataManager, Distributor, Editor, FormalAnalysis, FundingAcquisition, HostingInstitution, Interviewee, Investigation, Maintainer, Methodology, Other, Producer, ProjectAdministration, ProjectLeader, ProjectManager, ProjectMember, Reader, RelatedPerson, RegistrationAgency, RegistrationAuthority, ResearchGroup, Researcher, Resources, Reviewer, ReviewerExternal, ReviewAssistant, RightsHolder, Software, Sponsor, StatsReviewer, Supervision, Translator, Validation, Visualization, WorkPackageLeader, WritingOriginalDraft, WritingReviewEditing.
provider
The provider of the resource or the assertion. This can be a DOI registration agency, a repository, or any other entity asserting the information.
Type: string. One of: Crossref, DataCite, Airiti, CNKI, JaLC, KISTI, mEDRA, OP, Contributor, Commonmeta, GitHub, OpenAIRE, OpenAlex, ORCID, Publisher, PubMed, ROR, Other.
Primitives
id
The unique identifier for the resource.
Type: string (uri).
date
An ISO 8601 / EDTF level 0 date or partial date (year, year-month, year-month-day, or full date-time).
Type: string. Pattern: ^\d{4}(-\d{2}(-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})?)?)?)?$.
language
The language. Use one of the language codes from the IETF BCP 47 standard.
Type: string.
latitude
Type: number. Minimum: -90. Maximum: 90.
longitude
Type: number. Minimum: -180. Maximum: 180.
Source
commonmeta_v1.0.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://commonmeta.org/commonmeta_v1.0.json",
"title": "Commonmeta v1.0",
"description": "JSON representation of the Commonmeta schema. The document is an array of objects, where each object is a work, an organization, or a person.",
"type": "array",
"uniqueItems": true,
"prefixItems": [
{
"description": "The first item in the array: a work, a person, or an organization. In a collection, this is typically the subject whose related entities follow.",
"$ref": "#/$defs/entity"
}
],
"items": {
"description": "Subsequent items in the array: works, persons, or organizations related to the subject.",
"$ref": "#/$defs/entity"
},
"$defs": {
"entity": {
"description": "A single Commonmeta entity: a work, a person, an organization, or a container.",
"oneOf": [
{
"$ref": "#/$defs/work"
},
{
"allOf": [
{
"$ref": "#/$defs/person"
},
{
"required": [
"id"
]
}
]
},
{
"allOf": [
{
"$ref": "#/$defs/organization"
},
{
"required": [
"id"
]
}
]
},
{
"allOf": [
{
"$ref": "#/$defs/container"
},
{
"required": [
"identifiers"
]
}
]
}
]
},
"work": {
"description": "A commonmeta work object.",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"$ref": "#/$defs/id"
},
"type": {
"$ref": "#/$defs/type"
},
"additional_descriptions": {
"description": "The additional descriptions of the resource.",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"description": {
"description": "The description of the resource.",
"type": "string"
},
"type": {
"description": "The type of the description.",
"type": "string",
"enum": [
"Abstract",
"Summary",
"Methods",
"TechnicalInfo",
"Other"
]
},
"language": {
"$ref": "#/$defs/language"
}
},
"required": [
"description"
]
}
},
"additional_titles": {
"description": "Additional titles of the resource.",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"title": {
"description": "The title of the resource.",
"type": "string"
},
"type": {
"description": "The type of the title.",
"type": "string",
"enum": [
"AlternativeTitle",
"Subtitle",
"TranslatedTitle"
]
},
"language": {
"$ref": "#/$defs/language"
}
},
"required": [
"title"
]
}
},
"additional_type": {
"description": "The additional type of the resource.",
"type": "string"
},
"archive_locations": {
"description": "The locations where content is archived.",
"type": "array",
"items": {
"type": "string",
"enum": [
"CLOCKSS",
"LOCKSS",
"Portico",
"KB",
"Internet Archive",
"DWT"
]
}
},
"container": {
"description": "The container of the resource.",
"$ref": "#/$defs/container"
},
"content": {
"description": "The full text content of the resource, e.g. the body of a blog post.",
"type": "string"
},
"contributors": {
"description": "The contributors to the resource.",
"type": "array",
"items": {
"$ref": "#/$defs/contributor"
},
"minItems": 1
},
"date_published": {
"$ref": "#/$defs/date"
},
"date_updated": {
"$ref": "#/$defs/date"
},
"dates": {
"description": "Other dates for the resource.",
"type": "object",
"additionalProperties": false,
"properties": {
"created": {
"$ref": "#/$defs/date"
},
"submitted": {
"$ref": "#/$defs/date"
},
"accepted": {
"$ref": "#/$defs/date"
},
"accessed": {
"$ref": "#/$defs/date"
},
"available": {
"$ref": "#/$defs/date"
},
"withdrawn": {
"$ref": "#/$defs/date"
},
"collected": {
"$ref": "#/$defs/date"
},
"valid": {
"$ref": "#/$defs/date"
},
"copyrighted": {
"$ref": "#/$defs/date"
},
"other": {
"$ref": "#/$defs/date"
}
}
},
"description": {
"description": "The description of the resource.",
"type": "string"
},
"files": {
"description": "The downloadable files for the resource.",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"bucket": {
"type": "string"
},
"key": {
"type": "string"
},
"checksum": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"size": {
"type": "integer"
},
"mime_type": {
"type": "string"
}
},
"required": [
"url"
]
},
"minItems": 1
},
"funding_references": {
"description": "The funding references for the resource.",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"funder_id": {
"$ref": "#/$defs/id"
},
"funder_name": {
"type": "string"
},
"award_id": {
"$ref": "#/$defs/id"
},
"award_title": {
"type": "string"
},
"award_number": {
"type": "string"
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
},
"anyOf": [
{
"required": [
"funder_name"
]
},
{
"required": [
"funder_id"
]
},
{
"required": [
"award_number"
]
},
{
"required": [
"award_title"
]
}
]
}
},
"geo_locations": {
"type": "array",
"items": {
"$ref": "#/$defs/geo_location"
},
"uniqueItems": true
},
"identifiers": {
"description": "Identifiers for the resource, excluding the id.",
"type": "array",
"items": {
"$ref": "#/$defs/identifier"
}
},
"image": {
"description": "The image for the resource, e.g. a thumbnail for a blog post.",
"type": "string",
"format": "uri"
},
"language": {
"$ref": "#/$defs/language"
},
"license": {
"$ref": "#/$defs/license"
},
"provider": {
"$ref": "#/$defs/provider"
},
"publisher": {
"$ref": "#/$defs/organization"
},
"references": {
"description": "References cited by this resource.",
"type": "array",
"items": {
"$ref": "#/$defs/reference"
}
},
"relations": {
"description": "Other resolvable persistent unique IDs related to the resource.",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"$ref": "#/$defs/id"
},
"type": {
"type": "string",
"enum": [
"IsNewVersionOf",
"IsPreviousVersionOf",
"IsVersionOf",
"HasVersion",
"IsPartOf",
"HasPart",
"IsVariantFormOf",
"IsOriginalFormOf",
"IsIdenticalTo",
"IsTranslationOf",
"HasTranslation",
"IsReviewOf",
"HasReview",
"IsPreprintOf",
"HasPreprint",
"IsReferencedBy",
"IsSupplementTo",
"IsSupplementedBy",
"Other"
]
},
"name": {
"description": "A human-readable label for the related resource.",
"type": "string"
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
},
"required": [
"id",
"type"
]
},
"minItems": 1
},
"schema_version": {
"description": "The URI of the commonmeta JSON Schema version used.",
"type": "string",
"const": "https://commonmeta.org/commonmeta_v1.0.json"
},
"subjects": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"$ref": "#/$defs/id"
},
"subject": {
"type": "string"
},
"scheme": {
"description": "The subject classification scheme, e.g. FOS, ANZSRC, or JEL.",
"type": "string"
},
"scheme_uri": {
"description": "A URI identifying the subject classification scheme.",
"type": "string",
"format": "uri"
},
"language": {
"$ref": "#/$defs/language"
}
},
"required": [
"subject"
]
}
},
"title": {
"description": "The title of the resource.",
"type": "string"
},
"url": {
"description": "The URL of the resource.",
"type": "string",
"format": "uri"
},
"version": {
"description": "The version of the resource.",
"type": "string"
}
},
"required": [
"id",
"type"
]
},
"person": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "ORCID identifier URL.",
"type": "string",
"format": "uri",
"pattern": "^https://orcid\\.org/\\d{4}-\\d{4}-\\d{4}-\\d{3}[0-9X]$"
},
"given_name": {
"description": "The given name of the person.",
"type": "string"
},
"family_name": {
"description": "The family name of the person.",
"type": "string"
},
"name": {
"description": "The display or credit name of the person.",
"type": "string"
},
"additional_names": {
"description": "Alternate names, pseudonyms, or previous names of the person.",
"type": "array",
"items": {
"type": "string"
}
},
"description": {
"description": "A biographical description of the person.",
"type": "string"
},
"affiliations": {
"description": "The affiliations of the person.",
"type": "array",
"items": {
"$ref": "#/$defs/affiliation"
}
},
"identifiers": {
"description": "External identifiers for the person, e.g. Scopus Author ID or ResearcherID.",
"type": "array",
"items": {
"$ref": "#/$defs/identifier"
}
},
"urls": {
"description": "Personal or professional URLs associated with the person.",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"description": "A label for the URL.",
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
}
},
"required": [
"url"
]
}
},
"country": {
"description": "The country of the person, as an ISO 3166-1 alpha-2 code.",
"type": "string",
"pattern": "^[A-Z]{2}$"
},
"date_updated": {
"description": "The date the person record was last updated.",
"$ref": "#/$defs/date"
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
},
"anyOf": [
{
"required": [
"id"
]
},
{
"required": [
"name"
]
},
{
"required": [
"given_name"
]
},
{
"required": [
"family_name"
]
}
]
},
"organization": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "ROR identifier URL.",
"type": "string",
"format": "uri",
"pattern": "^https://ror\\.org/[0-9a-z]{9}$"
},
"name": {
"description": "The name of the organization.",
"type": "string"
},
"acronym": {
"description": "The acronym or abbreviation of the organization.",
"type": "string"
},
"additional_names": {
"description": "Alternate names, aliases, or translated names of the organization.",
"type": "array",
"items": {
"type": "string"
}
},
"types": {
"description": "The types of the organization.",
"type": "array",
"items": {
"type": "string",
"enum": [
"education",
"funder",
"healthcare",
"company",
"archive",
"nonprofit",
"government",
"facility",
"other"
]
}
},
"status": {
"description": "The status of the organization.",
"type": "string",
"enum": [
"active",
"inactive",
"withdrawn"
]
},
"established": {
"description": "The year the organization was established.",
"type": "integer"
},
"date_updated": {
"description": "The date the organization record was last updated.",
"$ref": "#/$defs/date"
},
"identifiers": {
"description": "External identifiers for the organization, e.g. GRID, ISNI, FundRef, or Wikidata.",
"type": "array",
"items": {
"$ref": "#/$defs/identifier"
}
},
"urls": {
"description": "Website and other URLs associated with the organization.",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"description": "A label for the URL.",
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
}
},
"required": [
"url"
]
}
},
"country": {
"description": "The country of the organization, as an ISO 3166-1 alpha-2 code.",
"type": "string",
"pattern": "^[A-Z]{2}$"
},
"geo_locations": {
"description": "Geographic locations of the organization.",
"type": "array",
"items": {
"$ref": "#/$defs/geo_location"
},
"uniqueItems": true
},
"relations": {
"description": "Other organizations related to this organization.",
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "ROR URL of the related organization.",
"type": "string",
"format": "uri"
},
"type": {
"type": "string",
"enum": [
"IsPartOf",
"HasPart",
"IsRelatedTo",
"Other"
]
},
"name": {
"description": "A human-readable label for the related organization.",
"type": "string"
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
},
"required": [
"id",
"type"
]
},
"minItems": 1
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
}
},
"container": {
"type": "object",
"additionalProperties": false,
"properties": {
"identifiers": {
"description": "External identifiers for the container (e.g. its OpenAlex source id, ISSN, DOI, or ISBN).",
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"identifier",
"identifier_type"
],
"properties": {
"identifier": {
"description": "The identifier for the container.",
"type": "string"
},
"identifier_type": {
"description": "Identifier type for a container (journal, repository, blog, etc.).",
"type": "string",
"enum": [
"DataCite",
"DOI",
"Handle",
"ISBN",
"ISSN",
"OpenAlex",
"PURL",
"re3data",
"URL",
"URN",
"UUID",
"Wikidata",
"Other"
]
}
}
}
},
"type": {
"description": "The type of the container.",
"type": "string",
"enum": [
"Blog",
"Book",
"BookSeries",
"Journal",
"Proceedings",
"ProceedingsSeries",
"Repository",
"DataRepository",
"Periodical",
"Series",
"igsnCatalog",
"raidRegistry",
"Other"
]
},
"title": {
"description": "The name of the container.",
"type": "string"
},
"additional_titles": {
"description": "Abbreviated or alternate titles of the container.",
"type": "array",
"items": {
"type": "string"
}
},
"description": {
"description": "A description of the container.",
"type": "string"
},
"language": {
"$ref": "#/$defs/language"
},
"license": {
"$ref": "#/$defs/license"
},
"platform": {
"description": "The platform of the container.",
"type": "string"
},
"image": {
"description": "The image for the container.",
"type": "string",
"format": "uri"
},
"publisher": {
"description": "The publisher or host organization of the container.",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "ROR identifier URL of the publisher.",
"type": "string"
},
"name": {
"description": "The name of the publisher.",
"type": "string"
}
}
},
"country": {
"description": "ISO 3166-1 alpha-2 country code of the container.",
"type": "string"
},
"first_page": {
"description": "The first page of the resource.",
"type": "string"
},
"last_page": {
"description": "The last page of the resource.",
"type": "string"
},
"volume": {
"description": "The volume of the resource.",
"type": "string"
},
"issue": {
"description": "The issue of the resource.",
"type": "string"
},
"location": {
"description": "The location of the conference or event.",
"type": "string"
},
"series": {
"description": "The series name or acronym for the conference or event.",
"type": "string"
},
"url": {
"description": "The homepage URL of the container.",
"type": "string",
"format": "uri"
},
"date_updated": {
"description": "The date the container record was last updated.",
"$ref": "#/$defs/date"
}
}
},
"affiliation": {
"description": "An organizational affiliation of a person, optionally scoped by role and date range.",
"type": "object",
"additionalProperties": false,
"properties": {
"identifier": {
"description": "The identifier of the affiliated organization.",
"type": "string"
},
"identifier_type": {
"description": "The type of the identifier.",
"type": "string",
"enum": [
"ROR",
"FundRef",
"GRID",
"ISNI",
"Ringgold",
"URL",
"Wikidata",
"Other"
]
},
"name": {
"description": "The name of the affiliated organization.",
"type": "string"
},
"role": {
"description": "The role or job title held at the organization.",
"type": "string"
},
"start_date": {
"description": "The date the affiliation began.",
"$ref": "#/$defs/date"
},
"end_date": {
"description": "The date the affiliation ended.",
"$ref": "#/$defs/date"
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
},
"anyOf": [
{
"required": [
"identifier"
]
},
{
"required": [
"name"
]
}
]
},
"contributor": {
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"type": "string",
"enum": [
"Person",
"Organization"
]
},
"person": {
"$ref": "#/$defs/person"
},
"organization": {
"$ref": "#/$defs/organization"
},
"roles": {
"description": "List of roles assumed by the contributor when working on the resource.",
"type": "array",
"items": {
"$ref": "#/$defs/contributor_role"
}
}
},
"required": [
"type"
],
"if": {
"properties": {
"type": {
"const": "Person"
}
}
},
"then": {
"required": [
"person"
]
},
"else": {
"required": [
"organization"
]
}
},
"contributor_role": {
"description": "The type of contribution made by a contributor",
"type": "string",
"enum": [
"Author",
"Chair",
"Conceptualization",
"ContactPerson",
"CorrespondingAuthor",
"DataCollector",
"DataCuration",
"DataManager",
"Distributor",
"Editor",
"FormalAnalysis",
"FundingAcquisition",
"HostingInstitution",
"Interviewee",
"Investigation",
"Maintainer",
"Methodology",
"Other",
"Producer",
"ProjectAdministration",
"ProjectLeader",
"ProjectManager",
"ProjectMember",
"Reader",
"RelatedPerson",
"RegistrationAgency",
"RegistrationAuthority",
"ResearchGroup",
"Researcher",
"Resources",
"Reviewer",
"ReviewerExternal",
"ReviewAssistant",
"RightsHolder",
"Software",
"Sponsor",
"StatsReviewer",
"Supervision",
"Translator",
"Validation",
"Visualization",
"WorkPackageLeader",
"WritingOriginalDraft",
"WritingReviewEditing"
]
},
"date": {
"description": "An ISO 8601 / EDTF level 0 date or partial date (year, year-month, year-month-day, or full date-time).",
"type": "string",
"pattern": "^\\d{4}(-\\d{2}(-\\d{2}(T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2})?)?)?)?$"
},
"geo_location": {
"description": "A geographic location associated with the resource.",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"$ref": "#/$defs/id"
},
"place": {
"type": "string"
},
"point_longitude": {
"$ref": "#/$defs/longitude"
},
"point_latitude": {
"$ref": "#/$defs/latitude"
},
"box_west_longitude": {
"$ref": "#/$defs/longitude"
},
"box_east_longitude": {
"$ref": "#/$defs/longitude"
},
"box_south_latitude": {
"$ref": "#/$defs/latitude"
},
"box_north_latitude": {
"$ref": "#/$defs/latitude"
},
"polygon": {
"description": "The polygon geometry, formatted as Well-Known Text (WKT).",
"type": "string"
}
}
},
"id": {
"description": "The unique identifier for the resource.",
"type": "string",
"format": "uri"
},
"identifier": {
"description": "An identifier for the resource.",
"type": "object",
"additionalProperties": false,
"properties": {
"identifier": {
"type": "string"
},
"identifier_type": {
"type": "string",
"enum": [
"ARK",
"arXiv",
"article_id",
"Bibcode",
"DOI",
"FundRef",
"GeoNames",
"GRID",
"Handle",
"ISBN",
"ISNI",
"ISSN",
"OpenAlex",
"PMID",
"PMCID",
"PURL",
"RAiD",
"ResearcherID",
"ROR",
"ScopusID",
"SWHID",
"URL",
"URN",
"UUID",
"GUID",
"Wikidata",
"Other"
]
},
"scheme": {
"description": "The scheme for identifiers with identifier_type 'Other', e.g. 'IGSN' or 'MGDS'.",
"type": "string"
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
},
"required": [
"identifier",
"identifier_type"
]
},
"language": {
"description": "The language. Use one of the language codes from the IETF BCP 47 standard.",
"type": "string"
},
"latitude": {
"type": "number",
"minimum": -90,
"maximum": 90
},
"license": {
"description": "The license for the resource. Use one of the SPDX license identifiers.",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
}
},
"longitude": {
"type": "number",
"minimum": -180,
"maximum": 180
},
"provider": {
"description": "The provider of the resource or the assertion. This can be a DOI registration agency, a repository, or any other entity asserting the information.",
"type": "string",
"enum": [
"Crossref",
"DataCite",
"Airiti",
"CNKI",
"JaLC",
"KISTI",
"mEDRA",
"OP",
"Contributor",
"Commonmeta",
"GitHub",
"OpenAIRE",
"OpenAlex",
"ORCID",
"Publisher",
"PubMed",
"ROR",
"Other"
]
},
"reference": {
"description": "A cited or citing work. Used for both references (works cited by this resource) and citations (works that cite this resource).",
"type": "object",
"additionalProperties": false,
"properties": {
"key": {
"type": "string"
},
"id": {
"$ref": "#/$defs/id"
},
"type": {
"$ref": "#/$defs/type"
},
"reference": {
"description": "The reference formatted as string.",
"type": "string"
},
"asserted_by": {
"$ref": "#/$defs/provider"
}
}
},
"type": {
"type": "string",
"enum": [
"Preprint",
"Audiovisual",
"Blog",
"BlogPost",
"BlogVolume",
"Book",
"BookChapter",
"BookPart",
"BookSection",
"BookSeries",
"BookSet",
"Collection",
"Component",
"ComputationalNotebook",
"Database",
"Dataset",
"Dissertation",
"Document",
"Entry",
"Event",
"Figure",
"Grant",
"Image",
"Instrument",
"InteractiveResource",
"Journal",
"JournalArticle",
"JournalIssue",
"JournalVolume",
"LegalDocument",
"Manuscript",
"Map",
"Model",
"OutputManagementPlan",
"Patent",
"PeerReview",
"Performance",
"PersonalCommunication",
"PhysicalObject",
"Poster",
"Presentation",
"Proceedings",
"ProceedingsArticle",
"ProceedingsSeries",
"Report",
"ReportComponent",
"ReportSeries",
"Review",
"Service",
"Software",
"Sound",
"Standard",
"StudyRegistration",
"WebPage",
"Workflow",
"Other"
]
}
}
}