XML validation

From Rosetta Code
Revision as of 22:18, 3 November 2014 by Spintronic (talk | contribs) (Created page with "{{draft task}} Given an XML document and an XSD schema definition validate that the document follows the schema described. =={{header|C sharp}}== <lang csharp> using System...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
XML validation is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.

Given an XML document and an XSD schema definition validate that the document follows the schema described.

C#

<lang csharp> using System; using System.Xml; using System.Xml.Schema; using System.IO;

public class Test { public static void Main() { // your code goes here XmlSchemaSet sc = new XmlSchemaSet(); sc.Add(null, "http://www.public.asu.edu/~jtrujil1/xml/Hotel.xsd"); XmlReaderSettings settings = new XmlReaderSettings(); settings.ValidationType = ValidationType.Schema; settings.Schemas = sc; settings.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack); // Create the XmlReader object. XmlReader reader = XmlReader.Create("http://www.public.asu.edu/~jtrujil1/xml/Hotel.xml", settings); // Parse the file. while (reader.Read()); // will call event handler if invalid Console.WriteLine("The XML file is valid for the given xsd file"); }

// Display any validation errors. private static void ValidationCallBack(object sender, ValidationEventArgs e) { Console.WriteLine("Validation Error: {0}", e.Message); } } </lang>