powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Xslt: Как сделать тег элемента с "двумя префиксами" ?
11 сообщений из 11, страница 1 из 1
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38121083
lieben
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Итак, мне нужно получить название тега типа "app:regA". Однако, не получается корректно(чтобы работало) вставить часть "app:"

Имеется :
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
<xsl:template name="abc">
        <xsl:param name="prefix"/>
        <xsl:param name="track"/>
		
		<xsl:element name="{$prefix}A">

</xsl:template>


<xsl:call-template name="abc">
                    <xsl:with-param name="prefix">reg</xsl:with-param>
                    <xsl:with-param name="track">anyway</xsl:with-param>
                </xsl:call-template>




P.S. заранее спасибо.
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38122455
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
app это не префикс. Это алиас пространства имен. Алиасы задаются через xmlns. Принадлежность элемента пространству имен задается через атрибут namespace у <xsl:element>
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38122533
lieben
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_app это не префикс. Это алиас пространства имен. Алиасы задаются через xmlns. Принадлежность элемента пространству имен задается через атрибут namespace у <xsl:element>
Именно поэтому написал в кавычках. Алиас задан в xmlns.
_Vasilisk_Принадлежность элемента пространству имен задается через атрибут namespace у <xsl:element>

Через namespace пробовал, однако не работает. Можно пример, если не сложно?
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38125499
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
liebenЧерез namespace пробовал, однако не работаетКак пробовали?
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38125501
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
liebenМожно пример, если не сложно?
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
<xsl:stylesheet ... xmlns:app="http://my.company.com">

.............
  <xsl:element name="test" namespase="http://my.company.com">
  .............
  </xsl:element>
...........
</xsl:stylesheet>
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38126971
mage.lan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и так тоже должно работать
Код: xml
1.
2.
3.
4.
5.
6.
7.
<xsl:stylesheet ... xmlns:app="http://my.company.com">
.............
  <app:test>
  .............
  </app:test>
...........
</xsl:stylesheet>


на w3c были же примеры как xsl-ем xsl делать
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38129257
lieben
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_Как пробовали?
Тимплэйт:
Код: xml
1.
2.
3.
4.
5.
<xsl:template name="address">
        <xsl:param name="prefix"/>
        <xsl:param name="test"/>
<xsl:element name="{$prefix}Region" namespace="http://opopop.ru"><xsl:value-of select="//pgu:object[pgu:code = $test]//pgu:entry[pgu:key = 'Name']/pgu:value"/></xsl:element>
</xsl:template>


Вызов тимплэйта:
Код: xml
1.
2.
3.
4.
<xsl:call-template name="address">
                    <xsl:with-param name="prefix">reg</xsl:with-param>
                    <xsl:with-param name="test">abc</xsl:with-param>
                </xsl:call-template>


stylesheet:
Код: xml
1.
2.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:app="http://opopop.ru">
</xsl:stylesheet>


Что выходит:
Код: xml
1.
<regRegion xmlns="http://opopop.ru">такой</regRegion>




mage.lanи так тоже должно работать
Код: xml
1.
2.
3.
4.
5.
6.
7.
<xsl:stylesheet ... xmlns:app="http://my.company.com">
.............
  <app:test>
  .............
  </app:test>
...........
</xsl:stylesheet>


на w3c были же примеры как xsl-ем xsl делать

Спасибо конечно, но проблема глубже.
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38129487
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
liebenЧто выходит:
Код: xml
1.
<regRegion xmlns="http://opopop.ru">такой</regRegion>

Ровно то, что просили. Узел regRegion в пространсте имен http://opopop.ru. Не вижу разницы как объявлено пространство имен - явно или через алиас. Документы идентичны
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38129494
lieben
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_liebenЧто выходит:
Код: xml
1.
<regRegion xmlns="http://opopop.ru">такой</regRegion>

Ровно то, что просили. Узел regRegion в пространсте имен http://opopop.ru. Не вижу разницы как объявлено пространство имен - явно или через алиас. Документы идентичны

Документы индентичны, согласен. Есть большое НО - мою xml обрабатывает клиент(по работе), и у него принимает именно через алиас. Ладно, спасибо за ответы. Придется делать много рутины.
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38129612
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lieben. Есть большое НО - мою xml обрабатывает клиент(по работе), и у него принимает именно через алиасЭто принципиальная ошибка
...
Рейтинг: 0 / 0
Xslt: Как сделать тег элемента с "двумя префиксами" ?
    #38131469
lieben
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_lieben. Есть большое НО - мою xml обрабатывает клиент(по работе), и у него принимает именно через алиасЭто принципиальная ошибка
Заказчик, довольно крупная фирма, таким свойственно.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Xslt: Как сделать тег элемента с "двумя префиксами" ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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