Validating XML documents against Schemas
Imports System.Xml
Imports System.Xml.Schema
Public Class MainClass
Shared Dim valid As Boolean ' validation result
Shared Sub Main()
Dim schemas As XmlSchemaCollection ' Schemas
valid = True ' assume document is valid
' get Schema(s) for validation
schemas = New XmlSchemaCollection()
schemas.Add("book", "book.xdr")
' get XML document
Dim reader As XmlTextReader = _
New XmlTextReader("document.xml")
' get validator
Dim validator As XmlValidatingReader = _
New XmlValidatingReader(reader)
' assign Schema(s)
validator.Schemas.Add(schemas)
' Microsoft XDR validation
validator.ValidationType = ValidationType.XDR
' register event handler for validation error(s)
AddHandler validator.ValidationEventHandler, _
AddressOf ValidationError
' validate document node-by-node
While validator.Read
' empty body
End While
' check validation result
If valid Then
Console.WriteLine("Document is valid")
End If
valid = True ' reset variable
validator.Close()
End Sub
' event handler for validation error
Shared Private Sub ValidationError(ByVal sender As Object, _
ByVal arguments As ValidationEventArgs)
Console.WriteLine(arguments.Message)
valid = False ' validation failed
End Sub ' ValidationError
End Class
Related examples in the same category