php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #38850 lookupNamespaceURI does not return default namespace
Submitted: 2006-09-15 22:50 UTC Modified: 2006-09-16 14:10 UTC
From: reanjr at reanjr dot org Assigned:
Status: Closed Package: XML related
PHP Version: 5.1.6 and 5.2 OS: Win XP
Private report: No CVE-ID: None
 [2006-09-15 22:50 UTC] 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: 

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-09-15 23:07 UTC] 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 23:45 UTC] reanjr at reanjr dot org
Tried in 5.2 CVS release.  Same problem.
 [2006-09-16 00:21 UTC] reanjr at reanjr dot org
Relevent part of the XML DOM Level 3 spec:
http://www.w3.org/TR/DOM-Level-3-Core/core.html#Node3-lookupNamespaceURI
 [2006-09-16 14:09 UTC] rrichards@php.net
Thank you for this bug report. To properly diagnose the problem, we
need a backtrace to see what is happening behind the scenes. To
find out how to generate a backtrace, please read
http://bugs.php.net/bugs-generating-backtrace.php for *NIX and
http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32

Once you have generated a backtrace, please submit it to this bug
report and change the status back to "Open". Thank you for helping
us make PHP better.


 [2006-09-16 14:10 UTC] rrichards@php.net
This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.

really, this is fixed :)
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Nov 21 08:01:29 2024 UTC