/** * Apply rules for registered namespaces * * @param XmlFile $file The current XmlFile object * @param array $sxml SimpleXML results * * @return void */ protected function registerNamespaces(XmlFile $file = null, array $sxml = null) { if (null === $sxml && $file instanceof XmlFile) { foreach ($this->namespaces as $prefix => $ns) { $file->open()->registerXPathNamespace($prefix, $ns); } } elseif (null !== $sxml) { foreach ($sxml as $node) { foreach ($this->namespaces as $prefix => $ns) { $node->registerXPathNamespace($prefix, $ns); } } } }