61 xml_set_object($a_xml_parser,$this);
62 xml_set_element_handler($a_xml_parser,
'handlerBeginTag',
'handlerEndTag');
63 xml_set_character_data_handler($a_xml_parser,
'handlerCharacterData');
76 $this->default_handler = $a_default_parser;
89 $this->element_handlers[$a_element] = $a_parser;
90 $this->handlers_in_use[$a_element] =
false;
113 if(isset($this->element_handlers[$a_name]) or $this->handler_in_use)
115 if(!$this->handler_in_use)
117 $this->handler_in_use = $this->element_handlers[$a_name];
120 $this->current_handler = $this->handler_in_use;
121 return $this->current_handler->handlerBeginTag($a_xml_parser,$a_name,$a_attribs);
124 $this->handler_in_use =
false;
126 return $this->default_handler->handlerBeginTag($a_xml_parser,$a_name,$a_attribs);
137 if(isset($this->element_handlers[$a_name]))
139 $this->handler_in_use =
false;
140 $this->current_handler = $this->element_handlers[$a_name];
141 return $this->element_handlers[$a_name]->handlerEndTag($a_xml_parser,$a_name);
143 elseif($this->handler_in_use)
145 $this->current_handler = $this->handler_in_use;
146 return $this->current_handler->handlerEndTag($a_xml_parser,$a_name);
148 $this->handler_in_use =
false;
150 return $this->default_handler->handlerEndTag($a_xml_parser,$a_name);
161 return $this->current_handler->handlerCharacterData(a_xml_parser,$a_data);