Xslt: xml към html. Нещо в зависимост от параметрите

1) Имам XML файл със структурата, която не искам наистина да променя.

Използвам xslt, за да покажа моя xml като html.

Но имам някакъв текст в html-форма в зависимост от езика, който е деклариран в xml. Така че трябва динамично да избирам правилния език и в зависимост от него да показвам правилния текст.

Възможно ли е да се декларират константи в xslt и след това да се избере правилната?

2) И още един въпрос. аз имам

<meta http-equiv="Content-Type" content="text/html; charset=mycharSet" />

където е mycharset

<xsl:value-of select="root/CHARACTER_SET"/>

Как мога да вмъкна това в мета таг?


person Ksice    schedule 01.12.2011    source източник


Отговори (1)


В XSLT stylesheet декларирайте глобални параметри, напр. :

<xsl:param name="lang"/>

или в xslt 2.0

<xsl:param name="lang" required="yes" as="xs:string"/> и т.н.. ..

След това, когато извиквате вашия xslt, предайте съответния параметър и променете „текста“ в зависимост от стойността на параметъра:

<xsl:choose>
  <xsl:when test="$lang = 'English'"> ... 

Дано помогне.

Редактиране:

Относно втория ви въпрос:

<xsl:variable name="charSet" select="root/CHARACTER_SET"/>
<meta http-equiv="Content-Type" content="text/html; charset={$charSet}" />
person FailedDev    schedule 01.12.2011