xsl-list
[Top] [All Lists]

RE: Maintainability Problem

2003-03-03 08:02:00
Hi,

I have created two XSLs, one which is with a DOCTYPE for HTML 
4.01, the
other for XHTML Basic. These XSLs are exactly the same, 
except for these
parts of my XSL:

HTML 4.01
---------

<xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
    
<xsl:output method="html"
    doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" 
    doctype-system="http://www.w3.org/TR/html4/loose.dtd";
    encoding="iso-8859-1" 
    indent="yes"/>

...and 

XHTML 1.0
---------

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
    xmlns:html="http://www.w3.org/1999/xhtml";>
    
<xsl:output method="xml"
    doctype-public="-//W3C//DTD XHTML Basic 1.0//EN" 
    
doctype-system="http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd";
    encoding="iso-8859-1" 
    indent="yes"
    omit-xml-declaration="yes"/>

Does someone know an easy way in which I could have two 
files, one with
the HTML 4.01 header and one with the XHTML 1.0 header, and I could
reuse them whenever I wanted by calling them in XSLs when needed. For
example, could I just do an include of these headers rather 
than having
to copy them in each file? 

Well, 1) you could have a third stylesheet that does that actual work, 
generates a document in XHTML namespace. Then you reprocess the results with a 
stylesheet for XHTML that's just an identity transformation that adds a 
doctype, or with a stylesheet for HTML that's an identity transformation that 
copies all elements into null-namespace and adds a doctype. Or 2) your 
stylesheet that does all the work generates all elements using <xsl:element 
name="whatever" namespace="{$target-NS}"> and in the stylesheet for HTML or 
XHTML where you import the workhorse stylesheet you define $target-NS as either 
"" or "http://www.w3.org/1999/xhtml";, respectively.

There are probably other and better strategies you could use described in XSLT 
books; don't remember if Jeni wrote about a situation like this.

Cheers,

Jarno - In Strict Confidence: Zauberschloss

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



<Prev in Thread] Current Thread [Next in Thread>