Det är inte ett direkt svar på denna fråga men till alla som försöker xml-escape strängar i TSQL, här är en liten funktion jag skrev :
CREATE FUNCTION escapeXml
(@xml nvarchar(4000))
RETURNS nvarchar(4000)
AS
BEGIN
declare @return nvarchar(4000)
select @return =
REPLACE(
REPLACE(
REPLACE(
REPLACE(
REPLACE(@xml,'&', '&')
,'<', '<')
,'>', '>')
,'"', '"')
,'''', ''')
return @return
end
GO