> > $sxe->addChild('child', 123); # Adds element with namespace
> > inherited from the parent
> > $sxe->addChild('child', 123, 'urn:somenamespace'); # Adds child
> > with specified namespace
> > $sxe->addChild('child', 123, -1); # Adds child with no namespace
> > qualification
>
> Again, there is no problem here as <child xmlns="">123</child> is
> unqualified

  Specifying the "xmlns" pseudo-attribute *is* namespace qualification.  
Qualification is the act of specifying a namespace.  And there is a difference 
between no namespace (xmlns="") and the default namespace.  The XML document:

<parent xmlns="urn:something">
 <child xmlns="">123</child>
</parent>

and:

<parent xmlns="urn:something">
 <child>123</child>
</parent>

are different documents.  In the first case, the <child> element is not in any 
namespace, and in the later, the <child> element is in the default namespace.  
Ben Schmidt mentioned this in an earlier response.

  XMLSchema's can further specify the structure of XML documents beyond what is 
in the XMLNamespace spec, including requiring that elements be unqualified and 
specifying a target namespace for the unqualified elements.  An XML document 
structure defined by an XMLSchema really only has one correct form.  


Tom

  

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to