Try OpenEdge Now
skip to main content
Working with XML
Reading XML Documents with the Simple API for XML (SAX) : Understanding ABL SAX : Namespace processing : Effects of namespace processing
 
Effects of namespace processing
In ABL SAX, namespace processing affects the behavior of:
*The StartElement and EndElement callbacks
*Attribute data
The following table describes the effect of namespace processing on the StartElement and EndElement callbacks.
Table 11. Effect of namespace processing on StartElement and EndElement
Where namespace processing is enabled
Where namespace processing is suppressed
If an element's name has a namespace prefix:
*namespaceURI is the URI associated with the prefix
*localName is the name as given in the XML document, without the prefix
*qName is the name as given in the XML document
Whether or not an element's name has a namespace prefix:
*namespaceURI is empty
*localName is empty
*qName is the name as given in the XML document (including the prefix, if one exists)
If an element's name has no prefix, then:
*namespace URI is empty
*localName is the name as given in the XML document
*qName is the name as given in the XML document
If there is a default namespace in effect and an element name has no prefix, then:
*namespaceURI is the URI of the default namespace
*localName is the name as given in the XML document
*qName is the name as given in the XML document (there is no prefix, since the default namespace does not specify a prefix)
The following table describes the effect of namespace processing on attribute data.
Table 12. Effect of namespace processing on attribute data
Where namespace processing is enabled
Where namespace processing is suppressed
The behavior is identical to element name behavior, except that a default namespace does not apply to attribute names, so an attribute with no prefix will never have a value for its namespaceURI.
Whether or not an attribute's name has a namespace prefix:
*namespaceURI is empty
*localName is empty
*qName will be the name as given in the XML document (including any prefix)
For more information on namespace processing, see the reference entry for the SUPPRESS-NAMESPACE-PROCESSING attribute in OpenEdge Development: ABL Reference.