То, как Вы получаете доступ к элементу его значением атрибута с помощью XSL, преобразовывает и XML?

Сепия и PDE имеют также собственный REPLs (для GNU Emacs).

7
задан allyLogan 3 December 2009 в 17:23
поделиться

4 ответа

<xsl:value-of select="image[@size='medium']" />
9
ответ дан 6 December 2019 в 10:51
поделиться

Это запрос Expath - как именно будет зависеть от структуры xslt, но с учетом вышеизложенного, вызов шаблона будет выглядеть так:

<xsl:apply-templates select="image[@size = 'medium']" />

Просто выберите значение, хм:

<xsl:value-of select="image[@size = 'medium']" />

Ключ в обоих случаях - это «где», то есть бит в квадратных скобках. Чтобы дать лучший ответ, я бы хотел увидеть больше XML и XSLT

1
ответ дан 6 December 2019 в 10:51
поделиться

Чтобы прояснить выражения XPath в трех ответах

<xsl:template match="/">
  <xsl:value-of select="//image[@size='medium']"/>
</xsl:template>

(@ Welbog) найдет КАЖДЫЙ элемент изображения в документе с size = "medium"

<xsl:value-of select="image[@size = 'medium']" />

(@ Murph и @carillonator) вернет элемент изображения, только если он является прямым потомком текущего элемента. Поскольку вы не указали структуру своего XML, вам следует быть осторожными при оценке этого выражения.

2
ответ дан 6 December 2019 в 10:51
поделиться

Это выражение XPath даст вам нужный результат:

//image[@size='medium']

Это очень простой вопрос XPath. Я бы посоветовал вам просмотреть некоторые примеры из учебника W3C School XPath , поскольку XPath - очень выразительный и полезный инструмент.

Чтобы использовать его в таблице стилей XSL, вы, вероятно, начнете примерно так:

<xsl:template match="/">
  <xsl:value-of select="//image[@size='medium']"/>
</xsl:template>

Опять же, это очень простой XSL, поэтому, если вы хотите узнать больше, я предлагаю вам взглянуть на учебник W3C School XSLT . Я иду туда, когда мне нужно узнать подробности о вещах, которые я, возможно, забыл.

6
ответ дан 6 December 2019 в 10:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: