powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Простой вопрос по XLT
4 сообщений из 4, страница 1 из 1
Простой вопрос по XLT
    #35191830
sboyko2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть XML типа такого:
<taskreport>
<tasks>
<task>
<general>
<start>2007-06-15T10:51:23</start>
</general>
</task>
<task>
<general>
<start>2007-07-15T10:51:23</start>
</general>
</task>
</tasks>
</taskreport>

Нужно переменной MinDate присвоить минимальное значение start.

Есть темплейт с именем min, который это делает.

ВОПРОС: Как этот темплейт правильно вызвать?
Следующий вариант не работает:

<xsl:variable name="MinDate">
<xsl:call-template name ="min">
<xsl:with-param name ="list" select ="taskreport/tasks/task/general/start" />
</xsl:call-template>
</xsl:variable>

Наверное, налажал в путях. Кто разбирается, поправьте меня плз.
...
Рейтинг: 0 / 0
Простой вопрос по XLT
    #35194112
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Навскидку:
1. либо variable засовывай в шаблон
2. либо содержимое шаблона вытаскивай сюда и тут же присвояй полученное значение

Шаблон отрабатывает но не возращает значение. Он его может присвоить но не вернуть..если ничего не путаю.Покрайней мере случаи когда объявлена переменная с каким то знач. потом вызывается шаблон с точно такой же переменной и другим значением, он отрабатывается возращается назад, у переменной будет значение изночальное а не то что было в вызванном шаблоне.
...
Рейтинг: 0 / 0
Простой вопрос по XLT
    #35194818
sboyko2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема с параметром list шаблона min. Какое значение нужно задать параметру? Пожалуйста, подскажите.
...
Рейтинг: 0 / 0
Простой вопрос по XLT
    #35201177
TiG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SuSaНавскидку:
1. либо variable засовывай в шаблон
2. либо содержимое шаблона вытаскивай сюда и тут же присвояй полученное значение

Шаблон отрабатывает но не возращает значение. Он его может присвоить но не вернуть..если ничего не путаю.Покрайней мере случаи когда объявлена переменная с каким то знач. потом вызывается шаблон с точно такой же переменной и другим значением, он отрабатывается возращается назад, у переменной будет значение изночальное а не то что было в вызванном шаблоне.
Ну почему, инициализировать переменную можно и вызовом шаблона - он же формирует некоторый набор узлов, его то и будет содержать переменная после создания.
sboyko2Проблема с параметром list шаблона min. Какое значение нужно задать параметру? Пожалуйста, подскажите.
скорее проблема именно в вашем шаблоне min, думается вы пытаетесь в нем обработать list как набор узлов не той структуры которую реально передаете выборкой taskreport/tasks/task/general/start
Сравните для примера:
Код: 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.
30.
31.
32.
33.
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="windows-1251"/>

<xsl:variable name="var">
  <xsl:call-template name="f1">
    <xsl:with-param name="list" select="taskreport/tasks/task/general/start" />
  </xsl:call-template>
</xsl:variable>

<xsl:template name="f1">
  <xsl:param name="list"/>
  <xsl:value-of select="$list[1]" />
</xsl:template>

<xsl:template name="f2">
  <xsl:param name="list"/>
  <xsl:value-of select="$list//start[1]" />
</xsl:template>

<xsl:template match="/">
 1 )
  <xsl:call-template name="f1">
    <xsl:with-param name="list" select="taskreport/tasks/task/general/start" />
  </xsl:call-template>
 2 )
  <xsl:call-template name="f2">
    <xsl:with-param name="list" select="taskreport/tasks/task/general/start" />
  </xsl:call-template>
 3 )
  <xsl:value-of select="$var" />
</xsl:template>

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


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