Subject: [xsl] Re: Non-well-formed HTML in XSL From: Dimitre Novatchev <dnovatchev@xxxxxxxxx> Date: Tue, 16 Jul 2002 13:19:48 -0700 (PDT) |
--- Ryan Neil Gillespie <scoobie at UDel dot Edu> wrote: > > Thanks a lot for the previous help. Template matching makes more > sense > now. > > I would like to print HTML that will (eventually) be well-formed. > However, > the XSL to display it is not well-formed and thus I get an error. > What > I > need is a way to tell XSL to disregard the non-well-formedness of the > HTML > I'm writing. > > -------- > some.xsl > -------- > > <table> > > <tr><td> > <xsl:attribute name="rowspan"> > <xsl:value-of select="count(meet)"/> > </xsl:attribute> > > <xsl:value-of select="../instructor"/> > </td> > > <xsl:for-each select="meet"> > > <xsl:if test="ancestor::node()[position() != 1]"> > </tr><tr> # this is the problem > </xsl:if> > > <td>some info</td> > > </xsl:for-each> > > </tr> > > </table> > > -------- > What I want the HTML to look like > -------- > <table> > > <tr> > <td rowspan="2">Johnson</td> > <td>some info</td> > </tr> > <tr> > <td>some info</td> > </tr> > > <tr> > <td rowspan="2">Galbraith</td> > <td>some info</td> > </tr> > > </table> > > --------- > sample XML input > --------- > > <course> > <title>Early Childhood Development</title> > <subject>EDUC</subject> > <number>104</number> > <section>010</section> > <instructor>Phillips</instructor> > > <meets> > <meet> > <format>LEC</format> > <building>SMI</building> > <room>205</room> > <days>MWF</days> > <starts>1100</starts> > <ends>1230</ends> > </meet> > > > _ryan Hi Ryan, You should never try to output non-well-formed xml (and this is possible in 99.9999% of all cases). In this particular case instead of: <tr><td> <xsl:attribute name="rowspan"> <xsl:value-of select="count(meet)"/> </xsl:attribute> <xsl:value-of select="../instructor"/> </td> <xsl:for-each select="meet"> <xsl:if test="ancestor::node()[position() != 1]"> </tr><tr> # this is the problem </xsl:if> <td>some info</td> </xsl:for-each> </tr> use: <tr> <td> <xsl:attribute name="rowspan"> <xsl:value-of select="count(meet)"/> </xsl:attribute> <xsl:value-of select="../instructor"/> </td> <xsl:apply-templates select="meet"/> </tr> In case you could explain what exactly you're trying to do, many people on this list will be able to show a correct solution. ===== Cheers, Dimitre Novatchev. http://fxsl.sourceforge.net/ -- the home of FXSL __________________________________________________ Do You Yahoo!? Yahoo! Autos - Get free new car price quotes http://autos.yahoo.com XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Non-well-formed HTML in X, Jeni Tennison | Thread | [xsl] XalanC++: 'Xalan' versus 'tes, Edward L. Knoll |
RE: [xsl] losing significant whites, Bradford, Denis | Date | Re: [xsl] Non-well-formed HTML in X, David Carlisle |
Month |