functx:change-element-ns

Muda o namespace de elementos XML

Descrição

A função functx:change-element-ns muda o namespace de um ou mais elementos de $elements para $newns. Ela não muda o namespace dos elementos descendentes; para isso, veja a função functx:change-element-ns-deep.

Parâmetros

Descrição

elements:element()

os elementos a alterar

newns:string()

o novo namespace

prefix:string()

o prefixo a usar para o novo namespace

Exemplos

Os exemplos abaixo usam este documento de entrada:

<xsl:variable name="in-xml" as="item()*">
  <bar:a xmlns:bar="http://bar">
     <bar:b>557</bar:b>
     <bar:c>xyz</bar:c>
  </bar:a>

</xsl:variable>

XPath

Resultado

functx:change-element-ns($in-xml, 'http://foo','')

<a xmlns="http://foo"> <bar:b xmlns:bar="http://bar">557</bar:b> <bar:c xmlns:bar="http://bar">xyz</bar:c> </a>

functx:change-element-ns($in-xml, 'http://foo','foo')

<foo:a xmlns:foo="http://foo"> <bar:b xmlns:bar="http://bar">557</bar:b> <bar:c xmlns:bar="http://bar">xyz</bar:c> </foo:a>

Veja também