Hallo,
ich arbeite derzeit an einem kleinen XSLT-Skript für SharePoint und hänge seit einigen Stunden an einem ziemlich nervigen, wahrscheinlich einfach zu lösenden Problem. Ich habe eine ganze Weile nicht mehr mit XSLT gearbeitet und nicht all zu viel Erfahrung, vielleicht stehe ich deswegen auch voll auf dem Schlauch...
Ich übergebe an eine Variable eine gefilterte Auswahl an Daten, im konkreten Fall ist das z.B.
Nun möchte ich in diesen gefilterten Daten gruppieren, das geschieht durch folgenden Code :
Das Problem bei dieser Gruppierung ist, dass sich das "following-sibling" auf den gesamten XML-Baum bezieht, ich möchte allerdings nur innerhalb des in der Variable "$Rows" vorhandenen XML-Baums gruppieren. Befindet sich nun mein gefilterter Datensatz z.B. in der Mitte des Baumes, so sind die Gruppen immer leer, ist der Datensatz am Ende des Baumes, funktioniert die Gruppierung. Auch der Ansatz zur Gruppierung mit einem Key hat das selbe Problem, nur umgedreht (ist der Datensatz am Anfang funktioniert es, ist er am Ende, nicht)... Von daher meine Frage :
Wie kann ich erreichen, dass sich following-sibling nur auf die in einer Variable enthaltenen Einträge, nicht auf den gesamten Baum bezieht?
Jeder Eintrag hat übrigens bereits eine eindeutige ID, das könnte vielleicht bei der Umsetzung hilfreich sein...
Leider kann ich den betreffenden XML-Code hier nicht posten, bei Bedarf werde ich mir aber ein entsprechendes Beispiel zur Veranschaulichung ausdenken können... Bin nur gerade etwas unter Zeitdruck (eben weil mich dieses Problem so lange aufgehalten hat -.-).
Schonmal vielen Dank für eventuelle Antworten, das Problem macht mich gerade wahnsinnig
Beste Grüße,
Compu
ich arbeite derzeit an einem kleinen XSLT-Skript für SharePoint und hänge seit einigen Stunden an einem ziemlich nervigen, wahrscheinlich einfach zu lösenden Problem. Ich habe eine ganze Weile nicht mehr mit XSLT gearbeitet und nicht all zu viel Erfahrung, vielleicht stehe ich deswegen auch voll auf dem Schlauch...
Ich übergebe an eine Variable eine gefilterte Auswahl an Daten, im konkreten Fall ist das z.B.
Code:
<xsl:variable name="Rows" select="/dsQueryResponse/CEPD_Documents_Chapter/Rows/Row[$filteredDocuments/@ID=@Document_x0020_ID]">
Code:
<xsl:variable name ="chapterGroups" select="$Rows[not(following-sibling::Row/@Chapter_x0020_Number = @Chapter_x0020_Number)]"/>
Wie kann ich erreichen, dass sich following-sibling nur auf die in einer Variable enthaltenen Einträge, nicht auf den gesamten Baum bezieht?
Jeder Eintrag hat übrigens bereits eine eindeutige ID, das könnte vielleicht bei der Umsetzung hilfreich sein...
Leider kann ich den betreffenden XML-Code hier nicht posten, bei Bedarf werde ich mir aber ein entsprechendes Beispiel zur Veranschaulichung ausdenken können... Bin nur gerade etwas unter Zeitdruck (eben weil mich dieses Problem so lange aufgehalten hat -.-).
Schonmal vielen Dank für eventuelle Antworten, das Problem macht mich gerade wahnsinnig
Beste Grüße,
Compu
Comment