Re: [xsl] Testing 2 XML documents for equality - a solution

Subject: Re: [xsl] Testing 2 XML documents for equality - a solution
From: Mukul Gandhi <mukul_gandhi@xxxxxxxxx>
Date: Thu, 31 Mar 2005 02:35:31 -0800 (PST)
Hi David,
  Thanks a lot for pointing the bugs.. I'll try to
solve these and post a modified stylesheet.

Regards,
Mukul

--- David Carlisle <davidc@xxxxxxxxx> wrote:
> 
>       <xsl:for-each select="$doc1//@*">
>         <xsl:sort select="name()" />
>         <xsl:value-of select="name()"
> />:<xsl:value-of
>     select="." />:<xsl:value-of select="name(..)"
>       />:<xsl:value-of
>      select="count(../ancestor-or-self::node())" /> 
>       </xsl:for-each>
> 
> No.  You can't use //@* for this at all.
> You have to do normalise the attributes for each
> element separately, ie
> inline the string from each attribute along with the
> string for each
> element.
> <x>
>  <y a="2"/>
>  <y/>
> </x>
> is equal to
> <x>
>  <y/>
>  <y a="2"/>
> </x>
> 
> by the above as you only reecord that the a
> attribute is on a level 2 y
> element, you don't record which element it is on.
> 
> What is your definition of equality that you are
> trying to implement?
> This definition (even if corrected) is not namespace
> aware so
> <x:foo xmlns:x="a"/> would be different from <y:foo
> xmlns:y="a"/>
> but equal to <x:foo xmlns:x="b"/>
> so the definition of equality wouldn't be much use
> for any XPath use,
> two "equal" inputs would behave diffently as input
> to a stylesheet.
> 
> David
> 
>
________________________________________________________________________
> This e-mail has been scanned for all viruses by
> Star. The
> service is powered by MessageLabs. For more
> information on a proactive
> anti-virus service working around the clock, around
> the globe, visit:
> http://www.star.net.uk
>
________________________________________________________________________
> 
> 


		
__________________________________ 
Do you Yahoo!? 
Take Yahoo! Mail with you! Get it on your mobile phone. 
http://mobile.yahoo.com/maildemo 

Current Thread