Skip to content

UB-Mannheim/check-fake-references

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Check Fake References

This python script check references for being fake. There will be no definite answer, but a list of failed/passed checks, which should help the evaluation of anyone doing this manually.

Run the demo online: Binder

Example output

OpenAlex: Found 1 exact title matches (overall 1 search results) https://api.openalex.org/works?filter=title.search:A+systematic+literature+review+of+machine+learning+methods+applied+to+predictive+maintenance&per-page=200
     ✓ 1 match also the type
     ✓ 1 matches the same year +-1. 2019 vs. [2019]
     ×× Found 0 of the 6 input authors resp. 0 of the 6 authors from the comparison.
            ['Tiago P Carvalho', 'Faérson A A M N Soares', 'Rafael Vita', 'Rafael P Francisco', 'Júlio P Basto', 'Sérgio G Alcala']
            ['Thyago P. Carvalho', 'Fabrízzio A. A. M. N. Soares', 'Roberto Vita', 'Roberto da P. Francisco', 'João P. Basto', 'Symone G. S. Alcalá']
        https://openalex.org/W2972137370
ZDB: ? Found 0 exact matches (overall 3 search results) for the journal name Computers and Industrial Engineering
GoogleScholar search manually: https://scholar.google.com/scholar?q=Tiago+P+Carvalho%2C+Fa%C3%A9rson+A+A+M+N+Soares%2C+Rafael+Vita%2C+Rafael+P+Francisco%2C+J%C3%BAlio+P+Basto%2C+S%C3%A9rgio+G+Alcala.+A+systematic+literature+review+of+machine+learning+methods+applied+to+predictive+maintenance.+2019

Usage

  1. Install the necessary python packages, see requirements.txt (make sure that you install a bibtexparser v2)
  2. Open check.py in your code editor
  3. Adapt the file_name variable there to point to your bibtex file with the references
  4. Run it

The output will be written directly on the terminal.

Plain-text references

If you have your references in plain-text instead, then we suggest you to use the excellent anystyle tool to quickly create a BibTeX file from it. Please make sure first that no newlines are within the same references, e.g. as you copied the text from a PDF file.

Interpretation of the results

You can also have a look at the output of the examples in the demo.ipynb.

DOI lookup

If a DOI is given, then this is resolved and the metadata is compared with the one saved at the DOI registry. Technically the metadate is asked via content negotation for bibtex format directly. This is known to work for the DOI registries CrossRef or DataCite but could fail for other agencies.

OpenAlex search

The title of each inputed reference is searched in OpenAlex. This can lead to several results, especially for a generic title of a publication, e.g. Articificial Intelligence. Next, among the search results the ones with an exact title match are identified and then further restricted by its publication type and year. The expected outcome is that after these restrictions only one result, the one which was inputed, is left and the authors comparison matches as well. However, this can fail to several reasons:

  • publication is not indexed in OpenAlex, e.g. some print-only books, gray literature
  • title consists of a subtitle or other additions and they are handled differently in the input data and in OpenAlex
  • title consists of special characters, e.g. dashes, mathematical symbols, and they are represented differently
  • some conference publications may be wrongly classified as preprints in OpenAlex

GoogleBooks search

For books a combination of the title, year and authors are search in GoogleBooks. It is expected that this leads to either only one result directly or the best match is the first one since the good relevance ranking.

ZDB search of the journal name

For journal article, the name of the journal is searched in the ZDB. It is expected that this leads to one or several matches. However, this can also fail due to some valid reasons:

  • journal name is abbreviated
  • journal name has some additions and they are handled differently
  • journal has no history of being a subscription journal or being important for libraries in Germany

License

This is open source software and can be used free under the MIT License. See LICENSE for details.

About

This Python script is used to check references to see if they are fake.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors