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: String

Unique ID of this item within the CSL document.

item_type: ItemType

Type of the resource.

author: Vec<Name>

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

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Deserialize this value from the given Serde deserializer. Read more

Hashes this value, considering only the ID field.

Feeds a slice of this type into the given Hasher. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.