274 {
275 if ((flags & Flags.NCNames) != 0)
276 {
278 {
279 return false;
280 }
282 {
283 return false;
284 }
285 }
286 if ((flags & Flags.CheckLocalName) != 0)
287 {
289 {
291 {
293 {
294 if (localName.Length == 0 || (localName.Length == 3 &&
StartsWithXml(localName)))
295 {
297 {
299 }
300 return false;
301 }
302 }
303 else if (localName.Length != 0)
304 {
306 {
308 }
309 return false;
310 }
312 }
313 if (ns.Length == 0 && localName.Equals("xmlns"))
314 {
316 {
318 {
319 nodeKind.ToString(),
320 localName
321 });
322 }
323 return false;
324 }
325 }
326 if (localName.Length == 0)
327 {
329 {
331 }
332 return false;
333 }
334 }
337 if ((flags & Flags.CheckPrefixMapping) != 0)
338 {
340 {
344 if (ns.Length == 0)
345 {
347 {
349 {
351 }
352 return false;
353 }
354 break;
355 }
357 {
359 {
361 {
362 nodeKind.ToString(),
363 localName
364 });
365 }
366 return false;
367 }
369 {
370 if (!ns.Equals("http://www.w3.org/XML/1998/namespace"))
371 {
373 {
375 }
376 return false;
377 }
378 break;
379 }
380 if (
prefix.Equals(
"xmlns"))
381 {
383 {
385 }
386 return false;
387 }
389 {
391 {
393 }
394 return false;
395 }
396 break;
398 if (
prefix.Length != 0 || ns.Length != 0)
399 {
401 {
403 }
404 return false;
405 }
406 break;
407 default:
408 if (
prefix.Length != 0 || ns.Length != 0)
409 {
411 {
413 }
414 return false;
415 }
416 break;
417 }
418 }
419 return true;
420 }
static string Xml_PrefixForEmptyNs
static string Xml_InvalidPIName
static string Xml_XmlPrefix
static string Xml_NamespaceDeclXmlXmlns
static string XmlNoNameAllowed
static string Xdom_Empty_LocalName
static string Xml_XmlnsPrefix
static bool ParseNCNameInternal(string s, bool throwOnError)
static bool IsReservedNamespace(string s)
static bool StartsWithXml(string s)
static string CreateName(string prefix, string localName)