

# O Babelfish comporta métodos de tipo de dados XML.
<a name="babelfish-xml-datatype-methods"></a>

A partir da versão 5.4.0, o Babelfish agora comporta procedimentos armazenados sp\$1xml\$1preparedocument e sp\$1xml\$1removedocument, função de conjunto de linhas OPENXML() e o método de tipo de dados xml .VALUE(). Com essas funções e procedimentos, a consulta de dados XML se torna muito mais fácil.

## Noções básicas sobre os procedimentos e métodos XML
<a name="babelfish-xml-datatype-methods-overview"></a>
+ **sp\$1xml\$1preparedocument**: o procedimento sp\$1xml\$1preparedocument analisa um texto XML fornecido como entrada e exibe um identificador para esse documento. Esse identificador é válido durante a sessão ou até ser removido pelo sp\$1xml\$1removedocument.
+ **sp\$1xml\$1removedocument**: o procedimento sp\$1xml\$1removedocument invalida o identificador que foi criado pelo procedimento sp\$1xml\$1preparedocument.
+ **OPENXML()**: o OPENXML fornece uma visualização do conjunto de linhas sobre um documento XML. Como o OPENXML é um provedor de conjunto de linhas e exibe um conjunto de linhas, podemos usar o OPENXML na cláusula FROM da mesma forma que podemos usar qualquer outra tabela, visualização ou função com valor de tabela.
+ **VALUE()**:o método VALUE() do tipo de dados XML é usado para extrair um valor de uma instância XML armazenada em uma coluna, parâmetro ou variável do tipo xml.

## Limitações nos procedimentos e métodos XML do Babelfish
<a name="babelfish-xml-datatype-methods-limitations"></a>
+ O Babelfish aceita apenas a sintaxe XPATH 1.0 para o segundo argumento (ou seja, ROWPATTERN) de OPENXML().
+ As metapropriedades e o sinalizador 8 não são atualmente aceitos em OPENXML ().
+ O Babelfish aceita apenas a sintaxe XPATH 1.0 para o primeiro argumento (ou seja, XQuery) do método de tipo de dados VALUE().