See what fields need filling to create a complete citation

It would be good if Zotero looked at the current citation style and looked at the fields you'd already completed and told you what other fields you had to complete to create a full citation.
  • I've always thought this would be a good thing to have, though I'm not sure how or where this info would be displayed.

    Technically, I suspect this would require citation processor support. For example, Zotero could register a callback with citeproc-js that was called whenever citeproc-js got an empty value for a field it was outputting, and Zotero could display a warning. (There could alternatively be a citeproc-js flag to have it output placeholders in the actual output, but then I don't think it would be able to show the actual Zotero field names, just the CSL variable names.) Thoughts, fbennett and others?
  • I see that this would need to be a two-tiered system flagging fields as three different types
    1) Fields that are always required
    2) Fields that may be required
    3) Fields that are not used in a citation

    Take the APA style for a journal article as an example: The only fields that you must have are the title, authors, and journal name. In most cases you also need volume, but this is not required for preprint articles. Issue is required only for journals that have page numbers that start over for each issue and should not be present otherwise.

    Other styles may have other complexities, but it is quite clear that it would be impossible to implement a system that would tell you which fields you need to fill to get a correct citation. At best you could have a system that shows which fields are never used for a particular citation style.
  • I was imagining that it would just cover the more extreme cases where right now you get, say, two punctuation marks in a row due to a missing field. (Is this still the case? Or do most styles now degrade gracefully even when expected fields are missing?)

    But maybe a preflight check with internal knowledge of just the major styles would be sufficient? This could potentially accompany other checks we've discussed: recommended sentence/title case practices, fields that would be problematic when syncing, etc.

    If this does happen, it could (and probably should) start as a separate extension.
  • edited October 26, 2012
    I agree that this probably is not feasible, although it would be nice to have. As Mikka notes, some of the item types are frequently leveraged to produce quite distinct citations depending on the input (paper-conference comes to mind).

    Expected combinations of input could be extracted from a style-level test suite, and that could be used to present the user with a selection of possible fixes. It would throw up some false reports, though, and it would be a lot of work to maintain.

    (crossed in the post with Dan's above)
  • That's an interesting idea, especially Dan's mention of a separate plugin which would essentially be a quality-check plugin for your references.
    It would probably need to let you specify which fields you regarded as essential (from csl-styles? by item type? this could get quite detailed). And then flag up any problems.
    I recently imported a large collection of references (a bibtex file) sent by a colleague into a group library I maintain - and ended up spending so much time checking the references to see that everything was there and adding details (page-totals for books mainly - we need them in France), that I began to think it would have been faster to capture the lot afresh from catalogues. It would also be a great help for my students who always seem to take forever to understand that they need to check the info which goes into their Zotero very carefully and add extra elements if they haven't been captured.
  • A completeness checker seems very hard to automate, I agree. A lot of fields that are used in CSL for an item type aren't required - see e.g. mronkko's APA example above.
    The issue Dan mentions - doubling of periods etc. - should ideally never occur and if it does, no matter which data are missing, that's a style bug. (citeproc removes double periods that are directly adjacent, but not if there is a space between them, so styles should, an can relatively easily, be coded in a way that makes that impossible).

    So right now, the best solution for quality check would be to make it customizable and just let the user decide what to check, and combine that with a removable _needs review_ tag along the lines of what Mendeley does - I always liked that idea.
Sign In or Register to comment.