Question mark or bold citation key instead of citation numberBibliography in TexmakerLaTeX Warning: Citation...
Wanted: 5.25 floppy to usb adapter
How to add multiple differently colored borders around a node?
Why is this code uniquely decodable?
Meaning of すきっとした
Can the Count of Monte Cristo's calculation of poison dosage be explained?
Why does the DC-9-80 have this cusp in its fuselage?
What is the wife of a henpecked husband called?
Why do neural networks need so many training examples to perform?
What's the rationale behind the objections to these measures against human trafficking?
When does coming up with an idea constitute sufficient contribution for authorship?
Find the number of ways to express 1050 as sum of consecutive integers
ip vs ifconfig commands pros and cons
Can chords be played on the flute?
Can I become debt free or should I file for bankruptcy? How do I manage my debt and finances?
What can I substitute for soda pop in a sweet pork recipe?
Why is my solution for the partial pressures of two different gases incorrect?
raspberry pi change directory (cd) command not working with USB drive
Using AWS Fargate as web server
Which aircraft had such a luxurious-looking navigator's station?
Finding the number of integers that are a square and a cube at the same time
Charged enclosed by the sphere
What's a good word to describe a public place that looks like it wouldn't be rough?
How do Japanese speakers determine the implied topic when none has been mentioned?
If all harmonics are generated by plucking, how does a guitar string produce a pure frequency sound?
Question mark or bold citation key instead of citation number
Bibliography in TexmakerLaTeX Warning: Citation `foo' on page N undefined on input line XXBibTex There were undefined referencesBibTex not workingBibTeX does not workLatex references and bibliography not workingcite gives me question marksReferences not showing upHow should I use BibTeX in TeX Live 2013?How to insert citation in Elsevier template Latex?natbib | Question Mark instead of CitationFor missing references, how to get the citation key instead of a question mark?Question mark in output instead of citation numberTitle not showig in bibliography due to modification of .bst filequestion mark instead of citation number when use singlecol-newCiting from an Encyclopedia with sub voceBibTeX doesn't workHow to get a desired order in Bibliography with BibTeXinterrogation point (question mark) instead of citation call-outProblem in rendering bibliography in ConTeXt
I've browsed the forums and found a number of posts that have addressed this issue, but none of the solutions seem to work for me. I have the following script that I just copied from the bibtex home page to get familiar with it. Instead of the citation number I get a question mark. I compile using Latex+Bibtex+Latex+Latex+PDFLatex+ViewPDF just as has been previously suggested and the problem persists.
documentclass[11pt]{article}
usepackage{cite}
begin{document}
title{My Article}
author{Nobody Jr.}
date{Today}
maketitle
Blablabla said Nobody ~cite{Nobody06}.
bibliography{mybib}
bibliographystyle{plain}
end{document}
My bibliography (Bib.bbl)
@misc{ Nobody06,
author = "Nobody Jr",
title = "My Article",
year = "2006" }
Looking at previous posts one thing that is concerning is that my .bbl looks empty as shown below. Further, I don't have a .blg
begin{thebibliography}{}
end{thebibliography}
biblatex bibtex bibliographies citing warnings
add a comment |
I've browsed the forums and found a number of posts that have addressed this issue, but none of the solutions seem to work for me. I have the following script that I just copied from the bibtex home page to get familiar with it. Instead of the citation number I get a question mark. I compile using Latex+Bibtex+Latex+Latex+PDFLatex+ViewPDF just as has been previously suggested and the problem persists.
documentclass[11pt]{article}
usepackage{cite}
begin{document}
title{My Article}
author{Nobody Jr.}
date{Today}
maketitle
Blablabla said Nobody ~cite{Nobody06}.
bibliography{mybib}
bibliographystyle{plain}
end{document}
My bibliography (Bib.bbl)
@misc{ Nobody06,
author = "Nobody Jr",
title = "My Article",
year = "2006" }
Looking at previous posts one thing that is concerning is that my .bbl looks empty as shown below. Further, I don't have a .blg
begin{thebibliography}{}
end{thebibliography}
biblatex bibtex bibliographies citing warnings
17
not addressing the question itself, ..., but if the~
beforecite
is intended to keep the cross-reference from being broken to a new line, the input shown --Nobody ~cite
-- won't do that. the space character preceding the~
will (1) happily allow a line break, and (2) double the width of the space before the xref when it's printed. should beNobody~cite
to have the no-break effect.
– barbara beeton
Jul 19 '12 at 17:57
add a comment |
I've browsed the forums and found a number of posts that have addressed this issue, but none of the solutions seem to work for me. I have the following script that I just copied from the bibtex home page to get familiar with it. Instead of the citation number I get a question mark. I compile using Latex+Bibtex+Latex+Latex+PDFLatex+ViewPDF just as has been previously suggested and the problem persists.
documentclass[11pt]{article}
usepackage{cite}
begin{document}
title{My Article}
author{Nobody Jr.}
date{Today}
maketitle
Blablabla said Nobody ~cite{Nobody06}.
bibliography{mybib}
bibliographystyle{plain}
end{document}
My bibliography (Bib.bbl)
@misc{ Nobody06,
author = "Nobody Jr",
title = "My Article",
year = "2006" }
Looking at previous posts one thing that is concerning is that my .bbl looks empty as shown below. Further, I don't have a .blg
begin{thebibliography}{}
end{thebibliography}
biblatex bibtex bibliographies citing warnings
I've browsed the forums and found a number of posts that have addressed this issue, but none of the solutions seem to work for me. I have the following script that I just copied from the bibtex home page to get familiar with it. Instead of the citation number I get a question mark. I compile using Latex+Bibtex+Latex+Latex+PDFLatex+ViewPDF just as has been previously suggested and the problem persists.
documentclass[11pt]{article}
usepackage{cite}
begin{document}
title{My Article}
author{Nobody Jr.}
date{Today}
maketitle
Blablabla said Nobody ~cite{Nobody06}.
bibliography{mybib}
bibliographystyle{plain}
end{document}
My bibliography (Bib.bbl)
@misc{ Nobody06,
author = "Nobody Jr",
title = "My Article",
year = "2006" }
Looking at previous posts one thing that is concerning is that my .bbl looks empty as shown below. Further, I don't have a .blg
begin{thebibliography}{}
end{thebibliography}
biblatex bibtex bibliographies citing warnings
biblatex bibtex bibliographies citing warnings
edited Apr 13 '18 at 9:44
Joseph Wright♦
204k23560889
204k23560889
asked Jul 19 '12 at 2:33
user16747user16747
840287
840287
17
not addressing the question itself, ..., but if the~
beforecite
is intended to keep the cross-reference from being broken to a new line, the input shown --Nobody ~cite
-- won't do that. the space character preceding the~
will (1) happily allow a line break, and (2) double the width of the space before the xref when it's printed. should beNobody~cite
to have the no-break effect.
– barbara beeton
Jul 19 '12 at 17:57
add a comment |
17
not addressing the question itself, ..., but if the~
beforecite
is intended to keep the cross-reference from being broken to a new line, the input shown --Nobody ~cite
-- won't do that. the space character preceding the~
will (1) happily allow a line break, and (2) double the width of the space before the xref when it's printed. should beNobody~cite
to have the no-break effect.
– barbara beeton
Jul 19 '12 at 17:57
17
17
not addressing the question itself, ..., but if the
~
before cite
is intended to keep the cross-reference from being broken to a new line, the input shown -- Nobody ~cite
-- won't do that. the space character preceding the ~
will (1) happily allow a line break, and (2) double the width of the space before the xref when it's printed. should be Nobody~cite
to have the no-break effect.– barbara beeton
Jul 19 '12 at 17:57
not addressing the question itself, ..., but if the
~
before cite
is intended to keep the cross-reference from being broken to a new line, the input shown -- Nobody ~cite
-- won't do that. the space character preceding the ~
will (1) happily allow a line break, and (2) double the width of the space before the xref when it's printed. should be Nobody~cite
to have the no-break effect.– barbara beeton
Jul 19 '12 at 17:57
add a comment |
2 Answers
2
active
oldest
votes
Since this question comes up so often, I thought I'd try to supplement ArTourter's correct answer with a more general comment.
What does a question mark mean
It means that somewhere along the line the combination of LaTeX and BibTeX has failed to find and format the citation data you need for the citation: LaTeX can see you want to cite something, but doesn't know how to do so.
Missing citations show up differently in biblatex
If you are using biblatex
you will not see a question mark, but instead you will see your citation key in bold. For example, if you have an item in your .bib
file with the key Jones1999
you will see Jones1999 in your PDF.
How does this all work
To work out what's happening, you need to understand how the process is (supposed to) work. Imagine LaTeX and BibTeX as two separate people. LaTeX is a typesetter. BibTeX is an archivist. Roughly the process is supposed to run as follows:
LaTeX (the typesetter) reads the manuscript through and gives three pieces of information to BibTeX (the archivist): a list of the references that need to be cited, extracted from the
cite
commands; a note of a file where those references can be found, extracted from thebibliography
command; a note of the sort of formatting required, extracted from thebibliographystyle
command.BibTeX then goes off, looks up the data in the file it has been told to read, consults a file that tells it how to format the data, and generates a new file containing that data in a form that has been organised so that LaTeX can use it (the
.bbl
file).LaTeX then has to take that data and typeset the document - and may indeed need more than one 'run' to do so properly (because there may be internal relationships within the data, or with the rest of the manuscript, which BibTeX neither knows or cares about, but which matter for typesetting.
Your question-mark tells you that something has gone wrong with this process.
More biblatex
and biber
notes:
If you are using
biblatex
the style information is located in the options passed to the to thebiblatex
package, and the raw data is in theaddbibresource
command.If you are using
biblatex
, the stage described as BiBTeX in this answer are generally replaced with a different, and more cunning, archivist, Biber.
What to do
The first thing to do is to make sure that you have actually gone through the whole process at least once: that is why, to deal with any new citation, you will always need at least a LaTeX run (to prepare the information that needs to be handed to BibTeX), one BibTeX run, and one or more subsequent LaTeX runs. So first, make sure you have done that. Please notice, that latex
and bibtex
/biber
need to be run on your main file (without the file ending). In other words, the basename of your main file.
latex MainFile
bibtex MainFile
latex MainFile
latex MainFile
If you still have problems, then something has gone wrong somewhere. And it's nearly always something about the flow of information.
Your first port of call is the BibTeX log (.blg
) file. That will usually give you the information you need to diagnose the problem. So open that file (which will be called blah.blg
where 'blah' is the name of your source file).
In a roughly logical order:
BibTeX did not find the style file. That's the file that tells it how to format references. In this case you will have an error, and BibTeX will complain
I couldn't open the style file badstyle.bst
. If you are trying to use a standard style, that's almost certainly because you have not spelled the style correctly in yourbibliographystyle
command - so go and check that. If you are trying to use a non-standard style, it's probably because you've put it somewhere TeX can't find it. (For testing purposes, I find, it's wise to remember that it will always be found if it's in the same directory as your source file; but if you are installing using the facilities of your TeX system -- as an inexperienced person should be - you are unlikely to get that problem.)BibTeX did not find the database file. That's the
.bib
file containing the data. In that case the log file will sayI couldn't open database file badfile.bib
, and will then warn you that it didn't find database files. The cure is the same: go back and check you have spelled the filename correctly, and that it is somewhere TeX can find it (if in doubt, put it in the folder with your source file).BibTeX found the file, but it doesn't contain citation data for the thing you are trying cite. Now you will just get, in the log-file:
Warning--I didn't find a database entry for "yourcitation"
. That's what happened to you. You might think that you should have got a type 2 error: but you didn't because as it happens there is a file calledmybib.bib
hanging around on the system (askpsewhich mybib.bib
will reveal) -- so BibTeX found where it was supposed to look, but couldn't find the data it needed there. But essentially the order of diagnosis is the same: check you have the right file name in yourbibliography
command. If that's all right, then there is something wrong with that file, or with your citation command. The most likely error here is that you've either forgotten to include the data in your.bib
file, or you have more than one.bib
file that you use and you've sent BibTeX to the wrong one, or you've mis-spelled the citation label (e.g. you've donecite{nobdoy06}
forcite{nobody06}
.There's something wrong with the formatting of your entry in the
.bib
file. That's not uncommon: it's easy (for instance) to forget a comma. In that case you should have errors from BibTeX, and in particular something likeI was expecting a ',' or a '}'
and you will be told that it wasskipping whatever remains of this entry
. Whether that actually stops any citation being produced may depend on the error; I think BibTeX usually manages to produce something -- butbiblatex
can get totally stumped. Anyway, check and correct the particular entry.
biblatex
and biber
notes
If you are using biblatex
, then generally you will also be using the Biber program instead of BiBTeX program to process your bibliography, but the same general principles apply. Hence the compilation sequence becomes
latex MainFile
biber MainFile
latex MainFile
Summary
The order of diagnosis is as follows:
Have I run LaTex, BibTeX (or Biber), LaTeX, LaTeX?
Look at the
.blg
file, which will help mightily in answering the following questions.Has BibTeX/Biber found my style file? (Check you have a valid
bibliographystyle
command and that there is a.bst
with the same name where it can be found.)Has Bibtex/Biber found my database? (Check the
bibliography
names it correctly and it is able to be found.)Has it found the right database?
Does the database contain an entry which matches the citation I have actually typed?
Is that entry valid?
Finally: When you have changed something, don't forget that you will need to go through the same LaTeX -- BibTeX (or Biber) -- LaTeX -- LaTeX run all over again to get it straight. (That's not actually quite true: but until you have more of a feel for the process it's a safe assumption to make.)
4
You say it in the first sentence, this question comes very often and now I know where to send people looking for an answer...
– matth
Jul 19 '12 at 9:05
fwiw, i'll scrape the answer to improve the faq answer on the same topic (the current faq answer doesn't even touch on biblatex/biber, since i've never used either...). my reuse doesn't add much to the coverage of your work, but it helps me -- ok?
– wasteofspace
Oct 26 '13 at 18:49
In my case, in most of the times was a missing colon (,), quotation mark ("), or a wrong field.
– srodriguex
Apr 25 '15 at 22:17
Thank you very much for the concise explanation. I have always seen the command with several latex but never understood the reason behind it.
– rkachach
Feb 11 '16 at 21:12
2
Is there a way to automate this? I don't want to have to run latex, then bibtex, then latex twice, everytime I cite something new.
– becko
Oct 31 '17 at 10:10
|
show 3 more comments
The syntax for the bibliography{}
command is bibliography{file1,file2,...}
in your case you seem to be calling a file called mybib
when your bib file is in fact Bib
.
Also note that bibtex file should have the .bib
extension. the .bbl
file will be created by bibtex.
You should therefore rename your bibliography file mybib.bib
and get rid of the extra {}
in the bibliography{mybib}{}
call, and then recompile. This should fix your problem.
2
note: if you don't see a.blg
file, you likely have not run bibtex yet. latex doesn't process the .bib file directly: it needs to be run once (to create its list of requests forbibtex
, then you need to run bibtex to process this list and deliver the requests. Then you can run latex again and it can incorporate these into your output pdf. So assuming a masterfile calledmasterfile.tex
, you need to latex masterfile; bibtex masterfile; latex masterfile Second time, latex will have the files it needs to insert bibtex's output into its own latex output…
– tim
Feb 15 '16 at 23:18
add a comment |
protected by Werner Oct 26 '13 at 18:11
Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
Since this question comes up so often, I thought I'd try to supplement ArTourter's correct answer with a more general comment.
What does a question mark mean
It means that somewhere along the line the combination of LaTeX and BibTeX has failed to find and format the citation data you need for the citation: LaTeX can see you want to cite something, but doesn't know how to do so.
Missing citations show up differently in biblatex
If you are using biblatex
you will not see a question mark, but instead you will see your citation key in bold. For example, if you have an item in your .bib
file with the key Jones1999
you will see Jones1999 in your PDF.
How does this all work
To work out what's happening, you need to understand how the process is (supposed to) work. Imagine LaTeX and BibTeX as two separate people. LaTeX is a typesetter. BibTeX is an archivist. Roughly the process is supposed to run as follows:
LaTeX (the typesetter) reads the manuscript through and gives three pieces of information to BibTeX (the archivist): a list of the references that need to be cited, extracted from the
cite
commands; a note of a file where those references can be found, extracted from thebibliography
command; a note of the sort of formatting required, extracted from thebibliographystyle
command.BibTeX then goes off, looks up the data in the file it has been told to read, consults a file that tells it how to format the data, and generates a new file containing that data in a form that has been organised so that LaTeX can use it (the
.bbl
file).LaTeX then has to take that data and typeset the document - and may indeed need more than one 'run' to do so properly (because there may be internal relationships within the data, or with the rest of the manuscript, which BibTeX neither knows or cares about, but which matter for typesetting.
Your question-mark tells you that something has gone wrong with this process.
More biblatex
and biber
notes:
If you are using
biblatex
the style information is located in the options passed to the to thebiblatex
package, and the raw data is in theaddbibresource
command.If you are using
biblatex
, the stage described as BiBTeX in this answer are generally replaced with a different, and more cunning, archivist, Biber.
What to do
The first thing to do is to make sure that you have actually gone through the whole process at least once: that is why, to deal with any new citation, you will always need at least a LaTeX run (to prepare the information that needs to be handed to BibTeX), one BibTeX run, and one or more subsequent LaTeX runs. So first, make sure you have done that. Please notice, that latex
and bibtex
/biber
need to be run on your main file (without the file ending). In other words, the basename of your main file.
latex MainFile
bibtex MainFile
latex MainFile
latex MainFile
If you still have problems, then something has gone wrong somewhere. And it's nearly always something about the flow of information.
Your first port of call is the BibTeX log (.blg
) file. That will usually give you the information you need to diagnose the problem. So open that file (which will be called blah.blg
where 'blah' is the name of your source file).
In a roughly logical order:
BibTeX did not find the style file. That's the file that tells it how to format references. In this case you will have an error, and BibTeX will complain
I couldn't open the style file badstyle.bst
. If you are trying to use a standard style, that's almost certainly because you have not spelled the style correctly in yourbibliographystyle
command - so go and check that. If you are trying to use a non-standard style, it's probably because you've put it somewhere TeX can't find it. (For testing purposes, I find, it's wise to remember that it will always be found if it's in the same directory as your source file; but if you are installing using the facilities of your TeX system -- as an inexperienced person should be - you are unlikely to get that problem.)BibTeX did not find the database file. That's the
.bib
file containing the data. In that case the log file will sayI couldn't open database file badfile.bib
, and will then warn you that it didn't find database files. The cure is the same: go back and check you have spelled the filename correctly, and that it is somewhere TeX can find it (if in doubt, put it in the folder with your source file).BibTeX found the file, but it doesn't contain citation data for the thing you are trying cite. Now you will just get, in the log-file:
Warning--I didn't find a database entry for "yourcitation"
. That's what happened to you. You might think that you should have got a type 2 error: but you didn't because as it happens there is a file calledmybib.bib
hanging around on the system (askpsewhich mybib.bib
will reveal) -- so BibTeX found where it was supposed to look, but couldn't find the data it needed there. But essentially the order of diagnosis is the same: check you have the right file name in yourbibliography
command. If that's all right, then there is something wrong with that file, or with your citation command. The most likely error here is that you've either forgotten to include the data in your.bib
file, or you have more than one.bib
file that you use and you've sent BibTeX to the wrong one, or you've mis-spelled the citation label (e.g. you've donecite{nobdoy06}
forcite{nobody06}
.There's something wrong with the formatting of your entry in the
.bib
file. That's not uncommon: it's easy (for instance) to forget a comma. In that case you should have errors from BibTeX, and in particular something likeI was expecting a ',' or a '}'
and you will be told that it wasskipping whatever remains of this entry
. Whether that actually stops any citation being produced may depend on the error; I think BibTeX usually manages to produce something -- butbiblatex
can get totally stumped. Anyway, check and correct the particular entry.
biblatex
and biber
notes
If you are using biblatex
, then generally you will also be using the Biber program instead of BiBTeX program to process your bibliography, but the same general principles apply. Hence the compilation sequence becomes
latex MainFile
biber MainFile
latex MainFile
Summary
The order of diagnosis is as follows:
Have I run LaTex, BibTeX (or Biber), LaTeX, LaTeX?
Look at the
.blg
file, which will help mightily in answering the following questions.Has BibTeX/Biber found my style file? (Check you have a valid
bibliographystyle
command and that there is a.bst
with the same name where it can be found.)Has Bibtex/Biber found my database? (Check the
bibliography
names it correctly and it is able to be found.)Has it found the right database?
Does the database contain an entry which matches the citation I have actually typed?
Is that entry valid?
Finally: When you have changed something, don't forget that you will need to go through the same LaTeX -- BibTeX (or Biber) -- LaTeX -- LaTeX run all over again to get it straight. (That's not actually quite true: but until you have more of a feel for the process it's a safe assumption to make.)
4
You say it in the first sentence, this question comes very often and now I know where to send people looking for an answer...
– matth
Jul 19 '12 at 9:05
fwiw, i'll scrape the answer to improve the faq answer on the same topic (the current faq answer doesn't even touch on biblatex/biber, since i've never used either...). my reuse doesn't add much to the coverage of your work, but it helps me -- ok?
– wasteofspace
Oct 26 '13 at 18:49
In my case, in most of the times was a missing colon (,), quotation mark ("), or a wrong field.
– srodriguex
Apr 25 '15 at 22:17
Thank you very much for the concise explanation. I have always seen the command with several latex but never understood the reason behind it.
– rkachach
Feb 11 '16 at 21:12
2
Is there a way to automate this? I don't want to have to run latex, then bibtex, then latex twice, everytime I cite something new.
– becko
Oct 31 '17 at 10:10
|
show 3 more comments
Since this question comes up so often, I thought I'd try to supplement ArTourter's correct answer with a more general comment.
What does a question mark mean
It means that somewhere along the line the combination of LaTeX and BibTeX has failed to find and format the citation data you need for the citation: LaTeX can see you want to cite something, but doesn't know how to do so.
Missing citations show up differently in biblatex
If you are using biblatex
you will not see a question mark, but instead you will see your citation key in bold. For example, if you have an item in your .bib
file with the key Jones1999
you will see Jones1999 in your PDF.
How does this all work
To work out what's happening, you need to understand how the process is (supposed to) work. Imagine LaTeX and BibTeX as two separate people. LaTeX is a typesetter. BibTeX is an archivist. Roughly the process is supposed to run as follows:
LaTeX (the typesetter) reads the manuscript through and gives three pieces of information to BibTeX (the archivist): a list of the references that need to be cited, extracted from the
cite
commands; a note of a file where those references can be found, extracted from thebibliography
command; a note of the sort of formatting required, extracted from thebibliographystyle
command.BibTeX then goes off, looks up the data in the file it has been told to read, consults a file that tells it how to format the data, and generates a new file containing that data in a form that has been organised so that LaTeX can use it (the
.bbl
file).LaTeX then has to take that data and typeset the document - and may indeed need more than one 'run' to do so properly (because there may be internal relationships within the data, or with the rest of the manuscript, which BibTeX neither knows or cares about, but which matter for typesetting.
Your question-mark tells you that something has gone wrong with this process.
More biblatex
and biber
notes:
If you are using
biblatex
the style information is located in the options passed to the to thebiblatex
package, and the raw data is in theaddbibresource
command.If you are using
biblatex
, the stage described as BiBTeX in this answer are generally replaced with a different, and more cunning, archivist, Biber.
What to do
The first thing to do is to make sure that you have actually gone through the whole process at least once: that is why, to deal with any new citation, you will always need at least a LaTeX run (to prepare the information that needs to be handed to BibTeX), one BibTeX run, and one or more subsequent LaTeX runs. So first, make sure you have done that. Please notice, that latex
and bibtex
/biber
need to be run on your main file (without the file ending). In other words, the basename of your main file.
latex MainFile
bibtex MainFile
latex MainFile
latex MainFile
If you still have problems, then something has gone wrong somewhere. And it's nearly always something about the flow of information.
Your first port of call is the BibTeX log (.blg
) file. That will usually give you the information you need to diagnose the problem. So open that file (which will be called blah.blg
where 'blah' is the name of your source file).
In a roughly logical order:
BibTeX did not find the style file. That's the file that tells it how to format references. In this case you will have an error, and BibTeX will complain
I couldn't open the style file badstyle.bst
. If you are trying to use a standard style, that's almost certainly because you have not spelled the style correctly in yourbibliographystyle
command - so go and check that. If you are trying to use a non-standard style, it's probably because you've put it somewhere TeX can't find it. (For testing purposes, I find, it's wise to remember that it will always be found if it's in the same directory as your source file; but if you are installing using the facilities of your TeX system -- as an inexperienced person should be - you are unlikely to get that problem.)BibTeX did not find the database file. That's the
.bib
file containing the data. In that case the log file will sayI couldn't open database file badfile.bib
, and will then warn you that it didn't find database files. The cure is the same: go back and check you have spelled the filename correctly, and that it is somewhere TeX can find it (if in doubt, put it in the folder with your source file).BibTeX found the file, but it doesn't contain citation data for the thing you are trying cite. Now you will just get, in the log-file:
Warning--I didn't find a database entry for "yourcitation"
. That's what happened to you. You might think that you should have got a type 2 error: but you didn't because as it happens there is a file calledmybib.bib
hanging around on the system (askpsewhich mybib.bib
will reveal) -- so BibTeX found where it was supposed to look, but couldn't find the data it needed there. But essentially the order of diagnosis is the same: check you have the right file name in yourbibliography
command. If that's all right, then there is something wrong with that file, or with your citation command. The most likely error here is that you've either forgotten to include the data in your.bib
file, or you have more than one.bib
file that you use and you've sent BibTeX to the wrong one, or you've mis-spelled the citation label (e.g. you've donecite{nobdoy06}
forcite{nobody06}
.There's something wrong with the formatting of your entry in the
.bib
file. That's not uncommon: it's easy (for instance) to forget a comma. In that case you should have errors from BibTeX, and in particular something likeI was expecting a ',' or a '}'
and you will be told that it wasskipping whatever remains of this entry
. Whether that actually stops any citation being produced may depend on the error; I think BibTeX usually manages to produce something -- butbiblatex
can get totally stumped. Anyway, check and correct the particular entry.
biblatex
and biber
notes
If you are using biblatex
, then generally you will also be using the Biber program instead of BiBTeX program to process your bibliography, but the same general principles apply. Hence the compilation sequence becomes
latex MainFile
biber MainFile
latex MainFile
Summary
The order of diagnosis is as follows:
Have I run LaTex, BibTeX (or Biber), LaTeX, LaTeX?
Look at the
.blg
file, which will help mightily in answering the following questions.Has BibTeX/Biber found my style file? (Check you have a valid
bibliographystyle
command and that there is a.bst
with the same name where it can be found.)Has Bibtex/Biber found my database? (Check the
bibliography
names it correctly and it is able to be found.)Has it found the right database?
Does the database contain an entry which matches the citation I have actually typed?
Is that entry valid?
Finally: When you have changed something, don't forget that you will need to go through the same LaTeX -- BibTeX (or Biber) -- LaTeX -- LaTeX run all over again to get it straight. (That's not actually quite true: but until you have more of a feel for the process it's a safe assumption to make.)
4
You say it in the first sentence, this question comes very often and now I know where to send people looking for an answer...
– matth
Jul 19 '12 at 9:05
fwiw, i'll scrape the answer to improve the faq answer on the same topic (the current faq answer doesn't even touch on biblatex/biber, since i've never used either...). my reuse doesn't add much to the coverage of your work, but it helps me -- ok?
– wasteofspace
Oct 26 '13 at 18:49
In my case, in most of the times was a missing colon (,), quotation mark ("), or a wrong field.
– srodriguex
Apr 25 '15 at 22:17
Thank you very much for the concise explanation. I have always seen the command with several latex but never understood the reason behind it.
– rkachach
Feb 11 '16 at 21:12
2
Is there a way to automate this? I don't want to have to run latex, then bibtex, then latex twice, everytime I cite something new.
– becko
Oct 31 '17 at 10:10
|
show 3 more comments
Since this question comes up so often, I thought I'd try to supplement ArTourter's correct answer with a more general comment.
What does a question mark mean
It means that somewhere along the line the combination of LaTeX and BibTeX has failed to find and format the citation data you need for the citation: LaTeX can see you want to cite something, but doesn't know how to do so.
Missing citations show up differently in biblatex
If you are using biblatex
you will not see a question mark, but instead you will see your citation key in bold. For example, if you have an item in your .bib
file with the key Jones1999
you will see Jones1999 in your PDF.
How does this all work
To work out what's happening, you need to understand how the process is (supposed to) work. Imagine LaTeX and BibTeX as two separate people. LaTeX is a typesetter. BibTeX is an archivist. Roughly the process is supposed to run as follows:
LaTeX (the typesetter) reads the manuscript through and gives three pieces of information to BibTeX (the archivist): a list of the references that need to be cited, extracted from the
cite
commands; a note of a file where those references can be found, extracted from thebibliography
command; a note of the sort of formatting required, extracted from thebibliographystyle
command.BibTeX then goes off, looks up the data in the file it has been told to read, consults a file that tells it how to format the data, and generates a new file containing that data in a form that has been organised so that LaTeX can use it (the
.bbl
file).LaTeX then has to take that data and typeset the document - and may indeed need more than one 'run' to do so properly (because there may be internal relationships within the data, or with the rest of the manuscript, which BibTeX neither knows or cares about, but which matter for typesetting.
Your question-mark tells you that something has gone wrong with this process.
More biblatex
and biber
notes:
If you are using
biblatex
the style information is located in the options passed to the to thebiblatex
package, and the raw data is in theaddbibresource
command.If you are using
biblatex
, the stage described as BiBTeX in this answer are generally replaced with a different, and more cunning, archivist, Biber.
What to do
The first thing to do is to make sure that you have actually gone through the whole process at least once: that is why, to deal with any new citation, you will always need at least a LaTeX run (to prepare the information that needs to be handed to BibTeX), one BibTeX run, and one or more subsequent LaTeX runs. So first, make sure you have done that. Please notice, that latex
and bibtex
/biber
need to be run on your main file (without the file ending). In other words, the basename of your main file.
latex MainFile
bibtex MainFile
latex MainFile
latex MainFile
If you still have problems, then something has gone wrong somewhere. And it's nearly always something about the flow of information.
Your first port of call is the BibTeX log (.blg
) file. That will usually give you the information you need to diagnose the problem. So open that file (which will be called blah.blg
where 'blah' is the name of your source file).
In a roughly logical order:
BibTeX did not find the style file. That's the file that tells it how to format references. In this case you will have an error, and BibTeX will complain
I couldn't open the style file badstyle.bst
. If you are trying to use a standard style, that's almost certainly because you have not spelled the style correctly in yourbibliographystyle
command - so go and check that. If you are trying to use a non-standard style, it's probably because you've put it somewhere TeX can't find it. (For testing purposes, I find, it's wise to remember that it will always be found if it's in the same directory as your source file; but if you are installing using the facilities of your TeX system -- as an inexperienced person should be - you are unlikely to get that problem.)BibTeX did not find the database file. That's the
.bib
file containing the data. In that case the log file will sayI couldn't open database file badfile.bib
, and will then warn you that it didn't find database files. The cure is the same: go back and check you have spelled the filename correctly, and that it is somewhere TeX can find it (if in doubt, put it in the folder with your source file).BibTeX found the file, but it doesn't contain citation data for the thing you are trying cite. Now you will just get, in the log-file:
Warning--I didn't find a database entry for "yourcitation"
. That's what happened to you. You might think that you should have got a type 2 error: but you didn't because as it happens there is a file calledmybib.bib
hanging around on the system (askpsewhich mybib.bib
will reveal) -- so BibTeX found where it was supposed to look, but couldn't find the data it needed there. But essentially the order of diagnosis is the same: check you have the right file name in yourbibliography
command. If that's all right, then there is something wrong with that file, or with your citation command. The most likely error here is that you've either forgotten to include the data in your.bib
file, or you have more than one.bib
file that you use and you've sent BibTeX to the wrong one, or you've mis-spelled the citation label (e.g. you've donecite{nobdoy06}
forcite{nobody06}
.There's something wrong with the formatting of your entry in the
.bib
file. That's not uncommon: it's easy (for instance) to forget a comma. In that case you should have errors from BibTeX, and in particular something likeI was expecting a ',' or a '}'
and you will be told that it wasskipping whatever remains of this entry
. Whether that actually stops any citation being produced may depend on the error; I think BibTeX usually manages to produce something -- butbiblatex
can get totally stumped. Anyway, check and correct the particular entry.
biblatex
and biber
notes
If you are using biblatex
, then generally you will also be using the Biber program instead of BiBTeX program to process your bibliography, but the same general principles apply. Hence the compilation sequence becomes
latex MainFile
biber MainFile
latex MainFile
Summary
The order of diagnosis is as follows:
Have I run LaTex, BibTeX (or Biber), LaTeX, LaTeX?
Look at the
.blg
file, which will help mightily in answering the following questions.Has BibTeX/Biber found my style file? (Check you have a valid
bibliographystyle
command and that there is a.bst
with the same name where it can be found.)Has Bibtex/Biber found my database? (Check the
bibliography
names it correctly and it is able to be found.)Has it found the right database?
Does the database contain an entry which matches the citation I have actually typed?
Is that entry valid?
Finally: When you have changed something, don't forget that you will need to go through the same LaTeX -- BibTeX (or Biber) -- LaTeX -- LaTeX run all over again to get it straight. (That's not actually quite true: but until you have more of a feel for the process it's a safe assumption to make.)
Since this question comes up so often, I thought I'd try to supplement ArTourter's correct answer with a more general comment.
What does a question mark mean
It means that somewhere along the line the combination of LaTeX and BibTeX has failed to find and format the citation data you need for the citation: LaTeX can see you want to cite something, but doesn't know how to do so.
Missing citations show up differently in biblatex
If you are using biblatex
you will not see a question mark, but instead you will see your citation key in bold. For example, if you have an item in your .bib
file with the key Jones1999
you will see Jones1999 in your PDF.
How does this all work
To work out what's happening, you need to understand how the process is (supposed to) work. Imagine LaTeX and BibTeX as two separate people. LaTeX is a typesetter. BibTeX is an archivist. Roughly the process is supposed to run as follows:
LaTeX (the typesetter) reads the manuscript through and gives three pieces of information to BibTeX (the archivist): a list of the references that need to be cited, extracted from the
cite
commands; a note of a file where those references can be found, extracted from thebibliography
command; a note of the sort of formatting required, extracted from thebibliographystyle
command.BibTeX then goes off, looks up the data in the file it has been told to read, consults a file that tells it how to format the data, and generates a new file containing that data in a form that has been organised so that LaTeX can use it (the
.bbl
file).LaTeX then has to take that data and typeset the document - and may indeed need more than one 'run' to do so properly (because there may be internal relationships within the data, or with the rest of the manuscript, which BibTeX neither knows or cares about, but which matter for typesetting.
Your question-mark tells you that something has gone wrong with this process.
More biblatex
and biber
notes:
If you are using
biblatex
the style information is located in the options passed to the to thebiblatex
package, and the raw data is in theaddbibresource
command.If you are using
biblatex
, the stage described as BiBTeX in this answer are generally replaced with a different, and more cunning, archivist, Biber.
What to do
The first thing to do is to make sure that you have actually gone through the whole process at least once: that is why, to deal with any new citation, you will always need at least a LaTeX run (to prepare the information that needs to be handed to BibTeX), one BibTeX run, and one or more subsequent LaTeX runs. So first, make sure you have done that. Please notice, that latex
and bibtex
/biber
need to be run on your main file (without the file ending). In other words, the basename of your main file.
latex MainFile
bibtex MainFile
latex MainFile
latex MainFile
If you still have problems, then something has gone wrong somewhere. And it's nearly always something about the flow of information.
Your first port of call is the BibTeX log (.blg
) file. That will usually give you the information you need to diagnose the problem. So open that file (which will be called blah.blg
where 'blah' is the name of your source file).
In a roughly logical order:
BibTeX did not find the style file. That's the file that tells it how to format references. In this case you will have an error, and BibTeX will complain
I couldn't open the style file badstyle.bst
. If you are trying to use a standard style, that's almost certainly because you have not spelled the style correctly in yourbibliographystyle
command - so go and check that. If you are trying to use a non-standard style, it's probably because you've put it somewhere TeX can't find it. (For testing purposes, I find, it's wise to remember that it will always be found if it's in the same directory as your source file; but if you are installing using the facilities of your TeX system -- as an inexperienced person should be - you are unlikely to get that problem.)BibTeX did not find the database file. That's the
.bib
file containing the data. In that case the log file will sayI couldn't open database file badfile.bib
, and will then warn you that it didn't find database files. The cure is the same: go back and check you have spelled the filename correctly, and that it is somewhere TeX can find it (if in doubt, put it in the folder with your source file).BibTeX found the file, but it doesn't contain citation data for the thing you are trying cite. Now you will just get, in the log-file:
Warning--I didn't find a database entry for "yourcitation"
. That's what happened to you. You might think that you should have got a type 2 error: but you didn't because as it happens there is a file calledmybib.bib
hanging around on the system (askpsewhich mybib.bib
will reveal) -- so BibTeX found where it was supposed to look, but couldn't find the data it needed there. But essentially the order of diagnosis is the same: check you have the right file name in yourbibliography
command. If that's all right, then there is something wrong with that file, or with your citation command. The most likely error here is that you've either forgotten to include the data in your.bib
file, or you have more than one.bib
file that you use and you've sent BibTeX to the wrong one, or you've mis-spelled the citation label (e.g. you've donecite{nobdoy06}
forcite{nobody06}
.There's something wrong with the formatting of your entry in the
.bib
file. That's not uncommon: it's easy (for instance) to forget a comma. In that case you should have errors from BibTeX, and in particular something likeI was expecting a ',' or a '}'
and you will be told that it wasskipping whatever remains of this entry
. Whether that actually stops any citation being produced may depend on the error; I think BibTeX usually manages to produce something -- butbiblatex
can get totally stumped. Anyway, check and correct the particular entry.
biblatex
and biber
notes
If you are using biblatex
, then generally you will also be using the Biber program instead of BiBTeX program to process your bibliography, but the same general principles apply. Hence the compilation sequence becomes
latex MainFile
biber MainFile
latex MainFile
Summary
The order of diagnosis is as follows:
Have I run LaTex, BibTeX (or Biber), LaTeX, LaTeX?
Look at the
.blg
file, which will help mightily in answering the following questions.Has BibTeX/Biber found my style file? (Check you have a valid
bibliographystyle
command and that there is a.bst
with the same name where it can be found.)Has Bibtex/Biber found my database? (Check the
bibliography
names it correctly and it is able to be found.)Has it found the right database?
Does the database contain an entry which matches the citation I have actually typed?
Is that entry valid?
Finally: When you have changed something, don't forget that you will need to go through the same LaTeX -- BibTeX (or Biber) -- LaTeX -- LaTeX run all over again to get it straight. (That's not actually quite true: but until you have more of a feel for the process it's a safe assumption to make.)
edited Jan 12 '16 at 6:55
Torbjørn T.
157k13254443
157k13254443
answered Jul 19 '12 at 8:53
Paul StanleyPaul Stanley
14.9k42848
14.9k42848
4
You say it in the first sentence, this question comes very often and now I know where to send people looking for an answer...
– matth
Jul 19 '12 at 9:05
fwiw, i'll scrape the answer to improve the faq answer on the same topic (the current faq answer doesn't even touch on biblatex/biber, since i've never used either...). my reuse doesn't add much to the coverage of your work, but it helps me -- ok?
– wasteofspace
Oct 26 '13 at 18:49
In my case, in most of the times was a missing colon (,), quotation mark ("), or a wrong field.
– srodriguex
Apr 25 '15 at 22:17
Thank you very much for the concise explanation. I have always seen the command with several latex but never understood the reason behind it.
– rkachach
Feb 11 '16 at 21:12
2
Is there a way to automate this? I don't want to have to run latex, then bibtex, then latex twice, everytime I cite something new.
– becko
Oct 31 '17 at 10:10
|
show 3 more comments
4
You say it in the first sentence, this question comes very often and now I know where to send people looking for an answer...
– matth
Jul 19 '12 at 9:05
fwiw, i'll scrape the answer to improve the faq answer on the same topic (the current faq answer doesn't even touch on biblatex/biber, since i've never used either...). my reuse doesn't add much to the coverage of your work, but it helps me -- ok?
– wasteofspace
Oct 26 '13 at 18:49
In my case, in most of the times was a missing colon (,), quotation mark ("), or a wrong field.
– srodriguex
Apr 25 '15 at 22:17
Thank you very much for the concise explanation. I have always seen the command with several latex but never understood the reason behind it.
– rkachach
Feb 11 '16 at 21:12
2
Is there a way to automate this? I don't want to have to run latex, then bibtex, then latex twice, everytime I cite something new.
– becko
Oct 31 '17 at 10:10
4
4
You say it in the first sentence, this question comes very often and now I know where to send people looking for an answer...
– matth
Jul 19 '12 at 9:05
You say it in the first sentence, this question comes very often and now I know where to send people looking for an answer...
– matth
Jul 19 '12 at 9:05
fwiw, i'll scrape the answer to improve the faq answer on the same topic (the current faq answer doesn't even touch on biblatex/biber, since i've never used either...). my reuse doesn't add much to the coverage of your work, but it helps me -- ok?
– wasteofspace
Oct 26 '13 at 18:49
fwiw, i'll scrape the answer to improve the faq answer on the same topic (the current faq answer doesn't even touch on biblatex/biber, since i've never used either...). my reuse doesn't add much to the coverage of your work, but it helps me -- ok?
– wasteofspace
Oct 26 '13 at 18:49
In my case, in most of the times was a missing colon (,), quotation mark ("), or a wrong field.
– srodriguex
Apr 25 '15 at 22:17
In my case, in most of the times was a missing colon (,), quotation mark ("), or a wrong field.
– srodriguex
Apr 25 '15 at 22:17
Thank you very much for the concise explanation. I have always seen the command with several latex but never understood the reason behind it.
– rkachach
Feb 11 '16 at 21:12
Thank you very much for the concise explanation. I have always seen the command with several latex but never understood the reason behind it.
– rkachach
Feb 11 '16 at 21:12
2
2
Is there a way to automate this? I don't want to have to run latex, then bibtex, then latex twice, everytime I cite something new.
– becko
Oct 31 '17 at 10:10
Is there a way to automate this? I don't want to have to run latex, then bibtex, then latex twice, everytime I cite something new.
– becko
Oct 31 '17 at 10:10
|
show 3 more comments
The syntax for the bibliography{}
command is bibliography{file1,file2,...}
in your case you seem to be calling a file called mybib
when your bib file is in fact Bib
.
Also note that bibtex file should have the .bib
extension. the .bbl
file will be created by bibtex.
You should therefore rename your bibliography file mybib.bib
and get rid of the extra {}
in the bibliography{mybib}{}
call, and then recompile. This should fix your problem.
2
note: if you don't see a.blg
file, you likely have not run bibtex yet. latex doesn't process the .bib file directly: it needs to be run once (to create its list of requests forbibtex
, then you need to run bibtex to process this list and deliver the requests. Then you can run latex again and it can incorporate these into your output pdf. So assuming a masterfile calledmasterfile.tex
, you need to latex masterfile; bibtex masterfile; latex masterfile Second time, latex will have the files it needs to insert bibtex's output into its own latex output…
– tim
Feb 15 '16 at 23:18
add a comment |
The syntax for the bibliography{}
command is bibliography{file1,file2,...}
in your case you seem to be calling a file called mybib
when your bib file is in fact Bib
.
Also note that bibtex file should have the .bib
extension. the .bbl
file will be created by bibtex.
You should therefore rename your bibliography file mybib.bib
and get rid of the extra {}
in the bibliography{mybib}{}
call, and then recompile. This should fix your problem.
2
note: if you don't see a.blg
file, you likely have not run bibtex yet. latex doesn't process the .bib file directly: it needs to be run once (to create its list of requests forbibtex
, then you need to run bibtex to process this list and deliver the requests. Then you can run latex again and it can incorporate these into your output pdf. So assuming a masterfile calledmasterfile.tex
, you need to latex masterfile; bibtex masterfile; latex masterfile Second time, latex will have the files it needs to insert bibtex's output into its own latex output…
– tim
Feb 15 '16 at 23:18
add a comment |
The syntax for the bibliography{}
command is bibliography{file1,file2,...}
in your case you seem to be calling a file called mybib
when your bib file is in fact Bib
.
Also note that bibtex file should have the .bib
extension. the .bbl
file will be created by bibtex.
You should therefore rename your bibliography file mybib.bib
and get rid of the extra {}
in the bibliography{mybib}{}
call, and then recompile. This should fix your problem.
The syntax for the bibliography{}
command is bibliography{file1,file2,...}
in your case you seem to be calling a file called mybib
when your bib file is in fact Bib
.
Also note that bibtex file should have the .bib
extension. the .bbl
file will be created by bibtex.
You should therefore rename your bibliography file mybib.bib
and get rid of the extra {}
in the bibliography{mybib}{}
call, and then recompile. This should fix your problem.
answered Jul 19 '12 at 2:44
ArTourterArTourter
10.7k43551
10.7k43551
2
note: if you don't see a.blg
file, you likely have not run bibtex yet. latex doesn't process the .bib file directly: it needs to be run once (to create its list of requests forbibtex
, then you need to run bibtex to process this list and deliver the requests. Then you can run latex again and it can incorporate these into your output pdf. So assuming a masterfile calledmasterfile.tex
, you need to latex masterfile; bibtex masterfile; latex masterfile Second time, latex will have the files it needs to insert bibtex's output into its own latex output…
– tim
Feb 15 '16 at 23:18
add a comment |
2
note: if you don't see a.blg
file, you likely have not run bibtex yet. latex doesn't process the .bib file directly: it needs to be run once (to create its list of requests forbibtex
, then you need to run bibtex to process this list and deliver the requests. Then you can run latex again and it can incorporate these into your output pdf. So assuming a masterfile calledmasterfile.tex
, you need to latex masterfile; bibtex masterfile; latex masterfile Second time, latex will have the files it needs to insert bibtex's output into its own latex output…
– tim
Feb 15 '16 at 23:18
2
2
note: if you don't see a
.blg
file, you likely have not run bibtex yet. latex doesn't process the .bib file directly: it needs to be run once (to create its list of requests for bibtex
, then you need to run bibtex to process this list and deliver the requests. Then you can run latex again and it can incorporate these into your output pdf. So assuming a masterfile called masterfile.tex
, you need to latex masterfile; bibtex masterfile; latex masterfile Second time, latex will have the files it needs to insert bibtex's output into its own latex output…– tim
Feb 15 '16 at 23:18
note: if you don't see a
.blg
file, you likely have not run bibtex yet. latex doesn't process the .bib file directly: it needs to be run once (to create its list of requests for bibtex
, then you need to run bibtex to process this list and deliver the requests. Then you can run latex again and it can incorporate these into your output pdf. So assuming a masterfile called masterfile.tex
, you need to latex masterfile; bibtex masterfile; latex masterfile Second time, latex will have the files it needs to insert bibtex's output into its own latex output…– tim
Feb 15 '16 at 23:18
add a comment |
protected by Werner Oct 26 '13 at 18:11
Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?
17
not addressing the question itself, ..., but if the
~
beforecite
is intended to keep the cross-reference from being broken to a new line, the input shown --Nobody ~cite
-- won't do that. the space character preceding the~
will (1) happily allow a line break, and (2) double the width of the space before the xref when it's printed. should beNobody~cite
to have the no-break effect.– barbara beeton
Jul 19 '12 at 17:57