Subject: RE: MSXML and unwanted entity output
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Thu, 27 May 2004 12:02:32 +0100
|
If you want the output to be XML, then the special JavaScript characters
must be escaped according to XML conventions.
If you want the output to be HTML containing <script> elements, then use
method="html" on xsl:output, and the special rules for the <script> element
in HTML will be applied.
Michael Kay
> -----Original Message-----
> From: Alex Scott [mailto:fastidious007@xxxxxxxxxxx]
> Sent: 27 May 2004 10:15
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: RE: MSXML and unwanted entity output
>
> So how can I get a bit of javascript that is full of &&'s and <'s to
> output
> as &&'s and <'s
>
> Do I have to use something like (Example fromn FAQ) for every
> instance of
> these characters in the Javascript?:
> <xsl:value-of select="'<BR/>'" disable-output-escaping="yes"/>
>
>
>
> On Thu, 27 May 2004 10:20:54 +0100, "Alex Scott"
> <fastidious007@xxxxxxxxxxx> said:
> > Ok,
> >
> > So are you saying that this can't be change in the XSL as whatever
> > characters I use it will not make any difference to the output,
> > and this is therefore a problem (Supposedly further down
> the line)in the
> > XML parser?
> > ---
> > Alex.
> >
> > On Thu, 27 May 2004 10:05:51 +0100, "Michael Kay"
> <mhk@xxxxxxxxx> said:
> > > >
> > > > <![CDATA[&&]]>
> > > > Will out put as an entity:
> > > > &&
> > > >
> > > >
> > > > Does this look like a problem in the output type, or is there
> > > > a way I can
> > > > alter the XSLT so that I can get
> > > > the HTML returned as the same stuff I put in i.e.
> > > > && or <
> > >
> > > This is a FAQ.
> > >
> > > An XSLT transformation parses your source XML, creates a tree
> > > representation
> > > of the source, transforms it, and then serializes the result tree.
> > > Lexical
> > > details of the source XML, for example whether attributes
> use single
> > > quotes
> > > or double quotes, are lost in this process. The difference between
> > > <![CDATA[&&]]> and && is one of these lexical details.
> > >
> > > You would want the test "contains(., '&')" to work
> regardless how the
> > > ampersand was written in the source, surely?
> > >
> > > Michael Kay
|