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 support of BibLaTeX extended name format #4558

Open
1 task
douglasrizzo opened this issue Dec 28, 2018 · 19 comments
Open
1 task

Add support of BibLaTeX extended name format #4558

douglasrizzo opened this issue Dec 28, 2018 · 19 comments

Comments

@douglasrizzo
Copy link

douglasrizzo commented Dec 28, 2018

JabRef version 4.3.1

Steps to reproduce the behavior:

  1. Have an entry in the database in which the first author name is written using the BibTeX extended name format, for example:
@InProceedings{Hasselt2016,
  author     = {family=Hasselt, given=Hado P., prefix=van useprefix=false and Guez, Arthur and Hessel, Matteo and Mnih, Volodymyr and Silver, David},
  title      = {Learning Values across Many Orders of Magnitude},
  booktitle  = {Advances in Neural Information Processing Systems},
  date       = {2016},
  pages      = {4287--4295},
  url        = {http://papers.nips.cc/paper/6076-learning-values-across-many-orders-of-magnitude},
  urldate    = {2017-06-07}
}
  1. In the main table, click the header of the column author/editor to sort entries by author/editor name.

Expected behavior: the example entry should be listed under the letter H (for Hasselt) or maybe V (for the van prefix).

Actual behavior: The example entry is listed first in my database, probably using the "f" letter of the "family" word for sorting.

Additional info: The BibTeX extended name format is somewhat described in section 3.8 of the Biber manual.

@Siedlerchr
Copy link
Member

Hi, JabRef and BibTeX don't support semantic annotations of authors, e.g. given or prefix.
JabRef applies a similiar author parsing algorithm as bibtex. So you can just write Hado P van Hasselt and JabRef will figure the name parts automatically.

And also please always test the latest dvelopment version (There's a reason why we put that in the issue description)

http://mirrors.ibiblio.org/CTAN/macros/latex/contrib/biblatex/doc/biblatex.pdf

@tobiasdiez tobiasdiez changed the title Wrong sorting by author/editor when BibTeX extended name format is used Add support of BibLaTeX extended name format Dec 28, 2018
@tobiasdiez
Copy link
Member

@NorwayMaple this might be a good issue for you. In the end it concerns mainly https://github.com/JabRef/jabref/blob/master/src/main/java/org/jabref/model/entry/AuthorListParser.java and does not involve any frontend programming.

@abepolk
Copy link
Contributor

abepolk commented Dec 30, 2018

@tobiasdiez I was thinking of working on the issue I mentioned on Gitter relating to multiple instances of JabRef. See the issue there for details.

@douglasrizzo
Copy link
Author

douglasrizzo commented Dec 30, 2018

@Siedlerchr the problem is not necessarily how JabRef actually parses author names, but that there are some annotations in the "name-level" that are actually useful and can't be directly translated by simply parsing an author's name. In my example, the useprefix annotation alters the behavior of some citation styles. If useprefix=true, the citation style prints "van Hasselt" in citations and references. If its value is false, it prints only "Hasselt".

When working with LaTeX, biblatex allows many of these annotations to be set for an entire document, like so:

\usepackage[useprefix=true]{biblatex}

I've also seen some entries in my bib file keeping "entry-level" configurations in an options field:

@InProceedings{Ree2013,
  author        = {van der Ree, Michiel and Wiering, Marco},
  title         = {Reinforcement learning in the game of Othello: Learning against a fixed opponent and learning from self-play},
  booktitle     = {2013 IEEE Symposium on Adaptive Dynamic Programming and Reinforcement Learning (ADPRL)},
  year          = {2013},
  date          = {2013-04},
  eventtitle    = {2013 IEEE Symposium on Adaptive Dynamic Programming and Reinforcement Learning (ADPRL)},
  note          = {00026},
  publisher     = {IEEE},
  location      = {Singapore, Singapore},
  month         = apr,
  isbn          = {978-1-4673-5925-2},
  pages         = {108--115},
  doi           = {10.1109/adprl.2013.6614996},
  url           = {http://ieeexplore.ieee.org/document/6614996/},
  options       = {useprefix=true}
}

But suppose I have two authors in the same entry, one which would need useprefix=true and the other with useprefix=false in order to have their names printed correctly. JabRef could use the annotations to initially parse a name and strip the annotations afterwards, but these configuration annotations would need to somehow be kept.

Keep in mind that useprefix is not the only annotation that behaves like this. There are others that dictate how each author's initials should be created (by either adding or ignoring dashes, prefixes and suffixes) and so on.

github-actions bot pushed a commit to CaptainDaVinci/jabref that referenced this issue Feb 15, 2020
9e81857 Update marine-ornithology.csl (JabRef#4566)
938537e Update government-and-opposition.csl (JabRef#4564)
50d0635 Update annales-de-demographie-historique.csl (JabRef#4560)
42b54d9 Create marine-ornithology.csl (JabRef#4559)
eff41bb Create dermatology-online.csl (JabRef#4558)
3911696 Update journal-of-forensic-sciences.csl (JabRef#4554)
059ea33 Small capitals and categories (JabRef#4556)
97b8c84 Create CSL Styles: estudios_hispanicos.csl (JabRef#4557)
57e0f9d Update sciences-po-ecole-doctorale-note-french.csl (JabRef#4552)
f481ea3 Create ipb-ppki-3.csl (JabRef#4550)
899d302 Update journal-of-neolithic-archaeology.csl (JabRef#4553)
e106215 Create annales-de-demographie-historique.csl (JabRef#4512)
4dd974e Create lauterbornia.csl (JabRef#4525)
e5277ae Update sciences-po-ecole-doctorale-note-french.csl (JabRef#4551)
f9cfe40 Add new IOP dependents (JabRef#4549)
daff985 Create brazilian-journal-of-veterinary-research-and-animal-science.csl (JabRef#4544)
10c6fa8 Update ens-de-lyon-centre-d-ingenierie-documentaire.csl (JabRef#4545)

git-subtree-dir: src/main/resources/csl-styles
git-subtree-split: 9e81857
github-actions bot pushed a commit that referenced this issue Feb 15, 2020
9e81857 Update marine-ornithology.csl (#4566)
938537e Update government-and-opposition.csl (#4564)
50d0635 Update annales-de-demographie-historique.csl (#4560)
42b54d9 Create marine-ornithology.csl (#4559)
eff41bb Create dermatology-online.csl (#4558)
3911696 Update journal-of-forensic-sciences.csl (#4554)
059ea33 Small capitals and categories (#4556)
97b8c84 Create CSL Styles: estudios_hispanicos.csl (#4557)
57e0f9d Update sciences-po-ecole-doctorale-note-french.csl (#4552)
f481ea3 Create ipb-ppki-3.csl (#4550)
899d302 Update journal-of-neolithic-archaeology.csl (#4553)
e106215 Create annales-de-demographie-historique.csl (#4512)
4dd974e Create lauterbornia.csl (#4525)
e5277ae Update sciences-po-ecole-doctorale-note-french.csl (#4551)
f9cfe40 Add new IOP dependents (#4549)
daff985 Create brazilian-journal-of-veterinary-research-and-animal-science.csl (#4544)
10c6fa8 Update ens-de-lyon-centre-d-ingenierie-documentaire.csl (#4545)

git-subtree-dir: src/main/resources/csl-styles
git-subtree-split: 9e81857
github-actions bot pushed a commit to abepolk/jabref that referenced this issue Feb 15, 2020
9e81857 Update marine-ornithology.csl (JabRef#4566)
938537e Update government-and-opposition.csl (JabRef#4564)
50d0635 Update annales-de-demographie-historique.csl (JabRef#4560)
42b54d9 Create marine-ornithology.csl (JabRef#4559)
eff41bb Create dermatology-online.csl (JabRef#4558)
3911696 Update journal-of-forensic-sciences.csl (JabRef#4554)
059ea33 Small capitals and categories (JabRef#4556)
97b8c84 Create CSL Styles: estudios_hispanicos.csl (JabRef#4557)
57e0f9d Update sciences-po-ecole-doctorale-note-french.csl (JabRef#4552)
f481ea3 Create ipb-ppki-3.csl (JabRef#4550)
899d302 Update journal-of-neolithic-archaeology.csl (JabRef#4553)
e106215 Create annales-de-demographie-historique.csl (JabRef#4512)
4dd974e Create lauterbornia.csl (JabRef#4525)
e5277ae Update sciences-po-ecole-doctorale-note-french.csl (JabRef#4551)
f9cfe40 Add new IOP dependents (JabRef#4549)
daff985 Create brazilian-journal-of-veterinary-research-and-animal-science.csl (JabRef#4544)
10c6fa8 Update ens-de-lyon-centre-d-ingenierie-documentaire.csl (JabRef#4545)
c531528 create mcgill9-en.csl, Canadian McGill legal style (JabRef#4532)
e2416fa Update clinical-and-experimental-optometry.csl (JabRef#4538)

git-subtree-dir: src/main/resources/csl-styles
git-subtree-split: 9e81857
github-actions bot pushed a commit to NikodemKch/jabref-1 that referenced this issue Feb 15, 2020
9e81857 Update marine-ornithology.csl (JabRef#4566)
938537e Update government-and-opposition.csl (JabRef#4564)
50d0635 Update annales-de-demographie-historique.csl (JabRef#4560)
42b54d9 Create marine-ornithology.csl (JabRef#4559)
eff41bb Create dermatology-online.csl (JabRef#4558)
3911696 Update journal-of-forensic-sciences.csl (JabRef#4554)

git-subtree-dir: src/main/resources/csl-styles
git-subtree-split: 9e81857
github-actions bot pushed a commit to calixtus/jabref that referenced this issue Feb 17, 2020
aa52aaa Encrypt Travis CI notification email addresses (JabRef#4570)
d8f2843 Update ayer.csl (JabRef#4569)
448e67e Create ayer.csl (JabRef#4565)
bf1ddae Update springer-basic-author-date.csl (JabRef#4562)
db525ac Update american-journal-of-physical-anthropology.csl (JabRef#4567)
9e81857 Update marine-ornithology.csl (JabRef#4566)
938537e Update government-and-opposition.csl (JabRef#4564)
50d0635 Update annales-de-demographie-historique.csl (JabRef#4560)
42b54d9 Create marine-ornithology.csl (JabRef#4559)
eff41bb Create dermatology-online.csl (JabRef#4558)
3911696 Update journal-of-forensic-sciences.csl (JabRef#4554)
059ea33 Small capitals and categories (JabRef#4556)
97b8c84 Create CSL Styles: estudios_hispanicos.csl (JabRef#4557)
57e0f9d Update sciences-po-ecole-doctorale-note-french.csl (JabRef#4552)
f481ea3 Create ipb-ppki-3.csl (JabRef#4550)
899d302 Update journal-of-neolithic-archaeology.csl (JabRef#4553)
e106215 Create annales-de-demographie-historique.csl (JabRef#4512)
4dd974e Create lauterbornia.csl (JabRef#4525)
e5277ae Update sciences-po-ecole-doctorale-note-french.csl (JabRef#4551)
f9cfe40 Add new IOP dependents (JabRef#4549)
daff985 Create brazilian-journal-of-veterinary-research-and-animal-science.csl (JabRef#4544)
10c6fa8 Update ens-de-lyon-centre-d-ingenierie-documentaire.csl (JabRef#4545)

git-subtree-dir: src/main/resources/csl-styles
git-subtree-split: aa52aaa
github-actions bot pushed a commit to systemoperator/jabref that referenced this issue Feb 26, 2020
f03dece Bump nokogiri from 1.10.7 to 1.10.8 (JabRef#4580)
31bacc1 JCL: Fix formatting & space before locator
adfc9b0 Add The Journal of Comparative Law (JabRef#4576)
599d39c Create uni-freiburg-geschichte.csl (JabRef#4561)
3ad8d40 Add Begell House styles (JabRef#4575)
223527b Create begell-apa.csl (JabRef#4574)
d73b9a9 Update journal-of-neolithic-archaeology.csl (JabRef#4572)
5b2810c Create anatomical-sciences-education.csl (JabRef#4573)
9454897 Update ASA style
b3c6efd Reorder/reindent (JabRef#4571)
aa52aaa Encrypt Travis CI notification email addresses (JabRef#4570)
d8f2843 Update ayer.csl (JabRef#4569)
448e67e Create ayer.csl (JabRef#4565)
bf1ddae Update springer-basic-author-date.csl (JabRef#4562)
db525ac Update american-journal-of-physical-anthropology.csl (JabRef#4567)
9e81857 Update marine-ornithology.csl (JabRef#4566)
938537e Update government-and-opposition.csl (JabRef#4564)
50d0635 Update annales-de-demographie-historique.csl (JabRef#4560)
42b54d9 Create marine-ornithology.csl (JabRef#4559)
eff41bb Create dermatology-online.csl (JabRef#4558)
3911696 Update journal-of-forensic-sciences.csl (JabRef#4554)
059ea33 Small capitals and categories (JabRef#4556)
97b8c84 Create CSL Styles: estudios_hispanicos.csl (JabRef#4557)
57e0f9d Update sciences-po-ecole-doctorale-note-french.csl (JabRef#4552)
f481ea3 Create ipb-ppki-3.csl (JabRef#4550)
899d302 Update journal-of-neolithic-archaeology.csl (JabRef#4553)
e106215 Create annales-de-demographie-historique.csl (JabRef#4512)
4dd974e Create lauterbornia.csl (JabRef#4525)
e5277ae Update sciences-po-ecole-doctorale-note-french.csl (JabRef#4551)
f9cfe40 Add new IOP dependents (JabRef#4549)
daff985 Create brazilian-journal-of-veterinary-research-and-animal-science.csl (JabRef#4544)
10c6fa8 Update ens-de-lyon-centre-d-ingenierie-documentaire.csl (JabRef#4545)

git-subtree-dir: src/main/resources/csl-styles
git-subtree-split: f03dece
@github-actions github-actions bot added the status: stale Issues marked by a bot as "stale". All issues need to be investigated manually. label Dec 31, 2020
@tobiasdiez tobiasdiez removed the status: stale Issues marked by a bot as "stale". All issues need to be investigated manually. label Jan 1, 2021
@github-actions github-actions bot added the status: stale Issues marked by a bot as "stale". All issues need to be investigated manually. label Jun 30, 2021
@k3KAW8Pnf7mkmdSMPHz27 k3KAW8Pnf7mkmdSMPHz27 removed the status: stale Issues marked by a bot as "stale". All issues need to be investigated manually. label Jul 2, 2021
@JabRef JabRef deleted a comment from github-actions bot Jul 2, 2021
@calixtus
Copy link
Member

Whoever does this should be very concise and must provide tests to show that this enhancement is not breaking something else.

@ThiloteE ThiloteE moved this from Free to take to Reserved in Candidates for University Projects Jan 21, 2024
@ThiloteE ThiloteE added the FirstTimeCodeContribution Triggers GitHub Greeter Workflow label Jan 21, 2024
Copy link
Contributor

As a general advice for newcomers: check out Contributing for a start. Also, guidelines for setting up a local workspace is worth having a look at.

Feel free to ask here at GitHub, if you have any issue related questions. If you have questions about how to setup your workspace use JabRef's Gitter chat. Try to open a (draft) pull-request early on, so that people can see you are working on the issue and so that they can see the direction the pull request is heading towards. This way, you will likely receive valuable feedback.

@marcelolaia
Copy link

I want to clarify a potential misunderstanding and express that I am not a developer, and, unfortunately, I am unable to directly contribute to the project.

My previous message may have given the impression that I am a developer looking to contribute code. However, I am a user who noticed a citation formatting issue in the BibTeX entry (Ignacio2019), which I described in my earlier message.

I understand that addressing this issue requires technical expertise, which I do not possess. My intention was solely to bring this matter to the attention of the developers who can make the necessary adjustments to improve citation formatting.

I apologize for any confusion, and I appreciate the work that the developers do to enhance the project. If there's any way I can assist in providing further information or testing, please let me know. Thank you for your understanding.

@ThiloteE
Copy link
Member

Oh, my bad. Then I will unassign you. Sorry for the noise.

@ThiloteE ThiloteE removed the FirstTimeCodeContribution Triggers GitHub Greeter Workflow label Jan 21, 2024
@ThiloteE ThiloteE moved this from Reserved to Free to take in Candidates for University Projects Jan 21, 2024
@koppor
Copy link
Member

koppor commented Jan 22, 2024

Implementing this strongly contributes to #6856.

A new JavaFX component to handle "person names" has to be a) designed and b) implemented.

Ideas:

Type - Value lists:

  • Type: e.g., family name
  • Value: concrete entry

In other words: a key-value input for the content of the fields

The data model of JabRef already supports these name fields (check org.jabref.model.entry.Author). Thus, it is "just" about implementing the UI.

@koppor
Copy link
Member

koppor commented Mar 25, 2024

Issue #8760 also describes this. Can be used as testing input.

@koppor
Copy link
Member

koppor commented Mar 25, 2024

Historical note - the BibTeX name format is described in following article:

@Article{Hufflen:TB27-2-243,
  author =       "Jean-Michel Hufflen",
  title =        "Names in {{\sl BibTeX}} and ml{{\sl BibTeX}}",
  journal =      [j-TUGboat](http://ftp.math.utah.edu/pub/tex/bib/tugboat.html#j-TUGboat),
  volume =       "27",
  number =       "2",
  pages =        "243--253",
  year =         "2006",
  ISSN =         "0896-3207",
  ISSN-L =       "0896-3207",
  bibdate =      "Mon May 25 14:17:16 MDT 2015",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat;
                 https://www.math.utah.edu/pub/tex/bib/tugboat.bib;
                 https://www.tug.org/tug2006/",
  URL =          "https://tug.org/TUGboat/tb27-2/tb87hufflen.pdf",
  acknowledgement = ack-bnb # " and " # ack-nhfb,
  confnote =     "TUG 2006 Proceedings (Marrakesh, Morocco), and regular
                 articles.",
  fjournal =     "TUGboat",
  issue =        "87",
  journal-URL =  "https://tug.org/TUGboat/",
  remark =       "Advanced{\Dash}parsing names in bibliographies in a
                 robust and extensible way.",
}

@u7302654
Copy link

u7302654 commented Oct 9, 2024

Hi I am interested in implementing this, would I be able to be assigned?

@ThiloteE ThiloteE added the FirstTimeCodeContribution Triggers GitHub Greeter Workflow label Oct 9, 2024
@ThiloteE ThiloteE moved this from Free to take to Assigned in Candidates for University Projects Oct 9, 2024
Copy link
Contributor

github-actions bot commented Oct 9, 2024

Welcome to the vibrant world of open-source development with JabRef!

Newcomers, 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.

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! 🚀

@ThiloteE
Copy link
Member

ThiloteE commented Oct 9, 2024

@u7302654 This is not a good first issue. If you have the confidence and skills, go for it. If not, please unassign yourself and choose a "free to take" issue from https://github.com/orgs/JabRef/projects/5.

Image

@u7302654
Copy link

May I be unassigned from this issue please, I had some troubles and no longer have time to fix my code

@koppor
Copy link
Member

koppor commented Nov 17, 2024

/unassign @u7302654

Copy link
Contributor

👋 Hey @u7302654, you've been automatically unassigned from this issue due to inactivity.

Note

If you'd like to be re-assigned, just leave another comment or ask a maintainer to assign you again.
If you're still actively working on the issue, let us know by commenting, and we can pin it to prevent automatic unassignment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: In Progress
Status: Normal priority
Development

Successfully merging a pull request may close this issue.

10 participants