को देखते हुएवैरिएबल: टेम्पलेट से मेल खाते नमूने
एक वैश्विक चर के साथ एक XSLT स्टाइलशीट:
<xsl:variable name="lang" select="/response/str[@name='lang']"/>
प्रश्न
कहाँ सीमा यह है कि विधेय में चर का उपयोग कर आता है से xsl:template
मिलान पैटर्न में गलत है, लेकिन xsl:apply-templates
पैटर्न में चयन करने के लिए स्वीकार्य है?
<!-- throws compilation error, at least in libxslt -->
<xsl:template match="list[@name='item_list'][$lang]"/>
<!-- works as expected -->
<xsl:template match="list[@name='item_list'][/response/str[@name='lang']]"/>
<!-- works as expected -->
<xsl:template match="response">
<xsl:apply-templates select="list[@name='item_list'][$lang]">
</xsl:template>
मुझे यकीन नहीं है कि यह सीमा है, लेकिन क्या आप सुनिश्चित हैं कि आपके '$ lang' में स्ट्रिंग मान (या संख्यात्मक) है लेकिन कुछ नोड सेट नहीं है? – YuS
@yuri, इसमें एक नोड सेट होता है, लेकिन मुझे कोई कारण नहीं दिख रहा है कि संदर्भ में नोड सेट की अनुमति क्यों नहीं है। – newtover
मैं आपको विवरण नहीं बता सकता कि एक्सएसएलटी 1.0 में प्रतिबंध क्यों निर्दिष्ट किया गया था, लेकिन मैं आपको बता सकता हूं कि यह एक्सएसएलटी 2.0 में चला गया है, इसलिए आप भाषा के उस संस्करण में जाने और इसके कार्यान्वयन जैसे एक पर विचार करना चाहेंगे सैक्सन 9 या अल्टोवाएक्सएमएल। –