http://onionworks.net/2004/renderengine/email

send (mail : nodeset) : string

Hier wird der allgemeine Aufbau einer E-Mail und die möglichen Attribute erklärt.

Folgend ein Beispielaufbau einer E-Mail Variablen und der anschließende Versand.

<xsl:variable name="mail">
<mail mailserver="mx.example.com" subject="" reply-to="reply-to@example.com" ssh="true">
<credentials user="login@example.com" password="password" />
<sender e-mail="sender@example.com" name="Sender" />
<recipient e-mail="recipient1@example.com" name="Recipient 1" />
<recipient e-mail="recipient2@example.com" name="Recipient 2" type="to" />
<recipient e-mail="recipient3@example.com" name="Recipient 3" type="cc" />
<recipient e-mail="recipient4@example.com" name="Recipient 4" type="bcc" />
<body>
<text>This e-mail has text content</text>
<html>
<p> This e-mail hast
<strong>html</strong>
content too. </p>
</html>
</body>
<attachments>
<file xlink="onion://data/objects/1#icon" physical-filename="icon.png" target-filename="onion-icon.png"> </file>
</attachments>
</mail>
</xsl:variable>
<xsl:value-of select="email:send($mail)" />

Das Ergebnis des Beispiels ist: success oder error.

<mail>-Element

Das Pflicht-Attribut mailserver gibt den Versandserver für die E-Mail an. Um den Betreff der E-Mail zu setzen, wird an dem mail-Element das Attribut subject gesetzt. Dieses Attribut ist ebenfalls Pflicht. sollte kein Betreff gesetzt werden, so muss das Attribut leer gesetzt sein.

Sollen die Empfänger der E-Mail nicht an die E-Mail Adresse des Absenders antworten, so kann als Attribut des mail-Elements reply-to gesetzt werden.

<sender>-Element

Das sender-Element ist Pflicht und darf nur einmal als erstes Element unterhalb des mail-Elements vorkommen. Als Pflichtattribut des sender-Elements ist e-mail zu setzen. Optional kann für den Absender ein symbolischer Name (name-Attribut) vergeben werden. Dieser Name wird i.d.R. in Mail-Clients hinter der E-Mail Adresse angezeigt.

<recipient>-Element

Dieses Element ist ähnlich dem sender-Element. Für jedes recipient-Element muss das Attribut e-mail gesetzt werden und optional kann das Attribut name für einen symbolischen Namen gesetzt werden.

Zusätzlich gibt es das Attribut type, welches spezifiziert, wie der Empfänger die E-Mail erhalten soll. Möglich sind die Werte to, cc, bcc. Wird dieses Attribut nicht gesetzt, so ist der Standardwert "to".

Sollen mehrere Empfänger diese E-Mail erhalten, so können einfach mehrere recipient-Elemente für jeden Empfänger hinzugefügt werden.

<body>-Element

Als Unterelement vom body-Element kann das Element text gesetzt werden, welches Plaintext enthält. Ein weiteres Unterelement vom body-Element kann nach dem text-Element das html-Element gesetzt werden. Im html-Element kann nun HTML-Inhalt enthalten sein.
Sollte die E-Mail keinen Text- oder Html-Inhalt enthalten, so kann das text, bzw. html-Element weg gelassen werden.

<attachments>-Element

Soll einer E-Mail ein oder mehrere Dateianhänge hinzugefügt werden, so werden die Dateien unterhalb des attachments-Elements hinzugefügt. Dazu wird für jede anzuhängende Datei ein file-Element mit den folgend beschriebenen Attributen definiert.

Als Pflichtattribut für das file-Element ist xlink zu setzen. Der xlink muss ein XLink auf eine binäre Methode der anzuhängenden Datei sein. Ein weiteres Pflichtattribut ist target-filename, welches der Anzeige-Dateiname des Anhangs ist.

Optional kann für den Dateianhang ein physikalischer Dateiname angegeben werden. Wird dieser nicht gesetzt, so wird der Dateiname verwendet, welcher die angegebene binäre Methode liefert.