CSL variables used in Zotero, but not in documentation

I'm tweaking the Z2CSL field mapping plugin. It now automatically fetches all CSL item types and variables from the CSL documentation. While doing this, I discovered that the following variables are used in Zotero, but are not mentioned in the specification (http://citationstyles.org/downloads/specification.html):

language
dimension
shortTitle
jounalAbbreviation

I'm guessing that they were omitted from the specification on accident.

Edit: specifically, I'm referring to the Appendix IV: Variables
  • The "shortTitle" and "journalAbbreviation" variables are used as the source for the constructs <text variable="title" form="short"/> and <text variable="container-title" form="short"/> respectively. They are not meant to be rendered directly.

    I'll let Rintze respond on the other two.
  • "language" should not be called (anymore) as a standard CSL variable, as it should ideally contain language codes, which don't make much sense to print. It can be used for things like sorting, though. Rintze explained this in a recent post somewhere.

    "dimension" is a typo on my part (oops) that should be "dimensions" in Zotero, which is listed in the specs.
  • @aurimas, are you scraping the CSL variables from the specification, or the schema?

    Some additional info:

    "dimensions":
    new variable in CSL 1.0.1, see http://citationstyles.org/downloads/release-notes-csl101.html#new-variables-dimensions-director-illustrator-issn-pmcid-pmid-scale-and-source

    "shortTitle" and "jounalAbbreviation":
    In CSL 1.0, the only way to render the abbreviated (journal) title was to use form="short" with either the "title" or "container-title" variable. Frank introduced the "shortTitle" and "jounalAbbreviation" fields to store these abbreviations within the scope of citeproc-js, and Zotero uses his citeproc-js JSON format to make the bridge between the Zotero database and citeproc-js.

    I introduced dedicated CSL variables in CSL 1.0.1, "title-short" and "container-title-short" (see http://citationstyles.org/downloads/release-notes-csl101.html#new-variables-container-title-short-and-title-short ). I used a different naming convention for consistency with the rest of the CSL variables. Ideally we would update the citeproc-js JSON format to use these latter names, but that comes with some cost: both Zotero and Mendeley store citation metadata in word processor documents in the citeproc-js JSON format.
  • Ah, yes. Sorry for lack of response. I was scraping the specs, since I wanted to get the descriptions as well. Thanks Gracile. And thanks to everyone for clearing this up. I will add the appropriate descriptions to the mapping page.
  • I introduced dedicated CSL variables in CSL 1.0.1, "title-short" and "container-title-short" (see http://citationstyles.org/downloads/release-notes-csl101.html#new-variables-container-title-short-and-title-short ). I used a different naming convention for consistency with the rest of the CSL variables. Ideally we would update the citeproc-js JSON format to use these latter names, but that comes with some cost: both Zotero and Mendeley store citation metadata in word processor documents in the citeproc-js JSON format.
    So do I understand correctly that as far as Zotero is concerned "title-short" and "container-title-short" do not exist?
    Ideally we would update the citeproc-js JSON format to use these latter names, but that comes with some cost: both Zotero and Mendeley store citation metadata in word processor documents in the citeproc-js JSON format.
    Can't citeproc-js support both?
  • Can't citeproc-js support both?
    It can do. The simple thing in the short term will be to keep the Zotero mappings as they are, and map titleShort to title-short and journalAbbreviation to container-title-short in the processor.

    The Zotero input values should be overridden by the Abbreviation Filter plugin when the user supplies a short value there, so I'll need to step with care on this one.
  • I've implemented this now. In the latest version of the processor (not yet released, as of Zotero 3.0.9), the title-short and container-title-short variables correspond to the abbreviated form of the title and container-title variables (as supplied by the Abbreviation Filter) or failing that, to the shortTitle and journalAbbreviation variables.

    In both cases, the presence or absence of a value on the virtual variable will take effect in conditionals, and will implicitly suppress companion labels within a group when the variable value is absent.
Sign In or Register to comment.