/// <summary>
        /// Determines whether the data provided is valid syntax.
        /// </summary>
        /// <param name="data">Data.</param>
        /// <returns></returns>
        public virtual ISyntaxValidationResults Validate(string data)
        {
            String message;

            try
            {
                StoreCountHandler handler = new StoreCountHandler();
                _parser.Load(handler, new StringReader(data));

                message = "Valid RDF Dataset - " + handler.GraphCount + " Graphs with " + handler.TripleCount + " Triples - Parser: " + _parser.GetType().Name;
                return(new SyntaxValidationResults(true, message, handler));
            }
            catch (RdfParseException parseEx)
            {
                message = "Invalid RDF Dataset - Parsing Error from Parser: " + _parser.GetType().Name + " - " + parseEx.Message;
                return(new SyntaxValidationResults(message, parseEx));
            }
            catch (RdfException rdfEx)
            {
                message = "Invalid RDF Dataset - RDF Error from Parser: " + _parser.GetType().Name + " - " + rdfEx.Message;
                return(new SyntaxValidationResults(message, rdfEx));
            }
            catch (Exception ex)
            {
                message = "Invalid RDF Dataset - Error from Parser: " + _parser.GetType().Name + " - " + ex.Message;
                return(new SyntaxValidationResults(message, ex));
            }
        }
 /// <summary>
 /// Creates a new Handler
 /// </summary>
 /// <param name="handler">Handler</param>
 public ImportProgressHandler(StoreCountHandler handler)
 {
     if (handler == null)
     {
         throw new ArgumentNullException("handler");
     }
     this._handler = handler;
 }