/// <summary>
        /// Fetches the execution payload.
        /// </summary>
        /// <param name="dataObj">The data obj.</param>
        /// <param name="targetFormat">The target format.</param>
        /// <param name="errors">The errors.</param>
        /// <returns></returns>
        public string FetchExecutionPayload(IDSFDataObject dataObj, DataListFormat targetFormat, out ErrorResultTO errors)
        {
            errors = new ErrorResultTO();
            var targetShape = FindServiceShape(dataObj.WorkspaceID, dataObj.ResourceID).ToString();
            var result      = new StringBuilder();

            if (!string.IsNullOrEmpty(targetShape))
            {
                string            translatorShape = ManipulateDataListShapeForOutput(targetShape);
                IDataListCompiler compiler        = DataListFactory.CreateDataListCompiler();
                ErrorResultTO     invokeErrors;
                result = compiler.ConvertAndFilter(dataObj.DataListID, targetFormat, new StringBuilder(translatorShape), out invokeErrors);
                errors.MergeErrors(invokeErrors);
            }
            else
            {
                errors.AddError("Could not locate service shape for " + dataObj.ServiceName);
            }

            return(result.ToString());
        }