Announcement: CSL 1.0.2 launch date

I am excited to announce that the Citation Style Language (CSL) styles and locales repositories will switch over to CSL 1.0.2 on January 1, 2022. This is a small version update to CSL that adds new item types, variables, and terms. Existing 1.0.1 styles remain compatible and will continue to work as-is.*

The style repository validation will switch over to 1.0.2 by January 1.

Documentation for CSL 1.0.2 can be viewed at, and a list of changes can be viewed at

* The one change potentially required for 1.0.1 styles is if the "sub verbo" term is used in the style. If this rarely used term is used, it must be renamed to "sub-verbo".

@dstillman Can we pin this announcement?
  • edited December 23, 2021
    Fantastic news! Congratulations on all the work the team has put in!
    Can't wait to explore and use these new variables.
  • Exciting news!Looking forward Author (year) format.
  • That is CSL 1.1.0, not 1.0.2
  • Got it, will the Zotero be updated to support the new item types?
  • You will be able to access them immediately by putting them in Extra like this:
    Type: performance

    Zotero’s item types and variables will be updated as part of Zotero 6
  • edited December 24, 2021

    Is there an ETA for Zotero 6 and an updated version of Zotero type mapping CSL type like
  • No, Zotero doesn't give product ETAs.
  • Thanks, where can I find an updated version of Zotero type mapping CSL type like

    I would like to know the specific fields in a standard item type.
  • edited December 26, 2021
    Zotero has not changed at this time. You can enter any CSL field in Extra like shown here
  • 1.0.2 is now live!
    Collecting here the things that I think should be possible to (re)map immediately in Zotero

    Item types
    hearing --> hearing (was bill)
    document --> document (was article)
    software --> software (was book)

    Name variables
    contributor --> contributor (previously unmapped)
    guest --> guest (previously unmapped)
    performer --> performer (was: author -- is that possible?)
    producer --> producer (previously unmapped)
    scriptwriter --> script-writer (previously unmapped)

    Other variables
    Anything that maps to event --> event-title (yes?)
    rights --> license (was unmapped)
    language --> ??? What should we do here? since we're encouraging people to add ISO codes in Zotero, we can't just map language to language I think. Would a mapping table with fallback to literal string be an option?

    Any reason not to add the new locators already? (what's title-locator?)

  • @adamsmith Let's do a batch-replace to replace "event" in existing styles with "event-title"

    citeproc-js already has some facility for managing ISO language codes. A lookup table with ISO codes would be great if that's feasible.

    "article-locator" and "title-locator" are generally for legal citations (e.g., Bylaws Article 4, Civil Rights Act of 1964, Title VII)
  • @dstillman -- are the above changes/remappings feasible? We wouldn't expect any major complications for users. Either they are new or they are remapping things that are rarely used in citation styles.
  • Would it possible to introduce the remappings suggested by adamsmith?
    I would very much love to use the item types provided in CSL 1.0.2 to style e.g. software separately.

    Another heartfelt wish would be to have a separate item type 'dataset', as we now have these in our publication lists. An item type dataset would make it much easier for staff to enter those publications.
  • OK, sorry for the delay here. All except language and locators are now available in the latest Zotero beta for Windows and Linux (6.0.10-beta.2). A Mac build should be out later today.

    The locators just need to appear in the drop-down when customizing citations and be passed through to citeproc-js?

    What localized strings would we use for elocation, article-locator, and title-locator? ("Article Locator" and "Title Locator" for the latter two? Not ideal for the width of the label…)
  • Just “Article” and “Title”. The different terms are there because the locators might be localized differently from their item type/variable localizations (eg, the item type “article” is localized as “Preprint”, and title-locator clarifies this is the title number of a legal document, not the the title of a book, etc)

    Localizations are in the CSL locales:

    Is there a technical issue with language?
  • Thank you for this update.

    Related, to this, I have been wondering about CSL 1.1. Is that planned for Zotero 7, or will it be arriving in an earlier (or later) Zotero version? I'm asking because the institution-short specification appears to be planned for 1.1 ( and
  • CSL versions are fairly independent of Zotero releases: it doesn't take a ton of work to plug a new release version into Zotero if the processors are updated. On the other hand, we're very much not clear on a 1.1 release schedule for CSL. We'd like it to be soon, but there are a lot of moving parts and, in particular, I don't think we'll want to release without a critical mass of processors ready.

    We're meeting later this month with a group of stakeholders to discuss.
  • Why is "timestamp" "generally blank"? Is that not supposed to appear as a manual locator option in the citation dialog?
  • language --> ??? What should we do here? since we're encouraging people to add ISO codes in Zotero, we can't just map language to language I think. Would a mapping table with fallback to literal string be an option?
    Sorry, I'm not sure I'm following this. CSL wants ISO codes, right? So aren't those not a problem if entered in Zotero?

    Isn't it that we want to pass ISO codes to the best of our ability? So we would try to map both English and localized language names to codes ("English" → "en", "Português" → "pt"), and everything else would be passed through directly ("Foobar" → "Foobar", "en-US" → "en-US").
  • > Why is "timestamp" "generally blank"?

    It doesn’t usually have a label in citation styles. It should be “Timestamp” in the dropdown menu in the citation dialogue
  • What you are saying about language sounds correct. I think ideally at some point that field would be a controlled dropdown
  • OK, we'll add our own localized string for timestamp.

    language doesn't appear to actually be new in 1.0.2? It was already mapped, in any case. I've created a ticket for localized-language-name mappings, but that will just be an enhancement to the existing pass-through behavior and whatever citeproc-js already does with language names.
  • Very excited about this, thanks!
    The new Zotero <--> CSL map is up at
  • These mappings are available in Zotero 6.0.10, available now.
  • Fab news. Thanks all!
Sign In or Register to comment.