static function get_feed_to_rif_transformer()
 {
     if (is_null(self::$feed_to_rif_transformer)) {
         $getRifFromFeed = new DomDocument();
         $getRifFromFeed->load('applications/registry/data_source/transforms/extract_rif_from_feed.xsl');
         $getRifFromFeedproc = new XSLTProcessor();
         $getRifFromFeedproc->importStyleSheet($getRifFromFeed);
         self::$feed_to_rif_transformer = $getRifFromFeedproc;
     }
     return self::$feed_to_rif_transformer;
 }
 function getRifcsFromHarvest($xmlData)
 {
     // Simplexml doesn't play nicely with namespaces :-(
     $result = '';
     try {
         $xslt_processor = HarvestTransforms::get_feed_to_rif_transformer();
         $dom = new DOMDocument();
         if (substr($xmlData, 0, 1) == '<') {
             $dom->loadXML($xmlData);
         } else {
             $dom->loadXML(utf8_decode($xmlData));
         }
         $result = $xslt_processor->transformToXML($dom);
     } catch (Exception $e) {
         $result = "ERROR UNABLE TO EXTRACT RIF" . nl2br($e->getMessage());
     }
     return $result;
 }