Модераторы: diadiavova
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите построить Preceding. 
:(
    Опции темы
posdnyaa
Дата 23.4.2009, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 18.12.2007

Репутация: нет
Всего: нет



Здравствуйте
Есть XML.
Код

<root>
    <cInfo cdCurrency="EUR" cdDenom="5" cdBNnumber="4"/>
    <cInfo cdCurrency="EUR" cdDenom="5" cdBNnumber="1"/>
    <dInfo cdCurrency="EUR" cdDenom="20" cdBNnumber="20"/>
    <cInfo cdCurrency="EUR" cdDenom="20" cdBNnumber="4"/>
    <cInfo cdCurrency="EUR" cdDenom="20" cdBNnumber="2"/>
    <cInfo cdCurrency="EUR" cdDenom="20" cdBNnumber="20"/>
    <cInfo cdCurrency="EUR" cdDenom="50" cdBNnumber="2"/>
    <dInfo cdCurrency="EUR" cdDenom="50" cdBNnumber="10"/>
    <cInfo cdCurrency="EUR" cdDenom="50" cdBNnumber="9"/>
    <cInfo cdCurrency="EUR" cdDenom="200" cdBNnumber="1"/>
    <cInfo cdCurrency="RUB" cdDenom="50" cdBNnumber="3"/>
    <cInfo cdCurrency="RUB" cdDenom="100" cdBNnumber="1"/>
    <cInfo cdCurrency="RUB" cdDenom="100" cdBNnumber="1"/>
    <dInfo cdCurrency="RUB" cdDenom="1000" cdBNnumber="11"/>
    <cInfo cdCurrency="RUB" cdDenom="1000" cdBNnumber="11"/>
    <dInfo cdCurrency="RUB" cdDenom="1000" cdBNnumber="20"/>
    <cInfo cdCurrency="RUB" cdDenom="1000" cdBNnumber="20"/>
    <cInfo cdCurrency="USD" cdDenom="20" cdBNnumber="9"/>
    <cInfo cdCurrency="USD" cdDenom="20" cdBNnumber="4"/>
    <cInfo cdCurrency="USD" cdDenom="20" cdBNnumber="1"/>
    <cInfo cdCurrency="USD" cdDenom="50" cdBNnumber="1"/>
</root>

Нужно выбрать неповторяющиеся пары валюта-номинал.
Если делать по тупому для каждой валюты:
Код

root/*[@cdCurrency='RUB' and (not(@cdDenom=preceding::*[@cdCurrency='RUB']/@cdDenom))]

то, работает.
Но никак не могу сделать универсально – чтобы не задавать валюту жестко: @cdCurrency='RUB'.
Самое близкое к чему подошел:
Код

root/*[not(@cdCurrency=preceding-sibling::*/@cdCurrency and @cdDenom=preceding-sibling::*/@cdDenom)]

Но в этом случае последний USD 50 – не учитывается
Весь мозг сломал. Помогите, пожалуйста.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "XML/XSLT"
diadiavova

Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась.

Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение.

Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел

Желаем удачи в Вашем деле!


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | XML, XSL | Следующая тема »


 




[ Время генерации скрипта: 0.0389 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.