# Counting authors

**URL:** <https://discourse.citationstyles.org/t/counting-authors/592>\
**Category:** CSL Development\
**Created:** [April 6, 2009, 3:21pm UTC](https://discourse.citationstyles.org/t/counting-authors/592 "2009-04-06T15:21:32Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 6, 2009, 3:21pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/1 "2009-04-06T15:21:32Z")

</div>

I’ve just taken a look back over the discussion of count-max, and I’d  
like to float an idea.

That issue was prompted by the need to fetch the count of author names  
into a sort key with a limit of 3, to satisfy the sort requirements of  
AGU and AGU-based styles. Generality is nice, but on the face of it,  
it seems like a simpler solution would be to just give the name  
element an additional attribute value form=“count”, and provide an  
option name=“max-name-count”. This would keep numeric values in a  
familiar location where they are already used (for et-al-min etc), and  
wouldn’t clutter up the conditional statement with complex attributes,  
some of which work together and some of which don’t.

I know it’s late in the day on this item, but this solution does seem  
like a good fit, and I’m curious what people think. It would  
certainly be simple to implement, and it would leverage the existing  
substitution logic very nicely.

Frank

---

<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:** [April 6, 2009, 3:38pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/2 "2009-04-06T15:38:32Z")

</div>

I’m open to other solutions, but am not sure exactly what you’re  
proposing. Care to give an example?

Bruce

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 6, 2009, 10:46pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/3 "2009-04-06T22:46:37Z")

</div>

> I’m open to other solutions, but am not sure exactly what you’re  
> proposing. Care to give an example?

Here’s the concept in test form.

Frank

[sort\_NumberOfAuthorsAsKey.txt](https://canada1.discourse-cdn.com/flex029/uploads/citationstyles/original/1X/32feb16cbeb2f6c8bffe95f602450fa726c8acb0.txt) (2.08 KB)

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 6, 2009, 11:05pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/4 "2009-04-06T23:05:30Z")

</div>

> > I’m open to other solutions, but am not sure exactly what you’re  
> > proposing. Care to give an example?
> 
> Here’s the concept in test form.

Here’s another test that illustrates what the output of form=“count” would be.

Frank

[name\_AuthorCount.txt](https://canada1.discourse-cdn.com/flex029/uploads/citationstyles/original/1X/2f879377b1ce67aa23a0220d6ba3f938198fc4c8.txt) (1.16 KB)

---

<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:** [April 7, 2009, 12:44am UTC](https://discourse.citationstyles.org/t/counting-authors/592/5 "2009-04-07T00:44:47Z")

</div>

OK, now I’m getting confused by the syntax. 🙂

Can we pull back and try to pin down the conceptual difference, and  
why you think what you’re proposing is easier? I gather part of it is  
that the counting is limited to (contributor) names. Is there  
something else?

Bruce

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 7, 2009, 1:39am UTC](https://discourse.citationstyles.org/t/counting-authors/592/6 "2009-04-07T01:39:39Z")

</div>

> > > I’m open to other solutions, but am not sure exactly what you’re  
> > > proposing. Care to give an example?
> > 
> > Here’s the concept in test form.
> 
> OK, now I’m getting confused by the syntax. 🙂
> 
> Can we pull back and try to pin down the conceptual difference, and  
> why you think what you’re proposing is easier? I gather part of it is  
> that the counting is limited to (contributor) names. Is there  
> something else?

In the discussion, it was agreed that getting the author count in  
string form was key (so to speak). This just does that directly, by  
rendering the author set as a number. The CSL is more concise with  
this approach, and I think it would be easier to understand and to  
read.

A test based on count-max/count-min is attached for comparison. It’s  
based on what I gleaned from a quick reading of the discussion  
threads; if I’ve missed something please fix. The example assumes  
that will return a count value for the  
first non-nil element. If it returned a total value, you would need  
nesting on each of the three conditional branches, which would take an  
additional 15 lines of code or something.

Using form=“count” accomplishes the same thing, plus into the bargain  
it could be extended to support totals across namesets without too  
much pain, and with no changes to CSL syntax (i.e. by evaluating  
). With count-min/count-max, it’s  
more complicated to cover both use cases, and what gets counted and  
whether and how multiple variables are totaled is not plain from the  
CSL.

This only covers creator names, but extending form=“count” to cover  
other countable things (although I can’t think of a use case offhand)  
would not be difficult, if the need arises.

If I’ve missed something in how count-min/count-max is meant to work,  
I’ll stand corrected, of course.

Frank

[sort\_NumberOfAuthorsAsKeyCountMinMax.txt](https://canada1.discourse-cdn.com/flex029/uploads/citationstyles/original/1X/24b2b50458dd6afded4e605252b505f55b59aecb.txt) (2.37 KB)

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 7, 2009, 1:57am UTC](https://discourse.citationstyles.org/t/counting-authors/592/7 "2009-04-07T01:57:35Z")

</div>

> > > > I’m open to other solutions, but am not sure exactly what you’re  
> > > > proposing. Care to give an example?
> > > 
> > > Here’s the concept in test form.
> > 
> > OK, now I’m getting confused by the syntax. 🙂
> > 
> > Can we pull back and try to pin down the conceptual difference, and  
> > why you think what you’re proposing is easier? I gather part of it is  
> > that the counting is limited to (contributor) names. Is there  
> > something else?
> 
> In the discussion, it was agreed that getting the author count in  
> string form was key (so to speak). This just does that directly, by  
> rendering the author set as a number. The CSL is more concise with  
> this approach, and I think it would be easier to understand and to  
> read.
> 
> A test based on count-max/count-min is attached for comparison. It’s  
> based on what I gleaned from a quick reading of the discussion  
> threads; if I’ve missed something please fix. The example assumes  
> that will return a count value for the  
> first non-nil element. If it returned a total value, you would need  
> nesting on each of the three conditional branches, which would take an  
> additional 15 lines of code or something.

Actually, I was wrong about the number of extra lines needed to cope  
with substitutions if the variable counts were totalled. It would  
basically explode out of control; you would need to clone the entire  
condition statement inside each branch, for each variable added. You  
couldn’t use macros for it, unless there were a means of getting at  
the output of the text elements, and feeding them back into the count  
mechanism. So it looks like totals would basically be out, which cuts  
against generality.

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 7, 2009, 2:53am UTC](https://discourse.citationstyles.org/t/counting-authors/592/8 "2009-04-07T02:53:02Z")

</div>

I hadn’t thought things through completely. With form=“count”, you  
wouldn’t need an extra option attribute, because the count can be  
limited by end=“3”. And the situation if count-min/count-max supplies  
cross-variable totals is not quite as bad as I thought (although it’s  
still not pretty).

Amended test samples attached. Sorry for the extra traffic.

Frank

[sort\_NumberOfAuthorsAsKey.txt](https://canada1.discourse-cdn.com/flex029/uploads/citationstyles/original/1X/73e30dcdd93684796c9222c69c0428b1e5d0d10d.txt) (2.04 KB)

[sort\_NumberOfAuthorsAsKeyCountMinMax.txt](https://canada1.discourse-cdn.com/flex029/uploads/citationstyles/original/1X/4cb3fdf3c8d59b01c9ae2ecfd286e7138dcac175.txt) (3.07 KB)

---

<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:** [April 8, 2009, 3:45pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/9 "2009-04-08T15:45:37Z")

</div>

OK, this is a PITA.

Let’s go back to the source. Here’s the description from the AGU style guide:

“”"  
Organize the reference list by strict letter-by-letter alphabetization  
of the first item in the reference, as in the  
sequence of Lane, Le Pichon, Macaulay, MacDonald, McDonald, Sanders,  
Sandia National Laboratories, St.  
Amant, Urey, von Seggern.

List references by the same first author in the following order:

1. First author alone, list chronologically, earliest work first.
2. One coauthor, list alphabetically by coauthor and then chronologically.
3. Two or more coauthors (i.e., cited as “et al.” in text), list  
chronologically.

The following list illustrates this sequence:

Smith, A. (1989a),…  
Smith, A. (1989b),…  
Smith, A. (1991),…  
Smith, A., and C. Allen (1992),…  
Smith, A., and B. Frank (1995),…  
Smith, A., and B. Frank (1997),…  
Smith, A., L. Roberts, and T. Jones (1993),…  
Smith, A., T. Jones, and L. Roberts (1997),…

Use only initials for first names. Alphabetize different first authors  
having the same last name according to the  
initials of their first names. If their initials are the same,  
alphabetize them by their full names or by the last names  
of the second authors if any. Use first author and et al. for more  
than 10 authors: Smith, A., et al.  
"""

So suggestion #1 is to incorporate these exact examples into the tests  
(though see below b/c these examples aren’t as clear as they could  
be).

Suggestion #2 is that our next round of test files needs to deal with  
sorting more generally.

With that out of the way …

---

<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:** [April 8, 2009, 3:46pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/10 "2009-04-08T15:46:04Z")

</div>

OK, this is a PITA.

Let’s go back to the source. Here’s the description from the AGU style guide:

“”"  
Organize the reference list by strict letter-by-letter alphabetization  
of the first item in the reference, as in the  
sequence of Lane, Le Pichon, Macaulay, MacDonald, McDonald, Sanders,  
Sandia National Laboratories, St.  
Amant, Urey, von Seggern.

List references by the same first author in the following order:

1. First author alone, list chronologically, earliest work first.
2. One coauthor, list alphabetically by coauthor and then chronologically.
3. Two or more coauthors (i.e., cited as “et al.” in text), list  
chronologically.

The following list illustrates this sequence:

Smith, A. (1989a),…  
Smith, A. (1989b),…  
Smith, A. (1991),…  
Smith, A., and C. Allen (1992),…  
Smith, A., and B. Frank (1995),…  
Smith, A., and B. Frank (1997),…  
Smith, A., L. Roberts, and T. Jones (1993),…  
Smith, A., T. Jones, and L. Roberts (1997),…

Use only initials for first names. Alphabetize different first authors  
having the same last name according to the  
initials of their first names. If their initials are the same,  
alphabetize them by their full names or by the last names  
of the second authors if any. Use first author and et al. for more  
than 10 authors: Smith, A., et al.  
"""

So suggestion #1 is to incorporate these exact examples into the tests  
(though see below b/c these examples aren’t as clear as they could  
be).

Suggestion #2 is that our next round of test files needs to deal with  
sorting more generally.

With that out of the way …

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 8, 2009, 9:25pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/11 "2009-04-08T21:25:14Z")

</div>

> > I hadn’t thought things through completely. With form=“count”, you  
> > wouldn’t need an extra option attribute, because the count can be  
> > limited by end=“3”. And the situation if count-min/count-max supplies  
> > cross-variable totals is not quite as bad as I thought (although it’s  
> > still not pretty).
> 
> OK, this is a PITA.

Looks pretty on the page, though. 🙂

> Let’s go back to the source. Here’s the description from the AGU style guide:
> 
> “”"  
> Organize the reference list by strict letter-by-letter alphabetization  
> of the first item in the reference, as in the  
> sequence of Lane, Le Pichon, Macaulay, MacDonald, McDonald, Sanders,  
> Sandia National Laboratories, St.  
> Amant, Urey, von Seggern.
> 
> List references by the same first author in the following order:
> 
> 1. First author alone, list chronologically, earliest work first.
> 2. One coauthor, list alphabetically by coauthor and then chronologically.
> 3. Two or more coauthors (i.e., cited as “et al.” in text), list  
> chronologically.
> 
> The following list illustrates this sequence:
> 
> Smith, A. (1989a),…  
> Smith, A. (1989b),…  
> Smith, A. (1991),…  
> Smith, A., and C. Allen (1992),…  
> Smith, A., and B. Frank (1995),…  
> Smith, A., and B. Frank (1997),…  
> Smith, A., L. Roberts, and T. Jones (1993),…  
> Smith, A., T. Jones, and L. Roberts (1997),…
> 
> Use only initials for first names. Alphabetize different first authors  
> having the same last name according to the  
> initials of their first names. If their initials are the same,  
> alphabetize them by their full names or by the last names  
> of the second authors if any. Use first author and et al. for more  
> than 10 authors: Smith, A., et al.  
> “”"
> 
> So suggestion #1 is to incorporate these exact examples into the tests  
> (though see below b/c these examples aren’t as clear as they could  
> be).

Agreed, I’ll set this up.

> Suggestion #2 is that our next round of test files needs to deal with  
> sorting more generally.

Outputting the bibliography covers that, no?

---

<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:** [April 9, 2009, 1:10am UTC](https://discourse.citationstyles.org/t/counting-authors/592/12 "2009-04-09T01:10:34Z")

</div>

…

> No, the last two items should be in year order, ignoring all authors  
> but the first.

Are you sure? I’m re-reading the style guide, and I’m not seeing this.  
Can you point it out for me?

But, as I said, I think the guide is ambiguous.

Bruce

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 9, 2009, 3:21am UTC](https://discourse.citationstyles.org/t/counting-authors/592/13 "2009-04-09T03:21:01Z")

</div>

> …
> 
> > No, the last two items should be in year order, ignoring all authors  
> > but the first.
> 
> Are you sure? I’m re-reading the style guide, and I’m not seeing this.  
> Can you point it out for me?

Yes, very sure. Their example has Jones after Roberts.

---

<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:** [April 9, 2009, 2:23pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/14 "2009-04-09T14:23:55Z")

</div>

OIC; got it!

Let’s see if we can first describe this in plain English, as  
succinctly as possible. How about …

```
"sort by first author, then number of contributors/authors, then year"

```

… ?

Or am I missing the fact that it makes no difference if there are  
three or four or five author; that all of them get treated the same?

If yes, is there some necessary connection between this particular  
aspect of the rules, and the et al specification?

Bruce

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 9, 2009, 2:43pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/15 "2009-04-09T14:43:46Z")

</div>

> > > …
> > > 
> > > > No, the last two items should be in year order, ignoring all authors  
> > > > but the first.
> > > 
> > > Are you sure? I’m re-reading the style guide, and I’m not seeing this.  
> > > Can you point it out for me?
> > 
> > Yes, very sure. Their example has Jones after Roberts.
> 
> OIC; got it!
> 
> Let’s see if we can first describe this in plain English, as  
> succinctly as possible. How about …
> 
> “sort by first author, then number of contributors/authors, then year”
> 
> … ?
> 
> Or am I missing the fact that it makes no difference if there are  
> three or four or five author; that all of them get treated the same?

There’s a threshold. If there are two, they are placed in the second  
group, and the second author is used as key #3, then year as key #4.  
If there are more than three, the other authors become irrelevant –  
year effectively becomes key #3 for that group.

> If yes, is there some necessary connection between this particular  
> aspect of the rules, and the et al specification?

It’s just a succinct way (in the sense of not extending CSL or the  
implementations) of disabling the third key in the third group.

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 9, 2009, 10:31pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/16 "2009-04-09T22:31:40Z")

</div>

> > > > …
> > > > 
> > > > > No, the last two items should be in year order, ignoring all authors  
> > > > > but the first.
> > > > 
> > > > Are you sure? I’m re-reading the style guide, and I’m not seeing this.  
> > > > Can you point it out for me?
> > > 
> > > Yes, very sure. Their example has Jones after Roberts.
> > 
> > OIC; got it!
> > 
> > Let’s see if we can first describe this in plain English, as  
> > succinctly as possible. How about …
> > 
> > “sort by first author, then number of contributors/authors, then year”
> > 
> > … ?

FWIW, I’ve hooked up bibliographies in citeproc-js, done a trial  
implementation of form=“count”, and have sort\_NumberOfAuthorsAsKey  
passing. I’ll set up the AGU example as a test later today and see  
how that goes.

Andrea, if you have a little time do you have thoughts on the  
respective proposals? The essence is in the examples:

## Counting authors with form=“count”

> **[XBib](https://sourceforge.net/projects/xbiblio/)**
>
> Download XBib for free. Notice: Citation Style Language (CSL) development has moved to https://github.com/citation-style-language/ (only the xbiblio-devel mailing list is still in use). For up to date information on CSL, visit the project home at...

## Counting authors with count-max:

> **[XBib](https://sourceforge.net/projects/xbiblio/)**
>
> Download XBib for free. Notice: Citation Style Language (CSL) development has moved to https://github.com/citation-style-language/ (only the xbiblio-devel mailing list is still in use). For up to date information on CSL, visit the project home at...

Both do the same thing, by different means. The issue they address is  
the need to include an integer count of item contributors in the bib  
sort key, which is required by the sorting conventions of some common  
styles. (Personally, I’m fond of the form=“count” approach because  
it’s shorter and easier to code, but I won’t scream if the decision  
goes the other way. If we can reach consensus, though, we can put  
this one behind us.)

Frank

---

<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:** [April 9, 2009, 10:57pm UTC](https://discourse.citationstyles.org/t/counting-authors/592/17 "2009-04-09T22:57:08Z")

</div>

…

> FWIW, I’ve hooked up bibliographies in citeproc-js, done a trial  
> implementation of form=“count”, and have sort\_NumberOfAuthorsAsKey  
> passing. I’ll set up the AGU example as a test later today and see  
> how that goes.
> 
> Andrea, if you have a little time do you have thoughts on the  
> respective proposals? The essence is in the examples:
> 
> ## Counting authors with form=“count”
> 
> [XBib download | SourceForge.net](http://xbiblio.svn.sourceforge.net/viewvc/xbiblio/citeproc-js/branches/fbennett/std/humans/sort_NumberOfAuthorsAsKey.txt?revision=893&view=markup)
> 
> ## Counting authors with count-max:
> 
> [XBib download | SourceForge.net](http://xbiblio.svn.sourceforge.net/viewvc/xbiblio/citeproc-js/branches/fbennett/std/humans/sort_NumberOfAuthorsAsKeyCountMinMax.txt?revision=893&view=markup)
> 
> Both do the same thing, by different means.

And there’s the third option, which is only to support this as a  
parameter option.

Bruce

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 10, 2009, 4:01am UTC](https://discourse.citationstyles.org/t/counting-authors/592/18 "2009-04-10T04:01:03Z")

</div>

> …
> 
> > FWIW, I’ve hooked up bibliographies in citeproc-js, done a trial  
> > implementation of form=“count”, and have sort\_NumberOfAuthorsAsKey  
> > passing. I’ll set up the AGU example as a test later today and see  
> > how that goes.
> > 
> > Andrea, if you have a little time do you have thoughts on the  
> > respective proposals? The essence is in the examples:
> > 
> > ## Counting authors with form=“count”
> > 
> > [XBib download | SourceForge.net](http://xbiblio.svn.sourceforge.net/viewvc/xbiblio/citeproc-js/branches/fbennett/std/humans/sort_NumberOfAuthorsAsKey.txt?revision=893&view=markup)
> > 
> > ## Counting authors with count-max:
> > 
> > [XBib download | SourceForge.net](http://xbiblio.svn.sourceforge.net/viewvc/xbiblio/citeproc-js/branches/fbennett/std/humans/sort_NumberOfAuthorsAsKeyCountMinMax.txt?revision=893&view=markup)
> > 
> > Both do the same thing, by different means.
> 
> And there’s the third option, which is only to support this as a  
> parameter option.

True, but everyone is going to code the infrastructure anyway, so why  
restrict the functionality. In commerce that would make sense; the  
first version gives you AGU, for variants you need to move up to the  
deluxe version (which actually just runs additional parts of the same  
code but costs more). I must confess that I don’t like the idea of a  
single parameter governing hard-coded sort rules. Style designers  
will understand sorting, they might as well have access to the logic.  
I’m also not sure how you would stitch it in. Something like this?

Seems a bit like abandoning the field in the 10th inning somehow.

Frank

---

<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:** [April 10, 2009, 4:14am UTC](https://discourse.citationstyles.org/t/counting-authors/592/19 "2009-04-10T04:14:29Z")

</div>

…

> > And there’s the third option, which is only to support this as a  
> > parameter option.
> 
> True, but everyone is going to code the infrastructure anyway, so why  
> restrict the functionality.

You’re thinking about CSL from a programmer’s perspective. But we also  
need to think about it from the style author’s or the GUI designer’s  
perspective.

It is an option we need to consider. Each choice has trade-offs.

Bruce

---

<div class="post-metadata">

**Author:** ![Frank\_Bennett](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/frank_bennett/32/198_2.png) [@Frank\_Bennett](https://discourse.citationstyles.org/u/Frank_Bennett)\
**Post date:** [April 10, 2009, 5:43am UTC](https://discourse.citationstyles.org/t/counting-authors/592/20 "2009-04-10T05:43:40Z")

</div>

> …
> 
> > > And there’s the third option, which is only to support this as a  
> > > parameter option.
> > 
> > True, but everyone is going to code the infrastructure anyway, so why  
> > restrict the functionality.
> 
> You’re thinking about CSL from a programmer’s perspective. But we also  
> need to think about it from the style author’s or the GUI designer’s  
> perspective.
> 
> It is an option we need to consider. Each choice has trade-offs.

Sure thing. As I said, I won’t kick up a fuss however it’s settled.  
But my reservation isn’t driven by implementation worries, it is  
exactly about giving designers the freedom to choose. I can guess at  
what their views might be, but it’s just my guess, which is not known  
for its reliability. I wonder if Elena’s watching the traffic lately.

[Next page](https://discourse.citationstyles.org/t/counting-authors/592.md?page=2)
