original_string: protected function tag_open($parser, $tag, $attributes) {
          switch ($tag) {
              case 'moodle_database' :
                  if (empty($attributes['version']) || empty($attributes['timestamp'])) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  $this->begin_database_import($attributes['version'], $attributes['timestamp']);
                  break;
              case 'table' :
                  if (isset($this->current_table)) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  if (empty($attributes['name']) || empty($attributes['schemaHash'])) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  $this->current_table = $attributes['name'];
                  $this->begin_table_import($this->current_table, $attributes['schemaHash']);
                  break;
              case 'record' :
                  if (isset($this->current_row) || !isset($this->current_table)) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  $this->current_row = new stdClass();
                  break;
              case 'field' :
                  if (isset($this->current_field) || !isset($this->current_row)) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  $this->current_field = $attributes['name'];
                  $this->current_data = '';
                  if (isset($attributes['value']) and $attributes['value'] === 'null') {
                      $this->current_data_is_null = true;
                  } else {
                      $this->current_data_is_null = false;
                  }
                  break;
              default :
                  throw new dbtransfer_exception('malformedxmlexception');
          }
      }
code: protected function tag_open($parser, $tag, $attributes) {
          switch ($tag) {
              case 'moodle_database' :
                  if (empty($attributes['version']) || empty($attributes['timestamp'])) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  $this->begin_database_import($attributes['version'], $attributes['timestamp']);
                  break;
              case 'table' :
                  if (isset($this->current_table)) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  if (empty($attributes['name']) || empty($attributes['schemaHash'])) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  $this->current_table = $attributes['name'];
                  $this->begin_table_import($this->current_table, $attributes['schemaHash']);
                  break;
              case 'record' :
                  if (isset($this->current_row) || !isset($this->current_table)) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  $this->current_row = new stdClass();
                  break;
              case 'field' :
                  if (isset($this->current_field) || !isset($this->current_row)) {
                      throw new dbtransfer_exception('malformedxmlexception');
                  }
                  $this->current_field = $attributes['name'];
                  $this->current_data = '';
                  if (isset($attributes['value']) and $attributes['value'] === 'null') {
                      $this->current_data_is_null = true;
                  } else {
                      $this->current_data_is_null = false;
                  }
                  break;
              default :
                  throw new dbtransfer_exception('malformedxmlexception');
          }
      }
code_tokens: protected function tag_open ( $ parser , $ tag , $ attributes ) { switch ( $ tag ) { case 'moodle_database' : if ( empty ( $ attributes [ 'version' ] ) || empty ( $ attributes [ 'timestamp' ] ) ) { throw new dbtransfer_exception ( 'malformedxmlexception' ) ; } $ this -> begin_database_import ( $ attributes [ 'version' ] , $ attributes [ 'timestamp' ] ) ; break ; case 'table' : if ( isset ( $ this -> current_table ) ) { throw new dbtransfer_exception ( 'malformedxmlexception' ) ; } if ( empty ( $ attributes [ 'name' ] ) || empty ( $ attributes [ 'schemaHash' ] ) ) { throw new dbtransfer_exception ( 'malformedxmlexception' ) ; } $ this -> current_table = $ attributes [ 'name' ] ; $ this -> begin_table_import ( $ this -> current_table , $ attributes [ 'schemaHash' ] ) ; break ; case 'record' : if ( isset ( $ this -> current_row ) || ! isset ( $ this -> current_table ) ) { throw new dbtransfer_exception ( 'malformedxmlexception' ) ; } $ this -> current_row = new stdClass ( ) ; break ; case 'field' : if ( isset ( $ this -> current_field ) || ! isset ( $ this -> current_row ) ) { throw new dbtransfer_exception ( 'malformedxmlexception' ) ; } $ this -> current_field = $ attributes [ 'name' ] ; $ this -> current_data = '' ; if ( isset ( $ attributes [ 'value' ] ) and $ attributes [ 'value' ] === 'null' ) { $ this -> current_data_is_null = true ; } else { $ this -> current_data_is_null = false ; } break ; default : throw new dbtransfer_exception ( 'malformedxmlexception' ) ; } }
docstring: Callback function. Called by the XML parser for opening tags processing.
  
  @param resource $parser XML parser resource.
  @param string $tag name of opening tag
  @param array $attributes set of opening tag XML attributes
  @return void
docstring_tokens: Callback function . Called by the XML parser for opening tags processing .