RE: [xsl] Identifying output from the (MS) xml parser

Subject: RE: [xsl] Identifying output from the (MS) xml parser
From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx>
Date: Tue, 10 Dec 2002 09:34:52 -0000
> I am writing some C++ code to run under windows, using the 
> MSXML DOM implementation. My user supplies both xml and xslt 
> input. The input may generate a new xml document, or a flat 
> file. I am trying to determine what comes out of the ms parser.  
> Could someone(s) please advice me of the accuracy, or 
> otherwise, of the following statements?
> 
> I believe the output from the parser must be one of the 
> following: A result tree; A wide (Unicode) string; An ASCII 
> (8bit) string;

I think you must be referring to the output of the transformer, rather
than the output of the parser. The output of the parser is typically a
DOM, and this acts as the input to the transformer. (It's very common,
but completely wrong, to refer to an XSLT processor as a "parser").
> 
> I believe which of these is produced will be determined by 
> the <xsl:output> element. Do I have to interrogate the style 
> sheet to find this information?

No, the xsl:output declaration determines how the result tree is
serialized, if it is serialized at all. The actual output destination is
determined by the way you invoke the XSLT processor from its API.

If you specify a byte stream as the destination, then the xsl:output
encoding will determine the encoding of that byte stream. If you specify
a character stream, then the output will be characters rather than
bytes, so the encoding is irrelevant.

Michael Kay
Software AG
home: Michael.H.Kay@xxxxxxxxxxxx
work: Michael.Kay@xxxxxxxxxxxxxx 


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread