Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > XML, XSL > Сквозная нумерация элементов |
Автор: Royan 6.6.2006, 20:14 | ||||
Есть документ
Мне необходимо пронумеровать child ноды сквозной нумерацией, чтобы получилось в точности как здесь: http://forum.vingrad.ru/index.php?showtopic=89834&view=findpost&p=689196 а именно 1) АААА 2) BBBB 3) CCCC 4) DDDD 5) EEEE 6) FFFF 7) GGGG 8) HHHH 9) IIII Но моя проблема отличается тем, что я уже сделал выборку по parent и мне очень важно ее сохранить. То есть я хочу нумеровать child из выборки по /root/parent. Единственным решением в лоб, которое я вижу это внутри моего <for-eacn select="/root/parent"> делать еще один <for-eacn select="//child"> в котором child будут сравниваться по generate-id() и уже оттуда получать текущий номер child'а, но это представляется мне очень не эффективным. Вот пример того, что придумалось мне, возможно ли сделать эффективнее?
|
Автор: Beard 8.6.2006, 21:59 | ||
Немного улучшил свой вариант:
Другие варианты в голову что-то не лезят |
Автор: Royan 9.6.2006, 15:59 | ||
Нет, не опечатка все зависит от парсера (я пользуюсь Xerces 2.7.1). Если посмотреть внимательно, то переменная инициализируется единственный раз и парсер вполне в состоянии разобраться с областью видимости и инициализацией. За пример огромное спасибо - это действительно то, что нужно! |
Автор: Beard 9.6.2006, 16:04 | ||
Я просто это увидел
и подумал, что MSXML, который с областью видимости не справляется ![]() Не за что! |