Getting error information from XML Schema validation

Hi

I am using libxml2 to validate an XML file using a Schema. Like this:

schema = XML::Schema.from_string(schema_string)
parser = XML::Parser.new
parser.string = xml
doc = parser.parse
result = doc.validate_schema(schema)

This works and if the XML doc is invalid the error is written to
standard output. Is there a way to capture this output? I need to
relay this information to the client application. Grateful for any
assistance.

Kindest regards

Erik

I found the solution in the libxml-ruby test cases. Viva TDD! If
anyone else is interested this is a pattern for testing it:

    schema = XML::Schema.from_string(schema_string)
    parser = XML::Parser.new
    parser.string = xml
    doc = parser.parse

    messages = Hash.new
    assert(!doc.validate_schema(schema) do |message, error|
      messages[message] = error
    end)

    expected = {"Element 'customer_ip': This element is not expected.
Expected is ( password ).\n" => true}
    assert_equal expected, messages

Hope it helps.

Regards

Erik