1

I have a problem with bibliography. I have two separate bib-files and want to print them in two separate bibliographies. I did this with separate refsegments There are identical references in both bib-files, but they have different cite-keys. My problem: The identical references are treated as if they were in the same bibliography. Thus, they are printed (in apa style) with a letter after the year. This creates a reference in the second bibliography, which is marked with a letter, although there is no other source of the same author in the same year in this segment. In the following, I have an example-code and the result. What I want to have instead is, that these bibliographies are treated separately to get the following result:

(Einstein, 1905a; Einstein, 1905c)

Bibliography
Einstein, A. (1905a). The true ab out tree. Annalen der Physik, 322 (10), 891–921.
Einstein, A. (1905b). The true ab out tree – 2. Annalen der Physik, 323 (11), 891–921.

(Einstein, 1905)

Bibliography Einstein, A. (1905). The true ab out tree. Annalen der Physik, 322 (10), 891–921.

\documentclass{scrreprt}
\usepackage[style=apa]{biblatex}
\begin{filecontents}{\jobname1.bib}
    @article{einstein1,
        author = {Albert Einstein},
        title = {the true about tree},
        journaltitle = {Annalen der Physik},
        year = {1905},
        volume = {322},
        number = {10},
        pages = {891--921}
    }
    @article{einstein2,
        author = {Albert Einstein},
        title = {the true about tree -- 2},
        journaltitle = {Annalen der Physik},
        year = {1905},
        volume = {323},
        number = {11},
        pages = {891--921}
    }

\end{filecontents}

\begin{filecontents}{\jobname2.bib}
    @article{einstein3,
        author = {Albert Einstein},
        title = {the true about tree},
        journaltitle = {Annalen der Physik},
        year = {1905},
        volume = {322},
        number = {10},
        pages = {891--921}
    }
\end{filecontents}

\addbibresource{\jobname1.bib}
\addbibresource{\jobname2.bib}

\begin{document}

    \refsegment
    \parencites{einstein1}{einstein2}
    \begingroup\let\clearpage\relax
    \printbibliography[segment=1]
    \endgroup
    \endrefsegment
    
    \refsegment
    \parencite{einstein3}
    \begingroup\let\clearpage\relax
    \printbibliography[segment=2]
    \endgroup
    \endrefsegment

\end{document}

enter image description here

3
  • 3
    You need refsection not refsegment if you want to separate them completely Commented Sep 26, 2020 at 12:06
  • 2
    From the manual (page 96): "The difference between a refsection and a refsegment environment is that the former creates labels which are local to the environment whereas the latter provides a target for the segment filter of \printbibliography without affecting the labels. They will be unique across the entire document" (emphasis mine).
    – Marijn
    Commented Sep 26, 2020 at 12:10
  • Thank you very much! What a simple solution. I did not thought about that.
    – user81768
    Commented Sep 26, 2020 at 12:23

1 Answer 1

2

You need refsection not refsegment if you want to separate them completely.

refsection allows you to filter a bibliography by segment. But this means that you still have only one bibliography with suitable labels, and then can tell biblatex to show only a subset of the entries.

refsection on the other side creates two independant bibliographies.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .