hh: Gibst es eine Möglichkeit Logarithmus zu berechnen

Hi,

ich weiss, xml und dessen darstellung über xsl sind nicht dafür gedacht, komplexe rechenoperationen durchzuführen. Nun ist es aber so, dass mir eine ziemlich große xml vorliegt. MS Excel und auch alternative Office Lösungen gehen bei der Datei in die Knie - auch wenn ich diese als csv versuche - keine Chance. Eigentlich brauche ich auch nur ein paar wenige Knoten aus der XML Datei, nur diese muesste ich halt erst einmal abfragen. Das Filterkriterium soll aber dabei ein Logarithmuswert mit Basis 2 bilden, der sich aus einem Wert im jeweiligen Knoten ergibt. Sofern dieser Wert einen Grenzwert überschreitet, ist entsprechender Knoten zu bearbeiten. Also eigentlich eine ganze normale xsl:for-each Lösung, wenn da nur nicht dieser dumme Logarithmus wäre. Wie könnte man dies am besten lösen? Wie gesagt, die XML Datei ist etwa 40 MB groß.

Gruß,

Holger

  1. Hallo Holger,

    wenn der Grenzwert konstant ist, brauchst Du im xsl überheupt keinen Logarithmus zu berechnen. Wenn Deine Bedingung

    log2(Wert) > Grenzwert

    ist, könntest Du das ersetzen durch

    Wert > 2 ^ Grenzwert.

    Letzteren Wert kannst Du ja unabhängig von xsl ausrechnen.

    Gruß
    Olaf