Struct citeworks_csl::items::Item
source · [−]pub struct Item {Show 29 fields
pub id: String,
pub item_type: ItemType,
pub author: Vec<Name>,
pub contributor: Vec<Name>,
pub issued: Option<Date>,
pub updated: Option<Date>,
pub published: Option<Date>,
pub accessed: Option<Date>,
pub category: Option<OrdinaryValue>,
pub issn: Option<OrdinaryValue>,
pub eissn: Option<OrdinaryValue>,
pub issnl: Option<OrdinaryValue>,
pub doi: Option<OrdinaryValue>,
pub url: Option<OrdinaryValue>,
pub title: Option<OrdinaryValue>,
pub title_short: Option<OrdinaryValue>,
pub summary: Option<OrdinaryValue>,
pub abstract_text: Option<OrdinaryValue>,
pub container_title: Option<OrdinaryValue>,
pub journal_abbrevation: Option<OrdinaryValue>,
pub volume: Option<OrdinaryValue>,
pub issue: Option<OrdinaryValue>,
pub page: Option<OrdinaryValue>,
pub language: Option<OrdinaryValue>,
pub source: Option<OrdinaryValue>,
pub rights: Option<OrdinaryValue>,
pub license: Option<OrdinaryValue>,
pub note: Option<OrdinaryValue>,
pub fields: HashMap<String, ItemValue>,
}Expand description
An item carries the details of a single unique bibliographic resource.
The set of fields that an item may have is determined by the item type; in
this library this is not checked: known fields have their field type defined
and checked, but unrecognised fields are not errors when deserialised and
go in the generic fields map.
Fields
id: StringUnique ID of this item within the CSL document.
item_type: ItemTypeType of the resource.
Author(s).
contributor: Vec<Name>Contributor(s) to the item.
issued: Option<Date>Date the item was issued on.
updated: Option<Date>Date the item was last updated.
published: Option<Date>Date the item was published on.
accessed: Option<Date>Date the item was accessed (for citations).
category: Option<OrdinaryValue>Category (scientific field or type of study)
issn: Option<OrdinaryValue>ISSN.
eissn: Option<OrdinaryValue>EISSN.
issnl: Option<OrdinaryValue>ISSNL.
doi: Option<OrdinaryValue>DOI.
url: Option<OrdinaryValue>URL.
title: Option<OrdinaryValue>Title.
title_short: Option<OrdinaryValue>Short title.
summary: Option<OrdinaryValue>Summary.
abstract_text: Option<OrdinaryValue>Abstract.
container_title: Option<OrdinaryValue>Name of the issuing publication.
journal_abbrevation: Option<OrdinaryValue>Abbreviated name of the issuing publication.
This has non-standard casing: journalAbbreviation.
volume: Option<OrdinaryValue>Volume number of the issuing publication.
This can be a numerical value but is often a string of a number.
issue: Option<OrdinaryValue>Issue number of the issuing publication.
This can be a numerical value but is often a string of a number.
page: Option<OrdinaryValue>Page number or page range in the issuing publication.
This can be a numerical value but is often a string of a number, or of
the range in N-M format.
language: Option<OrdinaryValue>Language code.
source: Option<OrdinaryValue>Plain source name.
rights: Option<OrdinaryValue>Copyright statement.
license: Option<OrdinaryValue>License statement.
Sometimes used as a synonym of rights rather than actual licensing.
note: Option<OrdinaryValue>Note for extra details that are important to include in the citation but don’t have a standard field.
May be structured or semi-structured data, but as there is no convention processors shouldn’t make assumptions unless they can assert meaning.
fields: HashMap<String, ItemValue>Any field that is not directly supported by name.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Item
impl<'de> Deserialize<'de> for Item
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for Item
impl StructuralEq for Item
impl StructuralPartialEq for Item
Auto Trait Implementations
impl RefUnwindSafe for Item
impl Send for Item
impl Sync for Item
impl Unpin for Item
impl UnwindSafe for Item
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more