Subject: Re: [xsl] What is the best approach for doing..... From: David Carlisle <davidc@xxxxxxxxx> Date: Wed, 12 May 2004 10:07:28 +0100 |
I suppose what I want to know is once the XSLT has been transformed into XHTML and then edited by a user, is there any way to use XSL to parse the XHTML to check/update the references. yes but in that case, how the xhtml was generated (by xslt in your case) is irrelevant. You just need to write an xslt file that takes an xhtml document and does an identity transform except for checking cross refs. Specifically a: the usual identity transform <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:h="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml" > <xsl:template match="*"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates> </xsl:copy> </xsl:template> plus one template to fix up cross refs. Assume here thet paragraphs all have the following form <p id="foo"><span>3.iii.a</span>Once upon a time... and an xref to this looks like <a href="#foo>3.iii.a</a> so all you have to do is replace the content of any internal a href by the first span child of the id'd para. <xsl:template match="h:a[starts-with(@href,'#')]"> <a href="{@href}><xsl:value-of select="id(@href)/span[1]"/></a> </xsl:template> and you are done <xsl:stylesheet> David -- The LaTeX Companion http://www.awprofessional.com/bookstore/product.asp?isbn=0201362996 http://www.amazon.co.uk/exec/obidos/tg/detail/-/0201362996/202-7257897-0619804 ________________________________________________________________________ This e-mail has been scanned for all viruses by Star Internet. The service is powered by MessageLabs. For more information on a proactive anti-virus service working around the clock, around the globe, visit: http://www.star.net.uk ________________________________________________________________________
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] What is the best approach, Julian Voelcker | Thread | Re: [xsl] What is the best approach, Julian Voelcker |
RE: [xsl] How can I always match th, Jarno.Elovirta | Date | Re: [xsl] How can I always match th, Jeni Tennison |
Month |