Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: apache_scrc en 15 Septiembre 2010, 22:27 pm



Título: Problema al validar XML
Publicado por: apache_scrc en 15 Septiembre 2010, 22:27 pm
Estimados quiero validar un XML con el siguiente XSD (llamado conjunto_solicitudes_GE):

Código
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!--  SOLICITUDES DE GARANTIA ESTATAL PARA LAS CSV  
  3.  -->
  4. <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.safp.cl/xml" xmlns="http://www.safp.cl/xml" xmlns:safp="http://www.safp.cl/xml" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  5.  <xs:include schemaLocation="http://www.safp.cl/xml/xsd/apps/garest/ge_csv/sgeCSVVejez-v1.0.xsd" />
  6.  <xs:include schemaLocation="http://www.safp.cl/xml/xsd/apps/garest/ge_csv/sgeCSVInvalidez-v1.0.xsd" />
  7.  <xs:include schemaLocation="http://www.safp.cl/xml/xsd/apps/garest/ge_csv/sgeCSVSobrevivencia-v1.0.xsd" />
  8.  <xs:include schemaLocation="http://www.safp.cl/xml/xsd/apps/garest/ge_csv/sgeCSVSuspension-v1.0.xsd" />
  9.  <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd" />
  10.   <xs:annotation>
  11.    <xs:documentation xml:lang="es">Esquema disponible para validar un conjunto de solicitudes provenientes de las Compañias de Seguros, para solicitar el beneficio o suspensión de Garantia Estatal para pensiones mínimas</xs:documentation>
  12.  </xs:annotation>
  13.   <xs:element name="conjunto_solicitudes_GE">
  14.     <!--<xs:annotation>
  15.      <xs:documentation>
  16.        El elemento <conjunto_solicitudes_GE>, utilizado para informar un conjunto de Solicitudes, está compuesto de dos etiquetas obligatorias:</xs:documentation>
  17.      <xs:documentation>
  18.        <encabezado>: Utilizada para indicar la información de la Compañias de Seguros que envía la información
  19.      </xs:documentation>
  20.      <xs:documentation>
  21.        <solicitud>: Utilizada para informar los datos de las solicitudes (mínimo una), cuyo identificador debe ser único
  22.      </xs:documentation>
  23.      <xs:documentation>
  24.        <Signature>: Elemento obligatorio cuyo objetivo es asegurar que el documento se encuentra firmado por el Gerente general de la Compañia de Seguros o la persona que el designe, utilizando firma electróonica avanzada. El esquema lo presenta opcional sólo para efectos de no provocar problemas en los flujos de procesos, antes de que el documento sea firmado.
  25.      </xs:documentation>
  26.    </xs:annotation>-->
  27.     <xs:complexType>
  28.       <xs:sequence>
  29.        <xs:element maxOccurs="1" minOccurs="1" ref="encabezado" />
  30.        <xs:element maxOccurs="unbounded" minOccurs="1" ref="solicitud" />
  31.        <xs:element maxOccurs="1" minOccurs="0" ref="ds:Signature" />
  32.      </xs:sequence>
  33.    </xs:complexType>
  34.     <xs:unique name="Uidentificador">
  35.      <xs:selector xpath="safp:solicitud" />
  36.      <xs:field xpath="@identificador" />
  37.    </xs:unique>
  38.  </xs:element>
  39.   <xs:element name="encabezado">
  40.     <!--<xs:annotation>
  41.      <xs:documentation>
  42.        El elemento <encabezado>, utilizado para informar datos generales del documento, está compuesto de las siguientes etiquetas obligatorias:</xs:documentation>
  43.      <xs:documentation>
  44.        <rut_csv>: Corresponde al RUT de la Compañia de Seguros de Vida
  45.      </xs:documentation>
  46.      <xs:documentation>
  47.        <fecha_envio>: Corresponde a la fecha en que se envío este documento
  48.      </xs:documentation>
  49.      <xs:documentation>
  50.        <nro_solicitudes>: Corresponde al número de solicitudes informadas>
  51.      </xs:documentation>
  52.    </xs:annotation>-->
  53.     <xs:complexType>
  54.       <xs:sequence>
  55.        <xs:element maxOccurs="1" minOccurs="1" name="rut_csv" type="rolType" />
  56.        <xs:element maxOccurs="1" minOccurs="1" name="fecha_envio" type="xs:date" />
  57.        <xs:element maxOccurs="1" minOccurs="1" name="nro_solicitudes" type="xs:positiveInteger" />
  58.      </xs:sequence>
  59.    </xs:complexType>
  60.  </xs:element>
  61.   <xs:element name="solicitud">
  62.     <!--<xs:annotation>
  63.      <xs:documentation>
  64.        El elemento <solicitud>, utilizado para informar los datos de las solicitudes, está compuesto de un atributo obligatorio (identificador) y una de las siguientes etiquetas:</xs:documentation>
  65.      <xs:documentation>
  66.        <solicitud_vejez>: Solicitud realizada por un pensionado por vejez ya sea a la edad legal o anticipada
  67.      </xs:documentation>
  68.      <xs:documentation>
  69.        <solicitud_invalidez>: Solicitud realizada por un pensionado por invalidez
  70.      </xs:documentation>
  71.      <xs:documentation>
  72.        <solicitud_sobrevivencia>: Solicitud realizada por un beneficiario de pensión de sobrevivencia
  73.      </xs:documentation>
  74.      <xs:documentation>
  75.        <solicitud_supension>: Solicitud para suspender el beneficio de Garantía Estatal para pensiones mínimas
  76.      </xs:documentation>
  77.      <xs:documentation>El atributo identificador, contiene un valor único asignado por la Compañías de Seguros de Vida a cada solicitud tramitada mensualmente. Esto quiere decir que el valor del atributo identificador no puede repetirse para diferentes envíos de solicitudes a la SAFP, para un mes determinado</xs:documentation>
  78.    </xs:annotation>-->
  79.     <xs:complexType>
  80.       <xs:choice>
  81.        <xs:element maxOccurs="1" minOccurs="1" ref="solicitud_vejez" />
  82.        <xs:element maxOccurs="1" minOccurs="1" ref="solicitud_invalidez" />
  83.        <xs:element maxOccurs="1" minOccurs="1" ref="solicitud_sobrevivencia" />
  84.        <xs:element maxOccurs="1" minOccurs="1" ref="solicitud_suspension" />
  85.      </xs:choice>
  86.      <xs:attribute name="identificador" type="xs:positiveInteger" use="required" />
  87.    </xs:complexType>
  88.  </xs:element>
  89. </xs:schema>

El problema es que cuando ejecuto el código que hace la validación del xml (Este código fue realizado en C#.NET y funciona perfectamente con otros ejemplos), me sale el siguiente error por consola

No se puede encontrar la información de esquema para el elemento 'http://www.safp.cl/xml:conjunto_solicitudes_GE'


Ese link que aparece es uno de los tantos que el XSD esta haciendo referencia.

Estoy utilizando Framework 3.5

¿Alguien  ha hecho algo parecido?


Título: Re: Problema al validar XML
Publicado por: [D4N93R] en 16 Septiembre 2010, 05:08 am
Hola,

Por favor, leer las reglas del foro y subforo, luego editas el post acorde a las reglas, y luego te ayudamos.

Un saludo!


Título: Re: Problema al validar XML
Publicado por: apache_scrc en 16 Septiembre 2010, 14:50 pm
CUAL ES EL PROBLEMA MASTER? SI LEI LAS REGLAS.. CREO Q ES POST ES CLARO.... NOC DIME TU :)
SALUDOS!


Título: Re: Problema al validar XML
Publicado por: raul338 en 16 Septiembre 2010, 15:00 pm
Cita de: CAREN
  • Usar las mayúsculas de forma moderada (ver sección III.C.1.b. ).
  • Usar sólo colores oscuros en los mensajes, así como verde oscuro, azul, marrón y negro.
  • El título de los mensajes debe ser descriptivo con acuerdo al contenido. No son descriptivos asuntos que sólo piden ayuda o hacen referencia a la temática general del tablón en los que son escritos.
  • Los mensajes deben ser legibles y fácilmente entendibles, esto incluye:
    • La fuente usada (tamaño, color y otros adornos).
    • El lenguaje o terminología usado (se evitarán las jergas y términos coloquiales).
    • La ortografía.
    • La redacción del mensaje (nadie podrá ayudarte si no te entiende).
:-*


Título: Re: Problema al validar XML
Publicado por: [D4N93R] en 16 Septiembre 2010, 15:02 pm
Capslocks On ? Escribe normal, no todo en mayúsculas por favor.
El títúlo dice: "Problema al validad XML" pero nunca pones que lenguaje estás usando, si VB.Net si C#, F#, C++/CLI, Ironpython, etc.

Un saludo.


Título: Re: Problema al validar XML
Publicado por: apache_scrc en 16 Septiembre 2010, 16:40 pm
ahora si?


Título: Re: Problema al validar XML
Publicado por: raul338 en 16 Septiembre 2010, 16:57 pm
No pones lo principal, no pones el codigo con el que estas validando el XML


Título: Re: Problema al validar XML
Publicado por: [D4N93R] en 16 Septiembre 2010, 17:34 pm
También tienes que decir que lenguaje usas, y que versión del Framework también.

No lo hagas en otro post, lo editas en el primero.

Saludos!


Título: Re: Problema al validar XML
Publicado por: Braayhaan en 16 Septiembre 2010, 17:46 pm
Creo que si lo puso.

Citar
El problema es que cuando ejecuto el código que hace la validación del xml (Este código fue realizado en C#.NET y funciona perfectamente con otros ejemplos), me sale el siguiente error por consola


Título: Re: Problema al validar XML
Publicado por: [D4N93R] en 16 Septiembre 2010, 18:06 pm
Lo acaba de poner, Braayhaan.

No lo hagas en otro post, lo editas en el primero.

:)

Con respecto al post: apache_scrc , se te ocurrió ver que hay en 'http://www.safp.cl/xml:conjunto_solicitudes_GE' porque no me regresa el esquema. Ese es el problema que te sale.

Pasanos el link de donde está el esquema con el cual quieres validar.


Título: Re: Problema al validar XML
Publicado por: apache_scrc en 16 Septiembre 2010, 18:08 pm
Amigos por favor leer bien!, no necesito poner los otros códigos... porque el problema me lo esta generando el XSD

alguien alguna vez a tenido algún problema similar?


Título: Re: Problema al validar XML
Publicado por: [D4N93R] en 16 Septiembre 2010, 18:08 pm
Escribimos post al mismo tiempo y el mio se supo arriba, leelo, ahi te puse la respuesta.

Saludos!


Título: Re: Problema al validar XML
Publicado por: raul338 en 16 Septiembre 2010, 18:15 pm
El XSD esta bien, una pregunta, como haces para obtener el XSD por la web? Capaz ahi esta el problema


Título: Re: Problema al validar XML
Publicado por: apache_scrc en 16 Septiembre 2010, 18:16 pm
Lo acaba de poner, Braayhaan.

No lo hagas en otro post, lo editas en el primero.

:)

Con respecto al post: apache_scrc , se te ocurrió ver que hay en 'http://www.safp.cl/xml:conjunto_solicitudes_GE' porque no me regresa el esquema. Ese es el problema que te sale.

Pasanos el link de donde está el esquema con el cual quieres validar.


perrin en los  xs:include schemaLocation al principio del codigo estan los link de los esquemas


Título: Re: Problema al validar XML
Publicado por: [D4N93R] en 16 Septiembre 2010, 18:52 pm
Cual es el exception que te está lanzando?


Título: Re: Problema al validar XML
Publicado por: apache_scrc en 16 Septiembre 2010, 19:36 pm
Cual es el exception que te está lanzando?

????? no caxo a q te refieres.. no soy manejado en el tema .net


Título: Re: Problema al validar XML
Publicado por: [D4N93R] en 16 Septiembre 2010, 20:11 pm
Cuando te da el error, te sale una ventana emergente en Visual Studio, y dicen cosas como ArgumentNullException, y cosas así, esos nombres todos terminan en Exception, si te da ese tipo de error, que es lo más seguro, necesito saberlo.

También, si puedes postear el XML que estás intentando validad, y el código en C# con lo que lo estás haciendo, para ver si todo está bien y si estás manejando correctamente todo.

Saludos.


Título: Re: Problema al validar XML
Publicado por: apache_scrc en 22 Septiembre 2010, 15:13 pm
Cuando te da el error, te sale una ventana emergente en Visual Studio, y dicen cosas como ArgumentNullException, y cosas así, esos nombres todos terminan en Exception, si te da ese tipo de error, que es lo más seguro, necesito saberlo.

También, si puedes postear el XML que estás intentando validad, y el código en C# con lo que lo estás haciendo, para ver si todo está bien y si estás manejando correctamente todo.

Saludos.

no me sale ninguna ventana en visual que este indicando algún tipo de error en el código...si parece q el problema es q no se puede conectar al xml q quiero validar... no necesitan ver el otro código.... porq ya lo pobre con una aplicación directa y me funca bien.. el drama es el código que mostré, q es el q me trae algún tipo de problema


Título: Re: Problema al validar XML
Publicado por: apache_scrc en 22 Septiembre 2010, 18:25 pm
El XSD no tiene problemas, el error estaba en la llamada que estaba haciendo de el xml, ya que cuando se quiere llamar a xsd que llaman a enlances externos se debe realizar asi

Código
  1. <conjuntosolicitudesGE  xsi:noNamespaceSchemaLocation="http://www.safp.cl/xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  2.  
  3.  

y no asi:
Código
  1. <!--<conjuntosolicitudesGE  xsi:noNamespaceSchemaLocation='conjunto_solicitudes_GE.xsd' xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">-->
  2.  


ahora me esta wuebiando el proxy.... si alguien sabe como configurarlo con c#.net me avisa.
 
saludos! y gracias por la gente que comento


Título: Re: Problema al validar XML
Publicado por: [D4N93R] en 22 Septiembre 2010, 18:35 pm
Código
  1. WebProxy proxy = new WebProxy("direccion", puerto);

Eso si usas alguna clase del framework derivado de WebRequest, sino, si estas haciendo una conexión tcp usa esto que te resuelve bastante:

http://www.starksoft.com/products2.html#proxylibrary

saludos



Título: Re: Problema al validar XML
Publicado por: apache_scrc en 22 Septiembre 2010, 22:04 pm
Código
  1. WebProxy proxy = new WebProxy("direccion", puerto);

Eso si usas alguna clase del framework derivado de WebRequest, sino, si estas haciendo una conexión tcp usa esto que te resuelve bastante:

http://www.starksoft.com/products2.html#proxylibrary

saludos



habia encontrado algo parecido a lo que me enviaste, pero noc como declarar la varable MiServicio

Código
  1.  
  2.            string DireccionDelProxy = "proxy";
  3.            int PuertoDelProxy = 8080;
  4.            System.Net.WebProxy miProxy = new System.Net.WebProxy(DireccionDelProxy, PuertoDelProxy);
  5.            MiServicio.Proxy = miProxy;
  6.