Subject: Re: [xsl] Processing two documents, which order? From: Dave Pawson <davep@xxxxxxxxxxxxx> Date: Fri, 8 Apr 2011 09:52:25 +0100 |
On Fri, 8 Apr 2011 08:17:15 +0100 Dave Pawson <davep@xxxxxxxxxxxxx> wrote: Mixed solution. Bash script source dpFunctions.sh cp sourc.xml op.xml while read line do echo $line saxon op.xml markUpProperties.xsl op1.xml property=$line ckexit cp op1.xml op.xml done where saxon is another script to call up Saxon xslt 2 processor. Then xslt as <xsl:param name="property" select="'nil'"/> <xsl:template match="/"> <xsl:if test="$property='nil'"> <xsl:message terminate='yes'> Parameter property not set, Quitting </xsl:message> </xsl:if> <xsl:apply-templates> <xsl:with-param name="property" select="$property"/> </xsl:apply-templates> </xsl:template> <xsl:template match="text()"> <xsl:param name="property" as="xs:string"/> <xsl:analyze-string select="." regex="({$property})[\s\p{{P}}]"> <xsl:matching-substring> <xsl:message>match on [<xsl:value-of select='regex-group(1)'/>]</xsl:message> <property><xsl:value-of select="regex-group(1)"/></property><xsl:text> </xsl:text> </xsl:matching-substring> <xsl:non-matching-substring> <xsl:value-of select="."/> </xsl:non-matching-substring> </xsl:analyze-string> </xsl:template> <xsl:template match="*"> <xsl:copy> <xsl:apply-templates select="@*" /> <xsl:apply-templates > <xsl:with-param name="property" select="$property"/> </xsl:apply-templates> </xsl:copy> </xsl:template> <xsl:template match="@*"> <xsl:copy-of select="." /> </xsl:template> -- regards -- Dave Pawson XSLT XSL-FO FAQ. http://www.dpawson.co.uk
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Processing two documents,, Dave Pawson | Thread | Re: [xsl] Processing two documents,, Wolfgang Laun |
Re: [xsl] Processing two documents,, Wolfgang Laun | Date | Re: [xsl] Processing two documents,, Wolfgang Laun |
Month |