/// <summary>
        /// Executes a query related with an Oid.
        /// </summary>
        /// <param name="agent">Agent.</param>
        /// <param name="className">Class name.</param>
        /// <param name="displaySet">DisplaySet.</param>
        /// <param name="blockSize">Block size.</param>
        /// <returns>DataTable.</returns>
        public DataTable ExecuteQueryRelated(
            Oid agent,
            string className,
            string displaySet,
            int blockSize)
        {
            QueryRelated lQueryRelated = new QueryRelated(blockSize);

            return(ExecuteQuery(agent, className, displaySet, lQueryRelated, string.Empty, null));
        }
        /// <summary>
        /// Executes a query related with an Oid and Navigational Filtering.
        /// </summary>
        /// <param name="agent">Agent.</param>
        /// <param name="className">Class name.</param>
        /// <param name="displaySet">DisplaySet.</param>
        /// <param name="navigationalFiltering">Navigational filtering.</param>
        /// <param name="blockSize">Block size.</param>
        /// <returns>DataTable.</returns>
        public DataTable ExecuteQueryRelated(
            Oid agent,
            string className,
            string displaySet,
            NavigationalFiltering navigationalFiltering,
            int blockSize)
        {
            QueryRelated lQueryRelated = new QueryRelated(blockSize);

            return(ExecuteQuery(agent, className, displaySet, lQueryRelated, string.Empty, navigationalFiltering));
        }
        /// <summary>
        /// Executes a query related with an Oid. The order criteria is indicated.
        /// </summary>
        /// <param name="agent">Agent.</param>
        /// <param name="className">Class name.</param>
        /// <param name="displaySet">DisplaySet.</param>
        /// <param name="orderCriteria">Order criteria.</param>
        /// <param name="lastOid">Last Oid.</param>
        /// <param name="blockSize">Block size.</param>
        /// <returns>DataTable.</returns>
        public DataTable ExecuteQueryRelated(
            Oid agent,
            string className,
            string displaySet,
            string orderCriteria,
            Oid lastOid,
            int blockSize)
        {
            QueryRelated lQueryRelated = new QueryRelated(lastOid, blockSize);

            return(ExecuteQuery(agent, className, displaySet, lQueryRelated, orderCriteria, null));
        }
        /// <summary>
        /// Executes a query related with an Oid in a Navigational Filtering. Related Oids are indicated.
        /// </summary>
        /// <param name="agent">Agent for Query.</param>
        /// <param name="className">Class Name to Query.</param>
        /// <param name="linkItems">Related Items to Query.</param>
        /// <param name="displaySet">Display set of attributes to show</param>
        /// <param name="orderCriteria">Sort or order Criteria.</param>
        /// <param name="NavigationalFiltering">Navigational Filtering.</param>
        /// <param name="lastOid">Last Oid.</param>
        /// <param name="blockSize">Block Size.</param>
        /// <returns>DataTable with Block Size of Rows.</returns>
        public DataTable ExecuteQueryRelated(
            Oid agent,
            string className,
            Dictionary <string, Oid> linkItems,
            string displaySet,
            string orderCriteria,
            NavigationalFiltering navigationalFiltering,
            Oid lastOid,
            int blockSize)
        {
            QueryRelated lQueryRelated = new QueryRelated(linkItems, lastOid, blockSize);

            return(ExecuteQuery(agent, className, displaySet, lQueryRelated, orderCriteria, navigationalFiltering));
        }
        /// <summary>
        /// Executes a query related with an Oid. Related Oids are indicated.
        /// </summary>
        /// <param name="agent">Agent.</param>
        /// <param name="className">Class name.</param>
        /// <param name="linkItems">Related Oids.</param>
        /// <param name="displaySet">DisplaySet.</param>
        /// <param name="orderCriteria">Order criteria.</param>
        /// <param name="lastOid">Last Oid.</param>
        /// <param name="blockSize">Block size.</param>
        /// <returns>DataTable.</returns>
        public DataTable ExecuteQueryRelated(
			Oid agent,
			string className,
			Dictionary<string, Oid> linkItems,
			string displaySet,
			string orderCriteria,
			Oid lastOid,
			int blockSize)
        {
            QueryRelated lQueryRelated = new QueryRelated(linkItems, lastOid, blockSize);
                return ExecuteQuery(agent, className, displaySet, lQueryRelated, orderCriteria, null);
        }
        /// <summary>
        /// Executes a query related with an Oid.
        /// </summary>
        /// <param name="agent">Agent.</param>
        /// <param name="className">Class name.</param>
        /// <param name="displaySet">DisplaySet.</param>
        /// <param name="blockSize">Block size.</param>
        /// <returns>DataTable.</returns>
        public DataTable ExecuteQueryRelated(
			Oid agent,
			string className,
			string displaySet,
			int blockSize)
        {
            QueryRelated lQueryRelated = new QueryRelated(blockSize);
                return ExecuteQuery(agent, className, displaySet, lQueryRelated, string.Empty, null);
        }
        /// <summary>
        /// Executes a query related with an Oid and Navigational Filtering.
        /// </summary>
        /// <param name="agent">Agent.</param>
        /// <param name="className">Class name.</param>
        /// <param name="displaySet">DisplaySet.</param>
        /// <param name="navigationalFiltering">Navigational filtering.</param>
        /// <param name="blockSize">Block size.</param>
        /// <returns>DataTable.</returns>
        public DataTable ExecuteQueryRelated(
			Oid agent,
			string className,
			string displaySet,
			NavigationalFiltering navigationalFiltering,
			int blockSize)
        {
            QueryRelated lQueryRelated = new QueryRelated(blockSize);

            return ExecuteQuery(agent, className, displaySet, lQueryRelated, string.Empty, navigationalFiltering);
        }