XName QualifyName(string name, NamespaceScope scope) { var parts = name.Split(':'); if (parts.Length == 2) { var prefix = parts[0]; var localName = parts[1]; var ns = scope.FindPrefix(prefix); if (ns != null) { if (ns.StartsWith(ClrNamespacePrefix)) { ns = ns.Substring(ClrNamespacePrefix.Length); } int i = ns.IndexOf(";assembly="); if (i > 0) { ns = ns.Substring(0, i); } return(XName.Get(localName, ns)); } } return(XName.Get(name)); }