.. _base-uri: ======== base-uri ======== The base URI of a node Description ~~~~~~~~~~~ The fn:base-uri function finds the base URI of a node. The $arg argument may be any kind of node. If $arg is a document node, this function usually returns the URI from which the document was retrieved. This can also be achieved by the fn:document-uri function. If $arg is an element, the function returns the value of its xml:base attribute, if any, or the xml:base attribute of its nearest ancestor. If no xml:base attributes appear among its ancestors, it defaults to the base URI of the document node. If $arg is any other kind of node, the function returns the same value as if the argument were its parent element or document. .. list-table:: :widths: 40 60 :header-rows: 1 * - **Parameters** - **Description** * - arg:node() - the node to find the base URI of, otherwise uses the context node Examples ~~~~~~~~ .. list-table:: :widths: 50 50 :header-rows: 1 * - **XPath** - **Results** * - base-uri($cats//catalog[1]) - http://example.org/ACC/ * - base-uri($cats//catalog[2]/product) - http://example.org/WMN/ * - base-uri($cats//catalog[2]/product/@href) - http://example.org/WMN/ * - base-uri($cats) - http://www.functx.com/input/cats.xml * - base-uri($cats/catalogs) - http://www.functx.com/input/cats.xml See Also ~~~~~~~~ .. toctree:: :titlesonly: :glob: * :ref:`resolve-uri`. * :ref:`functx_is-absolute-uri`. * :ref:`static-base-uri`. * :ref:`document-uri`.