My inclination would not be to keep everything in the .bib file because of the specific formatting you seem to want. If the fields your example shows will be used of every single entry, without question, then something as simple as (assuming the use of biblatex)
\newcommand{\annote}[5]{%
\begingroup
\parindent 0pt%
\hangafter 1%
\hangindent 1em%
\cite{#1}\space \fullcite{#1}\par
\begin{quote}
\textbf{Aim:}\quad #2\par%
\textbf{Style/Type:}\quad #3\par%
\textbf{Cross References:}\quad #4\par%
\textbf{Summary:}\quad #5\par%
\end{quote}%
\endgroup
}
would work. Then all you use is something like:
\annote{marolt2002neural}
{To demonstrate the merit of inverse reinforcement learning techniques in deriving a probability distribution over a space of reward functions, given expert training data.}
{Conference Paper/Theoretical.}
{Algorithms and techiniques from this paper are employed by \cite{bock2012polyphonic}}
{In this paper \ldots}
But maybe the fields aren't static, and maybe this way is hard to remember which argument is for 'style' and which is the 'cross-reference' one. And maybe not all fields will be used for every entry. If you need flexibility, a "key-value" approach is better. Here you have lots of options. Here's one way:
\usepackage{xparse}
\ExplSyntaxOn
% set up the keys 'aim', 'style', 'xref', and 'summary'
\keys_define:nn { annotation }
{
% setup
aim .tl_set:N = \l_ann_aim_tl,
style .tl_set:N = \l_ann_style_tl,
xref .tl_set:N = \l_ann_xref_tl,
summary .tl_set:N = \l_ann_summary_tl,
% default values:
aim .initial:n = TODO!,
style .initial:n = TODO!,
xref .initial:n = [none],
summary .initial:n = TODO!,
}
% set the keys
\NewDocumentCommand{\annoteinfo}{ m }
{
\keys_set:nn { annotation } { #1 }
}
% print and format the keys
\NewDocumentCommand{\printentry} {mm}
{
\begingroup
% how things should look:
\parindent0pt \hangafter 1 \hangindent 1em%
% provide the citation:
\cite{#2}\space \fullcite{#2}\par
% the keys will be used inside the quote environment
\begin{quote}
\annoteinfo{#1}
\textbf{Aim:}\quad \l_ann_aim_tl\par
\textbf{Style:}\quad \l_ann_style_tl\par
\textbf{Cross-references:}\quad \l_ann_xref_tl\par
\textbf{Summary:}\quad \l_ann_summary_tl\par
\end{quote}
\endgroup
}
\ExplSyntaxOff
And so, putting it all together:
\documentclass{article}
% the following is used to make the example self-contained:
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@inproceedings{marolt2002neural,
title={Neural networks for note onset detection in piano music},
author={Marolt, Matija and Kavcic, Alenka and Privosnik, Marko},
booktitle={Proceedings of the International Computer Music Conference},
year={2002}
}
@inproceedings{marolt2000transcription,
title={Transcription of polyphonic piano music with neural networks},
author={Marolt, Matija},
booktitle={Electrotechnical Conference, 2000. MELECON 2000. 10th Mediterranean},
volume={2},
pages={512--515},
year={2000},
organization={IEEE}
}
@inproceedings{bock2012polyphonic,
title={Polyphonic piano note transcription with recurrent neural networks},
author={Bock, S and Schedl, Markus},
booktitle={Acoustics, Speech and Signal Processing (ICASSP), 2012 IEEE International Conference on},
pages={121--124},
year={2012},
organization={IEEE}
}
@inproceedings{costantini2010svm,
title={SVM based transcription system with short-term memory oriented to polyphonic piano music},
author={Costantini, Giovanni and Todisco, Massimiliano and Perfetti, Renzo and Basili, Roberto and Casali, Daniele},
booktitle={MELECON 2010-2010 15th IEEE Mediterranean Electrotechnical Conference},
pages={196--201},
year={2010},
organization={IEEE}
}
@inproceedings{nava2004convolutional,
title={A convolutional-kernel based approach for note onset detection in piano-solo audio signals},
author={Nava, Gabriel Pablo and Tanaka, Hidehiko and Ide, Ichiro},
booktitle={Int. Symp. Musical Acoust. ISMA},
pages={289--292},
year={2004}
}
@inproceedings{dixon2001learning,
title={Learning to detect onsets of acoustic piano tones},
author={Dixon, Simon},
booktitle={Proceedings of the Workshop on Current Directions in Computer Music Research},
pages={147--151},
year={2001}
}
@article{poliner2006discriminative,
title={A discriminative model for polyphonic piano transcription},
author={Poliner, Graham E and Ellis, Daniel PW},
journal={EURASIP Journal on Advances in Signal Processing},
volume={2007},
year={2006},
publisher={Hindawi Publishing Corporation}
}
\end{filecontents*}
\usepackage[T1]{fontenc}
\usepackage[backend=biber, style=alphabetic]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{xparse}
% If the fields are all required and are always the same
\newcommand{\annote}[5]{%
\begingroup
\parindent 0pt%
\hangafter 1%
\hangindent 1em%
\cite{#1}\space \fullcite{#1}\par
\begin{quote}
\textbf{Aim:}\quad #2\par%
\textbf{Style/Type:}\quad #3\par%
\textbf{Cross References:}\quad #4\par%
\textbf{Summary:}\quad #5\par%
\end{quote}%
\endgroup
}
% If the fields are not all required...
\ExplSyntaxOn
\keys_define:nn { annotation }
{
% setup
aim .tl_set:N = \l_ann_aim_tl,
style .tl_set:N = \l_ann_style_tl,
xref .tl_set:N = \l_ann_xref_tl,
summary .tl_set:N = \l_ann_summary_tl,
% defaults (change as needed)
aim .initial:n = TODO!,
style .initial:n = TODO!,
xref .initial:n = [none],
summary .initial:n = TODO!,
}
\NewDocumentCommand{\annoteinfo}{ m }
{
\keys_set:nn { annotation } { #1 }
}
\NewDocumentCommand{\printentry} {mm}
{
\begingroup
% the next line does most of the visual formatting...
\parindent0pt \hangafter 1 \hangindent 1em%
\cite{#2}\space \fullcite{#2}\par
% annotations are in the following environment...
\begin{quote}
\annoteinfo{#1}
\textbf{Aim:}\quad \l_ann_aim_tl \par
\textbf{Style:}\quad \l_ann_style_tl \par
\textbf{Cross-references:}\quad \l_ann_xref_tl \par
\textbf{Summary:}\quad \l_ann_summary_tl \par
\end{quote}
\endgroup
}
\ExplSyntaxOff
\begin{document}% ---------------------------------------------------
% These two entries are done the 'easy' way
\annote{marolt2002neural}
{To demonstrate the merit of inverse
reinforcement learning techniques in deriving a probability
distribution over a space of reward functions, given expert training
data.}
{Conference Paper/Theoretical.}
{Algorithms and techiniques from
this paper are employed by \cite{bock2012polyphonic}}
{In this paper \ldots}
\annote{marolt2000transcription}
{Aim}
{Style}
{Cross-reference}
{Summary}
% these are the key-value entries
\printentry{
aim={To demonstrate things},
summary={This is the abstract},
}
{bock2012polyphonic}
\printentry{
style={Conference proceedings}
}
{costantini2010svm}
\printentry{
style={Info on style},
summary={Summary information goes here},
}
{nava2004convolutional}
\printentry{
aim={1},
style={2},
xref={3},
summary={4}}
{dixon2001learning}
\printentry{
aim={5},
style={6},
%xref={7},
summary={8}}
{poliner2006discriminative}
% this is how a bibliography is printed with biblatex
%\printbibliography
\end{document}
Note: This answer relies on biblatex (and biber, though it is not needed in this case) because it conveniently includes a \fullcite command.
annotein each.bibentry? – jon Apr 15 '14 at 04:15.bibentry can have a field likeannote = {This is the abstract of the article, which proves a bunch of stuff...}, which can be printed as part of the entry if you use the right.bstor biblatex style. If not, then you need to use something like this in your.texfile:\cite{<bibkey>} \par Various text typed directly here... \par \cite{<next bibkey>} \par More text here.... They are two different methods, each with their pros and cons. – jon Apr 15 '14 at 04:20[?]probably comes from not running the normal sequence:latex file,bibtex file,latex file,latex file. – jon Apr 15 '14 at 05:01