> hi ever one
>
> from the fllowing xml fragment
> <AA>
> <BB>
> <category cat_id="1">one</category>
> <category cat_id="2">one</category>
> <category cat_id="3">two</category>
> <category cat_id="4">three</category>
> <BB>
> <CC>
> <sb-category id="1" category="1">one</category>
> <sb-category id="2" category="1">one</category>
> <sb-category id="3" category="1">two</category>
> <sb-category id="4" category="3">three</category>
> <CC>
> <AA>
>
>
> i am trying to output all sub-category within <CC>
> corspondes to a particuler category within <BB>
>
> my last attempet to achive the desired result was the
> following but is wrong
>
> can any one please help
Your XML sample isn't well-formed, it should really be:
<AA>
<BB>
<category cat_id="1">one</category>
<category cat_id="2">one</category>
<category cat_id="3">two</category>
<category cat_id="4">three</category>
</BB>
<CC>
<sb-category id="1" category="1">one</sb-category>
<sb-category id="2" category="1">one</sb-category>
<sb-category id="3" category="1">two</sb-category>
<sb-category id="4" category="3">three</sb-category>
</CC>
</AA>
To access <CC>/<sb-category> from within <BB>/<category> you could use:
<xsl:template match="category">
<xsl:apply-templates select="//sb-category[@category =
current()/@cat_id]"/>
This will match any sb-category in the whole document (// means
descentant-or-self from the root).
To make the xpath more specific, you could use:
<xsl:apply-templates
select="parent::BB/following-sibling::CC/sb-category[@category =
current()/@cat_id]"/>
Cheers
andrew
|