/// <summary>
        ///
        /// </summary>
        /// <param name="uri"></param>
        /// <param name="format"></param>
        /// <param name="headers"></param>
        /// <returns></returns>
        public Guid[] SendRequest(string uri, string format, string toCrawl, string headers, string isConformance = null, string isMetaData = "no", string levelTypes = null)
        {
            validator = new ODataValidator.ValidationService.ODataValidator();
            IEnumerable <JobGroup> groups = validator.UriValidationJobs(uri, format, toCrawl, isMetaData, headers, isConformance, levelTypes);

            JobGroup[] JobGroupArray = groups.ToArray <JobGroup>();

            for (int i = 0; i < JobGroupArray.Length; i++)
            {
                if (JobGroupArray[i].MasterJobId == JobGroupArray[i].DerivativeJobId)
                {
                    if (i != 0)
                    {
                        JobGroup temp = JobGroupArray[i];
                        JobGroupArray[i] = JobGroupArray[0];
                        JobGroupArray[0] = temp;
                    }
                    break;
                }
            }

            var jobIDs = (from job in JobGroupArray select job.DerivativeJobId).ToArray();

            if (jobIDs.Length == 0)
            {
                return new Guid[] { Guid.Empty }
            }
            ;

            validator.Dispose();

            return((from job in jobIDs where job.HasValue select job.Value).ToArray <Guid>());
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="uri"></param>
        /// <param name="format"></param>
        /// <param name="headers"></param>
        /// <returns></returns>
        public Guid[] SendRequest(string uri, string format, string toCrawl, string headers, string isConformance = null, string isMetaData = "no", string levelTypes = null)
        {
            validator = new ODataValidator.ValidationService.ODataValidator();
            IEnumerable<JobGroup> groups = validator.UriValidationJobs(uri, format, toCrawl, isMetaData, headers, isConformance, levelTypes);
            JobGroup[] JobGroupArray = groups.ToArray<JobGroup>();

            for (int i = 0; i < JobGroupArray.Length; i++)
            {
                if (JobGroupArray[i].MasterJobId == JobGroupArray[i].DerivativeJobId)
                {
                    if (i != 0)
                    {
                        JobGroup temp = JobGroupArray[i];
                        JobGroupArray[i] = JobGroupArray[0];
                        JobGroupArray[0] = temp;
                    }
                    break;
                }
            }

            var jobIDs = (from job in JobGroupArray select job.DerivativeJobId).ToArray();

            if (jobIDs.Length == 0)
                return new Guid[] { Guid.Empty };

            validator.Dispose();

            return (from job in jobIDs where job.HasValue select job.Value).ToArray<Guid>();
        }