Мне нужно найти решение для исправления с помощью XSLT 1! Большинство присылаемых XML-файлов хорошо отформатированы и кто-то портит, добавляя символы (& ‹ > . . .). Любой способ заменить это на моей стороне? Я попробовал XSLT 2, и функция замены не работает, так как я использую процессор XSLT от Microsoft.
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:saxon="http://saxon.sf.net/"
exclude-result-prefixes="xs saxon"
version="2.0">
<xsl:param name="path" select="'file:///E:/foo.xml'"></xsl:param>
<xsl:template match="/">
<xsl:copy-of select="unparsed-text($path)"></xsl:copy-of>
<xsl:copy-of select="saxon:parse(replace(unparsed-text($path), '&', '&amp;'))"/>
</xsl:template>
</xsl:stylesheet>
Любое другое предложение, как решить эту проблему. например, у меня есть входной файл XML, например:
<?xml version="1.0" encoding="UTF-8"?>
<name>Stack & Exchange</name>
И сбой на символе '&'.
Пожалуйста посоветуй! Спасибо