<%@ Page Language="C#" %> <%@ Import Namespace="System.Xml" %> <%@ Import Namespace="System.Xml.Schema" %> <script runat="server"> private XmlTextReader reader; private XmlValidatingReader validator; void Page_Load(Object Sender, EventArgs e) { try { reader = new XmlTextReader(Server.MapPath("Data.xml")); validator = new XmlValidatingReader(reader); validator.ValidationType = ValidationType.XDR; validator.ValidationEventHandler += new ValidationEventHandler(this.ShowError); while (validator.Read()) { } } catch (Exception ex) { Response.Write("Error accessing XML file"); } finally { reader.Close(); } } void ShowError(Object Sender, ValidationEventArgs e) { Response.Write("<font color=\"red\">" + e.Message + "<br>"); if (reader.LineNumber > 0) { Response.Write("Line: " + reader.LineNumber + " Position: " + reader.LinePosition + "</font>"); } } </script> <html><body> </body></html> File: Data.xml <bookstore xmlns="x-schema:Data.xdr"> <book genre="novel" style="hardcover"> <title>title 1</title> <price>1.5</price> <author> <first-name>M</first-name> <last-name>A</last-name> </author> </book> </bookstore> File: Data.xdr <?xml version="1.0"?> <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> <ElementType name="first-name" content="textOnly"/> <ElementType name="last-name" content="textOnly"/> <ElementType name="name" content="textOnly"/> <ElementType name="price" content="textOnly" dt:type="fixed.14.4"/> <ElementType name="author" content="eltOnly" order="one"> <group order="seq"> <element type="name"/> </group> <group order="seq"> <element type="first-name"/> <element type="last-name"/> </group> </ElementType> <ElementType name="title" content="textOnly"/> <AttributeType name="genre" dt:type="string"/> <AttributeType name="style" dt:type="enumeration" dt:values="paperback hardcover"/> <ElementType name="book" content="eltOnly"> <attribute type="genre" required="yes"/> <attribute type="style" required="yes"/> <element type="title"/> <element type="price"/> <element type="author"/> </ElementType> <ElementType name="bookstore" content="eltOnly"> <element type="book"/> </ElementType> </Schema>