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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> XSL преобразование (XML->XML) 
:(
    Опции темы
Borisk13
Дата 2.2.2017, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Добрый день. Стоит задача преобразовать XML из одной структуры в другую. Вроде бы простейшее преобразование (объединение нескольких полей в одно), но, т.к. плохо знаю XSL, уже сломал всю голову...
Может, кто подскажет? Спасибо.

Исходный XML:
Код

<Dictionary>
  <Dict>
    <NAIM>BAHAMAS</NAIM>
    <KODT11>1</KODT11>
    <KODT12>2</KODT12>
    <KODT13>3</KODT13>
    <KODT14>4</KODT14>
    <NUMBEGDOC>555</NUMBEGDOC>
  </DictStran>
</DictionaryDictStran>


Что надо получить:
Код

<Dictionary>
  <Dict>
    <NAIM>BAHAMAS</NAIM>
    <KODT>1234</KODT>
    <NUMBEGDOC>555</NUMBEGDOC>
  </DictStran>
</DictionaryDictStran> 


Что удалось придумать (но это не то - match не ищет по маске "KODT"...):
Код

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:strip-space elements="*"/>
 <xsl:output method="xml" indent="yes"/>
 <xsl:template match="/">
  <xsl:apply-templates/>
 </xsl:template>
 <xsl:template match="Dictionary">
  <xsl:copy>
   <xsl:apply-templates/>
  </xsl:copy>
 </xsl:template>
 <xsl:template match="Dict">
  <xsl:copy>
   <xsl:apply-templates/>
  </xsl:copy>
 </xsl:template>
  <xsl:template match="NAIM">
    <xsl:copy>
      <xsl:apply-templates/>
    </xsl:copy>
  </xsl:template>
  <xsl:template match="KODT">
    <KODT>
      <xsl:apply-templates/>
    </KODT>
  </xsl:template>
  <xsl:template match="NUMBEGDOC">
    <xsl:copy>
      <xsl:apply-templates/>
    </xsl:copy>
  </xsl:template>
</xsl:stylesheet>

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

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

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

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

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


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

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


 




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


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

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