Robert Nülich: Abfrage beschleunigen

Beitrag lesen

Hallo,

bin auf der Suche nach einer Lösung. Und zwar frage ich mit xsl stylesheet (xslt2.0 wird verwendet) einen knoten ab. Dabei lasse ich mir ein Attribute ausgeben. Ich zähle die Anzahl von bestimmten Elemente, die Anzahl wird aber nicht einfach so gezählt sondern es muss ein attribut vorhanden sein, welches ein anderes element auf gleicher hierachieeben in einem bestimmten andere attribut hat und zudem noch mit ein weitere attribut besitz, welches einen bestimmten wert haben muss. dabei weiss ich nciht wie ich so recht vorgehen soll. die lösung, welche ich jetzt habe kostet extrem performance.

xml source etwa so:

<root>
  <verbund attz="XYX" criteria="false"/>
  <stamm att1="XXX"/>
  <stamm att1="XYX"/>
  <verbund attz="XYX" criteria="true"/>
  <stamm att1="XYX"/>
</root>

zur zeit zähle ich so
<xsl:variable name="boolean" select="'true'"/>
<xsl:value-of select="count(root/stamm[@att1 = parent::*/verbund[@criteria = $boolean]/@attz])/>

diese count anweisung scheint aber ziemlich performancelastig zu sein, wenn es sich um eine größere Knotenanzahl handelt. Gibt es einen besseren weg?