references¶
Person (BaseModel) pydantic-model ¶
ReferenceResource (EntryResource) pydantic-model ¶
The references entries describe bibliographic references.
The following properties are used to provide the bibliographic details:
- address, annote, booktitle, chapter, crossref, edition, howpublished, institution, journal, key, month, note, number, organization, pages, publisher, school, series, title, volume, year: meanings of these properties match the BibTeX specification, values are strings;
- bib_type: type of the reference, corresponding to type property in the BibTeX specification, value is string;
- authors and editors: lists of person objects which are dictionaries with the following keys:
- name: Full name of the person, REQUIRED.
- firstname, lastname: Parts of the person's name, OPTIONAL.
- doi and url: values are strings.
- Requirements/Conventions:
- Support: OPTIONAL support in implementations, i.e., any of the properties MAY be
null. - Query: Support for queries on any of these properties is OPTIONAL. If supported, filters MAY support only a subset of comparison operators.
- Every references entry MUST contain at least one of the properties.
- Support: OPTIONAL support in implementations, i.e., any of the properties MAY be
validate_attributes(v) classmethod ¶
Source code in optimade/models/references.py
@validator("attributes")
def validate_attributes(cls, v):
if not any(prop[1] is not None for prop in v):
raise ValueError("reference object must have at least one field defined")
return v
ReferenceResourceAttributes (EntryResourceAttributes) pydantic-model ¶
Model that stores the attributes of a reference.
Many properties match the meaning described in the BibTeX specification.
address: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
annote: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
authors: List[optimade.models.references.Person] pydantic-field ¶
List of person objects containing the authors of the reference.
bib_type: str pydantic-field ¶
Type of the reference, corresponding to the type property in the BiBTeX specification.
booktitle: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
chapter: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
crossref: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
doi: str pydantic-field ¶
The digital object identifier of the reference.
edition: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
editors: List[optimade.models.references.Person] pydantic-field ¶
List of person objects containing the editors of the reference.
howpublished: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
institution: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
journal: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
key: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
month: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
note: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
number: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
organization: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
pages: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
publisher: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
school: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
series: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
title: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
url: AnyUrl pydantic-field ¶
The URL of the reference.
volume: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.
year: str pydantic-field ¶
Meaning of property matches the BiBTeX specification.