Skip to Main Content

DevOps, CI/CD and Automation

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Parse an xml string with multiple and variable arraylist

jtemeDec 28 2011 — edited Dec 28 2011
I have to parse this xml string (received from a Web Service) with PL/SQL.
Can somebody helpme?.

The xml is :


<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns0="http://wsevaluarreglacondicioncomercial/" xmlns:ns1="http://wsevaluarreglacondicioncomercial/types/" xmlns:ns2="http://www.oracle.com/webservices/internal/literal"><env:Body><ns0:consultarCondicionComercialResponseElement><ns0:result xsi:type="ns1:ResPromociones"><ns1:mensaje>OK</ns1:mensaje><ns1:status>OK</ns1:status><ns1:instanciaProceso xsi:nil="1"/><ns1:atributoEventos xsi:type="ns2:arrayList" xsi:nil="1"/><ns1:variables xsi:type="ns2:arrayList" xsi:nil="1"/><ns1:condicionesComerciales xsi:type="ns2:arrayList"><ns2:item xsi:type="ns2:hashMap"><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">unidadMedida</ns2:key><ns2:value xsi:type="xsd:string">HOR</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigoParque</ns2:key><ns2:value xsi:type="xsd:anyType" xsi:nil="1"/></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">emailPublicacion</ns2:key><ns2:value xsi:type="xsd:anyType" xsi:nil="1"/></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">nombreCondicionComercial</ns2:key><ns2:value xsi:type="xsd:string">PLAN COMUNIDAD CON TELEFONO 6</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">reglas</ns2:key><ns2:value xsi:type="ns2:arrayList"><ns2:item xsi:type="ns2:hashMap"><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">accion</ns2:key><ns2:value xsi:type="xsd:string">SECUMPLIO = 1;</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">descripcionRegla</ns2:key><ns2:value xsi:type="xsd:string">otra regla</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigoOrigenDatos</ns2:key><ns2:value xsi:type="xsd:long">5000</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigoRegla</ns2:key><ns2:value xsi:type="xsd:long">1730</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">nombreRegla</ns2:key><ns2:value xsi:type="xsd:string">REGLA002</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">condicion</ns2:key><ns2:value xsi:type="xsd:string">ESTADO = "DECEPCION"</ns2:value></ns2:mapEntry></ns2:item><ns2:item xsi:type="ns2:hashMap"><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">accion</ns2:key><ns2:value xsi:type="xsd:string">SECUMPLIO = 1;</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">descripcionRegla</ns2:key><ns2:value xsi:type="xsd:string">dsaf</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigoOrigenDatos</ns2:key><ns2:value xsi:type="xsd:long">5000</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigoRegla</ns2:key><ns2:value xsi:type="xsd:long">1731</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">nombreRegla</ns2:key><ns2:value xsi:type="xsd:string">REGLA001</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">condicion</ns2:key><ns2:value xsi:type="xsd:string">ESTADO = "ACTIV"</ns2:value></ns2:mapEntry></ns2:item></ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">tiempoMaximoAprobacion</ns2:key><ns2:value xsi:type="xsd:decimal">24</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">usuario</ns2:key><ns2:value xsi:type="xsd:string">valiente</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">periodoVidaFin</ns2:key><ns2:value xsi:type="xsd:dateTime">2011-12-31T00:00:00.000-03:00</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">versionGrupoReglas</ns2:key><ns2:value xsi:type="xsd:decimal">895</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">estado</ns2:key><ns2:value xsi:type="xsd:string">VIGENTE</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">fechaHora</ns2:key><ns2:value xsi:type="xsd:dateTime">2011-12-12T16:09:16.000-03:00</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigo</ns2:key><ns2:value xsi:type="xsd:decimal">172</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">periodoVidaInicio</ns2:key><ns2:value xsi:type="xsd:dateTime">2011-12-01T00:00:00.000-03:00</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">versionCondicionComercial</ns2:key><ns2:value xsi:type="xsd:decimal">336</ns2:value></ns2:mapEntry></ns2:item><ns2:item xsi:type="ns2:hashMap"><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">unidadMedida</ns2:key><ns2:value xsi:type="xsd:string">HOR</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigoParque</ns2:key><ns2:value xsi:type="xsd:anyType" xsi:nil="1"/></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">emailPublicacion</ns2:key><ns2:value xsi:type="xsd:anyType" xsi:nil="1"/></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">nombreCondicionComercial</ns2:key><ns2:value xsi:type="xsd:string">PLAN COMUNIDAD CON TELEFONO 5</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">reglas</ns2:key><ns2:value xsi:type="ns2:arrayList"><ns2:item xsi:type="ns2:hashMap"><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">accion</ns2:key><ns2:value xsi:type="xsd:string">SECUMPLIO = 1;</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">descripcionRegla</ns2:key><ns2:value xsi:type="xsd:string">fdksjafkl</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigoOrigenDatos</ns2:key><ns2:value xsi:type="xsd:long">5000</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigoRegla</ns2:key><ns2:value xsi:type="xsd:long">1713</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">nombreRegla</ns2:key><ns2:value xsi:type="xsd:string">REGLA001</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">condicion</ns2:key><ns2:value xsi:type="xsd:string">ESTADO = "ACTIV"</ns2:value></ns2:mapEntry></ns2:item></ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">tiempoMaximoAprobacion</ns2:key><ns2:value xsi:type="xsd:decimal">24</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">usuario</ns2:key><ns2:value xsi:type="xsd:string">valiente</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">periodoVidaFin</ns2:key><ns2:value xsi:type="xsd:dateTime">2011-12-31T00:00:00.000-03:00</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">versionGrupoReglas</ns2:key><ns2:value xsi:type="xsd:decimal">876</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">estado</ns2:key><ns2:value xsi:type="xsd:string">VIGENTE</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">fechaHora</ns2:key><ns2:value xsi:type="xsd:dateTime">2011-12-09T12:11:29.000-03:00</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">codigo</ns2:key><ns2:value xsi:type="xsd:decimal">170</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">periodoVidaInicio</ns2:key><ns2:value xsi:type="xsd:dateTime">2011-12-01T00:00:00.000-03:00</ns2:value></ns2:mapEntry><ns2:mapEntry xsi:type="ns2:mapEntry"><ns2:key xsi:type="xsd:string">versionCondicionComercial</ns2:key><ns2:value xsi:type="xsd:decimal">313</ns2:value></ns2:mapEntry></ns2:item></ns1:condicionesComerciales><ns1:listaVariables xsi:type="ns2:arrayList" xsi:nil="1"/><ns1:parametros xsi:type="ns2:arrayList" xsi:nil="1"/><ns1:promociones xsi:type="ns2:arrayList" xsi:nil="1"/></ns0:result></ns0:consultarCondicionComercialResponseElement></env:Body></env:Envelope>

Thanks!
This post has been answered by odie_63 on Dec 28 2011
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jan 25 2012
Added on Dec 28 2011
7 comments
1,291 views