[xsl] passing parameters to XSL,what if no value in some cases

Subject: [xsl] passing parameters to XSL,what if no value in some cases
From: himanshu padmanabhi <himanshu.padmanabhi@xxxxxxxxx>
Date: Fri, 6 Mar 2009 14:58:10 +0530
First time,code will go to 'else' part,it again returns to this form
and 'if' part executes.

<CODE>
        my $parser = XML::LibXML->new();
        my $xslt = XML::LibXSLT->new();

        my $source = $parser->parse_file($xmlfile);
        my $style_doc = $parser->parse_file($xslfile);

        my $stylesheet = $xslt->parse_stylesheet($style_doc);
        if($in{'flag'} eq "2") {
            my $results = $stylesheet->transform($source,
XML::LibXSLT::xpath_to_string(args => "$in{'args'}",val => "1",new =>
"$in{'new'}"));
            print $stylesheet->output_string($results);
        }else{
            my $results = $stylesheet->transform($source,
XML::LibXSLT::xpath_to_string(args => "",val => "3",new =>
"$in{'new'}"));
            print $stylesheet->output_string($results);
        }
</CODE>

1.In my 'else' above,I don't want to pass 'args'(can I do it?),

2.How can I check in my xsl file whether it is passed or not probably
using some 'if' statement or something like this?
<CODE>
    <xsl:choose>
    <xsl:when test="args_is_given">
         <some code>
    </xsl:when>
    </xsl:choose>
</CODE>


-----------------------------
Regards,
Himanshu Padmanabhi

Current Thread