2.1 X500 Distinguished Name
X500 DNs uniquely identify Address Book objects in the OAB. Each Address Book object MUST have a unique X500 DN value. The server stores the X500 DN in the PidTagEmailAddress property, as specified in [MS-OXOABK] section 2.2.3.14. The following Augmented Backus-Naur Form (ABNF) definition, as specified in [RFC5234], specifies the format of an X500 DN.
-
x500-dn = org org-unit 0*13(container) object-rdn ; x500-dns are limited to 16 levels template-x500-dn = org [org-unit] 0*13(container) object-rdn org = "/o=" rdn org-unit = "/ou=" rdn container = "/cn=" rdn object-rdn = "/cn=" rdn rdn = ( non-space-teletex ) / ( non-space-teletex *62(teletex-char) non-space-teletex ) ; rdn values are limited to 64 characters ; the number of rdns is limited to 16 but the ; total cumulative length of rdn characters in ; an x500-dn is limited to 256. teletex-char = SP / non-space-teletex non-space-teletex = "!" / DQUOTE / "%" / "&" / "\" / "(" / ")" / "*" / "+" / "," / "-" / "." / "0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9" / ":" / "<" / "=" / ">" / "?" / "@" / "A" / "B" / "C" / "D" / "E" / "F" / "G" / "H" / "I" / "J" / "K" / "L" / "M" / "N" / "O" / "P" / "Q" / "R" / "S" / "T" / "U" / "V" / "W" / "X" / "Y" / "Z" / "[" / "]" / "_" / "a" / "b" / "c" / "d" / "e" / "f" / "g" / "h" / "i" / "j" / "k" / "l" / "m" / "n" / "o" / "p" / "q" / "r" / "s" / "t" / "u" / "v" / "w" / "x" / "y" / "z" / "|" addresslist-x500-dn = "/guid=" 32(HEXDIG) / "/" / x500-dn