@@ -247,15 +247,14 @@ XMLP.prototype._parsePrefixAndElementName = function (elementlabel){
247
247
XMLP . prototype . _parseNamespacesAndAtts = function ( atts ) {
248
248
//translate namespaces into objects with "prefix","uri", "scopetag" Add them to: this.m_namespaceList
249
249
//The function should return a new list of tag attributes with the namespaces filtered
250
- sys = require ( 'sys' ) ;
251
250
that = this ;
252
251
var newnamespaces = [ ] ;
253
252
var filteredatts = [ ] ;
254
253
atts . map ( function ( item ) {
255
- if ( item . name . slice ( 0 , 5 ) === "xmlns" ) {
254
+ if ( item [ 0 ] . slice ( 0 , 5 ) === "xmlns" ) {
256
255
newnamespaces . push ( {
257
- prefix : item . name . slice ( 6 ) ,
258
- uri : item . value ,
256
+ prefix : item [ 0 ] . slice ( 6 ) ,
257
+ uri : item [ 1 ] ,
259
258
scopetag : that . m_name ,
260
259
} ) ;
261
260
}
@@ -265,13 +264,10 @@ XMLP.prototype._parseNamespacesAndAtts = function (atts){
265
264
return "not used" ;
266
265
} ) ;
267
266
this . m_namespaceList = this . m_namespaceList . concat ( newnamespaces ) ;
268
- return [ filteredatts , newnamespaces . map ( function ( item ) {
269
- return item . prefix + "," + item . uri
270
- } ) . join ( ',' ) ] ;
267
+ return [ filteredatts , newnamespaces . map ( function ( item ) { return [ item . prefix , item . uri ] ; } ) ] ;
271
268
}
272
269
273
270
XMLP . prototype . _getContextualNamespace = function ( prefix ) {
274
- var sys = require ( 'sys' ) ;
275
271
if ( prefix !== '' ) {
276
272
for ( item in this . m_namespaceList ) {
277
273
item = this . m_namespaceList [ item ] ;
@@ -679,7 +675,7 @@ XMLP.prototype._setErr = function(iErr) {
679
675
//SaxParser is an object that basically wraps an XMLP instance, and provides an
680
676
//event-based interface for parsing. This is the object users interact with when coding
681
677
//with XML for <SCRIPT>
682
- this . SaxParser = function ( eventhandlerfactory ) {
678
+ var SaxParser = function ( eventhandlerfactory ) {
683
679
684
680
var eventhandler = new function ( ) {
685
681
@@ -839,7 +835,7 @@ SaxParser.prototype._fireError = function(strMsg) {
839
835
this . m_bErr = true ;
840
836
841
837
if ( this . m_hndErr && this . m_hndErr . onError ) {
842
- this . m_hndErr . onError ( this ) ;
838
+ this . m_hndErr . onError ( this . m_strErrMsg ) ;
843
839
}
844
840
}
845
841
@@ -913,7 +909,7 @@ SaxParser.prototype._parseLoop = function(parser) {
913
909
iEvent = parser . next ( ) ;
914
910
915
911
if ( iEvent == XMLP . _ELM_B ) {
916
- theatts = this . m_parser . m_atts . map ( function ( item ) { return { name : item [ 0 ] , value : item [ 1 ] , } ; } ) ;
912
+ theatts = this . m_parser . m_atts ; //this.m_parser.m_atts .map(function(item){return { name : item[0], value : item[1], };});
917
913
nameobject = parser . _parsePrefixAndElementName ( parser . getName ( ) ) ;
918
914
theattsandnamespace = parser . _parseNamespacesAndAtts ( theatts ) ;
919
915
var theuri = parser . _getContextualNamespace ( nameobject . prefix ) ;
@@ -930,7 +926,7 @@ SaxParser.prototype._parseLoop = function(parser) {
930
926
this . _fireEvent ( SaxParser . ELM_E , parser . getName ( ) ) ;
931
927
}
932
928
else if ( iEvent == XMLP . _TEXT ) {
933
- this . _fireEvent ( SaxParser . CHARS , parser . getContent ( ) , parser . getContentBegin ( ) , parser . getContentEnd ( ) - parser . getContentBegin ( ) ) ;
929
+ this . _fireEvent ( SaxParser . CHARS , parser . getContent ( ) . slice ( parser . getContentBegin ( ) , parser . getContentEnd ( ) ) ) ;
934
930
}
935
931
else if ( iEvent == XMLP . _ENTITY ) {
936
932
this . _fireEvent ( SaxParser . CHARS , parser . getContent ( ) , parser . getContentBegin ( ) , parser . getContentEnd ( ) - parser . getContentBegin ( ) ) ;
@@ -939,12 +935,12 @@ SaxParser.prototype._parseLoop = function(parser) {
939
935
this . _fireEvent ( SaxParser . PI , parser . getName ( ) , parser . getContent ( ) . substring ( parser . getContentBegin ( ) , parser . getContentEnd ( ) ) ) ;
940
936
}
941
937
else if ( iEvent == XMLP . _CDATA ) {
942
- this . _fireEvent ( SaxParser . CD_B ) ;
943
- this . _fireEvent ( SaxParser . CHARS , parser . getContent ( ) , parser . getContentBegin ( ) , parser . getContentEnd ( ) - parser . getContentBegin ( ) ) ;
944
- this . _fireEvent ( SaxParser . CD_E ) ;
938
+ this . _fireEvent ( SaxParser . CD_B , parser . getContent ( ) . slice ( parser . getContentBegin ( ) , parser . getContentEnd ( ) ) ) ;
939
+ // this._fireEvent(SaxParser.CHARS, parser.getContent(), parser.getContentBegin(), parser.getContentEnd() - parser.getContentBegin());
940
+ // this._fireEvent(SaxParser.CD_E);
945
941
}
946
942
else if ( iEvent == XMLP . _COMMENT ) {
947
- this . _fireEvent ( SaxParser . CMNT , parser . getContent ( ) , parser . getContentBegin ( ) , parser . getContentEnd ( ) - parser . getContentBegin ( ) ) ;
943
+ this . _fireEvent ( SaxParser . CMNT , parser . getContent ( ) . slice ( parser . getContentBegin ( ) , parser . getContentEnd ( ) ) ) ;
948
944
}
949
945
else if ( iEvent == XMLP . _DTD ) {
950
946
}
@@ -1173,4 +1169,8 @@ function __unescapeString(str) {
1173
1169
return str ;
1174
1170
}
1175
1171
1172
+ process . mixin ( exports , {
1173
+ SaxParser : SaxParser
1174
+ } ) ;
1175
+
1176
1176
} ) ( )
0 commit comments