If you are using schema-aware processing in XSLT 2.0, then the predicate should be
Condition[@good=true()]
Otherwise, the string match looks fine.
The apply-templates looks fine too.
What symptoms are you suffering from?
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference