ThomasM: Exponenten

Beitrag lesen

Hallo Raspu,

ich möchte gerne den Wert 1.5^(-h1) durch xsl berechnen lassen.
h1 ist hierbei ein Wert der aus einer xml ausgelesen werden muss.
Geht das?

Fertige Potenz-, Logarithmus- oder gar Winkelfunktionen gibt es unter XSLT/XPath 1.0 und 2.0 nicht.

Da Du in anderen Postings die XSLT-Version 2.0 angegeben hast, wäre eine mittels xsl:function definierte Funktion möglich (unter XSLT 1.0 durch rekursive Templateaufrufe abbildbar).

In meiner kleinen mathematischen Bibliothek (primär für Sinus/Kosinus umgesetzt) gibt es die Funktion tm:pow(), welche für nichtnegative ganzzahlige Exponenten ausgelegt ist [1 div tm:pow(1.5,h1) wäre also bei passendem h1 möglich]. Baue ggf. eine alternative Funktion. Dieses Test-Stylesheet zeigt den Aufruf der Funktionen (zum Testen einfach gegen ein Dummy-XML-Dokument wie <root/> anwenden).

Grüße,
Thomas