RE: [xsl] producing php with xslt

Subject: RE: [xsl] producing php with xslt
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Tue, 24 Jul 2001 14:06:54 -0400
From the XML point of view,

<?php ... ?>

(and its ilk) is certainly a processing instruction. If you are creating XML, you must perforce adopt the XML point of view.

If you are not creating XML but some "bespoke" format, use not <xsl:output method="xml"/> but <xsl:output method="text"/>. Then, of course, you will have to create all tags in your output by hand (including "XML tags" which you've said aren't really XML because you're not creating XML but something else).

If you have the string <?php ... ?> literally in your stylesheet, the parser takes it to be a processing instruction in the input document (the stylesheet): this is correct behavior. But you don't want a PI in your input; you want it in your output, which is where <xsl:processing-instruction> comes in.

The only exception to the rule that the <? ... ?> syntax in XML indicates a processing instruction is the XML declaration <?xml version="1.0"?>, which is a declaration that happens to be disguised as a processing instruction. (This is for backwards compatibility, so that XML will conform to SGML. Although this now seems like an archaic requirement, back in the early days it was a Very Good Thing, allowing XML technologies to leapfrog years of evolution.)


At 06:34 PM 7/23/01, Michael Fitzgerald wrote:
It's not a PI, but it looks like a PI. You can use
xsl:processing-instruction to produce the desired output, nonetheless.
Otherwise, you could use CDATA sections, which might be compared to goto
statements in C. The Kernighan and Ritchie description of goto is apt for
CDATA sections: "infinitely-abusable." [1]


Wendell Piez                            mailto:wapiez@xxxxxxxxxxxxxxxx
Mulberry Technologies, Inc.      
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
  Mulberry Technologies: A Consultancy Specializing in SGML and XML

XSL-List info and archive:

Current Thread