# contextual labels for non-numeric page ranges

**URL:** <https://discourse.citationstyles.org/t/contextual-labels-for-non-numeric-page-ranges/1117>\
**Category:** CSL Development\
**Created:** [August 27, 2012, 10:48pm UTC](https://discourse.citationstyles.org/t/contextual-labels-for-non-numeric-page-ranges/1117 "2012-08-27T22:48:38Z")\
**Posts on this page:** 3\
**Page:** 1

<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:** [August 27, 2012, 10:48pm UTC](https://discourse.citationstyles.org/t/contextual-labels-for-non-numeric-page-ranges/1117/1 "2012-08-27T22:48:38Z")

</div>

see e.g. here: [http://forums.zotero.org/discussion/23575/mhra-style-multiple-pages-in-roman-numeral-pagination/](http://forums.zotero.org/discussion/23575/mhra-style-multiple-pages-in-roman-numeral-pagination/)

Currently, when a page range is non-numerical - including roman  
numbers such as x-xv - citeproc-js treats it as a single unit, so e.g.  
a page range x-xv is labaled as p. instead of pp. etc.

How do other CSL implementation handle this?  
Is there any reason not to change this behavior so that everything  
with a hyphen is considered plural or something along those lines?  
Best,--------  
Sebastian Karcher  
Ph.D. Candidate  
Department of Political Science  
Northwestern University

---

<div class="post-metadata">

**Author:** ![Rintze\_Zelle](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.citationstyles.org/rintze_zelle/32/175_2.png) [@Rintze\_Zelle](https://discourse.citationstyles.org/u/Rintze_Zelle)\
**Post date:** [August 31, 2012, 2:54am UTC](https://discourse.citationstyles.org/t/contextual-labels-for-non-numeric-page-ranges/1117/2 "2012-08-31T02:54:21Z")

</div>

I agree with Sebastian that this would be desired behavior. I don’t think  
we need to mention it explicitly in the spec though (a unit test would be  
nice).

Rintze

---

<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:** [August 31, 2012, 6:11am UTC](https://discourse.citationstyles.org/t/contextual-labels-for-non-numeric-page-ranges/1117/3 "2012-08-31T06:11:45Z")

</div>

Done for citeproc-js, in release 1.0.384. The logic will only set  
plurals where there is a numeric unit on either side of a hyphen or  
en-dash. Numeric units are strings ending in a number, or alphabetic  
strings consisting entirely of characters appropriate to a roman  
numeral.

Pluralisation could be made more indiscriminate, but in that case you  
might want to document a method of escaping it in the spec  
(citeproc-js honours a backslash escape on the hyphen character).

Frank
