Отказ от ответственности: следующее против греха против 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 = "сохранить" безрезультатно. Кажется, что каждый найденный параметр применяется для хранения пробелов внутри самих элементов, но не для атрибутов. Каждый раз вышеизложенное изменяется:
This is the first line This is the third line. That second line full of whitespace is meaningful
Итак, вопрос в том, могу ли я сохранить пробел атрибута?