Take the 2-minute tour ×

Ok, I understand what CamelCase is. This question is relating to how to CamelCase the shortened version of Property List (PList). I am asking this because I am working on a PList parser in C# and knowing how everything in .NET is CamelCase, I am wondering, should it be PList or Plist (also why)?

share|improve this question

4 Answers 4

up vote 6 down vote accepted

The rules for Pascal Casing in .NET are about as follows:

  • acronyms and abbreviations of one or two letters are all-uppercase (XPath, ACCurrent, VWBeetle)
  • full words and abbreviations of three or more letters have one uppercase letter and the rest lowercase (XmlDocument, AspLover, BmwDriver)
  • note that two-letter words that are not abbreviations are first-uppercase, not all-uppercase: StopAndGo, not StopAndGO
  • also note that the original capitalization of a word (even a brand name) is never honored unless it coincides with the above rules: IPhone, not iPhone, Asp, not ASP, DotNet, not DotNET.

Since the 'P' is short for 'property', and 'list' is a full word, the correct capitalization is PList. Plist would suggest that 'plist' were one word, which it isn't. (And the reader knows it has to be P-list, not PL-ist, because if 'ist' were a full word, it would have to be PLIst.)

share|improve this answer

In the case of OS X property lists they are usually referred to as ".plist" or "Property List." I would recommend not using the shortened version because that is not the actual name of the file type, but the extension.

.NET is not actually CamelCase, but Pascal Casing; camel casing traditionally has the first letter be lowercase and further letters uppercase, while Pascal case has the first letter be uppercase. You may remove the rest of a word and retain the uppercase (as in "PList") but you shouldn't do that anyway, because its less descriptive. Additionally, .NET casing style requires that any acronym that is three or more letters be lowercased after the first letter, such that "Graphics Display Interface Tool" would be "GdiTool", NOT "GDITool".

share|improve this answer
Yes, but it is not System.ExtensibleMarkupLanguage now is it? –  Cole Johnson Jun 17 '12 at 4:41
It's also not System.XMLanguage either ;) –  Skrylar Jun 17 '12 at 8:24
The problem with the PList or Plist is very specific. "P" is a shortcut for Property. In this case, when you develop "clean development" it should be PropertyList, otherwise if you are using P as a prefix it should be uppercase and the "list" is a new word so uppercase too. –  Smokefoot Jun 17 '12 at 11:10

The camel case convention suggests that each distinct word joined into an identifier should have its first character capitalized. So for public .NET identifiers, I would go with PList.

(the convention in .NET for private identifiers is to start with a lower case character though, so for class or routine variables it would be pList).

share|improve this answer

You know something's wrong when you worry over such trivialities. Choose whichever one suits you best and get back to worrying over making the code work.

share|improve this answer

Your Answer


