XmlDocument Constructor ()
.NET Framework (current version)
Initializes a new instance of the XmlDocument class.
Assembly: System.Xml (in System.Xml.dll)
The following is an example of load-time validation. A document type definition (DTD) validating XmlReader is passed to the Load method and a ValidationEventHandler is provided to notify users of any validation errors. In this example a validation error is found, but the document is still loaded. Alternatively, you can define a validating XmlReader to throw an exception and stop the load process when a validation error is found by not specifying the ValidationEventHandler. For more information about validating XML data, see the Remarks section of the XmlReader reference page.
Option Explicit On Option Strict On Imports System Imports System.Xml Imports System.Xml.Schema Namespace Microsoft.Samples.Xml NotInheritable Class XmlDocumentSample Private Sub New() End Sub Shared reader As XmlReader Shared filename As String = "bookdtd.xml" Public Shared Sub Main() Dim eventHandler As New ValidationEventHandler(AddressOf XmlDocumentSample.ValidationCallback) Try ' Create the validating reader and specify DTD validation. Dim settings As New XmlReaderSettings() settings.DtdProcessing = DtdProcessing.Parse settings.ValidationType = ValidationType.DTD AddHandler settings.ValidationEventHandler, eventHandler reader = XmlReader.Create(filename, settings) ' Pass the validating reader to the XML document. ' Validation fails due to an undefined attribute, but the ' data is still loaded into the document. Dim doc As New XmlDocument() doc.Load(reader) Console.WriteLine(doc.OuterXml) Finally If Not (reader Is Nothing) Then reader.Close() End If End Try End Sub ' Display the validation error. Private Shared Sub ValidationCallback(ByVal sender As Object, ByVal args As ValidationEventArgs) Console.WriteLine("Validation error loading: {0}", filename) Console.WriteLine(args.Message) End Sub End Class End Namespace
The example uses the bookDTD.xml file as input.
<!DOCTYPE bookstore [ <!ELEMENT bookstore (book)*> <!ELEMENT book (title,author,price)> <!ATTLIST book genre CDATA #REQUIRED> <!ELEMENT title (#PCDATA)> <!ELEMENT author (#PCDATA)> <!ELEMENT price (#PCDATA)>]> <bookstore> <book genre="fantasy" ISBN="2-3631-4"> <title>Oberon's Legacy</title> <author>Corets, Eva</author> <price>5.95</price> </book> </bookstore>
Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Available since 10
.NET Framework
Available since 1.1
Show: