Using xsl 2.0 I\'m trying to convert all uppercase text to having only the first letter of text in each node upper-case. Their are a large number of possible child elements.
The spaces in your text made this an interesting problem. To match all text() nodes below 'head', use an XPath expression to look at the ancestor.
Here, I tokenize the string then loop through the result set changing the first character to uppercase and the following chars to lowercase.