ID:               32289
 Updated by:       [EMAIL PROTECTED]
 Reported By:      daritter at rttr dot de
-Status:           Open
+Status:           Bogus
 Bug Type:         DOM XML related
 Operating System: Linux (Debian/Sid)
 PHP Version:      5.0.3
 New Comment:

Sorry, but your problem does not imply a bug in PHP itself.  For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system is not the
appropriate forum for asking support questions. 

Even if you think it is not a bug, we often know better than you,
please consult the support channels first before even considering
to reopen this report.

Thank you for your interest in PHP.




Previous Comments:
------------------------------------------------------------------------

[2005-03-13 12:08:15] daritter at rttr dot de

Description:
------------
When generating childs of an element with a default namespace  using
DOMDocument->createElement() the namespace of the childs won't be set
to the correct value.

Reloading the DOMDocument using saveXML() and loadXML() fixes the
Problem.

Reproduce code:
---------------
$xml = new DOMDocument("1.0","UTF-8");
$foo = $xml->createElementNS('urn:foo','foo');
$xml->appendChild($foo);
$bar = $xml->createELement('bar','Bar using default namespace');
$foo->appendChild($bar);
/* results in
<foo xmlns="urn:foo"><bar>Bar using default namespace</bar></foo>
*/

$xsl = DOMDocument::Load('test.xsl');
$xslt = new xsltProcessor();
$xslt->importStylesheet($xsl);

print($xslt->transformToXML($xml));

print("\n\nReload DOM\n");
$xml = DOMDocument::LoadXML($xml->saveXML());
print($xslt->transformToXML($xml));

-----------test.xsl-------------
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" 
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
        xmlns:foo="urn:foo"
>
<xsl:output method="text" omit-xml-declaration = "yes"/>
<xsl:template match="foo:foo">
foo:bars:<xsl:apply-templates select="foo:bar"/>
bars:<xsl:apply-templates select="bar"/>
</xsl:template>

<xsl:template match="*">
        - <xsl:value-of select="."/>
</xsl:template>

</xsl:stylesheet>


Expected result:
----------------
foo:bars:
        - Bar using default namespace
bars:

Reload DOM

foo:bars:
        - Bar using default namespace
bars:

Actual result:
--------------
foo:bars:
bars:
        - Bar using default namespace

Reload DOM

foo:bars:
        - Bar using default namespace
bars:


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=32289&edit=1

Reply via email to