Beispiel #1
0
        public static QNameValue Parse(string qname, XmlNamespaceManager resolver, string defaultNs)
        {
            string prefix;
            string localName;

            QNameParser.Split(qname.Trim(), out prefix, out localName);
            if (localName == null)
            {
                throw new XPath2Exception("FORG0001", Resources.FORG0001, qname, "xs:QName");
            }
            if (defaultNs == null)
            {
                defaultNs = String.Empty;
            }
            if (!String.IsNullOrEmpty(prefix))
            {
                string ns = resolver.LookupNamespace(prefix);
                if (ns == null)
                {
                    throw new XPath2Exception("XPST0081", Resources.XPST0081, prefix);
                }
                return(new QNameValue(prefix, localName, ns, resolver.NameTable));
            }
            else
            {
                return(new QNameValue("", localName, defaultNs, resolver.NameTable));
            }
        }
Beispiel #2
0
        public static QNameValue Parse(string qname, string ns, XmlNameTable nameTable)
        {
            string prefix;
            string localName;

            QNameParser.Split(qname.Trim(), out prefix, out localName);
            if (localName == null)
            {
                throw new XPath2Exception("FORG0001", Resources.FORG0001, qname, "xs:QName");
            }
            return(new QNameValue(prefix, localName, ns, nameTable));
        }