public void start() throws Exception {
   stack.clear();
   Tuple t = new Tuple(3);
   children = new Bag();
   t.set(2, children);
   stack.push(new Union((byte) 0, t));
 }
 public MRDataHandler() throws Exception {
   super(null);
   stack.clear();
   Tuple t = new Tuple(3);
   children = new Bag();
   t.set(2, children);
   stack.push(new Union((byte) 0, t));
 }
 public void startElement(String nm, String ln, String qn, Attributes as) throws SAXException {
   children = new Bag();
   Bag attributes = new Bag();
   for (int i = 0; i < as.getLength(); i++)
     attributes.add(new Tuple(new MR_string(as.getQName(i)), new MR_string(as.getValue(i))));
   Tuple t = new Tuple(3);
   t.set(0, new MR_string(qn));
   t.set(1, attributes);
   t.set(2, children);
   stack.push(new Union((byte) 0, t));
 }