Definieren von Hyperlinks

www.altova.com Alle erweitern/reduzieren Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  SPS-Datei: Komplexe Funktionen > Inhaltsverzeichnis, Referenzierung, Lesezeichen > Lesezeichen und Hyperlinks >

Definieren von Hyperlinks

Hyperlinks können rund um SPS Komponenten wie z.B. Text oder Bilder erstellt werden. Hyperlinks können auf: (i) Lesezeichen im SPS Design oder (ii) externe Ressourcen wie z.B. Webseiten oder E-Mail-Nachrichten verweisen. Dieser Abschnitt enthält zuerst Informationen zum Inhalt von Hyperlinks (Text, Bilder, usw.) und anschließend zum Ziel von Hyperlinks.

 

Erstellen von Hyperlinks

Ein Hyperlink kann auf folgende Arten erstellt werden:

Rund um Text (statischen oder dynamischen), Nodes, Bilder, Bedingungsvorlagen, automatische Berechnungen und Content- oder Node-Blöcke. Er kann nicht rund um ein Dateneingabeelement wie z.B. ein Eingabefeld oder eine Auswahlliste erstellt werden. Allerdings kann der Hyperlink rund um einen Node oder eine Bedingungsvorlage erstellt werden, in dem bzw. in der sich das Dateneingabeelement befindet. Dieses ist der Inhalt des Links, über den Sie durch Anklicken zum Ziel des Links navigieren. Um einen Hyperlink rund um eine Komponente im SPS zu erstellen, wählen Sie die Komponente aus und wählen Sie den Menübefehl Einschließen in | Hyperlink.
Ein neuer Hyperlink kann mit dem Menübefehl Einfügen | Hyperlink eingefügt werden. Der Inhalt des Links muss anschließend innerhalb der Tags des neu erstellen Hyperlinks eingefügt werden.

 

Definieren des Ziels des Hyperlinks

Das Ziel eines Hyperlinks wird im Dialogfeld "Hyperlink einfügen" (Abbildung unten), das über die Befehle Einschließen in | Hyperlink oder Einfügen | Hyperlink aufgerufen wird, definiert.

 

dlg_insert_hyperlink

 

Ein Hyperlink kann

 

auf ein Lesezeichen im selben SPS Design verweisen (in diesem Fall muss die Ziel-URI ein Fragment Identifier sein),
dynamisch generiert werden, um Lesezeichen-Markierungen zu finden (bei diesen URIs handelt es sich ebenfalls um Fragment Identifier),
eine externe Ressource sein; die URI kann statisch (direkt eingegeben), dynamisch (aus einem Node in einem XML-Dokument stammend), eine Kombination aus statischen und dynamischen Teilen oder der Wert einer ungeparsten Entity sein.

 

Weiter unten wird erklärt, wie diese beiden Ziele definiert werden. Nachdem Sie die URI im Dialogfeld "Hyperlink einfügen/bearbeiten" definiert haben, klicken Sie zum Fertigstellen auf OK.

 

Anlegen eines Link zu einem Lesezeichen

Um einen Link zu einem Lesezeichen anzulegen, gehen Sie folgendermaßen vor:

 

1.Klicken Sie im Dialogfeld "Hyperlink einfügen" auf dem Register "Statisch" auf die Schaltfläche Lesezeichen. Daraufhin wird das Dialogfeld "Lesezeichen in Dokument auswählen" angezeigt (Abbildung unten). In der Abbildung unten sehen Sie zwei Lesezeichen, ein statisches und ein dynamisches.

 

select_bookmark

 

2.Um als Ziel-URI ein statisches Lesezeichen auszuwählen, doppelklicken Sie auf das statische Lesezeichen und klicken Sie anschließend auf OK. Wenn Sie auf ein dynamisches Lesezeichen doppelklicken, werden Sie aufgefordert, einen XPath-Ausdruck einzugeben, der den Pfad des ausgewählten dynamischen Lesezeichens auswählt (siehe Lesezeichen unten).

 

LinkToDynamicBookmark

 

Beim dynamischen Lesezeichen handelt es sich eigentlich um einen XPath-Ausdruck, der den Namen des Lesezeichens generiert; er ist nicht selbst der Name des Lesezeichens. Im Dialogfeld "Hyperlink zu dynamischem Lesezeichen erstellen" wird der XPath-Ausdruck des dynamischen Lesezeichens angezeigt. Hier können Sie einen XPath-Ausdruck erstellen, der einen Namen generiert, der mit dem des gewünschten Lesezeichens übereinstimmt. Klicken Sie auf OK, wenn Sie fertig sind.

 

Anlegen eines Link zu dynamisch generierten ID-Lesezeichen

Lesezeichen können dynamisch generierte ID-Markierungen haben. Wenn wir einen Link zu einem derartigen Lesezeichen erstellen möchten, stellt sich folgendes Problem: Da die Namen von dynamisch generierten Markierungen zur Laufzeit generiert werden und daher zum Zeitpunkt der Design-Erstellung nicht bekannt sind, wie soll man den href Wert eines Hyperlink definieren, der auf eine solche Markierung verweist? Die Lösung des Problems ist, wieder die generate-id() Funktion zu verwenden, diesmal mit dem href Wert des Hyperlink. Warum dies funktioniert, liegt an einer Eigenschaft der generate-id() Funktion. Jedes Mal, wenn die generate-id() Funktion während einer einzelnen Transformation für einen bestimmten Node ausgewertet wird, generiert sie immer dieselbe ID. Aus diesem Grund sind die im Lesezeichen und im Hyperlink generierten IDs identisch.

 

Beachten Sie dabei zwei Punkte:

 

Da die generate-id() Funktion als XPath-Ausdruck ausgewertet werden muss, verwenden Sie zum Definieren des Ziels des Hyperlink das Register "Dynamisch" des Dialogfelds "Hyperlink" (siehe Abbildung unten).
Der ausgewertete Wert des href Attributs muss mit # (dem Fragment Identifiert) beginnen. Folglich lautet der XPath-Ausdruck: concat('#', generate-id(nodeXXX)). Alternativ dazu können Sie auf dem Register "Statisch und dynamisch" im statischen Teil der Adresse das Zeichen # und im dyamischen Teil generate-id(nodeXXX) eingeben.

 

Anlegen eines Link zu einer externen Ressource

URIs für externe Ressourcen können auf die folgende Art erstellt werden:

 

Durch Eingabe der URI direkt in das Dialogfeld "Hyperlink einfügen" in das Register "Statisch". So kann z.B. ein Link zur Altova Homepage (http://www.altova.com) auf dem Register "Statisch" direkt in das Eingabefeld "Adresse" eingegeben werden.
Durch Auswahl eines Node in der XML-Dokumentenquelle im Dialogfeld "Hyperlink einfügen" auf dem Register "Dynamisch". Der Node in der XML-Quelle kann einen Textstring bereitstellen, bei dem es sich entweder (i) um die gewünschte Ziel-URI handelt oder (ii) den Namen einer ungeparsten Entity, welche die erforderliche URI als Wert hat. Die Adresse der Altova Homepage kann z.B. als Textstring in einem Node enthalten sein.
Durch Erstellen einer URI mit sowohl statischen als auch dynamischen Teilen im Dialogfeld "Hyperlink einfügen" auf dem Register "Statisch und dynamisch". Dies eignet sich um z.B. statische Präfixe (z.B. ein Protokoll) oder Suffixe (z.B. einen Domain-Namen) hinzuzufügen. So können z.B. E-Mail-Adressen unter Verwendung eines statischen Teils mailto: und eines dynamischen Teils für den String-Inhalt des Node //Contact/@email erstellt werden (Abbildung unten). (In der Abbildung unten wird im Platzhalter "Inhalt" des Node //Contact/@email ein Link  erstellt. Aus diesem Grund wurde der abgekürzte self::node() Selektor verwendet).

 

DlgEditHyperlinkEx

 

Eine Beschreibung zur Verwendung ungeparster Entities finden Sie im Abschnitt URIs von ungeparsten Entities.

 

Bearbeiten von Hyperlink-Eigenschaften

Um einen Hyperlink zu bearbeiten, klicken Sie mit der rechten Maustaste auf den Start- oder End-Tag des Hyperlink (A) und wählen Sie im Kontextmenü den Befehl "URL bearbeiten". Daraufhin wird das Dialogfeld "Hyperlink bearbeiten" (Abbildung oben) angezeigt. Das Dialogfeld "Hyperlink bearbeiten" kann auch über die Eigenschaft URL der Eigenschaftsgruppe Hyperlink im Fenster "Eigenschaften" aufgerufen werden.

 

 

Entfernen und Löschen von Hyperlinks

Um einen Hyperlink zu entfernen, wählen Sie ihn durch Klicken auf den Start- oder End-Tag des Hyperlink (A) aus und drücken Sie die Entf-Taste. Der Hyperlink und sein Inhalt werden gelöscht.

 

 

 


© 2019 Altova GmbH