XSLT current() ফাংশন
পরিভাষা ও ব্যবহার
current() ফাংশন শুধুমাত্র বর্তমান নোডকে নিয়ে এসে একটি নোড সেট ফিরিয়ে দেয়। সাধারণত, বর্তমান নোড এবং কনটেক্সট নোড একই।
<xsl:value-of select="current()"/>
সমান
<xsl:value-of select="."/>
কিন্তু, একটা ভিন্নতা আছে। আমরা নিচের XPath এক্সপ্রেসশনটি দেখি: "catalog/cd"। এই এক্সপ্রেসশনটি বর্তমান নোডের <catalog> সাব-নোডকে নির্বাচিত করে, এবং <catalog> নোডের <cd> সাব-নোডকে নির্বাচিত করে। এই মানে, প্রত্যেক গণনার পর্যায়ে, "."-এর অর্থ ভিন্ন হতে পারে。
নিচের এই লাইনটি:
<xsl:apply-templates select="//cd[@title=current()/@ref]"/>
টাইটল এট্রিবিউটস এর মান বর্তমান নোডের রেফ এট্রিবিউটস এর মানের সমান সব সিডি এলিমেন্টকে হ্যান্ডল করবে。
এটা ভিন্ন হল:
<xsl:apply-templates select="//cd[@title=./@ref]"/>
এইটা সব সিডি এলিমেন্টকে হ্যান্ডল করবে যারা টাইটল এবং রেফ এট্রিবিউটস একই মান ধারণ করে。
ব্যবহার্য কোড
node-set current()
উদাহরণ
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <xsl:for-each select="catalog/cd/artist"> Current node: <xsl:value-of select="current()"/> <br /> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>