74                         $this->xml_file = $a_xml_file;
 
   75                         $this->input_type = 
'file';
 
   85                 $this->xml_content = $a_xml_content;
 
   86                 $this->input_type = 
'string';
 
  115                                 $this->
parse($xml_parser,$fp);
 
  119                                 $this->
parse($xml_parser);
 
  123                                 $this->
handleError(
"No input type given. Set filename in constructor or choose setXMLContent()",
 
  124                                                                                  $this->ilias->error_obj->FATAL);
 
  137                 $xml_parser = xml_parser_create(
"UTF-8");
 
  139                 if($xml_parser == 
false)
 
  141                         $this->
handleError(
"Cannot create an XML parser handle",$this->ilias->error_obj->FATAL);
 
  152                 xml_parser_set_option($a_xml_parser,XML_OPTION_CASE_FOLDING,
false);
 
  161                 echo 
'ilSaxParser::setHandlers() must be overwritten';
 
  171                 if(!($fp = fopen($this->xml_file,
'r')))
 
  173                         $this->
handleError(
"Cannot open xml file \"".$this->xml_file.
"\"",$this->ilias->error_obj->FATAL);
 
  183         function parse($a_xml_parser,$a_fp = null)
 
  189                                 while(
$data = fread($a_fp,4096))
 
  191                                         $parseOk = xml_parse($a_xml_parser,
$data,feof($a_fp));
 
  200                    && (xml_get_error_code($a_xml_parser) != XML_ERROR_NONE))
 
  202                         $errorCode = xml_get_error_code($a_xml_parser);
 
  203                         $line = xml_get_current_line_number($a_xml_parser);
 
  204                         $col = xml_get_current_column_number($a_xml_parser);                    
 
  205                         $this->
handleError(
"XML Parse Error: ".xml_error_string($errorCode).
" at line ".$line.
", col ". $col . 
" (Code: ".$errorCode.
")" ,$this->ilias->error_obj->FATAL);
 
  219                 if ($this->throwException) {
 
  220                         require_once (
'./classes/class.ilSaxParserException.php');                      
 
  223                         if (is_object($this->ilias))
 
  225                                 $this->ilias->raiseError($message, $code);
 
  241                 if(!xml_parser_free($a_xml_parser))
 
  243                         $this->ilias->raiseError(
"Error freeing xml parser handle ",$this->ilias->error_obj->FATAL);