public static List <string> ParseConcatenatedString(string ConcatenatedStrings, string Delimiter = null, bool MakeLowerCase = true, bool RemoveReservedCharacters = true, string ReplacementCharacters = "")
        {
            if (Delimiter == null)
            {
                Delimiter = CommunicationAddressDelimiter;
            }
            List <string> returnList = new List <string>();

            if (ConcatenatedStrings != null && ConcatenatedStrings.Length > 0)
            {
                var entries = ConcatenatedStrings.Split(new string[] { Delimiter }, StringSplitOptions.None);
                foreach (var entry in entries)
                {
                    //Limiting total tag length
                    if (entry.Length <= MaximumTagLength)
                    {
                        var entryValue = entry;
                        entryValue = GraphQueryBusinessLogic.ConformStringForQuery(entryValue, MakeLowerCase, RemoveReservedCharacters, ReplacementCharacters);
                        returnList.Add(entryValue);
                    }
                }
            }
            return(returnList);
        }