A serializer must apply escaping to all text nodes (either using & and < or using CDATA) unless it knows that they can't contain &, <, or ]]>.
It's probably just as easy for the serializer to look at the actual content of the text or attribute node to see whether it contains special characters as to look in the schema.
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference