@lo0p3r

Как разбить список с помощью XSLT?

Имеется XML со сложной структурой, один из элементов которого - список, размер которого заранее неизвестен.
Возможно ли разбить этот список на несколько частей, сохранив остальную структуру не тронутой? Ну, почти не тронутой.
Пример:
<L4>
	<AAA>a</AAA>
	<BBB>b</BBB>
	<CCC>
	  <DDD>a:b:C:123.400.01</DDD>
	  <DDD>a:b:C:123.400.02</DDD>
	  <DDD>a:b:C:123.400.03</DDD>
	  <DDD>a:b:D:123.401.01</DDD>
	  <DDD>a:b:D:123.401.02</DDD>
	  <DDD>a:b:E:123.402.01</DDD>
	</CCC>
	<DDD>d</DDD>
	...
	<ZZZ>z</ZZZ>
</L4>

Различия - разное начало значений элементов списка - a:b:C, a:b:D и a:b:E
В итоге получится вот такой список элементов
<L4>
	<AAA>a</AAA>
	<BBB>b</BBB>
	<CCC>
	  <DDD>a:b:C:123.400.01</DDD>
	  <DDD>a:b:C:123.400.02</DDD>
	  <DDD>a:b:C:123.400.03</DDD>
	</CCC>
	<DDD>d</DDD>
	...
	<ZZZ>z</ZZZ>
</L4>
<L4>
	<AAA>a</AAA>
	<BBB>b</BBB>
	<CCC>
	  <DDD>a:b:D:123.401.01</DDD>
	  <DDD>a:b:D:123.401.02</DDD>
	</CCC>
	<DDD>d</DDD>
	...
	<ZZZ>z</ZZZ>
</L4>
<L4>
	<AAA>a</AAA>
	<BBB>b</BBB>
	<CCC>
	  <DDD>a:b:E:123.402.01</DDD>
	</CCC>
	<DDD>d</DDD>
	...
	<ZZZ>z</ZZZ>
</L4>

Т.е. элемент повторится по числу разных a:b:X: элементов (их может быть 1-3).
  • Вопрос задан
  • 39 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы