base-uri
O URI base de um nó
Descrição
A função fn:base-uri acha o URI base de um nó. O argumento $arg pode ser qualquer tipo de nó. Se $arg for um nó de documento, a função em geral devolve o URI de onde o documento veio, o que também se consegue com fn:document-uri.
Se $arg for um elemento, a função devolve o valor do atributo xml:base dele, se houver, ou o xml:base do ancestral mais próximo. Se nenhum ancestral tiver xml:base, vale o URI base do nó de documento.
Se $arg for outro tipo de nó, a função devolve o mesmo valor que devolveria para o elemento pai ou o documento dele.
Parâmetros |
Descrição |
|---|---|
arg:node() |
o nó cujo URI base se quer achar; se omitido, o nó de contexto |
Exemplos
Os exemplos abaixo usam este documento de entrada:
<xsl:variable name="cats" select="doc('http://www.functx.com/input/cats.xml')"/>
<!-- content of cats.xml -->
<catalogs>
<catalog name="ACC" xml:base="http://example.org/ACC/">
<product number="443" href="prod443.html"/>
<product number="563" href="prod563.html"/>
</catalog>
<catalog name="WMN" xml:base="http://example.org/WMN/">
<product number="557" href="prod557.html"/>
</catalog>
</catalogs>
XPath |
Resultado |
|---|---|
base-uri($cats//catalog[1]) |
|
base-uri($cats//catalog[2]/product) |
|
base-uri($cats//catalog[2]/product/@href) |
|
base-uri($cats) |
|
base-uri($cats/catalogs) |