RE: [xsl] Special character as element name

Subject: RE: [xsl] Special character as element name
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Thu, 25 Jan 2007 08:46:38 -0000
XSLT transforms XML to XML. <#x> is not well-formed XML, so you can't
produce it using XSLT.

Michael Kay
http://www.saxonica.com/

 

> -----Original Message-----
> From: San [mailto:san_sar@xxxxxxxxx] 
> Sent: 25 January 2007 08:20
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] Special character as element name
> 
> Dear all,
> 
> Many thanks for answering my questions the other day.
> Now I encounter some problem, I search for the answer but 
> haven't got the right one.(using version 1.0 and
> xalan)
> 
> Also This is my xml input file
> 
> <Query ID="2" >
>   <QueryHead URI="#x">
>   </QueryHead>
> </Query>
> 			
> I would like to have the output (getting the attributes 
> value) as the element name
> 
> <Body ID="2" >
>   <#x/>
> </Body>
> 
> I am trying using this xslt file (below), which ok if the 
> attributes value not special character (X without #)but not #x
> 
> <Body>
>   <xsl:element name="{//Query/@URI}"/>	
> </Body>
> 
> I tried several possibility, first I used the unicode for 
> replacing this # with hexadecimal. stil not work, then I 
> change the encoding type in the xslt file
> 
> <?xml version="1.0" encoding="iso-8859-1"?> 
> 
> <xsl:output method="xml" indent="yes"  
> encoding="ISO-8859-1"/> 
> 
> Stil doesn't give me result. 
> I really stuck with this :(
> 
> thanks a lot for your help
> san
> 
> 
> 
>  
> ______________________________________________________________
> ______________________
> Get your own web address.  
> Have a HUGE year through Yahoo! Small Business.
> http://smallbusiness.yahoo.com/domains/?p=BESTDEAL

Current Thread