[Tex/LaTex] Multiple bibliography and MLA style

biblatexmla-style

I have to write my BA Thesis in the MLA Style and I tried different stuff such as
Biblatex and mla-paper making weird headings this.

The problem is I need to use two bibliographies, two .bib files. One for primary and the other one for secondary sources. How do I do that?

It also gives me the word "Print" at the end of a reference. I want to get rid of it.

Right now I'm this far (it has only one bibliography so far):

\documentclass[12pt]{scrartcl}
\usepackage{geometry}                
\geometry{a4paper, top=25mm, left=35mm, right=35mm, bottom=25mm}                 
\usepackage{graphicx}
\usepackage{amssymb}
\usepackage{epstopdf}
\usepackage[latin1]{inputenc}
\usepackage[american]{babel}
\usepackage[T1]{fontenc}
\usepackage{enumitem}
\usepackage{stmaryrd}
\usepackage{makeidx}
\makeindex
\usepackage{amsmath}
\numberwithin{equation}{section}
\usepackage{hyperref}
\usepackage{underlin}
\usepackage{qtree}
\usepackage{tipa}
\usepackage{natbib}
\usepackage{subfigure}
\usepackage{ifthen}
\setcitestyle{notesep={  }}
\usepackage{csquotes}
\usepackage[style=mla]{biblatex}

\usepackage{ifpdf}
\usepackage{mla}
\bibliography{prim}

\makeatletter
\renewcommand\@cite[2]{
({ #1\ifthenelse{\boolean{@tempswa}}{ \nolinebreak[3] #2}{}})
}
\makeatother
\usepackage{cite}
\pagestyle{headings}

\DeclareGraphicsRule{.tif}{png}{.png}{`convert #1 `dirname #1`/`basename #1 .tif`.png}

\tableofcontents
\newpage                                       

\begin{document}
\newcommand{\attrib}[1]{\nopagebreak{\raggedleft\footnotesize #1\par}}

\begin{mla}{kim}{foo}{bar}{ha}{\today}{week}
\setcounter{page}{1}
\renewcommand{\baselinestretch}{1.50}\normalsize

\cite[23]{maggie}
\end{mla}

\printbibliography

\end{document}

Best Answer

In the following example I assume that you need two different bibliographycal sections in your documents: Primary Sources, and Secondary Sources; I also assume that you have two databases: bibl1.bib and bibl2.bib.

The idea is to use a keyword filter. In the following example I chose primary, and secondary as the words used to divide bibliographies.

To print the two bibliographies you can use the keyword = option for \printbibliography. For example, saying something like

\printbibliography[keyword=primary,...]
\printbibliography[keyword=secondary,...]

You also need to add a keywords field to each entry in the bib files indicating if each entry will be considered as "primary" or "secondary".

The code:

\begin{filecontents*}{bibl1.bib}
@book{goossens93,
  keywords = {primary},
 author = "Michel Goossens and Frank Mittlebach",
 title = "The {LaTeX} Companion",
 year = "1993",
 publisher = "Addison-Wesley",
 address = "Reading, Massachusetts"
}

@book{knuth84,
   keywords = {primary},
   author = "Donald E. Knuth",
   title= "The {TeX}book",
   publisher = "Addison-Wesley",
   year = 1984
}
\end{filecontents*}

\begin{filecontents*}{bibl2.bib}
@unpublished{patashnik88,
   keywords = {secondary},
   author = "Oren Patashnik",
   title = "Using {BibTeX}",
   note = "Documentation for general BibTeX users",
   month = jan,
   year = 1988
}
\end{filecontents*}

\documentclass{article}
\usepackage[style=mla,guessmedium=false]{biblatex}
\addbibresource{bibl1.bib}
\addbibresource{bibl2.bib}

\begin{document}
\cite{knuth84}, \cite{goossens93}, \cite{patashnik88}

\printbibliography[keyword=primary,heading=subbibliography,%
title={Primary Sources}]
\printbibliography[keyword=secondary,heading=subbibliography,%
title={Secondary Sources}]

\end{document}

enter image description here

I used the guessmedium=false option to avoid biblatex-mla guessing the publication medium, thereby avoiding printing "Print" (or "Web") when the field howpublished is undefined,

Related Question