original_string: private function _decode($text)
      {
          $marc = new $this->record_class($this);
  
          // Store leader
          $marc->setLeader($text->leader);
  
          // go through all the control fields
          foreach ($text->controlfield as $controlfield) {
              $controlfieldattributes = $controlfield->attributes();
              $marc->appendField(new File_MARC_Control_Field((string)$controlfieldattributes['tag'], $controlfield));
          }
  
          // go through all the data fields
          foreach ($text->datafield as $datafield) {
              $datafieldattributes = $datafield->attributes();
              $subfield_data = array();
              foreach ($datafield->subfield as $subfield) {
                  $subfieldattributes = $subfield->attributes();
                  $subfield_data[] = new File_MARC_Subfield((string)$subfieldattributes['code'], $subfield);
              }
              
              // If the data is invalid, let's just ignore the one field
              try {
                  $new_field = new File_MARC_Data_Field((string)$datafieldattributes['tag'], $subfield_data, $datafieldattributes['ind1'], $datafieldattributes['ind2']);
                  $marc->appendField($new_field);
              } catch (Exception $e) {
                  $marc->addWarning($e->getMessage());
              }
          }
  
          return $marc;
      }
code: private function _decode($text)
      {
          $marc = new $this->record_class($this);
  
          // Store leader
          $marc->setLeader($text->leader);
  
          // go through all the control fields
          foreach ($text->controlfield as $controlfield) {
              $controlfieldattributes = $controlfield->attributes();
              $marc->appendField(new File_MARC_Control_Field((string)$controlfieldattributes['tag'], $controlfield));
          }
  
          // go through all the data fields
          foreach ($text->datafield as $datafield) {
              $datafieldattributes = $datafield->attributes();
              $subfield_data = array();
              foreach ($datafield->subfield as $subfield) {
                  $subfieldattributes = $subfield->attributes();
                  $subfield_data[] = new File_MARC_Subfield((string)$subfieldattributes['code'], $subfield);
              }
              
              // If the data is invalid, let's just ignore the one field
              try {
                  $new_field = new File_MARC_Data_Field((string)$datafieldattributes['tag'], $subfield_data, $datafieldattributes['ind1'], $datafieldattributes['ind2']);
                  $marc->appendField($new_field);
              } catch (Exception $e) {
                  $marc->addWarning($e->getMessage());
              }
          }
  
          return $marc;
      }
code_tokens: private function _decode ( $ text ) { $ marc = new $ this -> record_class ( $ this ) ; // Store leader $ marc -> setLeader ( $ text -> leader ) ; // go through all the control fields foreach ( $ text -> controlfield as $ controlfield ) { $ controlfieldattributes = $ controlfield -> attributes ( ) ; $ marc -> appendField ( new File_MARC_Control_Field ( ( string ) $ controlfieldattributes [ 'tag' ] , $ controlfield ) ) ; } // go through all the data fields foreach ( $ text -> datafield as $ datafield ) { $ datafieldattributes = $ datafield -> attributes ( ) ; $ subfield_data = array ( ) ; foreach ( $ datafield -> subfield as $ subfield ) { $ subfieldattributes = $ subfield -> attributes ( ) ; $ subfield_data [ ] = new File_MARC_Subfield ( ( string ) $ subfieldattributes [ 'code' ] , $ subfield ) ; } // If the data is invalid, let's just ignore the one field try { $ new_field = new File_MARC_Data_Field ( ( string ) $ datafieldattributes [ 'tag' ] , $ subfield_data , $ datafieldattributes [ 'ind1' ] , $ datafieldattributes [ 'ind2' ] ) ; $ marc -> appendField ( $ new_field ) ; } catch ( Exception $ e ) { $ marc -> addWarning ( $ e -> getMessage ( ) ) ; } } return $ marc ; }
docstring: Decode a given MARCXML record
  
  @param string $text MARCXML record element
  
  @return File_MARC_Record Decoded File_MARC_Record object
docstring_tokens: Decode a given MARCXML record