Read XSLT 2.0 and XPath 2.0 Programmer's Reference, 4th Edition Online
Authors: Michael Kay
A
StringLiteral
is a lexical token. Whitespace within a
StringLiteral
is allowed and is significant (whitespace characters are part of the value).
If you are using XPath expressions within an XSLT stylesheet, or any other XML document, then there are two special considerations to bear in mind. Firstly, within an XML attribute delimited by
“
signs, any
“
sign needs to be written as
"
, while if
'
signs are used as the attribute delimiter, any
'
characters in the value must appear as
'
. Secondly, some care is needed when using tab, carriage-return, and newline characters within a literal, because the XML parser is required to replace these by space characters before the XPath expression parser ever gets to see them, as part of the process of
attribute value normalization
. You can use character references such as