Subject: RE: [xsl] Problem with Key matching XSLT 1.0 From: "Etheridge, Stephen" <stephen.etheridge@xxxxxxxxxx> Date: Tue, 14 Sep 2010 11:40:06 +0100 |
Martin Many thanks - works perfectly! I am slowly beginning to understand context nodes I hope! Kind regards Stephen -----Original Message----- From: Martin Honnen [mailto:Martin.Honnen@xxxxxx] Sent: 14 September 2010 11:32 To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] Problem with Key matching XSLT 1.0 Etheridge, Stephen wrote: > I am trying to compare two xml documents of the same format. I have > successfully transformed the documents to include a field called ItemKey > which includes a unique key (comprised of four other elements). I am > now trying to match and compare elements based on that key value. > > My XSLT includes the following as "global" variables: > > <xsl:variable name="file1">test_comp4.xml</xsl:variable> > <xsl:variable name="old_file" > select="document($file1)/*"></xsl:variable> > <xsl:variable name="file2">test_comp4_edited.xml</xsl:variable> > <xsl:variable name="new_file" > select="document($file2)/*"></xsl:variable> > <xsl:output method="xml" indent="yes"/> > <xsl:key name="test" match="//ItemKey" use="//ItemKey"/> First of all, in a pattern like the match attribute you never need to start with "//", match="ItemKey" is enough, doing match="//ItemKey" does not gain anything. And match="//ItemKey" use="//ItemKey" looks very odd, usually the "use" attribute selects an attribute (e.g. use="@foo") or a child element (e.g. use="bar") or the node itself (e.g. use=".") but putting use="//ItemKey" looks wrong, that way you "key" any "ItemKey" element on any "ItemKey" element in the document. -- Martin Honnen http://msmvps.com/blogs/martin_honnen/ Please help Logica to respect the environment by not printing this email / Pour contribuer comme Logica au respect de l'environnement, merci de ne pas imprimer ce mail / Bitte drucken Sie diese Nachricht nicht aus und helfen Sie so Logica dabei, die Umwelt zu sch|tzen. / Por favor ajude a Logica a respeitar o ambiente nao imprimindo este correio electronico. This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Problem with Key matching, Martin Honnen | Thread | [xsl] unwanted noNamespaceSchemaLoc, Trevor Nicholls |
Re: [xsl] Problem with Key matching, Martin Honnen | Date | [xsl] unwanted noNamespaceSchemaLoc, Trevor Nicholls |
Month |