Variant-Names
Wie bereits in der Einleitung erläutert, können Sie Varianten von Topic-Names für verschiedene Zwecke definieren. Lassen Sie sich beim Begriff Topic-Names und Variant-Names nicht in die Irre führen. Es sind damit nicht Namen, sondern eher (mehr oder weniger eindeutige) Bezeichner. Für unterschiedliche Anwendungen oder Kontexte (also Situationen) kann dieser Bezeichner variieren. Mit Hilfe der Variant-Names können Sie solche speziellen Bezeichner für einen Topic-Name festlegen.
Da diese Varianten für spezielle Kontexte sind, können Sie neben Werten (Zeichenketten) auch Informationsressourcen annehmen. Zunächst soll aber ein Variant-Name eine Zeichenkette sein. Das Beispiel illustriert, wie man ein Variant-Name eines Topic-Names erstellt.
// Variant-Name für tn1
Variant tn1_en = tn1.createVariant("Website of TU Ilmenau", null);
Mit Hilfe der Funktion createVariant können Sie, wie im Beispiel gezeigt, einen neuen Variant-Name erstellen. Der zweite Parameter der Funktion (hier null) gibt den Scope an. Ähnlich wie bei Topic-Names, ist der Scope eine Menge von Topics. Im o.g. Beispiel wird die Erstellung einer englischen Sprachvariante des Topic-Names tn1 demonstriert. Dazu wird zunächst eine neue Variante ohne Scopes erzeugt. Der Scope kann folgendermaßen hinzugefügt werden:
// Topic das als Scope dienen soll Topic english = tm.createTopic(); // Scope hinzufügen tn1_en.addScopingTopic(english);
Die Funktion addScopingTopic hat der Variant-Name vom Scoped-Object geerbt. Die Vorgehensweise ist von den Topic-Names schon bekannt.
Natürlich können Sie einen oder mehrere Scopes bereits bei der Erstellung des Variant-Names erzeugen. Ähnlich dem Beispiel des Topic-Names wird dabei zunächst eine Menge von Topics erzeugt, die im Anschluss der Funktion createVariant als zweiten Parameter übergeben wird. Die notwendigen Schritte werden im folgenden Beispiel erläutert:
// Topic das als Scope dienen soll
Topic english = tm.createTopic();
// Sammlung der Scopes
Collection scopes_en = new Collection();
// Topic hinzufügen
scopes_en.add(english);
// Variant mit Scopes erstellen
Variant tn1_en = tn1.createVariant("Website of TU Ilmenau", scopes_en);
Nachdem Sie nun Scopes hinzufügen können und bereits wissen wie Sie sie löschen können, erfahren Sie im nächsten Abschnitt, wie Sie mit Werten der Variant-Names umgehen können.