1. SQL — в выбранных данных кавычка меняется на '<![CDATA['+replace(fieldname,'"', '\"')+']]>', т.е. экранируется по-хитрому
2. XML — поле выводится отдельным элементом, а не аттрибутом. можно. например, воспользоваться конструкцией [node!2!fieldname!xml]
3. XSL — убираются всякие disable-output-escaping="yes", т.е. не делается ничего. но не забыть что это не аттрибут и в <xsl:value-of select="fieldname"/> без @
4. JS — приготовленный в п.3 json использовать AS-IS (протестировано с document.createTextNode)
5. HTML — добавить CSS по вкусу, подавать свежим =)
<xsl:for-each><li></li></xsl:for-each>
не начинал каждый элемент с новой строки достаточно делать так
<xsl:for-each><![CDATA[]]><li></li></xsl:for-each>
Этот файл автоматом подхватывается Oxygen. В итоге редактировать XSL стало на много приятнее! Потому что теперь Oxygen знает с каким деревом я работаю.
Как это просто!
<!-- comment -->
Вариант
<![CDATA[
<!-- comment -->
]]>
выводит такое
<!-- comment -->
Внедоумении