} else if ( parentNodeName.equals(XDFNodeName.VALUEGROUP) )  {
       public void action (SaxDocumentHandler handler, char buf [], int offset, int len) {          //  grab parent node name          String parentNodeName = getParentNodeName();                    // create new object appropriately           Value newvalue = new Value();          // reconsitute the value node PCdata from passed information.          // and add value to object          newvalue.setValue( new String (buf, offset, len) );          // determine where this goes and then insert it           if( parentNodeName.equals(XDFNodeName.PARAMETER) )          {              newvalue = LastParameterObject.addValue(newvalue);          } else if ( parentNodeName.equals(XDFNodeName.AXIS) )           {              List axisList = (List) CurrentArray.getAxisList();              Axis lastAxisObject = (Axis) axisList.get(axisList.size()-1);              newvalue = lastAxisObject.addAxisValue(newvalue);          } else if ( parentNodeName.equals(XDFNodeName.VALUEGROUP) )          {             // nothing here yet          } else {             Log.errorln("Error: weird parent node "+parentNodeName+" for value.");             System.exit(-1); // fatal error, shut down           }          // 4. add this object to all open groups          Iterator iter = CurrentValueGroupList.iterator();          while (iter.hasNext()) {             ValueGroup nextValueGroupObj = (ValueGroup) iter.next();             newvalue.addToGroup(nextValueGroupObj);          }       }