Как исключить некоторые элементы из выходного отступа XSL? - PullRequest
0 голосов
/ 10 июля 2019

Мне нужно преобразовать документ XML, и я хочу, чтобы вывод был отформатирован, поэтому я использую <xsl:output indent="yes" />.Но я хочу, чтобы конкретный элемент не отступал.Например, мой xml (после любого преобразования, например удаления элементов и т. Д.) Не форматируется следующим образом:

<root><code><run><formula>xyz</formula></code></root>

с <xsl:output indent="yes" /> Я получаю вывод, подобный этому:

<root>
<code>
<run>
<formula>xyz</formula>
</run>
</code>
</root>

Яищу вывод, как это:

<root>
<code>
<run><formula>xyz</formula></run>
</code>
</root>

в основном я не хочу, чтобы <run> (и элементы внутри него) форматировали.

Можно ли это сделать с помощью XSL?Или мне нужно проанализировать файл после XSL-преобразования, чтобы удалить \ n после <run> и до </run>?

(примечание: мой xml большой с сотнями элементов. Выше приведен только пример) (примечание 2: я использую Java. Таким образом, тег Java)

1 Ответ

0 голосов
/ 10 июля 2019

XSLT 3.0 позволяет вам сказать <xsl:output indent="yes" suppress-indentation="run"/>. Для этого вам нужно будет переключиться на процессор XSLT 3.0, что в мире Java означает Saxon.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...