Отказ от ответственности: следующее является грехом против XML. Вот почему я пытаюсь изменить это с помощью XSLT:)
Мой XML в настоящее время выглядит так:
<root>
<object name="blarg" property1="shablarg" property2="werg".../>
<object name="yetanotherobject" .../>
</root>
Да, я помещаю все текстовые данные в атрибуты. Я надеюсь, что XSLT может спасти меня; Я хочу двигаться к чему-то вроде этого:
<root>
<object>
<name>blarg</name>
<property1>shablarg</name>
...
</object>
<object>
...
</object>
</root>
На самом деле все это работает до сих пор, за исключением того, что мои грехи против XML были более ... исключительными. Некоторые теги выглядят так:
<object description = "This is the first line
This is the third line. That second line full of whitespace is meaningful"/>
Я использую xsltproc под linux, но, похоже, у него нет опций для сохранения пробелов. Я пытался использовать xsl: preserve-space и xml: space = "preserve" безрезультатно. Кажется, что каждая найденная опция применима для хранения пробелов в самих элементах, но не в атрибутах. Каждый раз вышеуказанное изменяется на:
This is the first line This is the third line. That second line full of whitespace is meaningful
Итак, вопрос в том, могу ли я сохранить пробел атрибута?