Hi Al…thought I'd replied to this, but I guess I killed my browser without pressing Post…doh! 1. apply-templates will very likely have better performance than for-each - there's more scope for the XSLT processor to do optimisations, as apply-templates is a more abstract operation. 2. I've used Michael Kay's XSLT and XPath books, but I think Jeni Tennison's Beginning XSLT would be appropriate for what you want...
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p CodeProject MVP for 2010 - who'd'a thunk it!