Oracle - Como extraer un atributo de un XML

 
Vista:

Como extraer un atributo de un XML

Publicado por Moniquirri (2 intervenciones) el 10/05/2006 19:40:50
Hola no se si me puedan ayudar. de verdad me urge!!!!! Ya no se que hacer y estoy un poco desesperada.
Lo que sucede es que para poder extraer los campos que necesito del
XML estoy haciendo lo siguiente:

>
> select XMLType.getStringVal(XMLType.extract(campo_xml,
> '/SATDCL/gAcuseDeclInfo/sAIRFC/text()')) CAMPO1,
>
> XMLType.getStringVal(XMLType.extract(campo_xml,
> '/SATDCL/gAcuseDeclInfo/sAIFecPresDecl/text()')) CAMPO2,
>
> XMLType.getStringVal(XMLType.extract(campo_xml,
> '/SATDCL/gAcuseDeclInfo/sAITpDecl/text()')) CAMPO3,
>
>
> from XML_TABLE;
>
> BEGIN
>
> ----Pero aquí estoy tomando como ultimo nivel el RFC del acuse pero me dijeron que tomara de la parte de gDatIdent (que es
> la que te
> anexo)
> porque el acuse no siempre viene en el XML, entonces mi duda es como
> hacerle para solo extraer lo que contiene “v” , por ejemplo en el
> caso de <sRFC f="" v="Text"/> lo unico que me interesa es el Text.
Y con las funciones k yo estoy usando no puedo llegar hasta el atributo "v"

>
>
>
> <gDatIdent>
>
> <nTipoDec f="" v="1"/>
>
> <sClaseDec f="" v="String"/>
>
> <nNroOp f="" v="1"/>
>
> <nPeriodo f="" v="1"/>
>
> <nEjercicio f="" v="1900"/>
>
> <sFCausacImpto f="" v="Text"/>
>
> <sPersonId f="" v="String"/>
>
> <sRFC f="" v="Text"/>
>
> <sCURP f="" v="Text"/>
>
> <sApePat f="" v="Text"/>
>
> <sApeMat f="" v="Text"/>
>
> <sNombre f="" v="Text"/>
>
> <sRazSoc f="" v="String"/>
>
> </gDatIdent>
>
> <gRecopilador>
>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder