private QilName ParseName(string name)
{
string prefix, local, uri;
int idx;
if (name != null && name.Length > 0)
{
// If name contains '}' character, then namespace is non-empty
idx = name.LastIndexOf('}');
if (idx != -1 && name[0] == '{')
{
uri = name.Substring(1, idx - 1);
name = name.Substring(idx + 1);
}
else
{
uri = string.Empty;
}
// Parse QName
ValidateNames.ParseQNameThrow(name, out prefix, out local);
return _f.LiteralQName(local, uri, prefix);
}
return null;
}