DefaultURI (XmlDoc/XmlNode function)
Default URI in scope at selected node (XmlDoc and XmlNode classes)
DefaultURI is a member of the XmlDoc and XmlNode classes.
This function gets the Uniform Resource Identifier (URI) associated with the default namespace declaration that is in scope at a node that is the head of an XPath result.
The DefaultURI function is new as of version 6.9 of the Sirius Mods.
Syntax
%unicode = nr:DefaultURI[( [xpath])] Throws XPathError
Syntax terms
%uri | A string variable for the returned URI. |
---|---|
nr | An XmlDoc or XmlNode, used as the context node for the XPath expression. If an XmlDoc, the Root node is the context node. |
XPath | A Unicode string that is an XPath expression that results in a nodelist. The head of the nodelist is the node to process. An optional argument, its default is a period (.), that is, the node referenced by the method object (nr). Prior to Sirius Mods version 7.6, this is an EBCDIC string. |
In the following example, two elements are added along with their namespace URIs, but only the second added element, which has no prefix, has a default namespace URI:
Begin %d Object XmlDoc Auto New %n Object XmlNode %n2 Object XmlNode %n = %d:AddElement('p:top', , 'urn:top') %n2 = %n:AddElement('inner', , 'urn:default') %n:Print Print 'URI of p:top default namespace =' And %n:DefaultURI Print 'URI of inner default namespace =' And %n2:DefaultURI End
The following lines are printed:
<p:top xmlns:p="urn:top"> <inner xmlns="urn:default"/> </p:top> URI of p:top default namespace = URI of inner default namespace = urn:default
Request-Cancellation Errors
- XmlDoc Namespace property not On.
- XPath is invalid.
- Result of (XPath) is empty.
- Insufficient free space exists in CCATEMP.
See Also
- For more information about using XPath expressions, see XPath.
- For more information about namespace declarations, see ?? refid=namsp..
- For more information about URIs, see ?? refid=nsuri..
- The PrefixURI method (?? refid=prefuri.) returns the URI bound to a node's prefix (or the default URI, if a node has a default namespace declaration). The URI method (?? refid=uri.) returns the URI bound to a node's name, if any.
- These methods add namespace URIs to XmlDoc nodes: