added recursive group rendering and xsl templates