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
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?
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


0