In SAXHandler, in method characters() changing if (suppress) return; into if ((suppress) || (length == 0)) return; reduces by 5% the parsing time when using Crimson. Apparently this latter reports line breaks as character data of length 0. The same should apply to ignorableWhitespace(). Laurent