Suche habe ich ein XML-Dokument mit IDs an Elementen, zum Beispiel:XSLT Leistung beim gesamten Dokument für Id
<Section>
<Field Id="1">... content ...</Field>
<Field Id="2">... content ...</Field>
<Section>
<Field Id="5">... content ...</Field>
<Field Id="6">... content ...</Field>
<Section>
<Field Id="10">... content ...</Field>
<Field Id="20">... content ...</Field>
...
</Section>
...
</Section>
...
</Section>
Die eigentlichen Dokumente viele verschachtelten Abschnitte und Felder haben. Ist eine Suche nach einem bestimmten Id ausgeführt einen XPath-Ausdruck verwendet wie:
//Field[@Id=$vSearchId]
möglicherweise eine teuere Operation? $vSearchId
stellt hier eine Variable im XSL-Stylesheet dar, die die Id-Suche enthält.
Gibt es effizientere Möglichkeiten, eine solche Suche durchzuführen, z. B. einen Index erstellen? Ich schaute auf xsl:key
, aber ich war nicht sicher, wie man es für eine Suche über das gesamte Dokument verwendet.
Ist es möglich, eine Funktion zu definieren, die den von der Vorlage abgeglichenen Knoten zurückgibt? – dave
@dave Ich fürchte, ich folge nicht. –
Ihr Ansatz funktioniert, ignorieren Sie meinen Kommentar. – dave