protected override string GetStringExpression()
{
if (string.IsNullOrWhiteSpace(Value) && !_navigationFunctions.Any())
return string.Format("[{0}]", string.Join("].[", Titles));
if (string.IsNullOrWhiteSpace(Value))
return string.Format("[{0}].{1}", string.Join("].[", Titles), string.Join(".", NavigationFunctions));
if (!_navigationFunctions.Any())
return string.Format("[{0}].&[{1}]", string.Join("].[", Titles), Value);
return string.Format("[{0}].&[{1}].{2}", string.Join("].[", Titles), Value, string.Join(".", NavigationFunctions));
}