Jeśli mam wiele węzłów w dokumencie xsl i chcę sprawdzić, czy wszystkie mają węzeł podrzędny, który istnieje, jak byś to zrobił z pętlą for-each w XSL 2?
<A>
<B>
<C>test</C>
</B>
<B>
<C>test</C>
</B>
</A>
Na przykład w powyższym dokumencie chcemy przejść przez wszystkie węzły B w dokumencie i sprawdzić, czy istnieje C z wartością „test” dla tego węzła B.
Odpowiedzi:
1 dla odpowiedzi № 1„chcemy iterować przez wszystkie węzły B w dokumencie i sprawdzać, czy istnieje C z wartością„ test ”dla tego węzła B”
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/>
<xsl:template match="/">
<xsl:for-each select="A/B[C="test"]">
<!-- Rest of XSLT -->
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Możesz dodać „testy” / predykaty za pomocą []
.