Учитывая следующий XML файл примера:
<root>
<UserList>
<UserDetails>
<Info1>
<Info1_Id>AA</Info1_Id>
</Info1>
<Info2>
<Info2_Id>BB</Info2_Id>
</Info2>
</UserDetails>
<UserAddress>
<State>Maharastra</State>
<AddressDetails>
<City>Mumbai</City>
<Address>Andheri Kurla Road, Mumbai</Address>
</AddressDetails>
</UserAddress>
<UserAddress>
<State>Karnataka</State>
<AddressDetails>
<City>Bangalore</City>
<Address>ITPL Bangalore</Address>
</AddressDetails>
<AddressDetails>
<City>Bangalore</City>
<Address>XYZ Services Ltd in Whitefield Main Road, Bangalore</Address>
</AddressDetails>
</UserAddress>
</UserList>
Я хочу выполнить XSL-преобразование для разделения и дублирования элемента, если длина адреса больше 30. Если адрес длина более 30, первый элемент будет содержать первые 30 символов, а новый (дублированный) элемент будет содержать следующие 30 символов, и т. д.
ожидаемый результат:
<root>
<UserList>
<UserDetails>
<Info1>
<Info1_Id>AA</Info1_Id>
</Info1>
<Info2>
<Info2_Id>BB</Info2_Id>
</Info2>
</UserDetails>
<UserAddress>
<State>Maharastra</State>
<AddressDetails>
<City>Mumbai</City>
<Address>Andheri Kurla Road, Mumbai</Address>
</AddressDetails>
</UserAddress>
<UserAddress>
<State>Karnataka</State>
<AddressDetails>
<City>Bangalore</City>
<Address>ITPL Bangalore</Address>
</AddressDetails>
<AddressDetails>
<City>Bangalore</City>
<Address>XYZ Services Ltd in Whitefield</Address>
</AddressDetails>
<AddressDetails>
<City>Bangalore</City>
<Address> Main Road, Bangalore</Address>
</AddressDetails>
</UserAddress>
</UserList>
Как это может быть достигнуто. Заранее спасибо за любую помощь.