[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: More XSL Discussion
/ "Michael Kay" <M.H.Kay@xxxxxxxxxxxxx> was heard to say: [...] | I can't think of a <UL> example off my head, but the following example is | real. The XML is: | | <SPEECH> | <SPEAKER>ROSENCRANTZ</SPEAKER> | <SPEAKER>GUILDENSTERN</SPEAKER> | <LINE>The single and peculiar life is bound,</LINE> | <LINE>With all the strength and armour of the mind.</LINE> | <STAGEDIR>Exeunt</STAGEDIR> | </SPEECH> | | and I want to render it in HTML as | | <TABLE><TR> | <TD>ROSENCRANTZ<BR>GUILDENSTERN</TD> | <TD>The single and peculiar life is bound<BR> | With all the strength and armour of the mind.<BR> | <I>Exeunt</I></TD> | </TR></TABLE> | | how do I do that in XSL? I can do it easily, of course, by generating | unbalanced tags in CDATA, but I'm told that's cheating. It is. Here's another way. (Note: I did this from memory, without consulting the XSL proposal, so it may not be syntactically perfect...) <rule> <target-element type="SPEECH"> <TABLE> <TR><TD> <select-elements mode="speakers"> <target-element type="SPEAKER"/> </select-elements> </TD><TD> <select-elements mode="lines"> <target-element type="LINE"/> </select-elements> <select-elements mode="lines"> <target-element type="STAGEDIR"/> </select-elements> </TD></TR> </TABLE> </rule> <rule mode="speakers" <target-element type="SPEAKER" position="first-of-type"/> <children/> </rule> <rule mode="speakers" <target-element type="SPEAKER"> <BR/><children/> </rule> <rule mode="lines" <target-element type="LINE"> <children/><BR/> </rule> <rule mode="lines" <target-element type="STAGEDIR"> <I><children/></I> </rule> I'm not going to argue that that is particularly pretty. In DSSSL, I'd probably do it by building the node-lists for speakers, lines, and stage directions explicitly and then processing those lists. But we haven't got that kind of functionality defined in the XSL scripting language yet. Cheers, norm -- Norman Walsh <nwalsh@xxxxxxxxxxxxx> | The First Amendment is often Senior Application Analyst | inconvenient. But that is besides ArborText, Inc. (www.arbortext.com) | the point. Inconvenience does not 413.549.3868 Voice/FAX | absolve the government of its | obligation to tolerate | speech.--Justice Anthony Kennedy, | in 91-155 XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|