|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
День добрый. Бьюсь с XSLT. Начинающий. Может дадите внятный пример на тему перебор элементов с заменой значений к примеру такая ситуация, имеется xml данные например такие: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
на выходе допустим NY Иван 111111 - - 222222 Chicago - 333333 - - 444444 то есть смысл я думаю ясен, если значение равно предыдущему то -, если нет то пишем само значение, в общем-то алгоритм как бы ясен, но я не могу воспроизвести его в xsl, то ли folowwing-sibling юзать, то ли переменные ввести, в общем подскажите пожалуйста, буду весьма признателен. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 14:34 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
Тогда скорее preceding-sibling С уважением, Vasilisk ... |
|||
:
Нравится:
Не нравится:
|
|||
19.09.2009, 00:47 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
ну я это и имел ввиду, может поможете куском кода? просто для примера, буду весьма признателен ... |
|||
:
Нравится:
Не нравится:
|
|||
21.09.2009, 11:32 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
vasosесли значение равно предыдущему Т.е. проверяется равенство не с любым предшествующим, а только с предыдущим Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.09.2009, 22:25 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
Огромное спасибо за пример, будем-с дальше курить XSLT ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2009, 12:02 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
еще такой вопрос по ходу появился, сделал эту заменну при помощи sibling, шаблон формируется динамически, так вот что будет с сортировкой в таком случае(динамическая)? просто у меня она работает некорректно, не могу разобратся с чем это связано ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2009, 16:26 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
sibling кладет на сортировку. И возвращает предыдущие ноды как они лежат в файле. Извратиться можно. Но нужно ли? Т.к. ресурсозатратность шаблона возрастет на порядок. С уважением, Vasilisk ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2009, 22:12 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
Спасибо за разъяснение, буду крутить position(). ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2009, 11:40 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
не пойму как получить значение определенного тега, точнее какой путь к нему должен быть что-то вроде /doc/row[position()]/city/text() но естественно это неверно, спасибо ваш шаблон рабочий, но хотелось бы перейти к конкретному разбору, чтобы сравнивать каждый тег с предыдущим по отдельности, может быть мне немного подсобите? буду признателен ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2009, 15:47 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
спасибо, с этим уже разобрался, но опять какая-то ерунда с сортировкой......:( ... |
|||
:
Нравится:
Не нравится:
|
|||
24.09.2009, 18:09 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
position() тоже кладет на сортировку Я же говорю - нужно извращаться, если нужна сортировка. Подумайте, так ли она Вам нужна? С уважением, Vasilisk ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2009, 01:03 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
ну приказали - делаю :), так а как же быть? На путь истинный может дадите пинок?;) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2009, 14:41 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
Ну, например, одним шаблоном отсортировать ноды и запихать их все в переменную. А потом фильтровать уже по этой переменной. Т.е. что-то типа такого Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
С уважением, Vasilisk ... |
|||
:
Нравится:
Не нравится:
|
|||
25.09.2009, 21:53 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
большое спасибо за подсказку, буду смотреть это направление. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2009, 12:04 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
хм...а почему нумерация строк работает? она у меня тоже через position() сделана и не мешает динамической сортировке... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2009, 13:28 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
vasosхм...а почему нумерация строк работает? она у меня тоже через position() сделана и не мешает динамической сортировке...Карма такая vasos Код: plaintext
vasos Код: plaintext
А тут уже узлы row не сортированы ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2009, 22:01 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
хм...понятненько и все же как быть-то тогда....совсем не хочется менять структуру всего xsl ибо формируется весьма сложным образом.... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2009, 12:34 |
|
перебор элементов с заменой значения
|
|||
---|---|---|---|
#18+
Я же сказал как. Записываете в переменную сортированный список узлов и натравливаете шаблон на эту переменную. С уважением, Vasilisk ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2009, 22:04 |
|
|
start [/forum/topic.php?fid=14&msg=36214466&tid=1333441]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 323ms |
total: | 441ms |
0 / 0 |