Skip to main content

Interface: StoredEprint

Defined in: src/types/interfaces/storage.interface.ts:64

Stored eprint metadata in Chive's index.

Remarks

This is an INDEX record, not the source of truth. The authoritative eprint data lives in the user's PDS. This record enables fast searching and browsing without hitting individual PDSes.

Properties

abstract

readonly abstract: AnnotationBody

Defined in: src/types/interfaces/storage.interface.ts:132

Rich text abstract with embedded knowledge graph references.

Remarks

Stored as AnnotationBody (RichTextBody format) with text items and nodeRef items. Uses application/x-chive-gloss+json format.


abstractPlainText?

readonly optional abstractPlainText: string

Defined in: src/types/interfaces/storage.interface.ts:141

Plain text abstract for full-text search indexing.

Remarks

Auto-generated from the rich abstract by extracting text content. Indexed for full-text search.


authors

readonly authors: readonly EprintAuthor[]

Defined in: src/types/interfaces/storage.interface.ts:85

All authors with contributions, affiliations, and metadata.

Remarks

Unified author list including primary and co-authors. Order is determined by each author's order property.


cid

readonly cid: CID

Defined in: src/types/interfaces/storage.interface.ts:76

CID of the indexed eprint version.

Remarks

Used to detect when PDS has a newer version (staleness check).


conferencePresentation?

readonly optional conferencePresentation: ConferencePresentation

Defined in: src/types/interfaces/storage.interface.ts:290

Conference presentation.

Remarks

Information about conference where this work was presented.


createdAt

readonly createdAt: Date

Defined in: src/types/interfaces/storage.interface.ts:324

When the eprint was created (from record).


documentBlobRef

readonly documentBlobRef: BlobRef

Defined in: src/types/interfaces/storage.interface.ts:151

Blob reference to primary document in user's PDS.

Remarks

This is a BlobRef (CID pointer), not blob data. The actual document remains in the user's PDS. Supports multiple formats (PDF, DOCX, HTML, Markdown, LaTeX, Jupyter, etc.).


documentFormat

readonly documentFormat: DocumentFormat

Defined in: src/types/interfaces/storage.interface.ts:159

Detected or user-specified document format.

Remarks

Auto-detected from MIME type and magic bytes. Defaults to 'pdf'.


externalIds?

readonly optional externalIds: ExternalIds

Defined in: src/types/interfaces/storage.interface.ts:257

External persistent identifiers.

Remarks

Links to external systems (arXiv, PubMed, SSRN, OpenAlex, etc.)


fields?

readonly optional fields: readonly object[]

Defined in: src/types/interfaces/storage.interface.ts:210

Research field references from the knowledge graph.

Remarks

Links to field nodes in the knowledge graph for categorization.


funding?

readonly optional funding: readonly FundingSource[]

Defined in: src/types/interfaces/storage.interface.ts:282

Funding sources.

Remarks

Links to CrossRef Funder Registry and ROR for standardized IDs.


indexedAt

readonly indexedAt: Date

Defined in: src/types/interfaces/storage.interface.ts:319

When this record was indexed by Chive.


keywords?

readonly optional keywords: readonly string[]

Defined in: src/types/interfaces/storage.interface.ts:202

Keywords for searchability and categorization.

Remarks

User-provided keywords for the eprint. Indexed for full-text search.


license

readonly license: string

Defined in: src/types/interfaces/storage.interface.ts:222

License (SPDX identifier).

Example

"CC-BY-4.0", "MIT", "Apache-2.0"

licenseUri?

readonly optional licenseUri: AtUri

Defined in: src/types/interfaces/storage.interface.ts:232

AT-URI to license node in the knowledge graph.

Remarks

Points to a governance-controlled license node (subkind=license). Optional; when present, provides canonical license reference. The license field contains the SPDX identifier for fallback.


needsAbstractMigration?

readonly optional needsAbstractMigration: boolean

Defined in: src/types/interfaces/storage.interface.ts:303

Indicates the source PDS record uses a legacy abstract format.

Remarks

Set during indexing when the source record has a plain string abstract instead of the current rich text array format. Used to show migration hints to users. This is indexing metadata, not a domain concept.

The knowledge of legacy formats lives only in the normalization code; this flag simply records whether migration is available.


paperDid?

readonly optional paperDid: DID

Defined in: src/types/interfaces/storage.interface.ts:104

DID of the paper's own account (if paper has its own PDS).

Remarks

Optional field for paper-centric account model. When set, blobs and the record itself live in the paper's PDS. When undefined, they live in the submitter's PDS.


pdsUrl

readonly pdsUrl: string

Defined in: src/types/interfaces/storage.interface.ts:314

URL of the user's PDS where this eprint lives.

Remarks

Used for:

  • Staleness detection (checking for updates)
  • Fetching blobs for proxying
  • Rebuilding index from source

previousVersionUri?

readonly optional previousVersionUri: AtUri

Defined in: src/types/interfaces/storage.interface.ts:176

AT URI of previous version (if this is an update).

Remarks

Used to build version chains for eprints with multiple revisions.


publicationStatus

readonly publicationStatus: PublicationStatus

Defined in: src/types/interfaces/storage.interface.ts:241

Current publication status.

Remarks

Tracks progression from eprint through review to publication. Defaults to 'eprint' for new submissions.


publishedVersion?

readonly optional publishedVersion: PublishedVersion

Defined in: src/types/interfaces/storage.interface.ts:249

Link to the published version (Version of Record).

Remarks

Populated when eprint has been published in a journal.


relatedWorks?

readonly optional relatedWorks: readonly RelatedWork[]

Defined in: src/types/interfaces/storage.interface.ts:266

Related works.

Remarks

Links to related eprints, datasets, software, and prior versions using DataCite-compatible relation types.


repositories?

readonly optional repositories: Repositories

Defined in: src/types/interfaces/storage.interface.ts:274

Linked repositories.

Remarks

Code, data, protocols, and materials repositories.


submittedBy

readonly submittedBy: DID

Defined in: src/types/interfaces/storage.interface.ts:94

DID of the human user who submitted this eprint.

Remarks

Always set to the human who performed the submission. May or may not appear in the authors list.


supplementaryMaterials?

readonly optional supplementaryMaterials: readonly SupplementaryMaterial[]

Defined in: src/types/interfaces/storage.interface.ts:168

Supplementary materials attached to this eprint.

Remarks

Additional files (appendices, figures, data, code, notebooks). Each item has metadata including category and display order.


title

readonly title: string

Defined in: src/types/interfaces/storage.interface.ts:113

Eprint title (plain text).

Remarks

Used for search indexing and fallback display. Indexed for full-text search and faceted filtering.


titleRich?

readonly optional titleRich: AnnotationBody

Defined in: src/types/interfaces/storage.interface.ts:123

Rich title with formatting and entity references.

Remarks

Optional rich text body for titles containing LaTeX, subscripts, superscripts, or entity references. When present, clients should use this for display and fall back to title for search and simple contexts.


uri

readonly uri: AtUri

Defined in: src/types/interfaces/storage.interface.ts:68

AT URI of the eprint record.


version

readonly version: number | SemanticVersion

Defined in: src/types/interfaces/storage.interface.ts:186

Version identifier.

Remarks

Can be a simple integer (1-indexed, increments with each revision) or a semantic version object for more structured versioning. Integer versioning is recommended for academic eprints.


versionNotes?

readonly optional versionNotes: string

Defined in: src/types/interfaces/storage.interface.ts:194

Changelog describing changes in this version.

Remarks

Optional field provided by authors when uploading a new version.