nicolaken    02/05/16 10:04:03

  Modified:    src/scratchpad/src/org/apache/cocoon/transformation/constrained
                        AbstractConstrainedTransformer.java
                        ElementEventAdapter.java XmlTreeConstraint.java
               src/scratchpad/src/org/apache/cocoon/transformation
                        Chart2SvgTransformer.java
               src/scratchpad/webapp/mount/charts sitemap.xmap
  Added:       src/scratchpad/webapp/mount/charts/content/static/bar
                        bar1.xml bar10.xml bar11.xml bar12.xml bar2.xml
                        bar3.xml bar4.xml bar5.xml bar6.xml bar7.xml
                        bar8.xml bar9.xml
               src/scratchpad/src/org/apache/cocoon/transformation
                        WingsTransformer.java
               src/scratchpad/lib krysalis-wings-0.2.0-dev.jar
               src/scratchpad/webapp/mount/charts/content/static/line
                        line1.xml line2.xml line3.xml line4.xml line5.xml
                        line6.xml
               src/scratchpad/webapp/mount/charts/content/static/multi
                        multi1.xml
               src/scratchpad/webapp/mount/charts/content/static/pie
                        pie1.xml pie2.xml pie3.xml pie4.xml pie5.xml
                        pie6.xml pie7.xml
  Log:
  Added wings 0.2 lib based on new codebase and added working examples
  for it.
  This is an innitial commit of the new system; the new Wings Transformer
  was made by Tom Klaasen <[EMAIL PROTECTED]>,
  
  Revision  Changes    Path
  1.3       +55 -7     
xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/constrained/AbstractConstrainedTransformer.java
  
  Index: AbstractConstrainedTransformer.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/constrained/AbstractConstrainedTransformer.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AbstractConstrainedTransformer.java       14 May 2002 20:34:22 -0000      
1.2
  +++ AbstractConstrainedTransformer.java       16 May 2002 17:04:02 -0000      
1.3
  @@ -44,6 +44,7 @@
   import java.util.Map;
   import java.util.Properties;
   import java.util.ArrayList;
  +import java.util.List;
   import java.util.HashMap;
   import java.util.ListIterator;
   import java.util.TooManyListenersException;
  @@ -70,32 +71,79 @@
    *  code is from the SQLTransformer of Donald Ball.
    *
    [EMAIL PROTECTED]     <a href="mailto:[EMAIL PROTECTED]">Nicola Ken 
Barozzi</a>
  + [EMAIL PROTECTED]     <a href="mailto:[EMAIL PROTECTED]">Tom Klaasen</a>
    [EMAIL PROTECTED]    14 mei 2002
    */
   public abstract class AbstractConstrainedTransformer
                 extends AbstractTransformer {
   
  +     /**  The URI of the namespace this class processes */
        private String my_uri;
  +     /**  The prefix that is used in the XML document to indicate the 
namespace */
        private String my_prefix = "unknown";
  +     /**
  +      *  The 'name' of the namespace this class processes. FIXME: Seems to 
be the
  +      *  last path element of the URI -- is that correct?
  +      */
        private String my_name;
  -     private ArrayList myUriOpenElements = new ArrayList();
  -     private ArrayList globalOpenElements = new ArrayList();
  -     private ArrayList globalOpenElementsAttributes = new ArrayList();
  +     /**  A List of open elements in the namespace of this class. */
  +     private List myUriOpenElements = new ArrayList();
  +     /**  A List of all open elements in the XML file that is processed. */
  +     private List globalOpenElements = new ArrayList();
  +     /**
  +      *  A List of the attributes of the open elements in the XML file that 
is
  +      *  processed.
  +      */
  +     private List globalOpenElementsAttributes = new ArrayList();
  +     /**  The raw representation of the element that was last opened in the 
XML file. */
        private String lastOpenElementRaw = "";
  -     private ArrayList registeredListeners = new ArrayList();
  -     private ArrayList registeredListenerConstraints = new ArrayList();
  -     private StringBuffer current_value =
  -                     new StringBuffer();
  +     /**  The List with the listeners that are interested in the events of 
this class. */
  +     private List registeredListeners = new ArrayList();
  +     /**
  +      *  The constraints of the registered listeners. FIXME: Find out how the
  +      *  relation with the previous List is maintained.
  +      */
  +     private List registeredListenerConstraints = new ArrayList();
  +     /**  FIXME: What's this? */
  +     private StringBuffer current_value = new StringBuffer();
  +     /**
  +      *  The consumer of the SAX events generated by this
  +      *  AbstractConstrainedTransformer.
  +      */
        public XMLConsumer xml_consumer;
  +     /**
  +      *  The lexical handler of the SAX events generated by this
  +      *  AbstractConstrainedTransformer. FIXME: Isn't this always the same 
as the
  +      *  xml_consumer??
  +      */
        public LexicalHandler lexical_handler;
   
   
  +     /**
  +      *  Initialize: set up the listeners etc.
  +      *
  +      [EMAIL PROTECTED]  parameters  The parameters that can be used by this 
method.
  +      */
        public abstract void init(Parameters parameters);
   
   
  +
  +     /**
  +      *  Retrieve the URI of the namespace this 
AbstractConstrainedTransformer has
  +      *  to process.
  +      *
  +      [EMAIL PROTECTED]    The URI of the namespace this 
AbstractConstrainedTransformer has
  +      *      to process.
  +      */
        public abstract String getUri();
   
   
  +     /**
  +      *  Retrieve the 'name' of the namespace this class processes. FIXME: 
Seems to
  +      *  be the last path element of the URI -- is that correct?
  +      *
  +      [EMAIL PROTECTED]    The 'name' of the namespace this class processes.
  +      */
        public abstract String getName();
   
   
  
  
  
  1.2       +44 -54    
xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/constrained/ElementEventAdapter.java
  
  Index: ElementEventAdapter.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/constrained/ElementEventAdapter.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ElementEventAdapter.java  8 Apr 2002 08:09:16 -0000       1.1
  +++ ElementEventAdapter.java  16 May 2002 17:04:02 -0000      1.2
  @@ -1,67 +1,57 @@
   /*
  -
  - ============================================================================
  -                   The Apache Software License, Version 1.1
  - ============================================================================
  -
  - Copyright (C) 1999-2002 The Apache Software Foundation. All rights reserved.
  -
  - Redistribution and use in source and binary forms, with or without modifica-
  - tion, are permitted provided that the following conditions are met:
  -
  - 1. Redistributions of  source code must  retain the above copyright  notice,
  -    this list of conditions and the following disclaimer.
  -
  - 2. Redistributions in binary form must reproduce the above copyright notice,
  -    this list of conditions and the following disclaimer in the documentation
  -    and/or other materials provided with the distribution.
  -
  - 3. The end-user documentation included with the redistribution, if any, must
  -    include  the following  acknowledgment:  "This product includes  software
  -    developed  by the  Apache Software Foundation  (http://www.apache.org/)."
  -    Alternately, this  acknowledgment may  appear in the software itself,  if
  -    and wherever such third-party acknowledgments normally appear.
  -
  - 4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not  be
  -    used to  endorse or promote  products derived from  this software without
  -    prior written permission. For written permission, please contact
  -    [EMAIL PROTECTED]
  -
  - 5. Products  derived from this software may not  be called "Apache", nor may
  -    "Apache" appear  in their name,  without prior written permission  of the
  -    Apache Software Foundation.
  -
  - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
  - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  - FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  THE
  - APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY DIRECT,
  - INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLU-
  - DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS
  - OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON
  - ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR TORT
  - (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  USE OF
  - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  -
  - This software  consists of voluntary contributions made  by many individuals
  - on  behalf of the Apache Software  Foundation and was  originally created by
  - Stefano Mazzocchi  <[EMAIL PROTECTED]>. For more  information on the Apache
  - Software Foundation, please see <http://www.apache.org/>.
  -
  -*/
  -
  + *  
============================================================================
  + *  The Apache Software License, Version 1.1
  + *  
============================================================================
  + *  Copyright (C) 1999-2002 The Apache Software Foundation. All rights 
reserved.
  + *  Redistribution and use in source and binary forms, with or without 
modifica-
  + *  tion, are permitted provided that the following conditions are met:
  + *  1. Redistributions of  source code must  retain the above copyright  
notice,
  + *  this list of conditions and the following disclaimer.
  + *  2. Redistributions in binary form must reproduce the above copyright 
notice,
  + *  this list of conditions and the following disclaimer in the documentation
  + *  and/or other materials provided with the distribution.
  + *  3. The end-user documentation included with the redistribution, if any, 
must
  + *  include  the following  acknowledgment:  "This product includes  software
  + *  developed  by the  Apache Software Foundation  (http://www.apache.org/)."
  + *  Alternately, this  acknowledgment may  appear in the software itself,  if
  + *  and wherever such third-party acknowledgments normally appear.
  + *  4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not 
 be
  + *  used to  endorse or promote  products derived from  this software without
  + *  prior written permission. For written permission, please contact
  + *  [EMAIL PROTECTED]
  + *  5. Products  derived from this software may not  be called "Apache", nor 
may
  + *  "Apache" appear  in their name,  without prior written permission  of the
  + *  Apache Software Foundation.
  + *  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 
WARRANTIES,
  + *  INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 
AND
  + *  FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  
THE
  + *  APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY 
DIRECT,
  + *  INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES 
(INCLU-
  + *  DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; 
LOSS
  + *  OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED 
AND ON
  + *  ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR 
TORT
  + *  (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  
USE OF
  + *  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  + *  This software  consists of voluntary contributions made  by many 
individuals
  + *  on  behalf of the Apache Software  Foundation and was  originally 
created by
  + *  Stefano Mazzocchi  <[EMAIL PROTECTED]>. For more  information on the 
Apache
  + *  Software Foundation, please see <http://www.apache.org/>.
  + */
   package org.apache.cocoon.transformation.constrained;
   
   import java.util.EventListener;
   import org.xml.sax.SAXException;
   
   /**
  - *
  - * @author <a href="mailto:[EMAIL PROTECTED]">Nicola Ken Barozzi</a> 
  + [EMAIL PROTECTED]     <a href="mailto:[EMAIL PROTECTED]">Nicola Ken 
Barozzi</a>
  + [EMAIL PROTECTED]    15 mei 2002
    */
   public abstract class ElementEventAdapter implements ElementEventListener {
   
  -  public void containerElementEnded(ContainerElementEndEvent e) throws 
Exception{}
  +     public void containerElementEnded(ContainerElementEndEvent e) throws 
Exception { }
  +
   
  -  public void elementValueRecieved(ElementValueEvent e) throws Exception{}
  +     public void elementValueRecieved(ElementValueEvent e) throws Exception 
{ }
   
   }
  +
  
  
  
  1.2       +189 -171  
xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/constrained/XmlTreeConstraint.java
  
  Index: XmlTreeConstraint.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/constrained/XmlTreeConstraint.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- XmlTreeConstraint.java    8 Apr 2002 08:09:16 -0000       1.1
  +++ XmlTreeConstraint.java    16 May 2002 17:04:02 -0000      1.2
  @@ -1,184 +1,202 @@
   /*
  -
  - ============================================================================
  -                   The Apache Software License, Version 1.1
  - ============================================================================
  -
  - Copyright (C) 1999-2002 The Apache Software Foundation. All rights reserved.
  -
  - Redistribution and use in source and binary forms, with or without modifica-
  - tion, are permitted provided that the following conditions are met:
  -
  - 1. Redistributions of  source code must  retain the above copyright  notice,
  -    this list of conditions and the following disclaimer.
  -
  - 2. Redistributions in binary form must reproduce the above copyright notice,
  -    this list of conditions and the following disclaimer in the documentation
  -    and/or other materials provided with the distribution.
  -
  - 3. The end-user documentation included with the redistribution, if any, must
  -    include  the following  acknowledgment:  "This product includes  software
  -    developed  by the  Apache Software Foundation  (http://www.apache.org/)."
  -    Alternately, this  acknowledgment may  appear in the software itself,  if
  -    and wherever such third-party acknowledgments normally appear.
  -
  - 4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not  be
  -    used to  endorse or promote  products derived from  this software without
  -    prior written permission. For written permission, please contact
  -    [EMAIL PROTECTED]
  -
  - 5. Products  derived from this software may not  be called "Apache", nor may
  -    "Apache" appear  in their name,  without prior written permission  of the
  -    Apache Software Foundation.
  -
  - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
  - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  - FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  THE
  - APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY DIRECT,
  - INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLU-
  - DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS
  - OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON
  - ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR TORT
  - (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  USE OF
  - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  -
  - This software  consists of voluntary contributions made  by many individuals
  - on  behalf of the Apache Software  Foundation and was  originally created by
  - Stefano Mazzocchi  <[EMAIL PROTECTED]>. For more  information on the Apache
  - Software Foundation, please see <http://www.apache.org/>.
  -
  -*/
  -
  + *  
============================================================================
  + *  The Apache Software License, Version 1.1
  + *  
============================================================================
  + *  Copyright (C) 1999-2002 The Apache Software Foundation. All rights 
reserved.
  + *  Redistribution and use in source and binary forms, with or without 
modifica-
  + *  tion, are permitted provided that the following conditions are met:
  + *  1. Redistributions of  source code must  retain the above copyright  
notice,
  + *  this list of conditions and the following disclaimer.
  + *  2. Redistributions in binary form must reproduce the above copyright 
notice,
  + *  this list of conditions and the following disclaimer in the documentation
  + *  and/or other materials provided with the distribution.
  + *  3. The end-user documentation included with the redistribution, if any, 
must
  + *  include  the following  acknowledgment:  "This product includes  software
  + *  developed  by the  Apache Software Foundation  (http://www.apache.org/)."
  + *  Alternately, this  acknowledgment may  appear in the software itself,  if
  + *  and wherever such third-party acknowledgments normally appear.
  + *  4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not 
 be
  + *  used to  endorse or promote  products derived from  this software without
  + *  prior written permission. For written permission, please contact
  + *  [EMAIL PROTECTED]
  + *  5. Products  derived from this software may not  be called "Apache", nor 
may
  + *  "Apache" appear  in their name,  without prior written permission  of the
  + *  Apache Software Foundation.
  + *  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 
WARRANTIES,
  + *  INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 
AND
  + *  FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  
THE
  + *  APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY 
DIRECT,
  + *  INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES 
(INCLU-
  + *  DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; 
LOSS
  + *  OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED 
AND ON
  + *  ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR 
TORT
  + *  (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  
USE OF
  + *  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  + *  This software  consists of voluntary contributions made  by many 
individuals
  + *  on  behalf of the Apache Software  Foundation and was  originally 
created by
  + *  Stefano Mazzocchi  <[EMAIL PROTECTED]>. For more  information on the 
Apache
  + *  Software Foundation, please see <http://www.apache.org/>.
  + */
   package org.apache.cocoon.transformation.constrained;
   
  -
  -
   import java.util.ArrayList;
  +import java.util.List;
   import java.util.Arrays;
   import java.util.ListIterator;
   
  -
   /**
  - *
  - * @author <a href="mailto:[EMAIL PROTECTED]">Nicola Ken Barozzi</a> 
  + [EMAIL PROTECTED]     <a href="mailto:[EMAIL PROTECTED]">Nicola Ken 
Barozzi</a>
  + [EMAIL PROTECTED]    15 mei 2002
    */
   public class XmlTreeConstraint {
   
  -    private boolean debug=true;
  +     private boolean debug = true;
   
  -    private Boolean   isMyUriRequired;
  -    private ArrayList allowedMyUriStackEnd  = null;
  -    private ArrayList allowedGlobalStackEnd = null;
  -
  -    public XmlTreeConstraint(ArrayList allowedMyUriStackEnd,
  -                             ArrayList allowedGlobalStackEnd,
  -                             Boolean isMyUriRequired) {
  -
  -        this.allowedMyUriStackEnd  = allowedMyUriStackEnd;
  -        this.allowedGlobalStackEnd = allowedGlobalStackEnd;
  -        this.isMyUriRequired       = isMyUriRequired;
  -    }
  -
  -    public XmlTreeConstraint(ArrayList allowedMyUriStackEnd,
  -                             Boolean isMyUriRequired) {
  -        this.allowedMyUriStackEnd = allowedMyUriStackEnd;
  -        this.isMyUriRequired      = isMyUriRequired;
  -    }
  -
  -    public XmlTreeConstraint(ArrayList allowedMyUriStackEnd) {
  -        this.allowedMyUriStackEnd = allowedMyUriStackEnd;
  -    }
  -
  -    public XmlTreeConstraint(String[] allowedMyUriStackEnd,
  -                             String[] allowedGlobalStackEnd,
  -                             boolean isMyUriRequired) {
  -
  -        this.allowedMyUriStackEnd  = new 
ArrayList(Arrays.asList(allowedMyUriStackEnd));
  -        this.allowedGlobalStackEnd = new 
ArrayList(Arrays.asList(allowedGlobalStackEnd));
  -        this.isMyUriRequired       = new Boolean(isMyUriRequired);
  -    }
  -
  -    public XmlTreeConstraint(String[] allowedMyUriStackEnd,
  -                             boolean isMyUriRequired) {
  -        this.allowedMyUriStackEnd = new 
ArrayList(Arrays.asList(allowedMyUriStackEnd));
  -        this.isMyUriRequired      = new Boolean(isMyUriRequired);
  -    }
  -
  -    public XmlTreeConstraint(String[] allowedMyUriStackEnd) {
  -        this.allowedMyUriStackEnd = new 
ArrayList(Arrays.asList(allowedMyUriStackEnd));
  -    }
  -
  -
  -    public boolean isAllowed(Boolean isMyUri, ArrayList myUriStack,
  -                             ArrayList globalStack) {
  -   if(debug){
  -        System.out.println("isMyUri :"+isMyUri+"\nrequired uri 
"+isMyUriRequired);
  -        System.out.println("myUristack: \n"+myUriStack);
  -        System.out.println("allowedMyUriStackEnd: \n"+allowedMyUriStackEnd);
  -        System.out.println("globalstack: \n"+globalStack);
  -        System.out.println("allowedGlobalStackEnd: 
\n"+allowedGlobalStackEnd);
  -        }
  -        if (isMyUriRequired != null) {
  -            if (isMyUri == null) {
  -                return false;
  -            }
  -
  -            if (!isMyUriRequired.equals(isMyUri)) {
  -                return false;
  -            }
  -        }
  -
  -        if (allowedMyUriStackEnd != null) {
  -            if (myUriStack == null) {
  -                return false;
  -            }
  -
  -            if (!areEndsEqual(allowedMyUriStackEnd, myUriStack)) {
  -                return false;
  -            }
  -        }
  -
  -        if (allowedGlobalStackEnd != null) {
  -            if (globalStack == null) {
  -                return false;
  -            }
  -
  -            if (!areEndsEqual(allowedGlobalStackEnd, globalStack)) {
  -                return false;
  -            }
  -        }
  -
  -        return true;
  -    }
  -
  -    private boolean areEndsEqual(ArrayList l1, ArrayList l2) {
  -
  -        if (l1.size() > l2.size()) {
  -            if ((!(l1.size() == l2.size()))
  -                    && ((l1.size() < 1) || (l2.size() < 1))) {
  -                return false;
  -            }
  -
  -            //make l1 smaller
  -            ArrayList l3 = l1;
  -
  -            l1 = l2;
  -            l2 = l3;
  -        }
  -
  -        ListIterator iter1 = l1.listIterator(l1.size());
  -        ListIterator iter2 = l2.listIterator(l2.size());
  -
  -        while (iter1.hasPrevious()) {
  -            if (!(((String) iter1.previous().toString())
  -                    .equals(iter2.previous().toString()))) {
  -
  -                //System.out.println("ends are NOT equal.");
  -                return false;
  -            }
  -        }
  -
  -        //System.out.println("ends are equal.");
  -        return true;
  -    }
  +     private Boolean isMyUriRequired;
  +     private List allowedMyUriStackEnd = null;
  +     private List allowedGlobalStackEnd = null;
  +
  +
  +     public XmlTreeConstraint(List allowedMyUriStackEnd,
  +                     List allowedGlobalStackEnd,
  +                     Boolean isMyUriRequired) {
  +
  +             this.allowedMyUriStackEnd = allowedMyUriStackEnd;
  +             this.allowedGlobalStackEnd = allowedGlobalStackEnd;
  +             this.isMyUriRequired = isMyUriRequired;
  +     }
  +
  +
  +     public XmlTreeConstraint(List allowedMyUriStackEnd,
  +                     Boolean isMyUriRequired) {
  +             this.allowedMyUriStackEnd = allowedMyUriStackEnd;
  +             this.isMyUriRequired = isMyUriRequired;
  +     }
  +
  +
  +     public XmlTreeConstraint(List allowedMyUriStackEnd) {
  +             this.allowedMyUriStackEnd = allowedMyUriStackEnd;
  +     }
  +
  +
  +     public XmlTreeConstraint(String[] allowedMyUriStackEnd,
  +                     String[] allowedGlobalStackEnd,
  +                     boolean isMyUriRequired) {
  +
  +             this.allowedMyUriStackEnd = Arrays.asList(allowedMyUriStackEnd);
  +             this.allowedGlobalStackEnd = 
Arrays.asList(allowedGlobalStackEnd);
  +             this.isMyUriRequired = new Boolean(isMyUriRequired);
  +     }
  +
  +
  +     public XmlTreeConstraint(String[] allowedMyUriStackEnd,
  +                     boolean isMyUriRequired) {
  +             this.allowedMyUriStackEnd = Arrays.asList(allowedMyUriStackEnd);
  +             this.isMyUriRequired = new Boolean(isMyUriRequired);
  +     }
  +
  +
  +     public XmlTreeConstraint(String[] allowedMyUriStackEnd) {
  +             this.allowedMyUriStackEnd = Arrays.asList(allowedMyUriStackEnd);
  +     }
  +
  +
  +     /**
  +      *  Check whether the current element is allowed on this position in 
the XML
  +      *  tree / SAX stream.
  +      *
  +      [EMAIL PROTECTED]  isMyUri      Is the URI of the element the same as 
the URI of the
  +      *      calling object? <code>true</code> if it is, else 
<code>false</code>
  +      [EMAIL PROTECTED]  myUriStack   The List with elements in the 
namespace of the calling
  +      *      object.
  +      [EMAIL PROTECTED]  globalStack  The List with all elements (thus far) 
of the XML file
  +      *      being processed.
  +      [EMAIL PROTECTED]              <code>true</code> if the element is 
allowed on this
  +      *      position, <code>false</code> otherwise.
  +      */
  +     public boolean isAllowed(Boolean isMyUri, List myUriStack,
  +                     List globalStack) {
  +             if (debug) {
  +                     System.out.println("isMyUri :" + isMyUri + "\nrequired 
uri " + isMyUriRequired);
  +                     System.out.println("myUristack: \n" + myUriStack);
  +                     System.out.println("allowedMyUriStackEnd: \n" + 
allowedMyUriStackEnd);
  +                     System.out.println("globalstack: \n" + globalStack);
  +                     System.out.println("allowedGlobalStackEnd: \n" + 
allowedGlobalStackEnd);
  +             }
  +             if (isMyUriRequired != null) {
  +                     if (isMyUri == null) {
  +                             return false;
  +                     }
  +
  +                     /*
  +                      *  new code
  +                      */
  +                     if (isMyUriRequired.booleanValue()) {
  +                             if (!isMyUri.booleanValue()) {
  +                                     return false;
  +                             }
  +                     }
  +                     /*
  +                      *  old code -- seems wrong to me (tomK)
  +                      *  if (!isMyUriRequired.equals(isMyUri)) {
  +                      *  return false;
  +                      *  }
  +                      */
  +             }
  +
  +             if (allowedMyUriStackEnd != null) {
  +                     if (myUriStack == null) {
  +                             return false;
  +                     }
  +
  +                     if (!areEndsEqual(allowedMyUriStackEnd, myUriStack)) {
  +                             return false;
  +                     }
  +             }
  +
  +             if (allowedGlobalStackEnd != null) {
  +                     if (globalStack == null) {
  +                             return false;
  +                     }
  +
  +                     if (!areEndsEqual(allowedGlobalStackEnd, globalStack)) {
  +                             return false;
  +                     }
  +             }
  +
  +             return true;
  +     }
  +
  +
  +     private boolean areEndsEqual(List l1, List l2) {
  +
  +             if (l1.size() > l2.size()) {
  +                     if ((!(l1.size() == l2.size()))
  +                                      && ((l1.size() < 1) || (l2.size() < 
1))) {
  +                             return false;
  +                     }
  +
  +                     //make l1 the smaller one
  +                     List l3 = l1;
  +
  +                     l1 = l2;
  +                     l2 = l3;
  +             }
  +
  +             ListIterator iter1 = l1.listIterator(l1.size());
  +             ListIterator iter2 = l2.listIterator(l2.size());
  +
  +             while (iter1.hasPrevious()) {
  +                     if (!(((String) iter1.previous().toString())
  +                                     .equals(iter2.previous().toString()))) {
  +
  +                             //System.out.println("ends are NOT equal.");
  +                             return false;
  +                     }
  +             }
  +
  +             //System.out.println("ends are equal.");
  +             return true;
  +     }
   }
  +
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar1.xml
  
  Index: bar1.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n></n><a>77.6</a></v>
  <v><n></n><a>75.7</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n>1991</n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n>1992</n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>72.6</a></v>
  <v><n>1993</n><a>72.6</a></v>
  </set>
  <set id="2" name="South">
  <v><a>87</a></v>
  <v><a>88.6</a></v>
  <v><a>89.7</a></v>
  <v><a>90.6</a></v>
  <v><a>92.6</a></v>
  <v><a>92.6</a></v>
  <v><a>94.6</a></v>
  <v><a>96.6</a></v>
  <v><a>98.6</a></v>
  <v><a>98.6</a></v>
  <v><a>99.6</a></v>
  <v><a>99.6</a></v>
  <v><a>101</a></v>
  <v><a>103</a></v>
  <v><a>106</a></v>
  <v><a>106</a></v>
  <v><a>109</a></v>
  </set>
  <set id="3" name="West">
  <v><a>90</a></v>
  <v><a>89.6</a></v>
  <v><a>90.7</a></v>
  <v><a>91.6</a></v>
  <v><a>93.6</a></v>
  <v><a>94.6</a></v>
  <v><a>95.6</a></v>
  <v><a>97.6</a></v>
  <v><a>108.6</a></v>
  <v><a>108.6</a></v>
  <v><a>109.6</a></v>
  <v><a>109.6</a></v>
  <v><a>111</a></v>
  <v><a>113</a></v>
  <v><a>116</a></v>
  <v><a>116</a></v>
  <v><a>119</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="barChart" combine="difference" 
style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  <dataset ref-id="2"/>
  <dataset ref-id="3"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar10.xml
  
  Index: bar10.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="Sets">
  <v><n>Set A</n><a>2000</a></v>
  <v><n>Set B</n><a>1000</a></v>
  <v><n>Set C</n><a>3000</a></v>
  <v><n>Set D</n><a>-500</a></v>
  <v><n>Set E</n><a>8000</a></v>
  <v><n>Set F</n><a>5000</a></v>
  <v><n>Set G</n><a>10000</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="750" height="400" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar11.xml
  
  Index: bar11.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="Sets">
  <v><n>Set A</n><a>2000</a></v>
  <v><n>Set B</n><a>1000</a></v>
  <v><n>Set C</n><a>3000</a></v>
  <v><n>Set D</n><a>-500</a></v>
  <v><n>Set E</n><a>8000</a></v>
  <v><n>Set F</n><a>5000</a></v>
  <v><n>Set G</n><a>10000</a></v>
  </set>
  <set id="2" name="Others">
  <v><n>Set A</n><a>-2000</a></v>
  <v><n>Set B</n><a>-1000</a></v>
  <v><n>Set C</n><a>-3000</a></v>
  <v><n>Set D</n><a>500</a></v>
  <v><n>Set E</n><a>-8000</a></v>
  <v><n>Set F</n><a>-5000</a></v>
  <v><n>Set G</n><a>-15000</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="750" height="400" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  <dataset ref-id="2"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar12.xml
  
  Index: bar12.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="Sets">
  <v><n>Set A</n><a>2</a></v>
  <v><n>Set B</n><a>1</a></v>
  <v><n>Set C</n><a>3</a></v>
  <v><n>Set D</n><a>-5</a></v>
  <v><n>Set E</n><a>8</a></v>
  <v><n>Set F</n><a>5</a></v>
  <v><n>Set G</n><a>10</a></v>
  </set>
  <set id="2" name="Others">
  <v><n>Set A</n><a>-2</a></v>
  <v><n>Set B</n><a>-10</a></v>
  <v><n>Set C</n><a>-3</a></v>
  <v><n>Set D</n><a>5</a></v>
  <v><n>Set E</n><a>-8</a></v>
  <v><n>Set F</n><a>-5</a></v>
  <v><n>Set G</n><a>-15</a></v>
  </set>
  <set id="3" name="More">
  <v><n>Set A</n><a>12</a></v>
  <v><n>Set B</n><a>-10</a></v>
  <v><n>Set C</n><a>3</a></v>
  <v><n>Set D</n><a>1</a></v>
  <v><n>Set E</n><a>13</a></v>
  <v><n>Set F</n><a>9</a></v>
  <v><n>Set G</n><a>5</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="750" height="400" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  <dataset ref-id="2"/>
  <dataset ref-id="3"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar2.xml
  
  Index: bar2.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n></n><a>77.6</a></v>
  <v><n></n><a>75.7</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n>1991</n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n>1992</n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>72.6</a></v>
  <v><n>1993</n><a>72.6</a></v>
  </set>
  <set id="2" name="South">
  <v><a>87</a></v>
  <v><a>88.6</a></v>
  <v><a>89.7</a></v>
  <v><a>90.6</a></v>
  <v><a>92.6</a></v>
  <v><a>92.6</a></v>
  <v><a>94.6</a></v>
  <v><a>96.6</a></v>
  <v><a>98.6</a></v>
  <v><a>98.6</a></v>
  <v><a>99.6</a></v>
  <v><a>99.6</a></v>
  <v><a>101</a></v>
  <v><a>103</a></v>
  <v><a>106</a></v>
  <v><a>106</a></v>
  <v><a>109</a></v>
  </set>
  <set id="3" name="East">
  <v><a>90</a></v>
  <v><a>94.6</a></v>
  <v><a>95.7</a></v>
  <v><a>96.6</a></v>
  <v><a>97.6</a></v>
  <v><a>99.6</a></v>
  <v><a>100.6</a></v>
  <v><a>102.6</a></v>
  <v><a>113.6</a></v>
  <v><a>113.6</a></v>
  <v><a>113.6</a></v>
  <v><a>114.6</a></v>
  <v><a>116</a></v>
  <v><a>117</a></v>
  <v><a>121</a></v>
  <v><a>121</a></v>
  <v><a>127</a></v>
  </set>
  <set id="4" name="West">
  <v><a>95</a></v>
  <v><a>99.6</a></v>
  <v><a>110.7</a></v>
  <v><a>111.6</a></v>
  <v><a>113.6</a></v>
  <v><a>114.6</a></v>
  <v><a>115.6</a></v>
  <v><a>117.6</a></v>
  <v><a>128.6</a></v>
  <v><a>128.6</a></v>
  <v><a>129.6</a></v>
  <v><a>129.6</a></v>
  <v><a>131</a></v>
  <v><a>133</a></v>
  <v><a>136</a></v>
  <v><a>146</a></v>
  <v><a>159</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="barChart" combine="difference" 
style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  <dataset ref-id="2"/>
  <dataset ref-id="3"/>
  <dataset ref-id="4"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar3.xml
  
  Index: bar3.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n></n><a>77.6</a></v>
  <v><n></n><a>75.7</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n>1991</n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n>1992</n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>72.6</a></v>
  <v><n>1993</n><a>72.6</a></v>
  </set>
  <set id="2" name="South">
  <v><a>87</a></v>
  <v><a>88.6</a></v>
  <v><a>89.7</a></v>
  <v><a>90.6</a></v>
  <v><a>92.6</a></v>
  <v><a>92.6</a></v>
  <v><a>94.6</a></v>
  <v><a>96.6</a></v>
  <v><a>98.6</a></v>
  <v><a>98.6</a></v>
  <v><a>99.6</a></v>
  <v><a>99.6</a></v>
  <v><a>101</a></v>
  <v><a>103</a></v>
  <v><a>106</a></v>
  <v><a>106</a></v>
  <v><a>109</a></v>
  </set>
  <set id="3" name="East">
  <v><a>90</a></v>
  <v><a>94.6</a></v>
  <v><a>95.7</a></v>
  <v><a>96.6</a></v>
  <v><a>97.6</a></v>
  <v><a>99.6</a></v>
  <v><a>100.6</a></v>
  <v><a>102.6</a></v>
  <v><a>113.6</a></v>
  <v><a>113.6</a></v>
  <v><a>113.6</a></v>
  <v><a>114.6</a></v>
  <v><a>116</a></v>
  <v><a>117</a></v>
  <v><a>121</a></v>
  <v><a>121</a></v>
  <v><a>127</a></v>
  </set>
  <set id="4" name="West">
  <v><a>95</a></v>
  <v><a>99.6</a></v>
  <v><a>110.7</a></v>
  <v><a>111.6</a></v>
  <v><a>113.6</a></v>
  <v><a>114.6</a></v>
  <v><a>115.6</a></v>
  <v><a>117.6</a></v>
  <v><a>128.6</a></v>
  <v><a>128.6</a></v>
  <v><a>129.6</a></v>
  <v><a>129.6</a></v>
  <v><a>131</a></v>
  <v><a>133</a></v>
  <v><a>136</a></v>
  <v><a>146</a></v>
  <v><a>159</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="barChart" combine="merge" 
style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  <dataset ref-id="2"/>
  <dataset ref-id="3"/>
  <dataset ref-id="4"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar4.xml
  
  Index: bar4.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>Set A</n><a>80</a></v>
  <v><n>Set B</n><a>77.6</a></v>
  <v><n>Set C</n><a>75.7</a></v>
  <v><n>Set D</n><a>76.6</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="550" height="300" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar5.xml
  
  Index: bar5.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set type="percent" id="1" name="North">
  <v><n>Set A</n><a>80%</a></v>
  <v><n>Set B</n><a>77.6%</a></v>
  <v><n>Set C</n><a>%</a></v>
  <v><n>Set D</n><a>7%</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="550" height="300" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar6.xml
  
  Index: bar6.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>Set A</n><a>80</a></v>
  <v><n>Set B</n><a></a></v>
  <v><n>Set C</n><a>150</a></v>
  <v><n>Set D</n><a>207</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="550" height="300" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar7.xml
  
  Index: bar7.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="Sets">
  <v><n>Set A</n><a>0.02</a></v>
  <v><n>Set B</n><a>0.01</a></v>
  <v><n>Set C</n><a>0.6</a></v>
  <v><n>Set D</n><a>0.43</a></v>
  <v><n>Set E</n><a>0.95</a></v>
  <v><n>Set F</n><a>0.32</a></v>
  <v><n>Set G</n><a>0.45</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="750" height="400" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar8.xml
  
  Index: bar8.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="Sets">
  <v><n>Set A</n><a>20</a></v>
  <v><n>Set B</n><a>-10</a></v>
  <v><n>Set C</n><a>30</a></v>
  <v><n>Set D</n><a>-5</a></v>
  <v><n>Set E</n><a>80</a></v>
  <v><n>Set F</n><a>50</a></v>
  <v><n>Set G</n><a>-10</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="750" height="400" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/bar/bar9.xml
  
  Index: bar9.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="Sets">
  <v><n>Set A</n><a>0.00120</a></v>
  <v><n>Set B</n><a>0.003</a></v>
  <v><n>Set C</n><a>0.002</a></v>
  <v><n>Set D</n><a>0.0005</a></v>
  <v><n>Set E</n><a>0.007</a></v>
  <v><n>Set F</n><a>0.002</a></v>
  <v><n>Set G</n><a>0.006</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="750" height="400" effect="3D">
  <graph type="barChart" style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.3       +49 -38    
xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/Chart2SvgTransformer.java
  
  Index: Chart2SvgTransformer.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/Chart2SvgTransformer.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Chart2SvgTransformer.java 14 May 2002 20:34:22 -0000      1.2
  +++ Chart2SvgTransformer.java 16 May 2002 17:04:02 -0000      1.3
  @@ -1,42 +1,53 @@
   /*
  - *  
============================================================================
  - *  The Apache Software License, Version 1.1
  - *  
============================================================================
  - *  Copyright (C) 1999-2002 The Apache Software Foundation. All rights 
reserved.
  - *  Redistribution and use in source and binary forms, with or without 
modifica-
  - *  tion, are permitted provided that the following conditions are met:
  - *  1. Redistributions of  source code must  retain the above copyright  
notice,
  - *  this list of conditions and the following disclaimer.
  - *  2. Redistributions in binary form must reproduce the above copyright 
notice,
  - *  this list of conditions and the following disclaimer in the documentation
  - *  and/or other materials provided with the distribution.
  - *  3. The end-user documentation included with the redistribution, if any, 
must
  - *  include  the following  acknowledgment:  "This product includes  software
  - *  developed  by the  Apache Software Foundation  (http://www.apache.org/)."
  - *  Alternately, this  acknowledgment may  appear in the software itself,  if
  - *  and wherever such third-party acknowledgments normally appear.
  - *  4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not 
 be
  - *  used to  endorse or promote  products derived from  this software without
  - *  prior written permission. For written permission, please contact
  - *  [EMAIL PROTECTED]
  - *  5. Products  derived from this software may not  be called "Apache", nor 
may
  - *  "Apache" appear  in their name,  without prior written permission  of the
  - *  Apache Software Foundation.
  - *  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 
WARRANTIES,
  - *  INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 
AND
  - *  FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  
THE
  - *  APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY 
DIRECT,
  - *  INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES 
(INCLU-
  - *  DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; 
LOSS
  - *  OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED 
AND ON
  - *  ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR 
TORT
  - *  (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  
USE OF
  - *  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  - *  This software  consists of voluntary contributions made  by many 
individuals
  - *  on  behalf of the Apache Software  Foundation and was  originally 
created by
  - *  Stefano Mazzocchi  <[EMAIL PROTECTED]>. For more  information on the 
Apache
  - *  Software Foundation, please see <http://www.apache.org/>.
  - */
  +
  + ============================================================================
  +                   The Apache Software License, Version 1.1
  + ============================================================================
  +
  + Copyright (C) 1999-2002 The Apache Software Foundation. All rights reserved.
  +
  + Redistribution and use in source and binary forms, with or without modifica-
  + tion, are permitted provided that the following conditions are met:
  +
  + 1. Redistributions of  source code must  retain the above copyright  notice,
  +    this list of conditions and the following disclaimer.
  +
  + 2. Redistributions in binary form must reproduce the above copyright notice,
  +    this list of conditions and the following disclaimer in the documentation
  +    and/or other materials provided with the distribution.
  +
  + 3. The end-user documentation included with the redistribution, if any, must
  +    include  the following  acknowledgment:  "This product includes  software
  +    developed  by the  Apache Software Foundation  (http://www.apache.org/)."
  +    Alternately, this  acknowledgment may  appear in the software itself,  if
  +    and wherever such third-party acknowledgments normally appear.
  +
  + 4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not  be
  +    used to  endorse or promote  products derived from  this software without
  +    prior written permission. For written permission, please contact
  +    [EMAIL PROTECTED]
  +
  + 5. Products  derived from this software may not  be called "Apache", nor may
  +    "Apache" appear  in their name,  without prior written permission  of the
  +    Apache Software Foundation.
  +
  + THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
  + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  + FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  THE
  + APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY DIRECT,
  + INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLU-
  + DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS
  + OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON
  + ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR TORT
  + (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  USE OF
  + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  +
  + This software  consists of voluntary contributions made  by many individuals
  + on  behalf of the Apache Software  Foundation and was  originally created by
  + Stefano Mazzocchi  <[EMAIL PROTECTED]>. For more  information on the Apache
  + Software Foundation, please see <http://www.apache.org/>.
  +
  +*/
   package org.apache.cocoon.transformation;
   
   import java.io.IOException;
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/src/org/apache/cocoon/transformation/WingsTransformer.java
  
  Index: WingsTransformer.java
  ===================================================================
  /*
  
   ============================================================================
                     The Apache Software License, Version 1.1
   ============================================================================
  
   Copyright (C) 1999-2002 The Apache Software Foundation. All rights reserved.
  
   Redistribution and use in source and binary forms, with or without modifica-
   tion, are permitted provided that the following conditions are met:
  
   1. Redistributions of  source code must  retain the above copyright  notice,
      this list of conditions and the following disclaimer.
  
   2. Redistributions in binary form must reproduce the above copyright notice,
      this list of conditions and the following disclaimer in the documentation
      and/or other materials provided with the distribution.
  
   3. The end-user documentation included with the redistribution, if any, must
      include  the following  acknowledgment:  "This product includes  software
      developed  by the  Apache Software Foundation  (http://www.apache.org/)."
      Alternately, this  acknowledgment may  appear in the software itself,  if
      and wherever such third-party acknowledgments normally appear.
  
   4. The names "Apache Cocoon" and  "Apache Software Foundation" must  not  be
      used to  endorse or promote  products derived from  this software without
      prior written permission. For written permission, please contact
      [EMAIL PROTECTED]
  
   5. Products  derived from this software may not  be called "Apache", nor may
      "Apache" appear  in their name,  without prior written permission  of the
      Apache Software Foundation.
  
   THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
   INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
   FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  THE
   APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY DIRECT,
   INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES (INCLU-
   DING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS
   OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON
   ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR TORT
   (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  USE OF
   THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  
   This software  consists of voluntary contributions made  by many individuals
   on  behalf of the Apache Software  Foundation and was  originally created by
   Stefano Mazzocchi  <[EMAIL PROTECTED]>. For more  information on the Apache
   Software Foundation, please see <http://www.apache.org/>.
  
  */
  
  package org.apache.cocoon.transformation;
  
  import org.w3c.dom.*;
  import org.krysalis.wings.*;
  
  /**
   *  A transformer to render charts. Uses the Krysalis Wings XCML charting 
engine.<p>
   *
   *  The component in the pipeline before this one, has to generate SAX-events
   *  that comply the Krysalis Wings XCML charting format. Output is a stream 
of SVG SAX events.
   *
   [EMAIL PROTECTED]     <a href="mailto:[EMAIL PROTECTED]">Tom Klaasen</a>
   [EMAIL PROTECTED]    16 mei 2002
   */
  public class WingsTransformer extends AbstractDOMTransformer {
        protected Document transform(Document doc) {
                WingsRenderer gr = new WingsRenderer();
                gr.setLogger(new 
org.apache.avalon.framework.logger.LogKitLogger(getLogger()));
                gr.setFontInfo("sansserif", 12);
                Document svgdoc = gr.renderToSVG(doc);
                return svgdoc;
        }
  }
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/lib/krysalis-wings-0.2.0-dev.jar
  
        <<Binary file>>
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/line/line1.xml
  
  Index: line1.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n></n><a>77.6</a></v>
  <v><n></n><a>75.7</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n>1991</n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n>1992</n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>72.6</a></v>
  <v><n>1993</n><a>72.6</a></v>
  </set>
  <set id="2" name="South">
  <v><a>87</a></v>
  <v><a>88.6</a></v>
  <v><a>89.7</a></v>
  <v><a>90.6</a></v>
  <v><a>92.6</a></v>
  <v><a>92.6</a></v>
  <v><a>94.6</a></v>
  <v><a>96.6</a></v>
  <v><a>98.6</a></v>
  <v><a>98.6</a></v>
  <v><a>99.6</a></v>
  <v><a>99.6</a></v>
  <v><a>101</a></v>
  <v><a>103</a></v>
  <v><a>106</a></v>
  <v><a>106</a></v>
  <v><a>109</a></v>
  </set>
  <set id="3" name="West">
  <v><a>90</a></v>
  <v><a>89.6</a></v>
  <v><a>90.7</a></v>
  <v><a>91.6</a></v>
  <v><a>93.6</a></v>
  <v><a>94.6</a></v>
  <v><a>95.6</a></v>
  <v><a>97.6</a></v>
  <v><a>108.6</a></v>
  <v><a>108.6</a></v>
  <v><a>109.6</a></v>
  <v><a>109.6</a></v>
  <v><a>111</a></v>
  <v><a>113</a></v>
  <v><a>116</a></v>
  <v><a>116</a></v>
  <v><a>119</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="lineChart" combine="compare" 
style="border:false;config:/default/lineChart.xml">
  <dataset ref-id="1"/>
  <dataset ref-id="2"/>
  <dataset ref-id="3"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/line/line2.xml
  
  Index: line2.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>8</a></v>
  <v><n></n><a>10</a></v>
  <v><n></n><a>12</a></v>
  <v><n></n><a>13</a></v>
  <v><n></n><a>15</a></v>
  <v><n>1991</n><a>20</a></v>
  <v><n></n><a>21</a></v>
  <v><n></n><a>23</a></v>
  <v><n></n><a>25</a></v>
  <v><n></n><a>40</a></v>
  <v><n></n><a>45</a></v>
  <v><n>1992</n><a>30</a></v>
  <v><n></n><a>35</a></v>
  <v><n></n><a>41</a></v>
  <v><n></n><a>42</a></v>
  <v><n></n><a>47</a></v>
  <v><n>1993</n><a>55</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="lineChart" combine="compare" 
style="border:false;config:/default/greenLineChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/line/line3.xml
  
  Index: line3.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n></n><a>130</a></v>
  <v><n></n><a>150</a></v>
  <v><n></n><a>180</a></v>
  <v><n></n><a>190</a></v>
  <v><n>1991</n><a>160</a></v>
  <v><n></n><a>150</a></v>
  <v><n></n><a>145</a></v>
  <v><n></n><a>140</a></v>
  <v><n></n><a>146</a></v>
  <v><n></n><a>150</a></v>
  <v><n>1992</n><a>170</a></v>
  <v><n></n><a>210</a></v>
  <v><n></n><a>220</a></v>
  <v><n></n><a>250</a></v>
  <v><n></n><a>300</a></v>
  <v><n>1993</n><a>350</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="lineChart" combine="compare" 
style="border:false;config:/default/lineChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/line/line4.xml
  
  Index: line4.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n>1991</n><a>70</a></v>
  <v><n>1992</n><a>170</a></v>
  <v><n>1993</n><a>80</a></v>
  <v><n>1993</n><a>95</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="lineChart" combine="compare" 
style="border:false;config:/default/blueLineChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/line/line5.xml
  
  Index: line5.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n></n><a>30</a></v>
  <v><n></n><a>10</a></v>
  <v><n>1991</n><a>-20</a></v>
  <v><n></n><a>-60</a></v>
  <v><n></n><a>-80</a></v>
  <v><n>1992</n><a>-50</a></v>
  <v><n></n><a>-40</a></v>
  <v><n></n><a>-10</a></v>
  <v><n>1993</n><a>20</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="lineChart" style="border:false;config:/default/lineChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/line/line6.xml
  
  Index: line6.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>-80</a></v>
  <v><n></n><a>-30</a></v>
  <v><n></n><a>-10</a></v>
  <v><n>1991</n><a>-20</a></v>
  <v><n></n><a>-60</a></v>
  <v><n></n><a>-80</a></v>
  <v><n>1992</n><a>-50</a></v>
  <v><n></n><a>-40</a></v>
  <v><n></n><a>-10</a></v>
  <v><n>1993</n><a>-20</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="lineChart" style="border:false;config:/default/lineChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/multi/multi1.xml
  
  Index: multi1.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n></n><a>77.6</a></v>
  <v><n></n><a>75.7</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n>1991</n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>75.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n></n><a>74.6</a></v>
  <v><n>1992</n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>72.6</a></v>
  <v><n>1993</n><a>72.6</a></v>
  </set>
  <set id="2" name="South">
  <v><a>87</a></v>
  <v><a>88.6</a></v>
  <v><a>89.7</a></v>
  <v><a>90.6</a></v>
  <v><a>92.6</a></v>
  <v><a>92.6</a></v>
  <v><a>94.6</a></v>
  <v><a>96.6</a></v>
  <v><a>98.6</a></v>
  <v><a>98.6</a></v>
  <v><a>99.6</a></v>
  <v><a>99.6</a></v>
  <v><a>101</a></v>
  <v><a>103</a></v>
  <v><a>106</a></v>
  <v><a>106</a></v>
  <v><a>109</a></v>
  </set>
  <set id="3" name="West">
  <v><a>90</a></v>
  <v><a>89.6</a></v>
  <v><a>90.7</a></v>
  <v><a>91.6</a></v>
  <v><a>93.6</a></v>
  <v><a>94.6</a></v>
  <v><a>95.6</a></v>
  <v><a>97.6</a></v>
  <v><a>108.6</a></v>
  <v><a>108.6</a></v>
  <v><a>109.6</a></v>
  <v><a>109.6</a></v>
  <v><a>111</a></v>
  <v><a>113</a></v>
  <v><a>116</a></v>
  <v><a>116</a></v>
  <v><a>119</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="barChart" combine="difference" 
style="border:false;config:/default/barChart.xml">
  <dataset ref-id="1"/>
  <dataset ref-id="2"/>
  <dataset ref-id="3"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/pie/pie1.xml
  
  Index: pie1.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>80</a></v>
  <v><n></n><a>77.6</a></v>
  <v><n></n><a>75.7</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n></n><a>76.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>73.6</a></v>
  <v><n></n><a>72.6</a></v>
  <v><n>1993</n><a>72.6</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="pieChart" 
style="legendSpace:2;border:false;config:/default/pieChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/pie/pie2.xml
  
  Index: pie2.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; 
style="config:/default/pieChart.xml" lang="de">
  <title>embeddedPieChart</title>
  <data>
  <set type="percent" id="1">
  <v>
  <a>100,0%</a>
  </v>
  <v>
  <a>0,0%</a>
  </v>
  </set>
  </data>
  <ggroup>
  <gset height="150" width="350">
  <graph style="legendSpace:4.3" effect="3D" type="embeddedPieChart">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/pie/pie3.xml
  
  Index: pie3.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>AAAAAAA</n><a>3</a></v>
  <v><n>BBBBBBB</n><a>47.6</a></v>
  <v><n>CCCC</n><a>55.7</a></v>
  <v><n>DDDDD</n><a>26.6</a></v>
  <v><n>EEEEE</n><a>70</a></v>
  <v><n>FFFF</n><a>3</a></v>
  <v><n>G</n><a>6</a></v>
  <v><n>HHHHHHH</n><a>7.6</a></v>
  <v><n>IIIII</n><a>2.6</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="pieChart" 
style="legendSpace:2;border:false;config:/default/pieChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/pie/pie4.xml
  
  Index: pie4.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>10</a></v>
  <v><n></n><a>7.6</a></v>
  <v><n></n><a>5</a></v>
  <v><n></n><a>6</a></v>
  <v><n></n><a>26</a></v>
  <v><n></n><a>73</a></v>
  <v><n></n><a>73</a></v>
  <v><n></n><a>72</a></v>
  <v><n>1993</n><a>72</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="pieChart" 
style="legendSpace:2;border:false;config:/default/pieChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/pie/pie5.xml
  
  Index: pie5.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1990</n><a>8</a></v>
  <v><n>1991</n><a>77.6</a></v>
  <v><n>1992</n><a>5.7</a></v>
  <v><n>1993</n><a>6.6</a></v>
  <v><n>1994</n><a>76.6</a></v>
  <v><n>1995</n><a>3.6</a></v>
  <v><n>1996</n><a>3.6</a></v>
  <v><n>1997</n><a>72.6</a></v>
  <v><n>1998</n><a>2.6</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350pt" height="200pt" effect="3D">
  <graph type="pieChart" 
style="legendSpace:0.15in;border:false;config:/default/pieChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/pie/pie6.xml
  
  Index: pie6.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1</n><a>80</a></v>
  <v><n>2</n><a>77.6</a></v>
  <v><n>3</n><a>5.072</a></v>
  <v><n>4</n><a>6.564</a></v>
  <v><n>5</n><a>3.324</a></v>
  <v><n>6</n><a>2.275</a></v>
  <v><n>7</n><a>3.6</a></v>
  <v><n>8</n><a>72.6</a></v>
  <v><n>9</n><a>72.6</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="pieChart" 
style="legendSpace:2;border:false;config:/default/pieChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.1                  
xml-cocoon2/src/scratchpad/webapp/mount/charts/content/static/pie/pie7.xml
  
  Index: pie7.xml
  ===================================================================
  <xcml xmlns="http://xml.apache.org/2001/xcml"; country="EN" lang="en" 
style="border:false;">
  <title>test</title>
  <data>
  <set id="1" name="North">
  <v><n>1</n><a>4.01</a></v>
  <v><n>2</n><a>6.04</a></v>
  <v><n>3</n><a>5.16</a></v>
  <v><n>4</n><a>76.6</a></v>
  <v><n>5</n><a>76.6</a></v>
  <v><n>6</n><a>73.6</a></v>
  <v><n>7</n><a>73.6</a></v>
  <v><n>8</n><a>2.55</a></v>
  </set>
  </data>
  <ggroup>
  <gset width="350" height="200" effect="3D">
  <graph type="pieChart" 
style="legendSpace:2;border:false;config:/default/pieChart.xml">
  <dataset ref-id="1"/>
  </graph>
  </gset>
  </ggroup>
  </xcml>
  
  
  
  
  1.3       +20 -0     
xml-cocoon2/src/scratchpad/webapp/mount/charts/sitemap.xmap
  
  Index: sitemap.xmap
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/scratchpad/webapp/mount/charts/sitemap.xmap,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- sitemap.xmap      14 May 2002 20:34:23 -0000      1.2
  +++ sitemap.xmap      16 May 2002 17:04:03 -0000      1.3
  @@ -7,6 +7,7 @@
     
     <map:transformers default="xslt">
      <map:transformer label="transformed" name="chart2svg" 
src="org.apache.cocoon.transformation.Chart2SvgTransformer"/>
  +   <map:transformer name="wings" 
src="org.apache.cocoon.transformation.WingsTransformer" />
     </map:transformers>
     
     <map:readers default="resource"/>
  @@ -44,6 +45,25 @@
       <map:transform src="stylesheets/simple-samples2html.xsl"/>
       <map:serialize/>
      </map:match>
  +   
  +   <map:match pattern="*/*.xml">
  +             <map:generate src="content/static/{1}/{2}.xml" />
  +             <map:transform type="wings" />
  +             <map:serialize type="xml" />
  +   </map:match>
  +   
  +   <map:match pattern="*/*.svg">
  +             <map:generate src="content/static/{1}/{2}.xml" />
  +             <map:transform type="wings" />
  +             <map:serialize type="svgxml" />
  +   </map:match>
  +
  +   <map:match pattern="*/*.jpg">
  +             <map:generate src="content/static/{1}/{2}.xml" />
  +             <map:transform type="wings" />
  +             <map:serialize type="svg2jpeg" />
  +   </map:match>   
  +   
      
      <map:match pattern="*chart.xml">
       <map:generate src="content/static/{1}chart.xml"/>
  
  
  

----------------------------------------------------------------------
In case of troubles, e-mail:     [EMAIL PROTECTED]
To unsubscribe, e-mail:          [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to