他の名前も見くらべてみた結果、ルールは次のようになっていると考えられまます。
- 空白やハイフン等の記号は無視する。
- 各々の語は頭文字を大文字、それ以外の文字を小文字とする。
- ただし、最初の語はすべての文字を小文字とする。
ご質問の例はもともと
SAM account name
だと思われます。SAMはSecurity Account Managerの略ですが、このような頭字語は一文字ずつが「語」であると考えることができます。よって上のルールに従って、
SAMaccountname
SAMAccountName
sAMAccountName
となります。
とは言っても、マイクロソフト自身の文書にも、まれにこのルールを逸脱した表記が見えます (「objectSid」としている例)。
また、cn、dc、o、ou、sn、uidのようなものは、たいてい全部小文字や全部大文字で書かれますね (これは下記のX.500でもそうです)。
以下ほぼ余談です。この「空白や記号を使わない」「最初は必ず小文字」という命名規則の根拠になるものを探してみましたが、見つけられませんでした。
LDAPでは「英字で始まり、英字、数字、ハイフンを含む」「大文字小文字は区別されない」ということだけ定めています (RFC 4512, 1.4)。
Active DirectoryやLDAPのもとになったX.500シリーズの規格書も流し読みしてみましたが、そのようなルールは記されていないようです。しかし、X.500の第1次規格 (1988年) の時点ですでに、標準的な属性名等の識別子はこのルールに沿って命名されています。そういう慣習が、昔からあったのでしょうかね。