SQL Server - Leer un XML Multi XMLNAMESPACES

 
Vista:
Imágen de perfil de Johana
Val: 5
Ha aumentado su posición en 10 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Leer un XML Multi XMLNAMESPACES

Publicado por Johana (2 intervenciones) el 18/07/2020 03:44:37
Hola A todos, necesito una ayudita con la lectura de un XML que posee varios XMLNAMESPACES, soy nueva con los XML, pido disculpa si es algo fácil.

Este es el XML:

Declare @XMLrevisar as xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Set @XMLrevisar = '<root xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:aComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:bComponents-2">
   <cbc:Resultado01>Aqui estoy 01</cbc:Resultado01>
   <cac:Buscar2>
      <cac:Buscar3>
         <cbc:Resultado02>Aqui estoy 02</cbc:Resultado02>
      </cac:Buscar3>
   </cac:Buscar2>
   <cbc:FaseDescipcion><![CDATA[<?xml version="1.0" encoding="utf-8"?>
   <root2 sts="tio:org:com:fe:Structures-2-1" xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CEComponents-2"">
      <ext:Buscar4>
         <ext:Buscar5 xmlns:sbc="urn:oasis:names:specification:ubl:schema:xsd:SBComponents-2">
            <ext:Buscar6>
               <sts:Buscar7 xmlns:xades="http://uri.etsi.org/01903/v1.3.2#">
                  <sts:Buscar8>
                     <sts:Resultado03>Aqui estoy 03</sts:Resultado03>
                     <sts:Buscar9>
                        <cbc:Resultado04>Aqui estoy 04</cbc:Resultado04>
                        <cbc:Resultado05>Aqui estoy 05</cbc:Resultado05>
	             </sts:Buscar9>
                  </sts:Buscar8>
               </sts:Buscar7>
            </ext:Buscar6>
         </ext:Buscar5>
      </ext:Buscar4>
   </root2>]]></cbc:FaseDescipcion>
</root>';
 
;WITH XMLNAMESPACES ('urn:oasis:names:specification:ubl:schema:xsd:aComponents-2' as cac,
                     'urn:oasis:names:specification:ubl:schema:xsd:bComponents-2' as cbc
                    )
SELECT
--DATA.value( '(cbc:Resultado01/text())[1]' ,'VARCHAR(100)') AS Resultado
    DATA.value( '(cbc:Resultado02/text())[1]' ,'VARCHAR(100)') AS Resultado
--FROM @XMLrevisar.nodes('root') AS ROOT(DATA)
FROM @XMLrevisar.nodes('root/cac:Buscar2/cac:Buscar3') AS ROOT(DATA)

De esta manera puedo Obtener los valores de la Etiquetas Resultado01 y Resultado02, pero
no se como obtener los valores de la Etiquetas Resultado03, Resultado04 y Resultado05? alguien
puede ayudarme?
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
Imágen de perfil de Johana
Val: 5
Ha aumentado su posición en 10 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Leer un XML Multi XMLNAMESPACES

Publicado por Johana (2 intervenciones) el 20/07/2020 23:16:35
Gracias Isaias, El link que me distes es buenísimo, ahora puedo limpiar la estructura XML, pero sigo sin solución a mi pregunta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar