42        string $a_schema_version,
 
   48        $this->mapping = $a_mapping;
 
   49        $this->top_entity = $a_top_entity;
 
   50        $this->schema_version = $a_schema_version;
 
   51        $this->dspref = ($this->ds->getDSPrefix() !== 
"")
 
   52            ? $this->ds->getDSPrefix() . 
":" 
   68        xml_set_object($a_xml_parser, $this);
 
   69        xml_set_element_handler($a_xml_parser, 
'handleBeginTag', 
'handleEndTag');
 
   70        xml_set_character_data_handler($a_xml_parser, 
'handleCharacterData');
 
   80            case $this->dspref . 
"DataSet":
 
   82                $this->current_installation_id = $a_attribs[
"InstallationId"];
 
   83                $this->ds->setCurrentInstallationId($a_attribs[
"InstallationId"]);
 
   86            case $this->dspref . 
"Types":
 
   87                $this->current_entity = $a_attribs[
"Entity"];
 
   88                $this->current_version = $a_attribs[
"Version"];
 
   91            case $this->dspref . 
"FieldType":
 
   92                $this->current_ftypes[$a_attribs[
"Name"]] =
 
   96            case $this->dspref . 
"Rec":
 
   97                $this->current_entity = $a_attribs[
"Entity"];
 
   98                $this->in_record = 
true;
 
   99                $this->current_field_values = array();
 
  103                if ($this->in_record) {
 
  104                    $field = explode(
":", $a_name);             
 
  105                    $field = $field[count($field) - 1];
 
  106                    $this->current_field = $field;
 
  116            case $this->dspref . 
"Types":
 
  117                $this->entities[$this->current_entity] =
 
  119                        "version" => $this->current_version,
 
  120                        "types" => $this->current_ftypes
 
  122                $this->current_ftypes = array();
 
  123                $this->current_entity = 
"";
 
  124                $this->current_version = 
"";
 
  127            case $this->dspref . 
"Rec":
 
  128                $this->ds->importRecord(
 
  129                    $this->current_entity,
 
  130                    $this->entities[$this->current_entity][
"types"] ?? [],
 
  131                    $this->current_field_values,
 
  133                    $this->schema_version
 
  135                $this->in_record = 
false;
 
  136                $this->current_entity = 
"";
 
  137                $this->current_field_values = array();
 
  141                if ($this->in_record && $this->current_field !== 
"") {
 
  142                    $this->current_field_values[$this->current_field] =
 
  145                $this->current_field = 
"";
 
  149        $this->chr_data = 
"";
 
  157        $this->chr_data .= $a_data;
 
Manifest parser for ILIAS standard export files.
 
handleCharacterData( $a_xml_parser, string $a_data)
 
handleBeginTag( $a_xml_parser, string $a_name, array $a_attribs)
 
string $current_installation_id
 
setHandlers($a_xml_parser)
 
handleEndTag( $a_xml_parser, string $a_name)
 
getCurrentInstallationId()
 
__construct(string $a_top_entity, string $a_schema_version, string $a_xml, ilDataSet $a_ds, ilImportMapping $a_mapping)
 
array $current_field_values
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
setXMLContent(string $a_xml_content)
 
startParsing()
stores xml data in array
 
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc