/// <summary>
        /// 
        /// </summary>
        /// <param name="node"></param>
        /// <returns></returns>
        public XmlValidatorStatus Validate(XmlNode node)
        {
            _validationStatus = XmlValidatorStatus.Success;

            if (node.NodeType != XmlNodeType.Document)
            {
                _validationStatus = XmlValidatorStatus.InvalidType;
            }
            else
            {
                XmlDocument xmlDoc = node as XmlDocument;
                if (xmlDoc != null)
                {
                    xmlDoc.Schemas.Add(_schemaNamespace, _schemaFilename);
                    xmlDoc.Validate(XmlValidationHandler);
                }
                else
                {
                    _log.Warn(m => m("XML Document is null"));
                }
            }

            return _validationStatus;
        }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void XmlValidationHandler(object sender, ValidationEventArgs e)
 {
     // TODO: confirm that we only hit this event handler when validation fails
     _validationStatus = XmlValidatorStatus.FailedValidation;
 }