Subject: Re: [xsl] xsl value-of From: "Joerg Heinicke" <joerg.heinicke@xxxxxx> Date: Tue, 2 Apr 2002 19:57:19 +0200 |
> <xsl:key name="labels" match="xml/group/questionAnswered/label/text()" > use="concat(xml/group/@id, '_', xml/group/questionAnswered/label/@id)" /> You have to match on label and not its text-node. From this node you can go back to the group-element, choose its @id and the @id of the current label-element: <xsl:key name="labels" match="label" use="concat(../../@id, '_', @id)"/> The more specific XPATH "xml/group/questionAnswered/label" you only need when there are more <label>s in your file, you want to exclude from the <xsl:key>. Hope this helps, Joerg ----- Original Message ----- From: "Matias Woloski" <woloski@xxxxxxxx> To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx> Sent: Tuesday, April 02, 2002 7:21 PM Subject: RE: [xsl] xsl value-of > Jeni, thanks for your response... > > I created a key in the top of the document > > <xsl:key name="labels" match="xml/group/questionAnswered/label/text()" > use="concat(xml/group/@id, '_', xml/group/questionAnswered/label/@id)" /> > > but when trying to access the key I get nothing > > <xsl:for-each select="z:row"> > <xsl:value-of select="key('labels', concat($groupId, '_', @id))" /> > </xsl:for-each> > > I tried by harcoding a key but nothing > <xsl:value-of select="key('labels', '02_05')" /> > > I think the keys are not being created... > > any ideas? > > thanks, > Matias > > > -----Original Message----- > > From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx]On Behalf Of Jeni Tennison > > Sent: martes, 02 de abril de 2002 11:07 > > To: Matias Woloski > > Cc: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > Subject: Re: [xsl] xsl value-of > > > > > > Hi Matias, > > > > > So how can i reach the text attribute of the label element according > > > the id of the label and the id of the z:row? > > > > The easiest thing to do is to create a key that indexes the label > > elements by their id: > > > > <xsl:key name="labels" match="label" use="@id" /> > > > > You can then, for example, get the label element whose id is 03 using: > > > > key('labels', '03') > > > > So if the current node is a z:row element, you can get the value of > > the label that has the same id as the id of the z:row element using: > > > > <xsl:value-of select="key('labels', @id)" /> > > > > (Note that you were after the "string value" of the label, or its text > > node child, not the "text attribute" -- the label elements in your > > example didn't have any attributes called 'text'.) > > > > Cheers, > > > > Jeni > > > > --- > > Jeni Tennison > > http://www.jenitennison.com/ > > > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] xsl value-of, Matias Woloski | Thread | Re: [xsl] xsl value-of, Jeni Tennison |
RE: [xsl] xsl value-of, Matias Woloski | Date | Re: Re: RE: [xsl] sequence numberin, Joerg Heinicke |
Month |