[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Add attributes Processed File

Subject: Re: Add attributes Processed File
From: "contest.vix" <contest.vix@xxxxxxxxxx>
Date: Tue, 7 Dec 2004 09:53:33 -0200
xslt add attribute to element
Hi,
Thanks for your help.
What I'm trying to do is to group all elements "a" with attribute flag="true"
at the same level at the xml tree that has only one elemnt "b" with attribute
flag="true" among them.
In the example below I marked the group I'm trying to group.

<root>
 <a flag="false">
  <b flag="false"/>
 </a>
 <c>
  <b flag="false"/>
   <a flag="true"/> <--------------
   <b flag="true"/> <--------------
   <a flag="true"/> <--------------
   <a flag="true"/> <--------------
   <a flag="true"/> <--------------
  </b>
 </c>
</root>

the output, should be:

<root>
 <a flag="false">
  <b flag="false"/>
 </a>
 <c>
  <b flag="false"/>
    <group> <-------------- begin new element
      <a flag="true"/> <---------- selected group
      <b flag="true"/> <---------- selected group
      <a flag="true"/> <---------- selected group
      <a flag="true"/> <---------- selected group
      <a flag="true"/> <---------- selected group
    </group> <-------------- end new element
  </b>
 </c>
</root>

Thanks a lot,
Roger.

>
> > The only solution that i think is to mark te already processed elements
"a".
>
> that clearly isn't a solution as XSLT can not write to teh input, and
> all templaes are side effect free.
>
> Unfortunately I can't follow your problem description well enough to
> suggest any code.
>
> > So I must group all groups of elements "a" that has one element "b" among
them.
>
> what do you mean by "group" here, and in particular what do you mean by
> group of groups.
>
> As your input and output had lots of I couldn't tell which
> elements in the input was being mapped to which element in the output.
>
>
> > I must group all elements "a" with attribute flag="true" follwed by a
> > element "b" with attribute flag="true"
>
> to select all such a elements you would use
>
> select=".//a[@flag='true'][following-sibling::b[@flag='true]]"
>
> but I can't relate that to your sample output. (The above would just
> select one element in your sample input:
>
>
>
>
>
>
>
>
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>
>
>
>
>
>
>
>
> 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
> ________________________________________________________________________
>
__________________________________________________________________________
Acabe com aquelas janelinhas que pulam na sua tela.
AntiPop-up UOL - I gratis!
http://antipopup.uol.com.br/

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.