DataIOStyleAttribs = new Hashtable();
String readId = readObj.getReadId();  if (readId != null) {   if (ReadObj.containsKey(readId)) Log.warnln("More than one read node with readId=\""+readId+"\", using latest node." );   ReadObj.put(readId, readObj);  }      DataIOStyleAttribs.clear();
       public Object action (SaxDocumentHandler handler, AttributeList attrs) {           // if this is still defined, we havent init'd an          //  XMLDataIOStyle object for this array yet, do it now.           if ( !DataIOStyleAttribs.isEmpty()) {             // FormattedXMLDataIOStyle readObj = new FormattedXMLDataIOStyle(CurrentArray);             FormattedXMLDataIOStyle readObj = new FormattedXMLDataIOStyle (CurrentArray, DataIOStyleAttribs);             // readObj.setXMLAttributes(DataIOStyleAttribs);             CurrentArray.setXMLDataIOStyle(readObj);             DataIOStyleAttribs = new Hashtable(); // clear out table              CurrentFormatObjectList.add(readObj);          }          // okey, now that that is taken care off, we will go          // get the current format (read) object, and add the readCell          // command to it.          Object formatObj = (Object) CurrentFormatObjectList.get(CurrentFormatObjectList.size()-1);          SkipCharFormattedIOCmd skipObj = new SkipCharFormattedIOCmd();          skipObj.setXMLAttributes(attrs);          if (formatObj instanceof FormattedXMLDataIOStyle) {             return ((FormattedXMLDataIOStyle) formatObj).addFormatCommand(skipObj);          } else if ( formatObj instanceof RepeatFormattedIOCmd ) {             return ((RepeatFormattedIOCmd) formatObj).addFormatCommand(skipObj);          } else {             Log.warnln("Warning: cant add SkipCharFormattedIOCmd object to parent, ignoring request ");          }          return (Object) null;       }