如何从Processing-instructing()中获取属性并将其存储在XSLT中的Global变量中

时间:2013-05-07 08:23:55

标签: xml xslt xslt-1.0 xslt-2.0

我在xml中有多个处理指令,但必须得到特定的PI(即xpp:PageOption)并存储在Global variable中。我可以实现这一点。请帮帮我

请找到以下示例输入标记。

                        <?xpp xpp:ps1?>
                        <tag name="html"/>
                        <?xpp xpp:Formater username=&quot;name&quot; ?>
                        <t x="0" y="0" style="html" cgt="true" suppress="true">FirstName LastName</t>
                        <?xpp xpp:PageOptions  showpage=&quot;yes&quot; height=&quot;10&quot; fonttype=&quot;times&quot; linespace=&quot;single&quot; >
                        <tag name="meta">
                            <attr name="http-equiv">Content-Type</attr>
                            <attr name="content">text/html; charset=UTF-8</attr>
                        </tag>

谢谢

1 个答案:

答案 0 :(得分:1)

使用<xsl:variable name="pi1" select="//processing-instruction('xpp')[contains(., 'xpp:PageOptions')]"/>,您可以选择名称为xpp的处理指令,其中包含数据中的字符串xpp:PageOptions。您需要知道处理指令的数据是非结构化的,它通常看起来像列表伪属性,但是没有关于数据结构的规则,因此如果您期望某个结构,则需要将数据处理为一个字符串。