# title casing

**URL:** https://discourse.citationstyles.org/t/title-casing/299
**Category:** CSL Development
**Created:** [July 21, 2007, 8:37pm UTC](https://discourse.citationstyles.org/t/title-casing/299 "2007-07-21T20:37:26Z")
**Posts on this page:** 11
**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: [July 21, 2007, 8:37pm UTC](https://discourse.citationstyles.org/t/title-casing/299/1 "2007-07-21T20:37:26Z")

</div>

John asked awhile ago about more title-case options in CSL. I haven’t  
done that because I wanted to stick to CSS/FO. Here’s what we have now:

```
  attribute text-transform { "none" | "lowercase" | "uppercase" | 

```

“capitalize” }?,

So I guess we’d just need one more option: maybe call it “headline”?  
Any other ideas?

Does anybody know if there’s been any discussion of adding this to CSS  
such that we could retain compatibility there?

The problem with all this is it depends on text processing. Automatic  
capitalization just seems so error prone, maybe more so when you go  
from the British (capitalize) to the US (headline) style.

Bruce

---

<div class="post-metadata">

### Author: ![Simon\_Kornblith](https://avatars.discourse-cdn.com/v4/letter/s/ce7236/32.png) [@Simon\_Kornblith](https://discourse.citationstyles.org/u/Simon_Kornblith)
#### Post date: [July 22, 2007, 5:43am UTC](https://discourse.citationstyles.org/t/title-casing/299/2 "2007-07-22T05:43:16Z")

</div>

> John asked awhile ago about more title-case options in CSL. I haven’t  
> done that because I wanted to stick to CSS/FO. Here’s what we have  
> now:
> 
> ```
> attribute text-transform { "none" | "lowercase" | "uppercase" |
> 
> ```
> 
> “capitalize” }?,
> 
> So I guess we’d just need one more option: maybe call it “headline”?  
> Any other ideas?

Can we call one “sentence” and the other “title”? This are the names  
CMS uses (8.166-8.167).

> Does anybody know if there’s been any discussion of adding this to CSS  
> such that we could retain compatibility there?

Doubtful, given how difficult it would be to implement.

> The problem with all this is it depends on text processing. Automatic  
> capitalization just seems so error prone, maybe more so when you go  
> from the British (capitalize) to the US (headline) style.

Yes. Some processors (those that use BibTeX conventions, where  
putting brackets around a letter disables automatic case changing)  
might be able to get this right. There will always be exceptions,  
both when converting sentence to title style (e.g., iMac → Imac) and  
when converting headline to sentence style (e.g., proper nouns).  
There’s no automated solution. These attributes could only be  
guidelines that parsers could either attempt to observe or ignore  
entirely.

Simon

---

<div class="post-metadata">

### Author: ![James\_Howison](https://avatars.discourse-cdn.com/v4/letter/j/ac8455/32.png) [@James\_Howison](https://discourse.citationstyles.org/u/James_Howison)
#### Post date: [July 22, 2007, 3:05pm UTC](https://discourse.citationstyles.org/t/title-casing/299/3 "2007-07-22T15:05:00Z")

</div>

My experience with BibDesk shows that this is a pretty big issue.  
It’s good to have the options you describe, but where would someone  
specify that a word is an Acronym and therefore should never be  
downcased?

It’s tempting to allow a user to have a list of Acronyms, but that  
would never work because of ones like IS (Information Science/Systems  
etc.)

The information has to be in the citation record.

One option is to force the user to {} protect acronyms in the title,  
but people find that very confusing in BibDesk/BibTex and so just {}  
protect the whole title, which then breaks styles. One option that  
we’ve considered is having a GUI checkbox next to the title that,  
when checked, {} wraps words in ALLCAPS, but that doesn’t work for  
Proper Names and wrapping all capitals seems a bit excessive.

Another option is specifying Capitalized tokens in another citation  
field, but that seems like even more work for the user.

The other situation is capitalization after things like : and ? or  
— but that can be handled.

If CSL is going to alter capitalization, how would it get its  
citation specific exception information from?

–J

---

<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 22, 2007, 4:01pm UTC](https://discourse.citationstyles.org/t/title-casing/299/4 "2007-07-22T16:01:59Z")

</div>

> > John asked awhile ago about more title-case options in CSL. I haven’t  
> > done that because I wanted to stick to CSS/FO. Here’s what we have  
> > now:
> > 
> > ```
> > attribute text-transform { "none" | "lowercase" | "uppercase" |
> > 
> > ```
> > 
> > “capitalize” }?,
> > 
> > So I guess we’d just need one more option: maybe call it “headline”?  
> > Any other ideas?
> 
> Can we call one “sentence” and the other “title”? This are the names  
> CMS uses (8.166-8.167).

I don’t like the idea of changing the standard CSS/FO names. Title  
should retain the CSS/FO meaning (which IIRC is what you call  
“sentence”) and we can call the other what you want to call it.

> > Does anybody know if there’s been any discussion of adding this to CSS  
> > such that we could retain compatibility there?
> 
> Doubtful, given how difficult it would be to implement.
> 
> > The problem with all this is it depends on text processing. Automatic  
> > capitalization just seems so error prone, maybe more so when you go  
> > from the British (capitalize) to the US (headline) style.
> 
> Yes. Some processors (those that use BibTeX conventions, where  
> putting brackets around a letter disables automatic case changing)  
> might be able to get this right. There will always be exceptions,  
> both when converting sentence to title style (e.g., iMac → Imac) and  
> when converting headline to sentence style (e.g., proper nouns).  
> There’s no automated solution. These attributes could only be  
> guidelines that parsers could either attempt to observe or ignore  
> entirely.

Right.

Bruce

---

<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 22, 2007, 4:11pm UTC](https://discourse.citationstyles.org/t/title-casing/299/5 "2007-07-22T16:11:12Z")

</div>

> My experience with BibDesk shows that this is a pretty big issue.  
> It’s good to have the options you describe, but where would someone  
> specify that a word is an Acronym and therefore should never be  
> downcased?
> 
> It’s tempting to allow a user to have a list of Acronyms, but that  
> would never work because of ones like IS (Information Science/Systems  
> etc.)

I think this is what Bookends does.

> The information has to be in the citation record.
> 
> One option is to force the user to {} protect acronyms in the title,  
> but people find that very confusing in BibDesk/BibTex and so just {}  
> protect the whole title, which then breaks styles. One option that  
> we’ve considered is having a GUI checkbox next to the title that,  
> when checked, {} wraps words in ALLCAPS, but that doesn’t work for  
> Proper Names and wrapping all capitals seems a bit excessive.

One idea kicking around the Zotero forums was using CSS classes for  
doing what some users are asking for in notes and such: rich text. So  
use a class like “species-name” for latin species names, and specify  
italic there.

That could translate well to this context because you could also reuse  
semantic xhtml structure like abbr.

But there’s still the question of UI. Maybe when entering such a title  
an application could flag possible words that need special treatment,  
and the user could select the class or structure to apply to it?

So imagine I enter: “The ABC of Tao” or some such.

The app highlights “ABC” and the user can select an acronym option. Or  
maybe it automatically applies it (b/c easy in this case) but the user  
can change.

> Another option is specifying Capitalized tokens in another citation  
> field, but that seems like even more work for the user.
> 
> The other situation is capitalization after things like : and ? or  
> — but that can be handled.
> 
> If CSL is going to alter capitalization, how would it get its  
> citation specific exception information from?

Yeah, this is an ugly, ugly problem.

I think we have to allow it be specified in the CSL, but have to leave  
it to others how to implement.

Bruce

---

<div class="post-metadata">

### Author: ![James\_Howison](https://avatars.discourse-cdn.com/v4/letter/j/ac8455/32.png) [@James\_Howison](https://discourse.citationstyles.org/u/James_Howison)
#### Post date: [July 22, 2007, 6:53pm UTC](https://discourse.citationstyles.org/t/title-casing/299/6 "2007-07-22T18:53:41Z")

</div>

> > My experience with BibDesk shows that this is a pretty big issue.  
> > It’s good to have the options you describe, but where would someone  
> > specify that a word is an Acronym and therefore should never be  
> > downcased?
> > 
> > It’s tempting to allow a user to have a list of Acronyms, but that  
> > would never work because of ones like IS (Information Science/Systems  
> > etc.)
> 
> I think this is what Bookends does.
> 
> > The information has to be in the citation record.
> > 
> > One option is to force the user to {} protect acronyms in the title,  
> > but people find that very confusing in BibDesk/BibTex and so just {}  
> > protect the whole title, which then breaks styles. One option that  
> > we’ve considered is having a GUI checkbox next to the title that,  
> > when checked, {} wraps words in ALLCAPS, but that doesn’t work for  
> > Proper Names and wrapping all capitals seems a bit excessive.
> 
> One idea kicking around the Zotero forums was using CSS classes for  
> doing what some users are asking for in notes and such: rich text. So  
> use a class like “species-name” for latin species names, and specify  
> italic there.
> 
> That could translate well to this context because you could also reuse  
> semantic xhtml structure like abbr

Yeah, I think that’s the way to go. Classes are ideal for that.

Which citation format, eg mods, allow that though?

Agree though that it isn’t a prob of CSL as long as it can use the  
classes. So basically there’d be different capitalization actions for  
the different classes. Cool.

–J

---

<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 22, 2007, 6:59pm UTC](https://discourse.citationstyles.org/t/title-casing/299/7 "2007-07-22T18:59:38Z")

</div>

MODS does not; but RDF does.

```
<dc:title rdf:parseType="Literal">The <x:abbr>ABC</x:abbr> of 

```

Tao\</dc:title\>

Bruce

---

<div class="post-metadata">

### Author: ![James\_Howison](https://avatars.discourse-cdn.com/v4/letter/j/ac8455/32.png) [@James\_Howison](https://discourse.citationstyles.org/u/James_Howison)
#### Post date: [July 22, 2007, 7:43pm UTC](https://discourse.citationstyles.org/t/title-casing/299/8 "2007-07-22T19:43:02Z")

</div>

Nice, so Zotero is using RDF to store references?

–J

---

<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 22, 2007, 7:53pm UTC](https://discourse.citationstyles.org/t/title-casing/299/9 "2007-07-22T19:53:51Z")

</div>

No; SQLite. They use it as the primary import/export format, though. If  
you think of rdf resources as something like tables and URIs as primary  
keys, it’s actually better fit than something like MODS.

It would be smart for Mozilla to put an RDF layer on top of SQLite as  
an option though. I’m not sure that extensions like Zotero ought to  
need to deal with SQL and such.

Bruce

---

<div class="post-metadata">

### Author: ![Simon\_Kornblith](https://avatars.discourse-cdn.com/v4/letter/s/ce7236/32.png) [@Simon\_Kornblith](https://discourse.citationstyles.org/u/Simon_Kornblith)
#### Post date: [July 22, 2007, 8:36pm UTC](https://discourse.citationstyles.org/t/title-casing/299/10 "2007-07-22T20:36:04Z")

</div>

None of the CSS/FO standard names do what we want. text-transform:  
capitalize sets the first letter of each word to uppercase.  
Obviously, when capitalizing titles, this is not what we want to do.  
We want to use title case, which has much more complicated rules than  
this. If we go with the CSS names, then we’re implementing CSS  
incorrectly. In addition to being ambiguously named, the CSS options  
don’t do what we want.

I’m open to the idea of using a different attribute to take care of  
title case/sentence case, but I believe that, if we use a CSS  
property, we should implement it as it is in CSS.

Simon

---

<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 22, 2007, 8:43pm UTC](https://discourse.citationstyles.org/t/title-casing/299/11 "2007-07-22T20:43:56Z")

</div>

> > I don’t like the idea of changing the standard CSS/FO names. Title  
> > should retain the CSS/FO meaning (which IIRC is what you call  
> > “sentence”) and we can call the other what you want to call it.
> 
> None of the CSS/FO standard names do what we want. text-transform:  
> capitalize sets the first letter of each word to uppercase.  
> Obviously, when capitalizing titles, this is not what we want to do.  
> We want to use title case, which has much more complicated rules than  
> this. If we go with the CSS names, then we’re implementing CSS  
> incorrectly. In addition to being ambiguously named, the CSS options  
> don’t do what we want.

Right, right; my bad. I forgot there’s no “title” option in CSS. For  
some reason I was thinking there was.

> I’m open to the idea of using a different attribute to take care of  
> title case/sentence case, but I believe that, if we use a CSS  
> property, we should implement it as it is in CSS.

Agreed.

So I don’t care that much then how we do it.

Bruce
