code: function(strXML) {
      // Normalize line breaks
      strXML = SAXStrings.replace(strXML, null, null, "\r\n", "\n");
      strXML = SAXStrings.replace(strXML, null, null, "\r", "\n");
  
      this.m_xml = strXML;
      this.m_iP = 0;
      this.m_iState = XMLP._STATE_PROLOG;
      this.m_stack = new Stack();
      this._clearAttributes();
      this.m_pause = false;
      this.m_preInterruptIState = XMLP._STATE_PROLOG;
      this.m_namespaceList = new Array();
      this.m_chunkTransitionContinuation = null;
  
  }
docs: XMLP is a pull-based parser. The calling application passes in a XML string to the constructor, then repeatedly calls .next() to parse the next segment. .next() returns a flag indicating what type of segment was found, and stores data temporarily in couple member variables (name, content, array of attributes), which can be accessed by several .get____() methods.  Basically, XMLP is the lowest common denominator parser - an very simple API which other wrappers can be built against.