Validación XML

11/08/2004 - 11:24 por Roberto G.A. | Informe spam
Hola a tod@s,

alguien me podría guiar de cual es la mejor manera de
validar un xml contra un xsd mediante código.

Gracias de antemano.
Roberto G. A.

Preguntas similare

Leer las respuestas

#1 Alejandro Perez
11/08/2004 - 15:58 | Informe spam
Hola Roberto! La mejor manera es con la clase
XmlValidatingReader. Aqui te dejo una referencia:

http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpguide/html/cpconvalidationagainstxsdwithxmlvalidatingr
eader.asp

Cuidate. Bye
Alejandro Perez
MCSD/MCDBA/MCT
Caracas - Venezuela


Hola a ,

alguien me podría guiar de cual es la mejor manera de
validar un xml contra un xsd mediante código.

Gracias de antemano.
Roberto G. A.
.

Respuesta Responder a este mensaje
#2 Roberto G. A.
11/08/2004 - 16:31 | Informe spam
Hola Alejandro, en el ejemplo que me envías, como los que
ya había visto tienen una pequeña pega por lo que no me
vale.

Cuento lo que quiero hacer, a ver si es posible:

Tengo un método que hacepta como parámetro un string
Por ej:) +Procesar(param string)

El parámetro de dicha función en realidad es un xml el
cual cargo en un XmlDocument para procesarlo.

Para comprobar la validez del mismo había pensado en
validarlo contra un xsd, pero no encuentro ningún ejemplo
que valide un xml contra un xsd seleccionado por mi.

Había pensado la posibilidad de adjuntar ambos archivos
en otro objeto y validarlo después, pero no se si hay
otra forma más simple.

Gracias de antemano,
Roberto G.A.



Hola Roberto! La mejor manera es con la clase
XmlValidatingReader. Aqui te dejo una referencia:

http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpguide/html/cpconvalidationagainstxsdwithxmlvalidatin


gr
eader.asp

Cuidate. Bye
Alejandro Perez
MCSD/MCDBA/MCT
Caracas - Venezuela


Hola a ,

alguien me podría guiar de cual es la mejor manera de
validar un xml contra un xsd mediante código.

Gracias de antemano.
Roberto G. A.
.



.

Respuesta Responder a este mensaje
#3 Alejandro Perez
11/08/2004 - 18:48 | Informe spam
Como estas Roberto?, fijate, el ejemplo era referencial.
Para tu caso seria algo como:

public void Procesar(string DocumentoXML)
{
XmlValidatingReader vr = new XmlValidatingReader
(DocumentoXML, XmlNodeType.Element, null);
vr.Schemas.Add(null, "Esquema.xsd");
vr.ValidationType = ValidationType.Schema;
vr.ValidationEventHandler += new
ValidationEventHandler (ValidationHandler);

while(vr.Read());
Console.WriteLine("Validacion Finalizada");
}

public static void ValidationHandler(object sender,
ValidationEventArgs args)
{
Console.WriteLine("***Validation error");
Console.WriteLine("\tSeverity:{0}",
args.Severity);
Console.WriteLine("\tMessage:{0}", args.Message);
}

Si lo vez? Avisame cualquier cosa.

Bye Bye
Alejandro Perez
MCSD/MCDBA/MCT
Caracas - Venezuela


Hola Alejandro, en el ejemplo que me envías, como los que
ya había visto tienen una pequeña pega por lo que no me
vale.

Cuento lo que quiero hacer, a ver si es posible:

Tengo un método que hacepta como parámetro un string
Por ej:) +Procesar(param string)

El parámetro de dicha función en realidad es un xml el
cual cargo en un XmlDocument para procesarlo.

Para comprobar la validez del mismo había pensado en
validarlo contra un xsd, pero no encuentro ningún ejemplo
que valide un xml contra un xsd seleccionado por mi.

Había pensado la posibilidad de adjuntar ambos archivos
en otro objeto y validarlo después, pero no se si hay
otra forma más simple.

Gracias de antemano,
Roberto G.A.



Hola Roberto! La mejor manera es con la clase
XmlValidatingReader. Aqui te dejo una referencia:

http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpguide/html/cpconvalidationagainstxsdwithxmlvalidatin


gr
eader.asp

Cuidate. Bye
Alejandro Perez
MCSD/MCDBA/MCT
Caracas - Venezuela


Hola a ,

alguien me podría guiar de cual es la mejor manera de
validar un xml contra un xsd mediante código.

Gracias de antemano.
Roberto G. A.
.



.



.

Respuesta Responder a este mensaje
#4 Nataly Elva
11/08/2004 - 20:49 | Informe spam
hola, espero te sirva
/////////////// con este trozo de codigo relaciona el
archivo XML con el XSD


StringReader xmlStringReader = new StringReader
(ArchivoXML);
XmlTextReader txtreader = new XmlTextReader
(xmlStringReader);
XmlValidatingReader vr;
vr = new XmlValidatingReader(txtreader);
vr.ValidationType = ValidationType.Schema;
StringReader xsdStringReader = new StringReader
(ArchivoXSD);
XmlTextReader xsdReader = new XmlTextReader
(xsdStringReader);
vr.Schemas.Add("", xsdReader);
vr.ValidationEventHandler += new ValidationEventHandler
(ValidationCallBack);

///////////////

///////////funcion ValidationCallBack


private void ValidationCallBack (object sender,
ValidationEventArgs args)
{
// aqui es donde saltara cuando encuentre un error
en la validacion, aui podrias ver en que lugar y que
datoas, explorando tu Archivo XML
}



Hola a ,

alguien me podría guiar de cual es la mejor manera de
validar un xml contra un xsd mediante código.

Gracias de antemano.
Roberto G. A.
.

Respuesta Responder a este mensaje
#5 Roberto G.A.
11/08/2004 - 23:41 | Informe spam
Muchas gracias a esta era la solución a mis problemas :)

Roberto G.A.

Alejandro Perez wrote:
Como estas Roberto?, fijate, el ejemplo era referencial.
Para tu caso seria algo como:

public void Procesar(string DocumentoXML)
{
XmlValidatingReader vr = new XmlValidatingReader
(DocumentoXML, XmlNodeType.Element, null);
vr.Schemas.Add(null, "Esquema.xsd");
vr.ValidationType = ValidationType.Schema;
vr.ValidationEventHandler += new
ValidationEventHandler (ValidationHandler);

while(vr.Read());
Console.WriteLine("Validacion Finalizada");
}

public static void ValidationHandler(object sender,
ValidationEventArgs args)
{
Console.WriteLine("***Validation error");
Console.WriteLine("\tSeverity:{0}",
args.Severity);
Console.WriteLine("\tMessage:{0}", args.Message);
}

Si lo vez? Avisame cualquier cosa.

Bye Bye
Alejandro Perez
MCSD/MCDBA/MCT
Caracas - Venezuela



Hola Alejandro, en el ejemplo que me envías, como los que
ya había visto tienen una pequeña pega por lo que no me
vale.

Cuento lo que quiero hacer, a ver si es posible:

Tengo un método que hacepta como parámetro un string
Por ej:) +Procesar(param string)

El parámetro de dicha función en realidad es un xml el
cual cargo en un XmlDocument para procesarlo.

Para comprobar la validez del mismo había pensado en
validarlo contra un xsd, pero no encuentro ningún ejemplo
que valide un xml contra un xsd seleccionado por mi.

Había pensado la posibilidad de adjuntar ambos archivos
en otro objeto y validarlo después, pero no se si hay
otra forma más simple.

Gracias de antemano,
Roberto G.A.




Hola Roberto! La mejor manera es con la clase
XmlValidatingReader. Aqui te dejo una referencia:

http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/cpguide/html/cpconvalidationagainstxsdwithxmlvalidatin



gr

eader.asp

Cuidate. Bye
Alejandro Perez
MCSD/MCDBA/MCT
Caracas - Venezuela



Hola a ,

alguien me podría guiar de cual es la mejor manera de
validar un xml contra un xsd mediante código.

Gracias de antemano.
Roberto G. A.
.




.




.




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida