teichmann@5987: <?xml version="1.0" encoding="UTF-8"?>
teichmann@5987: <xsl:stylesheet
teichmann@5987:   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
teichmann@5987:   xmlns:dc="http://www.intevation.org/2011/Datacage"
teichmann@5987:   version="1.0">
teichmann@5987: 
teichmann@5987:   <xsl:output method="text" encoding="UTF-8"/>
teichmann@5987: 
teichmann@5987:   <xsl:template match="/">
teichmann@5987:     <xsl:text>Marcos defined but not called:&#xa;</xsl:text>
teichmann@5987:     <xsl:for-each select="//dc:macro/@name">
teichmann@5987:       <xsl:variable name="mname" select="."/>
teichmann@5987:       <xsl:if test="count(//dc:call-macro[@name=$mname]) = 0">
teichmann@5987:         <xsl:text>  </xsl:text>
teichmann@5987:         <xsl:value-of select="$mname"/>
teichmann@5987:         <xsl:text>&#xa;</xsl:text>
teichmann@5987:       </xsl:if>
teichmann@5987:     </xsl:for-each>
teichmann@5987: 
teichmann@5987:     <xsl:text>Marcos called but not defined:&#xa;</xsl:text>
teichmann@5987:     <xsl:for-each select="//dc:call-macro/@name">
teichmann@5987:       <xsl:variable name="mname" select="."/>
teichmann@5987:       <xsl:if test="count(//dc:macro[@name=$mname]) = 0">
teichmann@5987:         <xsl:text>  </xsl:text>
teichmann@5987:         <xsl:value-of select="$mname"/>
teichmann@5987:         <xsl:text>&#xa;</xsl:text>
teichmann@5987:       </xsl:if>
teichmann@5987:     </xsl:for-each>
teichmann@5987:   </xsl:template>
teichmann@5987: </xsl:stylesheet>
teichmann@5987: