/// <summary>
        /// Creates a new Evaluation Context for the given Query over the given Dataset
        /// </summary>
        /// <param name="q">Query</param>
        /// <param name="data">Dataset</param>
        public SparqlEvaluationContext(SparqlQuery q, ISparqlDataset data)
        {
            this._query = q;
            this._data = data;
            this._inputSet = new IdentityMultiset();
            this._binder = new LeviathanResultBinder(this);

            this.CalculateTimeout();
        }
        /// <summary>
        /// Creates a new Evaluation Context for the given Query over the given Dataset.
        /// </summary>
        /// <param name="q">Query.</param>
        /// <param name="data">Dataset.</param>
        public SparqlEvaluationContext(SparqlQuery q, ISparqlDataset data)
        {
            _query    = q;
            _data     = data;
            _inputSet = new IdentityMultiset();
            _binder   = new LeviathanResultBinder(this);

            CalculateTimeout();
        }
 /// <summary>
 /// Creates a new Evaluation Context which is a Container for the given Result Binder
 /// </summary>
 /// <param name="binder"></param>
 public SparqlEvaluationContext(SparqlResultBinder binder)
 {
     this._binder = binder;
 }
 /// <summary>
 /// Creates a new Evaluation Context which is a Container for the given Result Binder.
 /// </summary>
 /// <param name="binder"></param>
 public SparqlEvaluationContext(SparqlResultBinder binder)
 {
     _binder = binder;
 }