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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как зменить id его значением? 
:(
    Опции темы
99cents
Дата 3.12.2010, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Есть xml следующего вида
Код

<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">
<yml_catalog date="2010-11-30 23:19">
  <shop>
    <name>...</name>
    <company>...</company>
    <url>...</url>
    <currencies>
      <currency id="RUR" rate="1" />
    </currencies>
    <categories>
      <category id="12251">Общественные и гуманитарные науки</category>
      <category id="1000157" parentId="12251">Военное дело. Оружие. Спецслужбы</category>
      <category id="1090940" parentId="1000157">К 65-летию Победы в Великой Отечественной войне</category>
      <category id="1091260" parentId="1090940">Военные действия, сражения</category>
      .....
      <category id="1073340" parentId="1092596">Студентам ССУЗов</category>
</categories>
<offers>
      <offer id="12251" type="book" available="false">
        <url>...</url>
        <price>...</price>
        <currencyId>...</currencyId>
        <categoryId>1092270</categoryId>
        <picture>...</picture>
      </offer>
<offers></offers>
...
<offers></offers>


Как заменить код в <categoryId> его значением?

Что б было примерно так 
Код

<offer id="12251" type="book" available="false">
        <url>...</url>
        <price>...</price>
        <currencyId>...</currencyId>
        <categoryId>Общественные и гуманитарные науки</categoryId>
        <picture>...</picture>
      </offer>


База на 2000 значений, <categoryId> штук 300, в ручную муторошно smile 

Это сообщение отредактировал(а) 99cents - 3.12.2010, 19:26
PM MAIL   Вверх
Egik2
Дата 7.12.2010, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 302
Регистрация: 29.7.2008
Где: Агудзера

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



Попробуй так:
Код

<?xml version="1.0" encoding="UTF-8" ?>

<!-- New document created with EditiX at Tue Dec 07 11:50:17 MSK 2010 -->

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:apply-templates select="@*|node()"/>
        </xsl:copy>
    </xsl:template>
    <xsl:template match="/shop/offers/offer/categoryId">
        <xsl:variable name="catID" select="../@id"/>
        <categoryId>
            <xsl:value-of select="/shop/categories/category[@id=$catID]"/>    
        </categoryId>
    </xsl:template>
</xsl:stylesheet>



--------------------
Три великие добродетели программиста: лень, нетерпение и самомнение (Larry Wall)
a-nav.com
developer-blog.ru
world-poetry.org
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "XML/XSLT"
diadiavova

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

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

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

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


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

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


 




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


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

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