XML::Validate::MSXML(3pm)

XML::Validate::MSXML3pm

Interface to msxml validator

Usage

  my $validator = new XML::Validate::MSXML(%options);
  if ($doc = $validator->validate($xml)) {
    ... Do stuff with $doc ...
  } else {
    print "Document is invalid\n";
  }

Overview

XML::Validate::MSXML is an interface to Microsoft's MSXML parser (often available in Windows environments) which can be used with the XML::Validate module.

Methods

new(%options)

Returns a new XML::Validate::MSXML instance using the specified options. (See OPTIONS below.)

validate($xml)

Returns true if $xml could be successfully parsed, undef otherwise.

last_dom()

Returns the MSXML DOM object of the document last validated.

last_error()

Returns the error from the last validate call. This is a hash ref with the following fields:

create_doc_and_cache()

Internal method for instantiation of MSXML DOMDocument and SchemaCache objects for use within the module.

dependencies_available()

Internal method to determine that the necessary dependencies are available for instantiation of MSXML DOMDocument and SchemaCache objects.

load_schemas($msxml, $msxmlcache)

Internal method to perform loading of XML schema(s) into SchemaCache object.

•

message

•

line

•

column

Note that the error gets cleared at the beginning of each "validate" call.

version()

Returns the version of the MSXML component that is installed

Options

XML::Validate::MSXML takes the following options:

strict_validation

If this boolean value is true, the document will be validated during parsing. Otherwise it will only be checked for well-formedness. Defaults to true.

Error reporting

When a call to validate fails to parse the document, the error may be retrieved using last_error.

On errors not related to the XML parsing, these methods will throw exceptions. Wrap calls with eval to catch them.

Package globals

$XML::Validate::MSXML::MSXML_VERSION contains the version number of MSXML.

Dependencies

Win32::OLE, MSXML 4.0 or 5.0

Version

$Revision: 1.18 $ on $Date: 2006/04/18 10:00:31 $ by $Author: mattheww $

Releases

6 releases since Debian 6.0 (Squeeze); the text changed 2 times.

  1. 6.0–7
  2. 10–11
  3. 12–13

Author

Nathan Carr, Colin Robertson

<cpan _at_ bbc _dot_ co _dot_ uk>

From libxml-validate-perl 1.025-4 in Debian 13 (Trixie). Parsed by carta from the page's man source.