DefaultURI (XmlDoc/XmlNode function)

From m204wiki
Revision as of 21:14, 2 September 2015 by ELowell (talk | contribs) (→‎Syntax terms)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Default URI in scope at selected node (XmlDoc and XmlNode classes)

The DefaultURI function returns 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.

Syntax

%unicode = nr:DefaultURI[( [xpath])] Throws XPathError

Syntax terms

%unicode 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. Any other nodes in the nodelist are ignored.

This is an optional argument, and 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.

Usage notes

  • DefaultURI is new as of Sirius Mods Version 6.9.

Examples

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

This list is not exhaustive: it does not include all the errors that are request cancelling.

  • XmlDoc Namespace property value not On.
  • The xpath argument is invalid.
  • Result of (xpath) is empty.
  • Insufficient free space exists in CCATEMP.

See also