Список символов XML-атрибутов, разделенных пробелами, не может содержать как одинарные, так и двойные кавычки

Я использую deltaxml (www.deltaxml.com) для сравнения двух файлов XML. Мне нужно изменить файл define-punctuation.xsl (XSLT).

Чтобы изменить символы, которые должны рассматриваться как знаки препинания, атрибут deltaxml:punctuation должен быть включен в элемент с символами пунктуации в списке, разделенном пробелами.

Это то, что я пытаюсь использовать для атрибута select:

‹xsl:param name="punctuation" select=". , ; : ! ( ) [ ] { } - / & @ \ # % ? ' ‘ ’ “ ” * $ € £ ¥ "/>

Я получаю сообщение об ошибке в XML-редакторе Visual Studio 2010:
Ожидаемый конец выражения, найдено ','. . -->,‹-- ; : ! ( ) [ ] { } - / & @ \ # %...

Я думаю, что проблематичными знаками пунктуации являются ' и "

Это работает: select="' для одинарной кавычки, а также
select="'" ;'" (между 't' и ';') нет пробела, но я не могу совмещать одинарную и двойную кавычки в выбранном атрибуте.

Так как же сделать так, чтобы они были в атрибуте select? Спасибо


person Rad    schedule 01.11.2011    source источник


Ответы (1)


<this temp=".,;:!()[]{}-/&amp;@\#%?'&quot;‘’“”*$€£¥"/>

Отлично работает в моей Visual Studio 2010.

Также отлично работает:

<xsl:param name="test">
    .&#x20;,&#x20;;&#x20;:&#x20;!&#x20;(&#x20;)&#x20;[&#x20;]&#x20;{&#x20;}&#x20;-&#x20;/&#x20;&amp;&#x20;@&#x20;\&#x20;#&#x20;%&#x20;?&#x20;&apos;&#x20;&quot;&#x20;‘&#x20;’&#x20;“&#x20;”&#x20;*&#x20;$&#x20;€&#x20;£&#x20;¥
</xsl:param>

Кстати, .xsl также является .xml. Однако Select запрещает использование определенных символов.

person FailedDev    schedule 01.11.2011
comment
Это не обычный XML. Это часть XSLT. этот элемент не является частью xmlns:xsl=w3.org/1999/XSL/Transform пространство имен. Вы можете попробовать создать элемент xsl:param и добавить символы с разделителями-пробелами в атрибут select. Это просто не будет работать для меня. Помните, что я хочу включить апостроф, отображаемый как ', и символ кавычек - person Rad; 02.11.2011