jabref icon indicating copy to clipboard operation
jabref copied to clipboard

Support datamodel validations

Open koppor opened this issue 8 months ago β€’ 4 comments

As user, one can run

biber --validate_datamodel xyz.bib

Then, the log is filled with entries such as

WARN - Datamodel: report entry 'Iron2009' (oliver-kopp.bib): Missing mandatory field 'type'

A pattern for this needs to be added to

org.jabref.logic.biblog.BibtexLogParser

One can develop test driven, to first add a test to

org.jabref.logic.biblog.BibtexLogParserTest

Steps

  1. Create a new @ParameterizedTest at BibtexLogParserTest for error strings and expected BibWarning. I assume @MethodSource will be needed. Add the above test string and result
  2. Adapt BibtexLogParser

No need to create a new .blg file for testing; this is too much effort.

koppor avatar Jun 13 '25 09:06 koppor

Hey! @koppor, i would like to work on this issue. can you assign it to me?

shreyakaushal180 avatar Jun 13 '25 11:06 shreyakaushal180

πŸ‘‹ Hey @shreyakaushal180, looks like you’re eager to work on this issueβ€”great! πŸŽ‰ It also looks like you skipped reading our CONTRIBUTING.md, which explains exactly how to participate. No worries, it happens to the best of us. Give it a read, and you’ll discover the ancient wisdom of assigning issues to yourself. Trust me, it’s worth it. πŸš€

github-actions[bot] avatar Jun 13 '25 11:06 github-actions[bot]

/assign-me

shreyakaushal180 avatar Jun 13 '25 11:06 shreyakaushal180

πŸ‘‹ Hey @shreyakaushal180, thank you for your interest in this issue! πŸŽ‰

We're excited to have you on board. Start by exploring our Contributing guidelines, and don't forget to check out our workspace setup guidelines to get started smoothly.

For questions on JabRef functionality and the code base, you can consult the JabRef Guru or ask on our Gitter chat.

In case you encounter failing tests during development, please check our developer FAQs!

Having any questions or issues? Feel free to ask here on GitHub. Need help setting up your local workspace? Join the conversation on JabRef's Gitter chat. And don't hesitate to open a (draft) pull request early on to show the direction it is heading towards. This way, you will receive valuable feedback.

Happy coding! πŸš€

github-actions[bot] avatar Jun 13 '25 11:06 github-actions[bot]

assign me

kirthi76 avatar Jun 23 '25 12:06 kirthi76

⚠️ Issue Already Assigned

Hi @kirthi76, this issue is currently assigned to @shreyakaushal180.

[!NOTE] If no progress is made within 14 days, the issue will be automatically unassigned.

Options for contributors
  • Wait for availability: The issue may become available if auto-unassigned
  • Collaborate: You can ask the assignee if they want help
  • Maintainer assistance: A maintainer can add you as co-assignee if appropriate

github-actions[bot] avatar Jun 23 '25 12:06 github-actions[bot]

⏰ Assignment Reminder

Hi @shreyakaushal180, this is a friendly reminder about your assignment to this issue.

[!WARNING] This issue will be automatically unassigned in 11 days if there's no activity.

Remember that you can ask the JabRef Guru or DeepWiki about anything regarding JabRef. Additionally, our contributing guide has hints on creating a pull request and a link to our Gitter chat.

How to keep your assignment


If you are working on it, you can prevent automatic unassignment by:

  • Submitting a draft pull request with your progress within 11 days
  • Asking for the πŸ“Œ Pinned label if you need more time

We appreciate your contribution and are here to help if needed!

github-actions[bot] avatar Jul 03 '25 12:07 github-actions[bot]

πŸ“‹ Assignment Update

Hi @shreyakaushal180, due to inactivity, you have been unassigned from this issue.

Next steps


If you still want to work on this:

  • Submit a pull request showing your current state. You will be automatically assigned again.
  • Ask a maintainer to assign you again.

github-actions[bot] avatar Jul 28 '25 23:07 github-actions[bot]

/assign-me

timurturbil avatar Jul 29 '25 19:07 timurturbil

πŸ‘‹ Hey @timurturbil, thank you for your interest in this issue! πŸŽ‰

We're excited to have you on board. Start by exploring our Contributing guidelines, and don't forget to check out our workspace setup guidelines to get started smoothly.

For questions on JabRef functionality and the code base, you can consult the JabRef Guru or ask on our Gitter chat.

In case you encounter failing tests during development, please check our developer FAQs!

Having any questions or issues? Feel free to ask here on GitHub. Need help setting up your local workspace? Join the conversation on JabRef's Gitter chat. And don't hesitate to open a (draft) pull request early on to show the direction it is heading towards. This way, you will receive valuable feedback.

Happy coding! πŸš€

github-actions[bot] avatar Jul 29 '25 19:07 github-actions[bot]

@koppor Hi, I want to be sure if I am understand the problem right. In JabRef when we are editing or creating new entry, we can just save it without insert any values for even required fields. So what I understand is you want to show the warnings of biber to the user for any missing fields if they are empty. Is that right?

timurturbil avatar Aug 12 '25 13:08 timurturbil

@timurturbil Did you try out biber --validate_datamodel with https://github.com/JabRef/jabref-demonstration-libraries/blob/main/chocolate/Chocolate.bib? What is the output? Is it only the missing fields? Did you check the biber documentation for data model?

In other words: No, you did not understand right. Biber outputs other validations. These need to be presented.

koppor avatar Aug 12 '25 19:08 koppor

@koppor Right, I see there are other validations. I have created a pr. Please check it once you are available.

timurturbil avatar Aug 14 '25 10:08 timurturbil

@koppor Right, I see there are other validations. I have created a pr. Please check it once you are available.

No need to comment that a PR was created. Writing this takes time, reading it takes time. Less time to give feedback on PRs.

Nevertheless thank you for the PR. We will review it as soon as we find time.

koppor avatar Aug 14 '25 10:08 koppor

We think that this issue was fixed. Please head to https://builds.jabref.org/main to download a development build and try it out.

For any feedback, add a comment to the pull request at https://github.com/JabRef/jabref/pull/13693.

github-actions[bot] avatar Aug 28 '25 12:08 github-actions[bot]