Imports System
Imports System.Xml
Imports System.Xml.Schema
Public Class MainClass
Public Shared Sub Main(ByVal args As String())
Dim xmlValidator As New ConsoleValidator
Dim success As Boolean = xmlValidator.ValidateXML(args(0), args(1))
If Not success Then
Console.WriteLine("Validation failed.")
Else
Console.WriteLine("Validation succeeded.")
End If
End Sub
End Class
Public Class ConsoleValidator
Private failed As Boolean
Public Function ValidateXML(ByVal xmlFileName As String, ByVal schemaFileName As String)
Dim settings As New XmlReaderSettings
settings.ValidationType = ValidationType.Schema
Dim schemas As New XmlSchemaSet
settings.Schemas = schemas
schemas.Add(Nothing, schemaFileName)
AddHandler settings.ValidationEventHandler, AddressOf HandleValidationEvents
Dim validator As XmlReader = XmlReader.Create(xmlFileName, settings)
failed = False
Try
While validator.Read()
End While
Catch ex As Exception
Console.WriteLine(ex.Message)
failed = True
End Try
validator.Close()
Return Not failed
End Function
Private Sub HandleValidationEvents(ByVal sender As Object, ByVal args As ValidationEventArgs)
failed = True
Console.WriteLine(args.Message)
End Sub
End Class
|