OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: How to declare a param which name is in a XML file?

[ Lists Home | Date Index | Thread Index ]
  • From: Daniel Barclay <Daniel.Barclay@digitalfocus.com>
  • To: José Manuel Beas <jmbeas@telenium.es>
  • Date: Tue, 31 Oct 2000 15:17:49 -0500

José Manuel Beas wrote:
> 
> I have a XML file with a parameter definition zone.
> 
> <parameters>
>   <param ident="param1">
>   <param ident="param2">
> </parameters>
> 
> And i want to apply a XSLT file to this XML file
> 
> XSLT File
> 
>         <xsl:template match="parameters">
>                 <xsl:for-each select="param">
>                         <xsl:param name="@ident"/>
>                 </xsl:for-each>
>         </xsl:template>
> 
> But when XSLT-parser(SAXON) processes it, shows this error:
> 
>         "Name @ident contains invalid characters"
> 
> How should i solve this problem??

The name attribute of xsl:param must be a QName (see
http://www.w3.org/TR/xslt#element-param ); specifically, the 
parameter name must be given literally in the XSLT source, and can't 
be specified with an expression.

I'm pretty sure there's no way to define XSLT parameters or variables 
whose names are defined in the XML source document (the file being 
transformed).

If you're going to provide parameter values in an XML file, you can 
probably create one XSLT parameter or variable whose value is a nodeset 
that is the content (children) of the "parameters" element (something 
like <xsl:variable name="params" select=".../param" />), and then can 
extract specific values with something like $var[@ident="param1"].

If you really want to map your given XML to XSLT parameters, I think
you'd have to transform the given XML into an XSLT stylesheet with
a second XSLT stylesheet.


Daniel
-- 
Daniel Barclay
Digital Focus
Daniel.Barclay@digitalfocus.com




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS