Мне нужно отключить (или разложить) некоторые элементы, которые в настоящее время завернуты в теги абзаца (например, теги <p>
). Но их не должно быть, и мне нужно иметь возможность исправить это, используя XSLT.Развертывание элементов с помощью XSLT
Это может выглядеть, например:
<paragraph>Some text here with a <bold>word</bold> in bold, for example, and then an image:
<image href="whatever.png"></image>
and possibly some more text here.
</paragraph>
Здесь мне нужно выделить текст (включая строковый тэг) в качестве одного пункта, а затем изображений отдельно, а не внутри абзаца, а затем следует новый абзац для текста в конце. Например:
<paragraph>Some text here with a <bold>word</bold> in bold, for example, and then an image:</paragraph>
<image href="whatever.png"></image>
<paragraph>and possibly some more text here.</paragraph>
Но я не могу понять, как это сделать. Я могу сделать это для каждого узла, но тогда жирный тег будет также помещен в отдельный абзац, и я не хочу этого.
Обратите внимание, что тег является всего лишь примером. Такая же ситуация будет происходить со списками, таблицами и т. Д. И в основном проблема заключается в том, что они были завернуты в теги абзацев, когда их не должно было быть. Поэтому текст (включая встроенные элементы, такие как жирный шрифт, курсив и т. Д.) Должен быть сохранен как параграфы в одном фрагменте, но другие типы элементов, изображений, таблиц и т. Д. Должны быть обернуты из него, сохраняя при этом правильные порядок содержания курса.
Любые идеи оценены!
Элементы 'image',' list', 'table' всегда направляют детей o f элементы 'paragraph'? Или может быть дополнительная вложенность, например '. Это текст bold . '? Какую версию XSLT вы используете или можете использовать? –