Chcę wygenerować przykładowy xml:
Kod
<?xml version="1.0" encoding="utf-8"?>
<bu:test xmlns:bu="http://link/bu" xmlns:inny="http://link/inny">
  Buu
</bu:test>

Czyli w głównym węźle posiadający dwa (lub więcej) namespace.

Jest jednak pewien problem, gdyż używając ładnie DOM jestem w stanie nadać dla węzła tylko jeden namespace:
  1. <?php
  2. $dom = new DOMDocument('1.0', 'utf-8');
  3. $el = $dom->createElementNS('http://link/bu', 'bu:test', 'Buu');
  4. $dom->appendChild($el);
  5.  
  6. echo $dom->saveXML();
  7. ?>
No i jak w tym kodzie dodać drugi namespace dla węzła "test"? Mogę bezczelnie dodać mu atrybut:
  1. <?php
  2. $el->setAttribute('xmlns:inny', 'http://link/inny');
  3. ?>
i niby już, ale wówczas ten namespace dodany jako atrybut nie będzie widziany jako namespace w czasie tego samego żądania.

Jakieś sugestie?