Могу ли я поместить управляющие символы в XML через XSLT? - PullRequest
1 голос
/ 11 сентября 2009

У меня следующая проблема: у меня есть файл XML и XSLT, чтобы обработать его и сгенерировать вывод.

Выходные данные этого процесса должны содержать управляющий символ «0B». И, насколько я знаю, XML не встраивает управляющие символы, так как я могу это сделать?

Ответы [ 3 ]

2 голосов
/ 11 сентября 2009

Результат должен быть XML-файлом? Как вы говорите, XML не позволяет использовать символ U + 000B. Таким образом, по определению, любой файл, содержащий этот символ, не является допустимым файлом XML. Какая здесь картина в целом? Зачем вам этот персонаж? Какие альтернативы могут быть вам доступны?

Если вы пытаетесь создать текстовый файл в результате преобразования XSLT, это другой вопрос.

0 голосов
/ 11 сентября 2009

Если соответствующий формат XML поддерживает такие символы, я ожидаю, что они будут находиться в каком-то элементе, который поддерживает CDATA.

Можете ли вы поместить своих персонажей в раздел CDATA? XSLT имеет конструкцию для создания разделов CDATA (). Внутри вы можете кодировать свои символы, используя ссылки на сущности XML .

Анализатор, который читает ваш XML-файл, должен иметь возможность преобразовывать эти entityrefs в соответствующие символы.

0 голосов
/ 11 сентября 2009

Вы также можете кодировать свою полезную нагрузку, содержащую от 0x0B до Base64 , перед добавлением в XML-документ.

Это будет зависеть от того, сможет ли пользователь вашего выходного преобразования преобразовать обратно из Base64 в исходную кодировку.

...