XSLT问题麻烦

XSLT Issue trouble

有这个问题 在一个 XML 文件中,我可能碰巧有一个或多个请求标记,如下所示:

<notification>
    <data>
        <admin originator="" event_time="2015-02-28T02:26:42+02:00">
            <input>
                <request_set tx_id="Y2xfMDFfMDE6LWFjODQ2MTQ6Y2E3Mjo1NGVmYjA3NjoxNTE3ODA=#YWM4NDYxNDpjYTcyOjU0ZWZiMDc2OjE1MTc5Ng==" tx_timeout="2015-02-28T00:36:51.824Z" tx_command="start">
                    <request report="">
                        <update>
                            <account_data id="2005637" parent="3615732" Status="2" instance="1">
                                <info>
                                    <additional languageid="ARA" nwop="WMP" expdat="2015-08-17T00:00:00+02:00" exptyp="Deactivate" status="2" as="ACT/STD" dyn="ch=US,gn=,ct=1,enc=true,tp=TP_STUDENTS"/>
                                </info>

                            </account_data>
                        </update>
                    </request>
                    <request report="">
                        <update>
                            <account_data id="3615734" parent="3615732" Status="5" instance="1">
                                <info>
                                    <additional languageid="ARA" nwop="WMP" status="5" as="PAS/SUSP" dyn="ch=US,gn=,ct=1,enc=true,tp=TP_SHABABE"/>
                                </info>
                            </account_data>
                        </update>
                    </request>
                </request_set>
            </input>
        </admin>
    </data>
</notification>

Request的个数可以是随机的,可以是单个也可以是多个。 我的样式表适用于帐户 ID

<xsl:variable name="ACID">
    <xsl:value-of select="/notification/data/admin/input/request_set/request/update/account_data/@id"/>
 </xsl:variable>

在这种情况下,对于第二次出现的帐户 ID (ACID),它会出错,因为它仍然会使用第一个。 我想申请的一件事如下: 如果 account_data 中的 Status = 5,则在同一行中获取帐户 ID。 不确定你明白我的意思,你认为这可行吗? 还有其他方法吗? 提前致谢

One thing I would like to apply is following: If Status in the account_data is = 5 then take the account id in the same line.

我相信你的意思是:

<xsl:value-of select="/notification/data/admin/input/request_set/request/update/account_data[@Status='5']/@id"/>

这将 return 状态为 5(在您的示例中为“3615734”)的(第一个)account_data 的 ID。