XmlDocument Constructor ()

 

Initializes a new instance of the XmlDocument class.

Namespace:   System.Xml
Assembly:  System.Xml (in System.Xml.dll)

Public Sub New

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
Return to top
Show: