/// <summary>
        /// Get reference relation types for specified locale.
        /// </summary>
        /// <param name="locale">Currently used locale.</param>
        /// <returns>Reference relation types for specified locale.</returns>
        protected virtual ReferenceRelationTypeList GetReferenceRelationTypes(ILocale locale)
        {
            ReferenceRelationTypeList referenceRelationTypes;

            referenceRelationTypes = null;
            if (ReferenceRelationTypes.ContainsKey(locale.ISOCode))
            {
                referenceRelationTypes = (ReferenceRelationTypeList)(ReferenceRelationTypes[locale.ISOCode]);
            }

            return(referenceRelationTypes);
        }
        /// <summary>
        /// Get reference relation types for specified locale.
        /// </summary>
        /// <param name="locale">Currently used locale.</param>
        /// <returns>Reference relation types for specified locale.</returns>
        protected override ReferenceRelationTypeList GetReferenceRelationTypes(ILocale locale)
        {
            ReferenceRelationTypeList referenceRelationTypes = null;

            lock (ReferenceRelationTypes)
            {
                if (ReferenceRelationTypes.ContainsKey(locale.ISOCode))
                {
                    referenceRelationTypes = (ReferenceRelationTypeList)(ReferenceRelationTypes[locale.ISOCode]);
                }
            }

            return(referenceRelationTypes);
        }