private static Node findNode(final Node contextNode, final String path)
    {
        try
        {
            return (Node)XPathFactory.newInstance().newXPath()
                .evaluate(path, contextNode, XPathConstants.NODE);
        }
        catch (final XPathExpressionException ex)
        {
            throw new IllegalArgumentException("Unable to locate node with path=" + path, ex);
        }
    }
Validate the message schema and delegate warnings and errors to the supplied {@link ErrorHandler}.

@param errorHandler for delegating warnings and errors.
sbe-tool/src/main/java/uk/co/real_logic/sbe/xml/MessageSchema.java