среда, 9 марта 2011 г.

Факториал на XSLT


Неожиданно сделал вычисление факториала средствами XSLT.

Здесь шаблон factorial рекурсивно вызывает сам себя, передавая каждый раз уменьшающееся на единицу значение в качестве параметра.

Шаблон sample иллюстрирует возможное использование (вычисляется 5! + 7!).



 
 
  
   
    
   
   
    
     
    
   
  
 
 



 
  
   
  
 
 
  
   
  
 
 



Разумеется, всё это довольно "игрушечные" вещи. В эту сторону меня потянула необходимость сделать url encoding в XSLT 1.0 для кириллических строк. Подумал, может удастся как-то рекурсивно откусывать от строки по символу и так производить перекодирование. Пока не сделал, это оказалось сильно сложнее, чем ожидалось.

Обычно для подобных задач задействуются внешние скрипты, но их не всегда можно использовать (например, в SharePoint скрипты msxsl по умолчанию выключены из соображений безопасности).

Комментариев нет:

Отправить комментарий