Я использую Xsl-преобразование для отображения данных XML в виде HTML.
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ms="urn:schemas-microsoft-com:xslt"
xmlns:util="urn:the-xml-files:xslt">
<xsl:output method="xml" indent="yes"
omit-xml-declaration="yes" encoding="utf-8"/>
<xsl:template match="/">
<xsl:for-each select="/Categories/Category">
<li class="c">
<a class="d">
<xsl:attribute name="id">cat_<xsl:value-of select="categoryid"/></xsl:attribute>
</a>
</li>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Если выбор атрибута id элемента li не находится в одной строке, процессор XSL заполнит значение атрибута пробелом, что полностью нарушит JavaScript на внешнем интерфейсе.
Конечно, Visual Studio всегда будет переформатировать множество определений в одну строку, поэтому, если я что-то изменю, мне нужно удалить пробел вручную.
Как я могу удалить ненужные пробелы из элемента? Должен ли я сделать xsl: copy с xsl: strip-space, или есть какие-то лучшие решения? :)