Eine etwas überarbeitete, neue Version befindet sich in den Best Practices hier:
Notes NamensystemDas
Notes-Namensystem hat seine Wurzel in verschiedenen Definitionen.
Ursprünglich gab es einen flachen Namen, er bestand nur aus Vorname und Name:
"Jens-B. Augustiny"
Den können wir gleich mal wieder vergessen, denn Notes 6 akzeptiert einen flachen Namen nur noch sehr beschränkt, und seit R5 kann man keine Notes-IDs mehr erstellen, die nur einen flachen Namen haben.
Der Hierarchische Name:Dieser ist nach der von der ITU vor vielen Jahren festgelegten Adressierungs-Norm X.400 gebildet (wobei X.400 mehr als nur die Adresse definiert).
Diese Adressierungs-Norm basiert auf einem Schlüsselwort-Format, welches ähnlich wie in einer INI-Datei die Bestandteile mit "Keyword = Value" definiert. Damit die Adressierung in einer einzigen Zeile erfolgen kann, werden die einzelnen Werte durch einen / getrennt. Beispiel folgt später.
Weiter wurde die Internet-Adressierung mit einbezogen (SMTP-Format). Dabei nutzt Notes selber normalerweise die Adresse im X.400 Format. Als letzte Komponente im Notes-Namensystem gibt es die LDAP-Integration.
Die von Notes genutzten Teile findet man einerseits unter dem
LotusScript Object NotesName und andererseits unter der @Function
@Name dokumentiert, wenn auch so ziemlich ohne nützliche Beispiele.
Notes implementiert eigentlich alle X.400 Attribute der Adresse, hat damit natürlich auch die Möglichkeit, irgendwelche X.400 Messaging-Systeme zu nutzen. Es gab eine Zeit, da war der Dokumentenaustausch auf der Basis von EDI (Electronic Document Interchange, das basiert auf X.400) recht verbreitet, wird aber unterdessen unter dem Einfluss des Internets von anderen Technologien abgelöst. Besondere Verbreitung findet EDI und anverwandte noch im Bankenbereich, bei Versicherungen und im [internationalen] Handel. In diesen Bereichen wird es noch lange dauern, bis EDI verschwindet.
Hier die in Notes implementierten X.400-Attribute:a) Diese Attribute werden von Notes benutzt:
CN "common name": entspricht dem alten, flachen Namen: "CN=Jens-B. Augustiny", nicht sicher, ob dieses Keyword in X.400 existiert oder ob es nur Notes-Spezifisch ist.
OU "organizational unit": Abteilung, dabei lassen sich bis zu 4 "Unterorganisationen" verwenden: "OU=Software/OU=Bern"
O "organization" : Firma, Behörde oder was immer die "rechtliche Einheit" ist: "O=Ligonet"
C "country", Landeskürzel (2stellig nach ISO-Norm): "C=CH"
b) die folgenden Attribute werden von Notes nicht benutzt, existieren aber und werden von der NotesName-Klasse korrekt wiedergegeben:
G "given name": Vorname: "G=Jens-B."
I "initial" : Initialen: "I=JBA"
S "surname" : Nachname: "S=Augustiny"
Q "generation" : Jr oder Sr ..... : "Q=Jr"
A "ADMD name" : in der X.400-Definition ausgeschrieben als ADMD= : Da man bei der Definition von X.400 (erste Version: 1984, zweite, stark veränderte Version 1988) noch völlig von regulierten Postsystemen ausgegangen ist, damit also eine Kommunikation von Firma zu Firma immer über einen staatlichen Messaging-Dienst zu gehen hatte, muss jede X.400-Adresse eine ADministrative Messaging Domain haben, an der die Firma angeschlossen ist. Das waren dann natürlich die staatlichen Postdienste.
"A=Swisscom"
P "PRMD name" : Auch das in X.400 ausgeschrieben als PRMD= : Das ist dann der "Hauspostdienst", also der nichtstaatliche Mailvermittler, PRivate Management Domain. Heute würde man Provider sagen:
"P=Green" (schlechtes Beispiel, weil die kein X.400 anbieten, ich weiss aber tatsächlich keinen, der das noch als Provider macht)
Also, hier noch einmal:
Flat Name:
"Jens-B. Augustiny"
X.400 Name:
"C=CH/ADMD=Swisscom/PRMD=Green/O=Ligonet/OU=Bern/OU=Software/I=JBA/S=Augustiny/G=Jens-B."
X.400 Name in Notes-Schreibweise:
"C=CH/A=Swisscom/P=Green/O=Ligonet/OU=Bern/OU=Software/I=JBA/S=Augustiny/G=Jens-B."
Notes-Name:
"CN=Jens-B. Augustiny/OU=Software/OU=Bern/O=Ligonet/C=CH"
Notes-Name Abbreviated:
"Jens-B. Augustiny/Software/Bern/Ligonet/CH"
Gibt man das nun in NotesName ein, bekommt man folgende Attribute besetzt:
Abreviated = "Jens-B. Augustiny/Software/Bern/Ligonet/CH"
Country = "CH"
Canonical = "CN=Jens-B. Augustiny/OU=Software/OU=Bern/O=Ligonet/C=CH"
Common = "Jens-B. Augustiny"
Organisation = "Ligonet"
Orgunit1 = "Bern"
Orgunit2 = "Software"
Keyword = "CH\Ligonet\Bern\Software" (speziell für Ansichten, siehe Hilfe zu @Name)
** Soweit die Notes-Interna und was damit zusammenhängt.
Füttert man
NotesName eine
Internet-Adresse, dann wird diese ebenfalls ganz vernünftig auseinander genommen:
"Jens-B. Augustiny" <jba@ligonet.ch> wird wie folgt aufgelöst:
Abbreviated = """Jens-B. Augustiny"" <jba@ligonet.ch>"
Canonical = """Jens-B. Augustiny"" <jba@ligonet.ch>"
Common = """Jens-B. Augustiny"""
Keyword = """Jens-B. Augustiny"" <jba@ligonet.ch>"
Addr822Phrase = """Jens-B. Augustiny"""
Addr822Localpart = "jba"
Addr821 = "jba@ligonet.ch"