🔍 Motivation
Citation count provides a useful indicator of the academic impact of a publication. Automating the population of this field from Semantic Scholar saves manual effort and enhances bibliographic data quality in JabRef.
📌 Goal
Extend the existing SemanticScholarCitationFetcher to retrieve the citation count for a given paper using the Semantic Scholar API and store it in a new BibTeX field citationcount.
🛠️ Tasks
-
Integrate citation count fetching
- Implement logic in
org.jabref.logic.importer.fetcher.citation.semanticscholar.SemanticScholarCitationFetcher using
PaperDetails#getCitationCount() from
org.jabref.logic.importer.fetcher.citation.semanticscholar.PaperDetails.
-
Add a new field
- Define a new field
citationcount in org.jabref.model.entry.field.StandardField (under JabRef-specific fields).
- Ensure that the field is recognized and included in citation fetcher updates.
-
Write tests
- Add unit tests in
org.jabref.logic.importer.fetcher.citation.semanticscholar.SemanticScholarCitationFetcherTest
to verify that citation count is fetched and set correctly.
- Additonally, Mock or simulate Semantic Scholar API responses with citation counts.
-
UI integration
- Add a new FieldEditor
CitationCount (inspired by IdentifierEditor) and integrate it into the UI by modifying FieldEditors#getForField(...).
- Add an update button, which uses the SemanticScholarFEtcher to update the citation cound.
✅ Acceptance Criteria
- When the fetcher is run on an entry with a DOI or title, and Semantic Scholar returns a citation count, the value is written to the
citationcount field.
- The value is stored as an integer.
- Field appears in the entry editor in tab "General"
📚 Helpful resources
🔍 Motivation
Citation count provides a useful indicator of the academic impact of a publication. Automating the population of this field from Semantic Scholar saves manual effort and enhances bibliographic data quality in JabRef.
📌 Goal
Extend the existing
SemanticScholarCitationFetcherto retrieve the citation count for a given paper using the Semantic Scholar API and store it in a new BibTeX fieldcitationcount.🛠️ Tasks
Integrate citation count fetching
org.jabref.logic.importer.fetcher.citation.semanticscholar.SemanticScholarCitationFetcherusingPaperDetails#getCitationCount()fromorg.jabref.logic.importer.fetcher.citation.semanticscholar.PaperDetails.Add a new field
citationcountinorg.jabref.model.entry.field.StandardField(under JabRef-specific fields).Write tests
org.jabref.logic.importer.fetcher.citation.semanticscholar.SemanticScholarCitationFetcherTestto verify that citation count is fetched and set correctly.
UI integration
CitationCount(inspired by IdentifierEditor) and integrate it into the UI by modifying FieldEditors#getForField(...).✅ Acceptance Criteria
citationcountfield.📚 Helpful resources
[PaperDetails](https://github.com/JabRef/jabref/blob/main/src/main/java/org/jabref/logic/importer/fetcher/citation/semanticscholar/PaperDetails.java)[SemanticScholarCitationFetcher](https://github.com/JabRef/jabref/blob/main/src/main/java/org/jabref/logic/importer/fetcher/citation/semanticscholar/SemanticScholarCitationFetcher.java)