Subject: Re: [xsl] generate an id From: "Ali Choumane" <xml_tech@xxxxxxxxxxx> Date: Tue, 12 Jul 2005 11:17:18 +0200 |
From: Geert Josten <Geert.Josten@xxxxxxxxxxx> Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] generate an id Date: Tue, 12 Jul 2005 10:15:33 +0200
Hi Ali,
It looks to me as if you are using the template like a call-template and pass the actual data as parameters instead of using the current context node. Ever considered using match="*" mode="strSplit-to-word"?
Anyhow, I think you will be getting closer when you pass an argument to the generate-id() function, perhaps $arg1/*[1]? E.g. generate-id($arg1/*[1])..
Cheers, Geert
Ali Choumane wrote:
This is the template which I call it to segment a text to "sentences" (special caracteres as delimetrs)
(I am modifing the module "strSplit-to-word.xsl" in fxsl library, to permit the split to sentence.)
<xsl:template match="str-split2words-func:*"> <xsl:param name="arg1" select="/.."/> <xsl:param name="arg2"/>
<xsl:copy-of select="$arg1/*[1]"/> <xsl:copy-of select="$arg1/sentence[position() != last()]"/>
<xsl:choose>
<xsl:when test="contains($arg1/*[1], $arg2)">
<xsl:if test="string($arg1/sentence[last()])">
<xsl:copy-of select="$arg1/sentence[last()]"/>
</xsl:if>
<sentence/>
</xsl:when>
<xsl:otherwise>
<sentence>
<xsl:attribute name="stamp">
<xsl:value-of select="generate-id()"/>
</xsl:attribute>
<xsl:attribute name="status">nonDisamb</xsl:attribute>
<original>
<xsl:attribute name="sourceLang">En</xsl:attribute>
<xsl:value-of select="concat($arg1/sentence[last()], $arg2)"/>
</original>
</sentence>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
Tx for your help
Ali,
From: Geert Josten <Geert.Josten@xxxxxxxxxxx> Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] generate an id Date: Mon, 11 Jul 2005 15:16:16 +0200
Hi,
Generate-id() function bases its id's on the current context node. You can supply an XPath as parameter to select another node to base the id on.
Can you supply a larger snippet of your XSL. At least the xsl-template in which you use the function?
Cheers, Geert
Ali Choumane wrote:
Hi,
I am using the XPath function "generate-id()", obviously to give an xml id to some node in the target document as folowing:
...
<sentence>
<xsl:attribute name="stamp">
<xsl:value-of select="generate-id()"/>
</xsl:attribute>
...
</sentence>
...
But in the result, all the attribut "stamp" generated have the same value !!!
Can you help me?
Tx
Ali,
_________________________________________________________________
FREE pop-up blocking with the new MSN Toolbar - get it now! http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/
-- Geert.Josten@xxxxxxxxxxx IT-consultant at Daidalos BV, Bleiswijk (NL)
http://www.daidalos.nl/ tel:+31-(0)10-850 12 00 fax:+31-(0)10-850 11 99
GPG: 1024D/12DEBB50
_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
-- Geert.Josten@xxxxxxxxxxx IT-consultant at Daidalos BV, Bleiswijk (NL)
http://www.daidalos.nl/ tel:+31-(0)10-850 12 00 fax:+31-(0)10-850 11 99
GPG: 1024D/12DEBB50
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] generate an id, Geert Josten | Thread | [xsl] Problem with document() funct, Maria Amuchastegui |
Re: [xsl] Creating Namespace Nodes, David Carlisle | Date | Re: [xsl] Count number of dots in t, David Carlisle |
Month |