Subject: Re: [xsl] Processing two documents, which order? From: Wolfgang Laun <wolfgang.laun@xxxxxxxxx> Date: Fri, 8 Apr 2011 11:16:09 +0200 |
I've spotted a few snags: running this with property=bee on <p>a bee on a bee-line to a frisbee is not a bee</p> produces <p>a <property>bee</property> on a <property>bee</property> line to a fris<property>bee</property> is not a bee</p> - "bee" in "bee-line" is marked up and the hyphen is lost - The "bee" ending of "friesbee" is marked up - The trailing "bee" is not marked up. -W On 8 April 2011 10:52, Dave Pawson <davep@xxxxxxxxxxxxx> wrote: > 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,, Dave Pawson |
Re: [xsl] Processing two documents,, Dave Pawson | Date | Re: [xsl] Processing two documents,, Dave Pawson |
Month |