/// <summary>
        /// Compare to another NamingStrategy
        /// </summary>
        /// <param name="other"></param>
        /// <returns></returns>
        protected bool Equals(NamingStrategy other)
        {
            if (other == null)
            {
                return(false);
            }

            return(GetType() == other.GetType() &&
                   ProcessDictionaryKeys == other.ProcessDictionaryKeys &&
                   ProcessExtensionDataNames == other.ProcessExtensionDataNames &&
                   OverrideSpecifiedNames == other.OverrideSpecifiedNames);
        }