public override ExternalQueryTable clone()
        {
            ExternalQueryTable qt = new ExternalQueryTable();

            qt.Id   = Id;
            qt.Data = this;
            return(qt);
        }
        public virtual ExternalQueryTable deepCopy()
        {
            ExternalQueryTable query = clone();

            query.QueryAliasSet = (new HashSet <ExternalQueryAliasTable>());

            foreach (ExternalQueryAliasTable queryAlias in queryAliasSet)
            {
                query.QueryAliasSet.Add(queryAlias.clone());
            }

            return(query);
        }