if (CurrentArray.getDataCube().getHref() != null) DATABLOCK.append(getHrefData(CurrentArray.getDataCube().getHref()));
       public Object action (SaxDocumentHandler handler, AttributeList attrs) {           // we only need to do these things for the first time we enter          // a data node          if (DataNodeLevel == 0) {             // update the array dataCube with passed attributes             CurrentArray.getDataCube().setXMLAttributes(attrs);             // determine the size of the dataFormat (s) in our dataCube             if (CurrentArray.hasFieldAxis()) {                 // if there is a field axis, then its set to the number of fields                 FieldAxis fieldAxis = CurrentArray.getFieldAxis();                 MaxDataFormatIndex = (fieldAxis.getLength()-1);             } else {                 // its homogeneous                  MaxDataFormatIndex = 0;             }                               // reset to start of which dataformat type we currently are reading             CurrentDataFormatIndex = 0;                 // reset the list of dataformats we are reading             DataFormatList = CurrentArray.getDataFormatList();          }          XMLDataIOStyle readObj = CurrentArray.getXMLDataIOStyle();          FastestAxis = (AxisInterface) CurrentArray.getAxisList().get(0);          LastFastAxisCoordinate = -1;          if ( readObj instanceof TaggedXMLDataIOStyle) {             TaggedLocatorObj = CurrentArray.createLocator();          } else {             // A safety. We clear datablock when this is the first datanode we              // have entered DATABLOCK is used in cases where we read in untagged data             if (DataNodeLevel == 0) DATABLOCK = new StringBuffer ();          }          // entered a datanode, raise the count           // this (partially helps) declare we are now reading data,           DataNodeLevel++;           return readObj;       }