# CSL 1.0.2 and 1.1 Development Window Open

**URL:** <https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652>\
**Category:** CSL Development\
**Created:** [June 8, 2020, 9:11pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652 "2020-06-08T21:11:33Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [June 8, 2020, 9:11pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/1 "2020-06-08T21:11:33Z")

</div>

I’d say largely (at least for me) as a consequence of the pandemic, some of us (me, along with @bwiernik and @Denis_Maier, and key input from @Rintze_Zelle and @Sebastian_Karcher) have found some time to do some work whittling down the backlog of issues and pull requests on the various CSL repos.

## Plan

Current plan is to push out two releases over the next two months:

1. v1.0.2: variable additions mostly
2. v1.1: remove some items previously marked to deprecate, add new features (like an intext element, allow different formatting for title and subtitles, etc.)

A lot of this work is already done, the latter on the [v1.1 branch](https://github.com/citation-style-language/schema/commits/v1.1).

I am hoping we can tag a pre release version of 1.0.2 in the coming weeks, and then allow for a comment period before tagging v1.0.2, and then same process a bit later with v1.1.

## How you can contribute

We have setup a [proposal review project](https://github.com/orgs/citation-style-language/projects/3) (though it’s not as automated as it might be, and I’ve not been manually updating it recently), and milestones for [v1.0.2](https://github.com/citation-style-language/schema/milestone/3) and [v.1.1](https://github.com/citation-style-language/schema/milestone/1). Hopefully this makes it easier to track progress.

If you think we’ve missed an issue, or want to submit or review PRs, including for documentation, now would be the time.

I’d in particular like to add some developers to a PR review team, so we can get feedback early, and make decisions quickly.

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [June 23, 2020, 3:01pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/2 "2020-06-23T15:01:32Z")

</div>

Just an update: goal is to close work on `v1.0.2` end of week, and tag `v1.0.2-pre.1`, and then have a comment period.

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [June 26, 2020, 4:52pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/3 "2020-06-26T16:52:34Z")

</div>

> [@Bruce\_D\_Arcus1](#):
>
> Just an update: goal is to close work on `v1.0.2` end of week, and tag `v1.0.2-pre.1` , and then have a comment period.

Tag is [here](https://github.com/citation-style-language/schema/commits/v1.0.2-pre.1). Please review and let us know if any feedback.

This release pretty much just adds new types and variables, and so closes a lot of issues and PRs that have been hanging around.

We were aggressive in trying to close as many outstanding issues as possible, but I think conservative in only accepting changes we thought would be uncontroversial.

Thanks much to @bwiernik and @Denis_Maier for all the help!

v1.1 should be even more cool!

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [July 7, 2020, 11:46am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/4 "2020-07-07T11:46:37Z")

</div>

Now would be the time to review 1.0.2, as I plan to tag it later this week.

I don’t necessarily expect any issues, but positive thumbs up if that’s the case would be welcome too.

---

<div class="post-metadata">

**Author:** ![Denis\_Maier](https://avatars.discourse-cdn.com/v4/letter/d/8491ac/32.png) [@Denis\_Maier](https://discourse.citationstyles.org/u/Denis_Maier)\
**Post date:** [July 7, 2020, 12:45pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/5 "2020-07-07T12:45:59Z")

</div>

I just went through the output of `git diff` again, and it looks like this should be ok. There’s probably nothing controversial in there, and we can always add new terms/variables later.

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [July 7, 2020, 1:29pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/6 "2020-07-07T13:29:21Z")

</div>

As we work on wrapping up 1.1 in parallel, a note on those evolving plans.

Since this release will introduce new features that will require processor changes to support (though not any breaking changes), I think it wise that before merging to master we make sure all the new behavior is documented in the test suite, and that we get some of the processor developers (cc @Frank_Bennett, @cormacrelf, @asimonyi, @PaulStanley) to sign off on them.

So a test-driven release plan.

To wit, and at @Frank_Bennett’s suggestion, I created [a separate branch of the test suite and a subdir](https://github.com/citation-style-language/test-suite/tree/v1.1-experiments/processor-tests/humans/experiments) for these tests.

I have marked these tests “experimental” as they are not yet merged to master.

Currently, there’s only one that’s done, but I hope we can fill this out over the coming week or two. Mostly, per below, this will just mean identifying and adapting existing CSL-M citeproc-js tests.

**Request of @Denis_Maier** : Citeproc-js has tests for two of the main features listed below (possible candidates for [intext](https://github.com/Juris-M/citeproc-js/search?q=intext&unscoped_q=intext) and for [conditions](https://github.com/Juris-M/citeproc-js/search?p=2&q=conditions&unscoped_q=conditions)). Could you please identify a few and add to our repo, adjusting as needed? Our `intext` implementation should be the same as in CSL-M, I think, but `conditions` may differ slightly.

The most important new features, and open questions that we still need feedback on:

- [https://github.com/citation-style-language/schema/pull/268](https://github.com/citation-style-language/schema/pull/268) (open: new related modeling)
- [https://github.com/citation-style-language/schema/pull/301](https://github.com/citation-style-language/schema/pull/301) (open: EDTF dates; do we change current input model to be consistent with EDTF?)
- [https://github.com/citation-style-language/schema/pull/260](https://github.com/citation-style-language/schema/pull/260) (merged to v1.1: new conditions element)
- [https://github.com/citation-style-language/schema/pull/193](https://github.com/citation-style-language/schema/pull/193) (merged to v1.1: new intext element)

---

<div class="post-metadata">

**Author:** ![Sebastian\_Karcher](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/sebastian_karcher/32/176_2.png) [@Sebastian\_Karcher](https://discourse.citationstyles.org/u/Sebastian_Karcher)\
**Post date:** [July 8, 2020, 4:05am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/7 "2020-07-08T04:05:22Z")

</div>

Thanks for all the work on this.

I want to take another look, but mostly I think 1.0.1 is in good shape. One thing I think I noticed (unless I’m missing something) is that JSON schema and RNC schema aren’t 100% aligned. `volume-title`, e.g., is in the RNC schema but not in the JSON schema. If I’m right about this, that means there may be other issues and this requires another very careful look.

Of the added variables, the only thing I have some misgivings about is [https://github.com/citation-style-language/schema/pull/231](https://github.com/citation-style-language/schema/pull/231) – given demand for IDs over the years, this is kind of a random selection. E.g. arXiv ID, NBN, probably OCLC number, ZbMath, etc. all have come up more. Given minimal demand for the new identifiers (it’s not like adding these solves some urgent, much noticed issue), the fact that there are a _ton_ of existing IDs and an expanding landscape of which ones are used and how, I’d suggest tabling these and thinking about a more global approach to IDs for 1.1+

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [July 8, 2020, 9:13am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/8 "2020-07-08T09:13:18Z")

</div>

> [@Sebastian\_Karcher](#):
>
> I’d suggest tabling these and thinking about a more global approach to IDs for 1.1+

Any ideas on how that could work?

I hadn’t thought about this, but first impressions …

Maybe an input object (potentially even the new `custom`) for other IDs, and then some mechanism to access them in a style?

Would seem the simple and clean solution would be to use custom, and then allow `variable="custom/some-id"`.

That does raise larger compatability questions though, so wondering if there are any other options.

---

<div class="post-metadata">

**Author:** ![bwiernik](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/bwiernik/32/438_2.png) [@bwiernik](https://discourse.citationstyles.org/u/bwiernik)\
**Post date:** [July 8, 2020, 9:59am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/9 "2020-07-08T09:59:56Z")

</div>

No, I think an `identifier` variable that carries 'type’ and ‘value’ elements (or, probably better, it could be an object with key value pairs) would be better. Many of these identifiers are used in citations (e.g., ArXiV id).

For comparison, after discussion, Frank and I settled on `legal-eid` to include the ECLI (European Law Case Identifier) and other potential future electronic legal identifiers. He didn’t care for `legal-identifier` because that term might encompass things like a case’s Docket Number (CSL `number`). But, I think if we had a general `identifier` variable and documented it well, it could encompass both legal and other identifiers.

We should add an `identifier` or `electronic-identifier` or `e-identifier` variable. It would work like `locator`. It would have type-value elements or be structured as a set of key-value pairs.

The main question is exactly how to work with this in styles. Each identifier has its own formatting requirements (e.g., a URI scheme). The URI scheme should also inform the target of embedded links. I suggest we permit three forms: “uri”, “prefix”, and “bare”. Accomplishing this would be easiest handled with a new element similar to dates: `cs:identifier`.

We can curate a list of identifiers, prefixes, and URL schemes that are supported. This could be easily expanded over time. For identifiers not supported, all forms would just return “bare”.

The existing identifiers in CSL 1.0.1 could be grandfathered (DOI, PMCID, PMID, ISBN, ISSN) to be available through either `cs:text` or `cs:identifier`.

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [July 8, 2020, 10:14am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/10 "2020-07-08T10:14:57Z")

</div>

Sounds good.

Seems like we need a PR to consider for 1.1.

If we settle that, we can follow Sebastian’s suggestion to remove these ids from 1.0.2.

---

<div class="post-metadata">

**Author:** ![bwiernik](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/bwiernik/32/438_2.png) [@bwiernik](https://discourse.citationstyles.org/u/bwiernik)\
**Post date:** [July 8, 2020, 10:15am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/11 "2020-07-08T10:15:31Z")

</div>

Done. I’ve opened a pull request with changes from Sebastian’s feedback. [https://github.com/citation-style-language/schema/pull/303](https://github.com/citation-style-language/schema/pull/303)

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [July 8, 2020, 10:58am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/12 "2020-07-08T10:58:30Z")

</div>

> [@bwiernik](#):
>
> The existing identifiers in CSL 1.0.1 could be grandfathered (DOI, PMCID, PMID, ISBN, ISSN) to be available through either `cs:text` or `cs:identifier` .

Thinking about the human-friendly input representation, I think we do want to keep the core ids as dedicated properties, and so treat a potential new `identifier` object as effectively for extended ids.

---

<div class="post-metadata">

**Author:** ![bwiernik](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/bwiernik/32/438_2.png) [@bwiernik](https://discourse.citationstyles.org/u/bwiernik)\
**Post date:** [July 8, 2020, 11:17am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/13 "2020-07-08T11:17:11Z")

</div>

Yeah, sure, that’s what I was thinking.

For human-friendly input, we could also accept a labeled delimited list in flat string (which we’ve discussed for locator and page).

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [July 8, 2020, 11:19am UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/14 "2020-07-08T11:19:58Z")

</div>

> [@bwiernik](#):
>
> For human-friendly input, we could also accept a labeled delimited list in flat string (which we’ve discussed for locator and page).

This I don’t like, because it requires custom parsing again.

Would rather just do something like:

```yaml
extids:
   foo: 1234

```

---

<div class="post-metadata">

**Author:** ![Sebastian\_Karcher](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/sebastian_karcher/32/176_2.png) [@Sebastian\_Karcher](https://discourse.citationstyles.org/u/Sebastian_Karcher)\
**Post date:** [July 8, 2020, 1:02pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/15 "2020-07-08T13:02:14Z")

</div>

For larger process – I’m a little worried by the small number of people involved in this so far\* and I think it’s worth having a more widely accessible comment period for a couple of weeks both as a check and as a general matter of transparency.

Ideally, we’d have a more readily human-readable summary of the planned changes for 1.0.2 that we could point people to and then various ways to engage. I don’t think we’ll be overrun, but given that CSL is used by \>1m people, I think getting feedback from \>10 would be good and worth a small delay & a bit of extra work.

\* this is not at all intended as criticism of the work done so far; on the contrary, I think for getting the actual work done, a small group is preferable

---

<div class="post-metadata">

**Author:** ![Denis\_Maier](https://avatars.discourse-cdn.com/v4/letter/d/8491ac/32.png) [@Denis\_Maier](https://discourse.citationstyles.org/u/Denis_Maier)\
**Post date:** [July 8, 2020, 1:29pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/16 "2020-07-08T13:29:01Z")

</div>

> [@Sebastian\_Karcher](#):
>
> Ideally, we’d have a more readily human-readable summary of the planned changes for 1.0.2 that we could point people to and then various ways to engage

I think that’s a very valuable suggestion! For 1.0.2 this should be rather trivial. But for 1.1 we should really do this. Ideally, the same document would later become the changelog?

---

<div class="post-metadata">

**Author:** ![Bruce\_D\_Arcus1](https://avatars.discourse-cdn.com/v4/letter/b/4bbf92/32.png) [@Bruce\_D\_Arcus1](https://discourse.citationstyles.org/u/Bruce_D_Arcus1)\
**Post date:** [July 8, 2020, 2:09pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/17 "2020-07-08T14:09:31Z")

</div>

I’m fine on waiting a bit. I just can’t commit to having time beyond July to stay as involved as I have for the past few months.

There are also some practical considerations around managing multiple branches in git for non-experts.

Keep in mind, the decisions we made were mostly closing stale issues that had been lingering for _years_, with substantial feedback on them, often building on discussions in other fora, like the Zotero forums.

Even the 1.1 changes are mostly implementing features already in CSL-M. The intext narrative citation support is already supported in multiple processors (pandoc, citeproc-rs I believe, for example), in fact.

I do think, once these two releases are done, we need to rethink process, and consider things like:

- no longer doing x.x.x releases; just adding strings as they’re needed, and only version the spec and schemas (or version them differently) when we introduce features that impact processors; but this does raise question about how best to get feedback
- formalize a test-driven process for the latter; which requires feedback from a different audience (developers)
- solicit labor contributions for all this work from the big projects that rely on it (though I’m unsure how practical, or what the specific asks would be; at minimum it would likely be more contribution to PR reviews)

---

<div class="post-metadata">

**Author:** ![Sebastian\_Karcher](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/sebastian_karcher/32/176_2.png) [@Sebastian\_Karcher](https://discourse.citationstyles.org/u/Sebastian_Karcher)\
**Post date:** [July 8, 2020, 4:38pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/18 "2020-07-08T16:38:04Z")

</div>

> [@Bruce\_D\_Arcus1](#):
>
> Keep in mind, the decisions we made were mostly closing stale issues that had been lingering for _years_ , with substantial feedback on them, often building on discussions in other fora, like the Zotero forums.

I don’t expect this to be super controversial. For 1.0.2 I’d imagine the main function would be to see if there’s a major thing we overlooked (which we could then either consider for 1.1 or decide it was crucial enough for 1.0.2).  
I’m also just thinking about this in terms of governance – I think it’s the right thing to do to Tweet about this and to link it from the Zotero forums and to send an email to all implementers for which we have contact info. At least for the two former, a quick summary would be nice – we could recycle that for the announcement of the final version, which I think is a pretty big deal.

---

<div class="post-metadata">

**Author:** ![bwiernik](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/bwiernik/32/438_2.png) [@bwiernik](https://discourse.citationstyles.org/u/bwiernik)\
**Post date:** [July 8, 2020, 5:57pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/19 "2020-07-08T17:57:00Z")

</div>

Yeah, for 1.0.2 I imagine most feedback would be something like Sebastian’s suggestion to defer the identifiers.

It might also be nice to get folks from Mendeley, Zotero, and other applications in discussions about variable and type mapping updates.

---

<div class="post-metadata">

**Author:** ![Sebastian\_Karcher](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/sebastian_karcher/32/176_2.png) [@Sebastian\_Karcher](https://discourse.citationstyles.org/u/Sebastian_Karcher)\
**Post date:** [July 8, 2020, 5:58pm UTC](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652/20 "2020-07-08T17:58:10Z")

</div>

Yes. We just heard from Paperpile (via [citationstyles.org](http://citationstyles.org) contact) and I pointed them to this thread & asked for feedback.

[Next page](https://discourse.citationstyles.org/t/csl-1-0-2-and-1-1-development-window-open/1652.md?page=2)
