Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add documentation for the GUI for consistency check #551

Merged
merged 11 commits into from
Mar 11, 2025
Binary file added en/.gitbook/assets/checkconsistency.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added en/.gitbook/assets/consistencycheck_results.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
62 changes: 62 additions & 0 deletions en/finding-sorting-and-cleaning-entries/checkconsistency.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Check consistency

JabRef can check the consistency of a library.

This feature is available through **Quality → Check consistency**.

## How to use

1. Open JabRef and go to the Quality menu.
2. Click on "Check Consistency" (below "Check Integrity").
3. JabRef will run the check on your entire library and show the results in a new window.
4. The result window will display entries grouped by their entry type (e.g., articles, books).
5. Each entry will be shown in a table with columns indicating whether required fields are present (x), optional fields are present (o), or if a field is missing (-).
6. If any entry has missing fields, click on it to go directly to the entry in the entry editor.

## Checking a .bib File for Consistency

Let’s say we have a .bib file like this:

```bibtex
@Article{Corti_2009,
author = {Corti, Roberto and Flammer, Andreas J. and Hollenberg, Norman K. and Lüscher, Thomas F.},
title = {Cocoa and Cardiovascular Health},
journaltitle = {Circulation},
issn = {1475-2662},
volume = {119}
}

@Article{Cooper_2007,
author = {Cooper, Karen A. and Donovan, Jennifer L. and Waterhouse, Andrew L. and Williamson, Gary},
title = {Cocoa and health: a decade of research},
issn = {1743-7075},
volume = {99}
}
```

Here, the second entry is missing the journal field, which is required for an article. Running the Check Consistency tool will highlight this issue as shown:

![Consistency check results](<../.gitbook/assets/consistencycheck_results.png>)

## Results Window Explained

![Check consistency dialog](<../.gitbook/assets/checkconsistency.png>)

The result window is designed to present the consistency check results in an easily digestible format:

- **EntryType Headings**: The first column lists the name of the selected entry type.
- **Choose Entry type**: Entry types (such as article, book, in-proceedings, etc.) will be listed in a dropdown menu.
- **Column 2**: Citation key of the entry.
- **Other columns**: Represent the fields and their status (`x`, `o`, `?`, or `-`).
- **Navigation**: Clicking on a line in the table will take you directly to the corresponding entry in the editor, making it easy to address inconsistencies.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indent does not match content.

Maybe, you can describe the columns as bullet list - and the other points as another list?

Currently, first bullet point: heading. second bullet point: something else; sub bullets of second bullet point: headings.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, but should this also be done for the blog post?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be nice for the blog post, too.


## Symbols in the Results

The following symbols will be used to indicate the presence or absence of fields:

- `x`: Required field is present.
- `o`: Optional field is present.
- `?`: Unknown field is present.
- `-`: Field is absent.

This simple system helps you quickly identify entries that need attention.
Loading