Разрешить пространства имен с помощью SimpleXML независимо от структуры или пространства имен

Я получил фид Google Shopping как этот (выдержка):

<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:g="http://base.google.com/ns/1.0">  
...
<g:id><![CDATA[Blah]]></g:id>
<title><![CDATA[Blah]]></title>
<description><![CDATA[Blah]]></description>
<g:product_type><![CDATA[Blah]]></g:product_type>

Теперь SimpleXML может читать теги «title» и «description», но не может читать теги с префиксом «g:».

Для этого конкретного случая есть решения для stackoverflow, использующие функцию «children». Но я не только хочу читать Google Shopping XML, мне нужно, чтобы он не зависел от структуры или пространства имен, я ничего не знаю о файле (я рекурсивно перебираю узлы как многомерный массив).

Есть ли способ сделать это с SimpleXML? Я мог бы заменить двоеточия, но я хочу иметь возможность хранить массив и повторно собирать XML (в данном случае специально для Google Shopping), поэтому я не хочу потерять информацию.

Ответы на вопрос(1)

Ваш ответ на вопрос