Einführung in eingegrenzte Namen und Namensräume im Rahmen der Lehre formaler Sprachen. [] (Namensraum, namespace, name space, qualified name, Namensbereich, Namensbereiche), Lektion, Seite 721036
https://www.purl.org/stefan_ram/pub/formal_namensraum_de (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram

Benannte Namensräume

Namensräume

Ein Name hat in einfachen Fällen eine bestimmte Bedeutung.

Oft hängt die Bedeutung eines Namens jedoch von einem bestimmten Zusammenhang ab.

So kann der Namen „Schmidt“ in einem bestimmten Raum eindeutig eine bestimmte Person bezeichnen.

In einem anderen Raum kann es jedoch zwei Schmidt geben, und der Name ist nicht mehr eindeutig.

Um weiterhin eindeutig sprechen zu können, kann dem Namen jedoch der Vorname beigefügt werden.

„Gertrud Schmidt“ und „Walter Schmidt“ können dann beispielsweise wieder eindeutige Angaben einer Person sein.

Man kann die Situation nun auch beschreiben, indem man sagt, daß der Vorname hier dem Nachnamen „Schmidt“ erst eine bestimmte Person zuordne: Der Vorname „Gertrud“ ordnet dem Nachnamen „Schmidt“ die Person Gertrud Schmidt zu, Der Vorname „Walter“ ordnet dem Nachnamen „Schmidt“ die Person Walter Schmidt zu.

Der Vorname „Gertrud“ ordnet dem Vornamen „Schmidt“ eine Bedeutung zu [UML]
.------------.                      .-----------------.
| <<Name>> | * Gertrud > 1 | <<Person>> |
|------------|----------------------|-----------------|
| "Schmidt" | | Gertrud Schmidt |
'------------' '-----------------'
Der Vorname „Walter“ ordnet dem Nachnamen „Schmidt“ eine Bedeutung zu [UML]
.------------.                      .-----------------.
| <<Name>> | * Walter > 1 | <<Person>> |
|------------|----------------------|-----------------|
| "Schmidt" | | Walter Schmidt |
'------------' '-----------------'

Etwas, das einem Namen eine Bedeutung gibt, wird auch als Namensraum  bezeichnet. Man denkt dabei wohl daran, daß ein Namensraum alle seine Namen „enthält“.

Vornamen als Namensräume sind selber Namen, sie sind also benannte Namensräume.

Um einen Namen eindeutig zu notieren kann man ihn zusammen mit dem Namen seinen Namensraums notieren, wie eben in „Gertrud Schmidt“. Sprachlich handelt es sich hierbei um eine sogenannte „enge Apposition“, bei der „Gertrud“ als Determinatum (Kern, Grundwort) und „Schmidt“ als Determinans (Satellit, Bestimmungswort) auftritt. Diese Schreibweise ist aber nicht die einzig mögliche, man findet auch die Schreibweise „Schmidt, Gertrud“ oder die Sprechweise „Schmidt-Gertrud“. Das zeigt, daß bei der Kombination verschiedenen Reihenfolgen und Trennzeichen möglich sind.

Einen durch solch eine Kombination gebildeten bestimmten Namen nennt man in technischen Zusammenhängen auch einen „qualifizierten Namen“, also einen „(durch einen Namensraum) bestimmten Namen“.

Namensräume werden meistens dann verwendet, wenn es so viele verschiedene Dinge gibt, daß einfache Namen (Trivialnamen) zur Bezeichnung zu unübersichtlich wären.

Man bezeichnet die Anzahl der Namen eines Namensraums auch als dessen „Größe“.

Die Situation, in der es nur einfache Namen ohne Aufteilung in Namensräume gibt, beschreibt man manchmal auch dadurch, daß man dann sagt, es gäbe in ihr nur einen einzigen „großen“ Namensraum. Diesen Namensraum aller Namen nennt man dann auch manchmal den „globalen“ Namensraum.

Ein Name, der nicht weiter zerlegt werden kann, wird auch als „Trivialname“ bezeichnet, während ein zerlegbarer Name auch „komplexer Name“ oder „systematischer Name“ genannt wird. So ist beispielsweise „Gertrud Schmidt“ komplex und „Gertrud“ trivial.

Beispiele aus der Datenverarbeitung

In der Datenverarbeitung wird zur Trennung von Namensraum und Namen beispielsweise der Schrägstrich "/", der Rückstrich "\", das kommerzielle A "@", der Punkt "." oder der doppelte Doppelpunkt "::" eingesetzt. Solch ein Trenntext wird manchmal auch als Bereichsauflösungsoperator  (scope resolution operator ) bezeichnet, weil er dazu dient den Namensraum („Bereich“) zu einem lokalen Namen anzugeben.

Die Adresse eine Postfaches für Netznachrichten, wie beispielsweise "someone@example.com", ist ein qualifizierter Name. Der Bereich "example.com" spielt dabei die Rolle des Namensraumes für den Namen eines individuellen Postfaches, wie beispielsweise "someone". Zwischen beiden steht als Trennzeichen das kommerzielle A, das 1971 von Ray Tomlinson  erstmals für diesen Zweck eingesetzt wurde.

Verzeichnisse eines UNIX -Dateisystems sind Namensräume für die darin enthaltenen Einträge (wie beispielsweise Dateien). So kann eine Datei "Notiz" in einem Verzeichnis "Privat" enthalten sein. Bei UNIX  wird ein Schrägstrich "/" zur Trennung von Namensraum und Eintrag verwendet. Die Datei hat daher den qualifizierten Namen "Privat/Notiz". In einem anderen Verzeichnis könnte es wieder eine andere Datei mit dem gleichen Eintrag "Notiz" geben, der aber dort eine andere Datei bezeichnet.

Solch ein qualifizierter Name eines Dateisystems wird auch als Pfad  bezeichnet. Dabei stellt man sich vor, daß dieser den Weg beschreibt, den man zu der Datei nehmen muß: „Gehe erst in das Verzeichnis "Privat" und dann zur Datei "Notiz"! “

Der Pfad "Privat/Notiz"
              | Privat/Notiz
|
Privat |
.------------ | --------------.
| | |
| V |
| .---------. |
| | Notiz | |
| '---------' |
| |
'-----------------------------'

In der Programmiersprache Java  hat die Methode zum Berechnen einer Pseudozufallszahl den qualifizierten Namen "Math.random" und in der Programmiersprache C++  hat die entsprechende Funktion den qualifizierten Namen "::std::rand". Auch hier wird wieder ein Namensraum vorangestellt, der einmal durch einen Punkt "." und einmal durch einen doppelten Doppelpunkt "::" von dem nachfolgenden Eintrag getrennt ist, wie er auch in der Programmiersprache Perl  verwendet wird.

Der aktuelle Namensraum

Um die komplizierte Angaben komplexer Namen zu vermeiden, wenn ohnehin die meisten Namen aus demselben Namensraum stammen, wird manchmal ein „aktueller Namensraum“ vereinbart. Alle Namen sind dann als Namen dieses Namensraums zu verstehen, wenn nichts anderes angegeben wird. Solch ein aktueller Namensraum kann bei Zusammenkünften von Menschen in einem Raum dieser Raum sein (dort reicht oft der Vorname zur Identifikation aus).

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Von der Stefan-Ram-Startseite ausgehend finden sich oft noch mehr Informationen zu Themen, die auf einer Seite angesprochen wurden. (Eine Verbindung zur Stefan-Ram-Startseite befindet sich ganz oben auf dieser Seite.)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram721036 stefan_ram:721036 slrprd, slrprdqxx, slrprddoc, slrprd721036, slrprddef721036, PbclevtugFgrsnaEnz

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten.
https://www.purl.org/stefan_ram/pub/formal_namensraum_de