Bib(la)tex help












1















I have two questions regarding biblatex.





  1. I have bibliography entries from MathSciNet, and this has several fields. For instance one such looks like:



    @article {Gratzer2013,
    AUTHOR = {Gr"{a}tzer, G.},
    TITLE = {The order of principal congruences of a bounded lattice},
    JOURNAL = {Algebra Universalis},
    FJOURNAL = {Algebra Universalis},
    VOLUME = {70},
    YEAR = {2013},
    NUMBER = {1},
    PAGES = {95--105},
    ISSN = {0002-5240},
    MRCLASS = {06B10 (06A06)},
    MRNUMBER = {3073941},
    MRREVIEWER = {S. Parameshwara Bhatta},
    DOI = {10.1007/s00012-013-0242-3},
    URL = {https://doi.org/10.1007/s00012-013-0242-3},
    }


    While using the following command:



    {    
    %%%% biblatex usage

    usepackage[style=numeric, backend=biber, backref, bibencoding=utf8, sorting=nyt]{biblatex}

    addbibresource{ref.bib}

    }


    and then compiling with biber I do not get the data from "MRNUMBER" or "MRCLASS" or "MRREVIEWER".



    My question is: what should I do to get these or any other relevant data for my bibliography. Is there any standard class which does this?



  2. My old .bib files were compiled manually and do not have the information that I have presently using the MathSciNet facility. Is it possible to automatically add these information to hundreds of the bibliography entries over several .bib files?











share|improve this question




















  • 2





    biblatex does not know mrnumber and friends, but you can tell it to recognise those fields, see tex.stackexchange.com/q/306908/35864.

    – moewe
    Mar 4 at 21:33






  • 1





    2. Is not a biblatex question and I encourage you to ask it in a separate question. I suspect this might be possible if you somehow query MathSciNet with your old .bib files and retrieve the relevant information. But there is a risk of false matches and incorrect information there, so I would go for a manual approach when needed so I can double check stuff.

    – moewe
    Mar 4 at 21:35











  • I doubt you really have the { ... } around your usepackage{biblatex} and addbibresource statements in your document, but let me just warn future visitors that that would most likely not work. Loading packages in a group is quite likely to go wrong, because packages normally assume that all definitions they make are global in scope.

    – moewe
    Mar 5 at 7:10











  • In the author field, you can use the ä in Grätzer directly, without using Gr"{a}.

    – Max R
    Mar 5 at 7:15
















1















I have two questions regarding biblatex.





  1. I have bibliography entries from MathSciNet, and this has several fields. For instance one such looks like:



    @article {Gratzer2013,
    AUTHOR = {Gr"{a}tzer, G.},
    TITLE = {The order of principal congruences of a bounded lattice},
    JOURNAL = {Algebra Universalis},
    FJOURNAL = {Algebra Universalis},
    VOLUME = {70},
    YEAR = {2013},
    NUMBER = {1},
    PAGES = {95--105},
    ISSN = {0002-5240},
    MRCLASS = {06B10 (06A06)},
    MRNUMBER = {3073941},
    MRREVIEWER = {S. Parameshwara Bhatta},
    DOI = {10.1007/s00012-013-0242-3},
    URL = {https://doi.org/10.1007/s00012-013-0242-3},
    }


    While using the following command:



    {    
    %%%% biblatex usage

    usepackage[style=numeric, backend=biber, backref, bibencoding=utf8, sorting=nyt]{biblatex}

    addbibresource{ref.bib}

    }


    and then compiling with biber I do not get the data from "MRNUMBER" or "MRCLASS" or "MRREVIEWER".



    My question is: what should I do to get these or any other relevant data for my bibliography. Is there any standard class which does this?



  2. My old .bib files were compiled manually and do not have the information that I have presently using the MathSciNet facility. Is it possible to automatically add these information to hundreds of the bibliography entries over several .bib files?











share|improve this question




















  • 2





    biblatex does not know mrnumber and friends, but you can tell it to recognise those fields, see tex.stackexchange.com/q/306908/35864.

    – moewe
    Mar 4 at 21:33






  • 1





    2. Is not a biblatex question and I encourage you to ask it in a separate question. I suspect this might be possible if you somehow query MathSciNet with your old .bib files and retrieve the relevant information. But there is a risk of false matches and incorrect information there, so I would go for a manual approach when needed so I can double check stuff.

    – moewe
    Mar 4 at 21:35











  • I doubt you really have the { ... } around your usepackage{biblatex} and addbibresource statements in your document, but let me just warn future visitors that that would most likely not work. Loading packages in a group is quite likely to go wrong, because packages normally assume that all definitions they make are global in scope.

    – moewe
    Mar 5 at 7:10











  • In the author field, you can use the ä in Grätzer directly, without using Gr"{a}.

    – Max R
    Mar 5 at 7:15














1












1








1








I have two questions regarding biblatex.





  1. I have bibliography entries from MathSciNet, and this has several fields. For instance one such looks like:



    @article {Gratzer2013,
    AUTHOR = {Gr"{a}tzer, G.},
    TITLE = {The order of principal congruences of a bounded lattice},
    JOURNAL = {Algebra Universalis},
    FJOURNAL = {Algebra Universalis},
    VOLUME = {70},
    YEAR = {2013},
    NUMBER = {1},
    PAGES = {95--105},
    ISSN = {0002-5240},
    MRCLASS = {06B10 (06A06)},
    MRNUMBER = {3073941},
    MRREVIEWER = {S. Parameshwara Bhatta},
    DOI = {10.1007/s00012-013-0242-3},
    URL = {https://doi.org/10.1007/s00012-013-0242-3},
    }


    While using the following command:



    {    
    %%%% biblatex usage

    usepackage[style=numeric, backend=biber, backref, bibencoding=utf8, sorting=nyt]{biblatex}

    addbibresource{ref.bib}

    }


    and then compiling with biber I do not get the data from "MRNUMBER" or "MRCLASS" or "MRREVIEWER".



    My question is: what should I do to get these or any other relevant data for my bibliography. Is there any standard class which does this?



  2. My old .bib files were compiled manually and do not have the information that I have presently using the MathSciNet facility. Is it possible to automatically add these information to hundreds of the bibliography entries over several .bib files?











share|improve this question
















I have two questions regarding biblatex.





  1. I have bibliography entries from MathSciNet, and this has several fields. For instance one such looks like:



    @article {Gratzer2013,
    AUTHOR = {Gr"{a}tzer, G.},
    TITLE = {The order of principal congruences of a bounded lattice},
    JOURNAL = {Algebra Universalis},
    FJOURNAL = {Algebra Universalis},
    VOLUME = {70},
    YEAR = {2013},
    NUMBER = {1},
    PAGES = {95--105},
    ISSN = {0002-5240},
    MRCLASS = {06B10 (06A06)},
    MRNUMBER = {3073941},
    MRREVIEWER = {S. Parameshwara Bhatta},
    DOI = {10.1007/s00012-013-0242-3},
    URL = {https://doi.org/10.1007/s00012-013-0242-3},
    }


    While using the following command:



    {    
    %%%% biblatex usage

    usepackage[style=numeric, backend=biber, backref, bibencoding=utf8, sorting=nyt]{biblatex}

    addbibresource{ref.bib}

    }


    and then compiling with biber I do not get the data from "MRNUMBER" or "MRCLASS" or "MRREVIEWER".



    My question is: what should I do to get these or any other relevant data for my bibliography. Is there any standard class which does this?



  2. My old .bib files were compiled manually and do not have the information that I have presently using the MathSciNet facility. Is it possible to automatically add these information to hundreds of the bibliography entries over several .bib files?








biblatex






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 4 at 21:32









moewe

93.4k10115353




93.4k10115353










asked Mar 4 at 21:29









Partha Pratim GhoshPartha Pratim Ghosh

91




91








  • 2





    biblatex does not know mrnumber and friends, but you can tell it to recognise those fields, see tex.stackexchange.com/q/306908/35864.

    – moewe
    Mar 4 at 21:33






  • 1





    2. Is not a biblatex question and I encourage you to ask it in a separate question. I suspect this might be possible if you somehow query MathSciNet with your old .bib files and retrieve the relevant information. But there is a risk of false matches and incorrect information there, so I would go for a manual approach when needed so I can double check stuff.

    – moewe
    Mar 4 at 21:35











  • I doubt you really have the { ... } around your usepackage{biblatex} and addbibresource statements in your document, but let me just warn future visitors that that would most likely not work. Loading packages in a group is quite likely to go wrong, because packages normally assume that all definitions they make are global in scope.

    – moewe
    Mar 5 at 7:10











  • In the author field, you can use the ä in Grätzer directly, without using Gr"{a}.

    – Max R
    Mar 5 at 7:15














  • 2





    biblatex does not know mrnumber and friends, but you can tell it to recognise those fields, see tex.stackexchange.com/q/306908/35864.

    – moewe
    Mar 4 at 21:33






  • 1





    2. Is not a biblatex question and I encourage you to ask it in a separate question. I suspect this might be possible if you somehow query MathSciNet with your old .bib files and retrieve the relevant information. But there is a risk of false matches and incorrect information there, so I would go for a manual approach when needed so I can double check stuff.

    – moewe
    Mar 4 at 21:35











  • I doubt you really have the { ... } around your usepackage{biblatex} and addbibresource statements in your document, but let me just warn future visitors that that would most likely not work. Loading packages in a group is quite likely to go wrong, because packages normally assume that all definitions they make are global in scope.

    – moewe
    Mar 5 at 7:10











  • In the author field, you can use the ä in Grätzer directly, without using Gr"{a}.

    – Max R
    Mar 5 at 7:15








2




2





biblatex does not know mrnumber and friends, but you can tell it to recognise those fields, see tex.stackexchange.com/q/306908/35864.

– moewe
Mar 4 at 21:33





biblatex does not know mrnumber and friends, but you can tell it to recognise those fields, see tex.stackexchange.com/q/306908/35864.

– moewe
Mar 4 at 21:33




1




1





2. Is not a biblatex question and I encourage you to ask it in a separate question. I suspect this might be possible if you somehow query MathSciNet with your old .bib files and retrieve the relevant information. But there is a risk of false matches and incorrect information there, so I would go for a manual approach when needed so I can double check stuff.

– moewe
Mar 4 at 21:35





2. Is not a biblatex question and I encourage you to ask it in a separate question. I suspect this might be possible if you somehow query MathSciNet with your old .bib files and retrieve the relevant information. But there is a risk of false matches and incorrect information there, so I would go for a manual approach when needed so I can double check stuff.

– moewe
Mar 4 at 21:35













I doubt you really have the { ... } around your usepackage{biblatex} and addbibresource statements in your document, but let me just warn future visitors that that would most likely not work. Loading packages in a group is quite likely to go wrong, because packages normally assume that all definitions they make are global in scope.

– moewe
Mar 5 at 7:10





I doubt you really have the { ... } around your usepackage{biblatex} and addbibresource statements in your document, but let me just warn future visitors that that would most likely not work. Loading packages in a group is quite likely to go wrong, because packages normally assume that all definitions they make are global in scope.

– moewe
Mar 5 at 7:10













In the author field, you can use the ä in Grätzer directly, without using Gr"{a}.

– Max R
Mar 5 at 7:15





In the author field, you can use the ä in Grätzer directly, without using Gr"{a}.

– Max R
Mar 5 at 7:15










1 Answer
1






active

oldest

votes


















2














Switching from amsrefs to biblatex already shows how you can make the mrnumber show in the bibliography, so here we show mrclass and mrreviewer as well.



The idea is the same. First we define a new datamodel file (.dbx) with the new fields and load that with the datamodel option. Then we need formats for those fields and finally we need to print the fields in a bibmacro (mrinfo) that is called in one of the standard macros (doi+eprint+url).



documentclass[british]{article}
usepackage[T1]{fontenc}
usepackage[utf8]{inputenc}
usepackage{babel}
usepackage{csquotes}
usepackage{filecontents}

begin{filecontents*}{mrnumber.dbx}
DeclareDatamodelFields[type=field,datatype=literal]{mrnumber,mrclass}
DeclareDatamodelFields[type=list, datatype=name]{mrreviewer}
DeclareDatamodelEntryfields{mrnumber,mrclass,mrreviewer}
end{filecontents*}

usepackage[style=numeric, backend=biber, sorting=nyt, datamodel=mrnumber]{biblatex}
usepackage{hyperref}


DeclareFieldFormat{mrnumber}{%
ifhyperref
{href{http://www.ams.org/mathscinet-getitem?mr=1#1}{MR#1}}
{MR#1}}

DeclareFieldFormat{mrclass}{#1}

DeclareNameAlias{bymrreviewer}{byeditor}

newbibmacro*{mrinfo}{%
printfield{mrnumber}%
iffieldundef{mrclass}
{setunit*{addcommaspace}}
{setunit*{addspace}}%
printfield{mrclass}%
setunit*{addcommaspace}%
ifnameundef{mrreviewer}
{}
{bibstring{byreviewer}%
setunit{addspace}%
printnames[bymrreviewer]{mrreviewer}}}

newtoggle{bbx:mrinfo}
DeclareBibliographyOption[boolean]{mrinfo}[true]{settoggle{bbx:mrinfo}{#1}}
ExecuteBibliographyOptions{mrinfo}

renewbibmacro*{doi+eprint+url}{%
iftoggle{bbx:doi}
{printfield{doi}}
{}%
newunitnewblock
iftoggle{bbx:mrinfo}
{usebibmacro{mrinfo}}
{}%
newunitnewblock
iftoggle{bbx:eprint}
{usebibmacro{eprint}}
{}%
newunitnewblock
iftoggle{bbx:url}
{usebibmacro{url+urldate}}
{}}


begin{filecontents*}{jobname.bib}
@article{gratzer,
author = {Grätzer, G.},
title = {The order of principal congruences of a bounded lattice},
journal = {Algebra Universalis},
volume = {70},
year = {2013},
number = {1},
pages = {95--105},
mrclass = {06B10 (06A06)},
mrnumber = {3073941},
mrreviewer = {S. Parameshwara Bhatta},
doi = {10.1007/s00012-013-0242-3},
}
end{filecontents*}
addbibresource{jobname.bib}
addbibresource{biblatex-examples.bib}

begin{document}
cite{gratzer,sigfridsson}

printbibliography
end{document}


G. Grätzer. ‘The order of principal congruences of a bounded lattice’. In: Algebra Universalis 70.1 (2013), pp. 95–105. doi: 10.1007/s00012-013-0242-3. MR3073941 06B10 (06A06), rev. by S. Parameshwara Bhatta.





For the second issue I suggest you ask a new question since that is not related to biblatex at all. You could query https://mathscinet.ams.org/mrlookup with your .bib entries and get the result. As long as your author and title fields are accurate (and coincide with the info on MathSciNet) that should give you the correct entry. The Python tool https://pypi.org/project/bibupdate/ seems to do just that.






share|improve this answer

























    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "85"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f477776%2fbiblatex-help%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    2














    Switching from amsrefs to biblatex already shows how you can make the mrnumber show in the bibliography, so here we show mrclass and mrreviewer as well.



    The idea is the same. First we define a new datamodel file (.dbx) with the new fields and load that with the datamodel option. Then we need formats for those fields and finally we need to print the fields in a bibmacro (mrinfo) that is called in one of the standard macros (doi+eprint+url).



    documentclass[british]{article}
    usepackage[T1]{fontenc}
    usepackage[utf8]{inputenc}
    usepackage{babel}
    usepackage{csquotes}
    usepackage{filecontents}

    begin{filecontents*}{mrnumber.dbx}
    DeclareDatamodelFields[type=field,datatype=literal]{mrnumber,mrclass}
    DeclareDatamodelFields[type=list, datatype=name]{mrreviewer}
    DeclareDatamodelEntryfields{mrnumber,mrclass,mrreviewer}
    end{filecontents*}

    usepackage[style=numeric, backend=biber, sorting=nyt, datamodel=mrnumber]{biblatex}
    usepackage{hyperref}


    DeclareFieldFormat{mrnumber}{%
    ifhyperref
    {href{http://www.ams.org/mathscinet-getitem?mr=1#1}{MR#1}}
    {MR#1}}

    DeclareFieldFormat{mrclass}{#1}

    DeclareNameAlias{bymrreviewer}{byeditor}

    newbibmacro*{mrinfo}{%
    printfield{mrnumber}%
    iffieldundef{mrclass}
    {setunit*{addcommaspace}}
    {setunit*{addspace}}%
    printfield{mrclass}%
    setunit*{addcommaspace}%
    ifnameundef{mrreviewer}
    {}
    {bibstring{byreviewer}%
    setunit{addspace}%
    printnames[bymrreviewer]{mrreviewer}}}

    newtoggle{bbx:mrinfo}
    DeclareBibliographyOption[boolean]{mrinfo}[true]{settoggle{bbx:mrinfo}{#1}}
    ExecuteBibliographyOptions{mrinfo}

    renewbibmacro*{doi+eprint+url}{%
    iftoggle{bbx:doi}
    {printfield{doi}}
    {}%
    newunitnewblock
    iftoggle{bbx:mrinfo}
    {usebibmacro{mrinfo}}
    {}%
    newunitnewblock
    iftoggle{bbx:eprint}
    {usebibmacro{eprint}}
    {}%
    newunitnewblock
    iftoggle{bbx:url}
    {usebibmacro{url+urldate}}
    {}}


    begin{filecontents*}{jobname.bib}
    @article{gratzer,
    author = {Grätzer, G.},
    title = {The order of principal congruences of a bounded lattice},
    journal = {Algebra Universalis},
    volume = {70},
    year = {2013},
    number = {1},
    pages = {95--105},
    mrclass = {06B10 (06A06)},
    mrnumber = {3073941},
    mrreviewer = {S. Parameshwara Bhatta},
    doi = {10.1007/s00012-013-0242-3},
    }
    end{filecontents*}
    addbibresource{jobname.bib}
    addbibresource{biblatex-examples.bib}

    begin{document}
    cite{gratzer,sigfridsson}

    printbibliography
    end{document}


    G. Grätzer. ‘The order of principal congruences of a bounded lattice’. In: Algebra Universalis 70.1 (2013), pp. 95–105. doi: 10.1007/s00012-013-0242-3. MR3073941 06B10 (06A06), rev. by S. Parameshwara Bhatta.





    For the second issue I suggest you ask a new question since that is not related to biblatex at all. You could query https://mathscinet.ams.org/mrlookup with your .bib entries and get the result. As long as your author and title fields are accurate (and coincide with the info on MathSciNet) that should give you the correct entry. The Python tool https://pypi.org/project/bibupdate/ seems to do just that.






    share|improve this answer






























      2














      Switching from amsrefs to biblatex already shows how you can make the mrnumber show in the bibliography, so here we show mrclass and mrreviewer as well.



      The idea is the same. First we define a new datamodel file (.dbx) with the new fields and load that with the datamodel option. Then we need formats for those fields and finally we need to print the fields in a bibmacro (mrinfo) that is called in one of the standard macros (doi+eprint+url).



      documentclass[british]{article}
      usepackage[T1]{fontenc}
      usepackage[utf8]{inputenc}
      usepackage{babel}
      usepackage{csquotes}
      usepackage{filecontents}

      begin{filecontents*}{mrnumber.dbx}
      DeclareDatamodelFields[type=field,datatype=literal]{mrnumber,mrclass}
      DeclareDatamodelFields[type=list, datatype=name]{mrreviewer}
      DeclareDatamodelEntryfields{mrnumber,mrclass,mrreviewer}
      end{filecontents*}

      usepackage[style=numeric, backend=biber, sorting=nyt, datamodel=mrnumber]{biblatex}
      usepackage{hyperref}


      DeclareFieldFormat{mrnumber}{%
      ifhyperref
      {href{http://www.ams.org/mathscinet-getitem?mr=1#1}{MR#1}}
      {MR#1}}

      DeclareFieldFormat{mrclass}{#1}

      DeclareNameAlias{bymrreviewer}{byeditor}

      newbibmacro*{mrinfo}{%
      printfield{mrnumber}%
      iffieldundef{mrclass}
      {setunit*{addcommaspace}}
      {setunit*{addspace}}%
      printfield{mrclass}%
      setunit*{addcommaspace}%
      ifnameundef{mrreviewer}
      {}
      {bibstring{byreviewer}%
      setunit{addspace}%
      printnames[bymrreviewer]{mrreviewer}}}

      newtoggle{bbx:mrinfo}
      DeclareBibliographyOption[boolean]{mrinfo}[true]{settoggle{bbx:mrinfo}{#1}}
      ExecuteBibliographyOptions{mrinfo}

      renewbibmacro*{doi+eprint+url}{%
      iftoggle{bbx:doi}
      {printfield{doi}}
      {}%
      newunitnewblock
      iftoggle{bbx:mrinfo}
      {usebibmacro{mrinfo}}
      {}%
      newunitnewblock
      iftoggle{bbx:eprint}
      {usebibmacro{eprint}}
      {}%
      newunitnewblock
      iftoggle{bbx:url}
      {usebibmacro{url+urldate}}
      {}}


      begin{filecontents*}{jobname.bib}
      @article{gratzer,
      author = {Grätzer, G.},
      title = {The order of principal congruences of a bounded lattice},
      journal = {Algebra Universalis},
      volume = {70},
      year = {2013},
      number = {1},
      pages = {95--105},
      mrclass = {06B10 (06A06)},
      mrnumber = {3073941},
      mrreviewer = {S. Parameshwara Bhatta},
      doi = {10.1007/s00012-013-0242-3},
      }
      end{filecontents*}
      addbibresource{jobname.bib}
      addbibresource{biblatex-examples.bib}

      begin{document}
      cite{gratzer,sigfridsson}

      printbibliography
      end{document}


      G. Grätzer. ‘The order of principal congruences of a bounded lattice’. In: Algebra Universalis 70.1 (2013), pp. 95–105. doi: 10.1007/s00012-013-0242-3. MR3073941 06B10 (06A06), rev. by S. Parameshwara Bhatta.





      For the second issue I suggest you ask a new question since that is not related to biblatex at all. You could query https://mathscinet.ams.org/mrlookup with your .bib entries and get the result. As long as your author and title fields are accurate (and coincide with the info on MathSciNet) that should give you the correct entry. The Python tool https://pypi.org/project/bibupdate/ seems to do just that.






      share|improve this answer




























        2












        2








        2







        Switching from amsrefs to biblatex already shows how you can make the mrnumber show in the bibliography, so here we show mrclass and mrreviewer as well.



        The idea is the same. First we define a new datamodel file (.dbx) with the new fields and load that with the datamodel option. Then we need formats for those fields and finally we need to print the fields in a bibmacro (mrinfo) that is called in one of the standard macros (doi+eprint+url).



        documentclass[british]{article}
        usepackage[T1]{fontenc}
        usepackage[utf8]{inputenc}
        usepackage{babel}
        usepackage{csquotes}
        usepackage{filecontents}

        begin{filecontents*}{mrnumber.dbx}
        DeclareDatamodelFields[type=field,datatype=literal]{mrnumber,mrclass}
        DeclareDatamodelFields[type=list, datatype=name]{mrreviewer}
        DeclareDatamodelEntryfields{mrnumber,mrclass,mrreviewer}
        end{filecontents*}

        usepackage[style=numeric, backend=biber, sorting=nyt, datamodel=mrnumber]{biblatex}
        usepackage{hyperref}


        DeclareFieldFormat{mrnumber}{%
        ifhyperref
        {href{http://www.ams.org/mathscinet-getitem?mr=1#1}{MR#1}}
        {MR#1}}

        DeclareFieldFormat{mrclass}{#1}

        DeclareNameAlias{bymrreviewer}{byeditor}

        newbibmacro*{mrinfo}{%
        printfield{mrnumber}%
        iffieldundef{mrclass}
        {setunit*{addcommaspace}}
        {setunit*{addspace}}%
        printfield{mrclass}%
        setunit*{addcommaspace}%
        ifnameundef{mrreviewer}
        {}
        {bibstring{byreviewer}%
        setunit{addspace}%
        printnames[bymrreviewer]{mrreviewer}}}

        newtoggle{bbx:mrinfo}
        DeclareBibliographyOption[boolean]{mrinfo}[true]{settoggle{bbx:mrinfo}{#1}}
        ExecuteBibliographyOptions{mrinfo}

        renewbibmacro*{doi+eprint+url}{%
        iftoggle{bbx:doi}
        {printfield{doi}}
        {}%
        newunitnewblock
        iftoggle{bbx:mrinfo}
        {usebibmacro{mrinfo}}
        {}%
        newunitnewblock
        iftoggle{bbx:eprint}
        {usebibmacro{eprint}}
        {}%
        newunitnewblock
        iftoggle{bbx:url}
        {usebibmacro{url+urldate}}
        {}}


        begin{filecontents*}{jobname.bib}
        @article{gratzer,
        author = {Grätzer, G.},
        title = {The order of principal congruences of a bounded lattice},
        journal = {Algebra Universalis},
        volume = {70},
        year = {2013},
        number = {1},
        pages = {95--105},
        mrclass = {06B10 (06A06)},
        mrnumber = {3073941},
        mrreviewer = {S. Parameshwara Bhatta},
        doi = {10.1007/s00012-013-0242-3},
        }
        end{filecontents*}
        addbibresource{jobname.bib}
        addbibresource{biblatex-examples.bib}

        begin{document}
        cite{gratzer,sigfridsson}

        printbibliography
        end{document}


        G. Grätzer. ‘The order of principal congruences of a bounded lattice’. In: Algebra Universalis 70.1 (2013), pp. 95–105. doi: 10.1007/s00012-013-0242-3. MR3073941 06B10 (06A06), rev. by S. Parameshwara Bhatta.





        For the second issue I suggest you ask a new question since that is not related to biblatex at all. You could query https://mathscinet.ams.org/mrlookup with your .bib entries and get the result. As long as your author and title fields are accurate (and coincide with the info on MathSciNet) that should give you the correct entry. The Python tool https://pypi.org/project/bibupdate/ seems to do just that.






        share|improve this answer















        Switching from amsrefs to biblatex already shows how you can make the mrnumber show in the bibliography, so here we show mrclass and mrreviewer as well.



        The idea is the same. First we define a new datamodel file (.dbx) with the new fields and load that with the datamodel option. Then we need formats for those fields and finally we need to print the fields in a bibmacro (mrinfo) that is called in one of the standard macros (doi+eprint+url).



        documentclass[british]{article}
        usepackage[T1]{fontenc}
        usepackage[utf8]{inputenc}
        usepackage{babel}
        usepackage{csquotes}
        usepackage{filecontents}

        begin{filecontents*}{mrnumber.dbx}
        DeclareDatamodelFields[type=field,datatype=literal]{mrnumber,mrclass}
        DeclareDatamodelFields[type=list, datatype=name]{mrreviewer}
        DeclareDatamodelEntryfields{mrnumber,mrclass,mrreviewer}
        end{filecontents*}

        usepackage[style=numeric, backend=biber, sorting=nyt, datamodel=mrnumber]{biblatex}
        usepackage{hyperref}


        DeclareFieldFormat{mrnumber}{%
        ifhyperref
        {href{http://www.ams.org/mathscinet-getitem?mr=1#1}{MR#1}}
        {MR#1}}

        DeclareFieldFormat{mrclass}{#1}

        DeclareNameAlias{bymrreviewer}{byeditor}

        newbibmacro*{mrinfo}{%
        printfield{mrnumber}%
        iffieldundef{mrclass}
        {setunit*{addcommaspace}}
        {setunit*{addspace}}%
        printfield{mrclass}%
        setunit*{addcommaspace}%
        ifnameundef{mrreviewer}
        {}
        {bibstring{byreviewer}%
        setunit{addspace}%
        printnames[bymrreviewer]{mrreviewer}}}

        newtoggle{bbx:mrinfo}
        DeclareBibliographyOption[boolean]{mrinfo}[true]{settoggle{bbx:mrinfo}{#1}}
        ExecuteBibliographyOptions{mrinfo}

        renewbibmacro*{doi+eprint+url}{%
        iftoggle{bbx:doi}
        {printfield{doi}}
        {}%
        newunitnewblock
        iftoggle{bbx:mrinfo}
        {usebibmacro{mrinfo}}
        {}%
        newunitnewblock
        iftoggle{bbx:eprint}
        {usebibmacro{eprint}}
        {}%
        newunitnewblock
        iftoggle{bbx:url}
        {usebibmacro{url+urldate}}
        {}}


        begin{filecontents*}{jobname.bib}
        @article{gratzer,
        author = {Grätzer, G.},
        title = {The order of principal congruences of a bounded lattice},
        journal = {Algebra Universalis},
        volume = {70},
        year = {2013},
        number = {1},
        pages = {95--105},
        mrclass = {06B10 (06A06)},
        mrnumber = {3073941},
        mrreviewer = {S. Parameshwara Bhatta},
        doi = {10.1007/s00012-013-0242-3},
        }
        end{filecontents*}
        addbibresource{jobname.bib}
        addbibresource{biblatex-examples.bib}

        begin{document}
        cite{gratzer,sigfridsson}

        printbibliography
        end{document}


        G. Grätzer. ‘The order of principal congruences of a bounded lattice’. In: Algebra Universalis 70.1 (2013), pp. 95–105. doi: 10.1007/s00012-013-0242-3. MR3073941 06B10 (06A06), rev. by S. Parameshwara Bhatta.





        For the second issue I suggest you ask a new question since that is not related to biblatex at all. You could query https://mathscinet.ams.org/mrlookup with your .bib entries and get the result. As long as your author and title fields are accurate (and coincide with the info on MathSciNet) that should give you the correct entry. The Python tool https://pypi.org/project/bibupdate/ seems to do just that.







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited Mar 5 at 7:09

























        answered Mar 5 at 7:03









        moewemoewe

        93.4k10115353




        93.4k10115353






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f477776%2fbiblatex-help%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            How to change which sound is reproduced for terminal bell?

            Can I use Tabulator js library in my java Spring + Thymeleaf project?

            Title Spacing in Bjornstrup Chapter, Removing Chapter Number From Contents