Class CrossRefFetcher
java.lang.Object
ubic.gemma.core.loader.crossref.CrossRefFetcher
Fetch bibliographic metadata for a DOI from the CrossRef REST API
(api.crossref.org).
Complements PubMedSearch: PubMed covers DOIs that NCBI
indexes, CrossRef covers the rest — most journal articles and, crucially, bioRxiv / medRxiv preprints
that PubMed does not carry. This is what lets a curator attach a preprint to an experiment instead of
noting it in a free-text comment.
Plain (non-Spring) helper, constructed at the use site like PubMedSearch. No API key is
required; a contact-bearing User-Agent opts into CrossRef's "polite pool".
- Author:
- gemma
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionretrieveByDoi(String doi) Retrieve aBibliographicReferencefor the given DOI from CrossRef.
-
Constructor Details
-
CrossRefFetcher
public CrossRefFetcher()
-
-
Method Details
-
retrieveByDoi
Retrieve aBibliographicReferencefor the given DOI from CrossRef.- Parameters:
doi- a DOI, already normalized to its bare form (nohttps://doi.org/prefix).- Returns:
- a transient
BibliographicReferencewith itspubAccessionset to the DOI (under theExternalDatabases.DOIexternal database), ornullif CrossRef has no record for the DOI (HTTP 404). - Throws:
IOException- on a transport error or an unexpected (non-200, non-404) CrossRef response.
-