powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / трансформация файла с произволной структурой
3 сообщений из 3, страница 1 из 1
трансформация файла с произволной структурой
    #37979732
pigmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.
Помогите, пожалуиста, решить такую штуку:
делаю проект в OSB, на входе я получаю xml документы с различными внутреностями.
Нужно с помошью xquery или xsl написать универсальную трансформацию, которая получает xml произволного формата и проверяет все его узлы, если значение узла ровно -1, то в выходной файл пишем <name xsi:nil="true">, если значение не ровно -1, то в выходной файл перносим все без изменений.

пример

input XML
Код: xml
1.
2.
3.
4.
5.
6.
......
<name1>kyky</name1>
<name2>33</name2>
<name3>-1</name3>

........



output XML
Код: xml
1.
2.
3.
4.
5.
6.
......
<name1>kyky</name1>
<name2>33</name2>
<name3 xsi:nil="true"/>

........



спасибо
...
Рейтинг: 0 / 0
трансформация файла с произволной структурой
    #37979961
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pigmo,

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<xsl:template match="*">
  <xsl:element name="{name(.)}">
    <xsl:choose>
      <xsl:when test=". = -1>
        <xsl:attribute name="nil" namespace="http://www.w3.org/2001/XMLSchema-instance">
          true
        </xsl:attribute>
      </xsl:when>
      <xsl:otherwise>
        <xsl:apply-templates/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:element>
</xsl:template>
...
Рейтинг: 0 / 0
трансформация файла с произволной структурой
    #37980222
pigmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_,

Спасибо! Работает!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / трансформация файла с произволной структурой
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]