#38850 [Opn]: lookupNamespaceURI does not return default namespace
ID: 38850
User updated by: reanjr at reanjr dot org
Reported By: reanjr at reanjr dot org
Status: Open
Bug Type: XML related
Operating System: Win XP
PHP Version: 5.1.6 and 5.2
New Comment:
Relevent part of the XML DOM Level 3 spec:
http://www.w3.org/TR/DOM-Level-3-Core/core.html#Node3-lookupNamespaceURI
Previous Comments:
------------------------------------------------------------------------
[2006-09-15 23:45:22] reanjr at reanjr dot org
Tried in 5.2 CVS release. Same problem.
------------------------------------------------------------------------
[2006-09-15 23:07:20] tony2001@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5.2-win32-latest.zip
------------------------------------------------------------------------
[2006-09-15 22:50:10] reanjr at reanjr dot org
Description:
------------
DOMNode->lookupNamespaceURI( prefix ) returns an empty string when
prefix is empty.
According XML DOM Level 3 spec, when passed a null value,
lookupNamespaceURI should return the default namespace for the node.
Reproduce code:
---------------
------------
test.xml
------------
<root xmlns="http://example.com/ns">
<!-- nothing to see here -->
</root>
------------
test.php
------------
$doc = DOMDocument::Load( 'test.xml' );
$node = $doc->documentElement;
$ns = $node->lookupNamespaceURI( null ); // or pass ''
echo( "namespace: $ns" );
Expected result:
----------------
Expected output
namespace: http://example.com/ns
Actual result:
--------------
Actual output
namespace:
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=38850&edit=1
Thread (6 messages)