context:-URL-Protokoll
Mit dem context:
-URL-Protokoll können Sie zur Laufzeit eines Prozesses in XSL-Mappings auf Variablen zugreifen, die im Prozess über den Variable-Baustein definiert und vor dem XSL-Mapping-Baustein im Prozess angeordnet wurden. Das in der Variable gespeicherte Dokument kann im XSL-Mapping über die document()
-Funktion eingebunden werden.
Hinweis:
Bei der Verarbeitung im Prozess gibt die document()
-Funktion keine Fehlermeldung aus, wenn der Zugriff auf die Variable fehlschlägt. z. B. aufgrund eines Tippfehlers oder weil die Variable nicht mit der Option PUT
erstellt wurde.

Aufbau der URL
Die URL sollte nach folgendem Muster aufgebaut sein (Schrägstriche nach dem URL-Handler können ggf. problematisch sein):
context:Variablenname
Ein XSL-Mapping, das dieses URL-Protokoll verwendet, kann nicht in der Transformations-Vorschau des Mapping Editors ausgeführt werden.
Beispiel
In diesem Beispiel wurde in einem Prozess, der auch das folgende XSL-Mapping enthält, eine Variable Var
über einen Variable
-Baustein angelegt. Diese Variable speichert ein XML-Dokument, das im XSL-Mapping über die document()
-Funktion gelesen und in einer XSL-Variable DocVar
zwischengespeichert wird. Deren Knoten sind per XPath beliebig selektierbar.
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="UTF-8" method="xml" version="1.0"/>
<xsl:template match="/">
<result>
<xsl:variable select="document('context:Var')" name="DocVar"/>
<xsl:value-of select="$DocVar/child::ElemName"/>
</result>
</xsl:template>
</xsl:stylesheet>