Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ CreateAttributeQName()

static PrefixQName System.Xml.Xsl.XsltOld.AttributeAction.CreateAttributeQName ( string name,
string nsUri,
InputScopeManager manager )
inlinestaticprivate

Definition at line 19 of file AttributeAction.cs.

20 {
21 if (name == "xmlns")
22 {
23 return null;
24 }
25 if (nsUri == "http://www.w3.org/2000/xmlns/")
26 {
27 throw XsltException.Create(System.SR.Xslt_ReservedNS, nsUri);
28 }
29 PrefixQName prefixQName = new PrefixQName();
30 prefixQName.SetQName(name);
31 prefixQName.Namespace = ((nsUri != null) ? nsUri : manager.ResolveXPathNamespace(prefixQName.Prefix));
32 if (prefixQName.Prefix.StartsWith("xml", StringComparison.Ordinal))
33 {
34 if (prefixQName.Prefix.Length == 3)
35 {
36 if (!(prefixQName.Namespace == "http://www.w3.org/XML/1998/namespace") || (!(prefixQName.Name == "lang") && !(prefixQName.Name == "space")))
37 {
38 prefixQName.ClearPrefix();
39 }
40 }
41 else if (prefixQName.Prefix == "xmlns")
42 {
43 if (prefixQName.Namespace == "http://www.w3.org/2000/xmlns/")
44 {
45 throw XsltException.Create(System.SR.Xslt_InvalidPrefix, prefixQName.Prefix);
46 }
47 prefixQName.ClearPrefix();
48 }
49 }
50 return prefixQName;
51 }
static string Xslt_ReservedNS
Definition SR.cs:1958
static string Xslt_InvalidPrefix
Definition SR.cs:1926
Definition SR.cs:7

References System.Xml.Xsl.XsltException.Create(), System.Xml.Dictionary, System.manager, System.SR.Xslt_InvalidPrefix, and System.SR.Xslt_ReservedNS.

Referenced by System.Xml.Xsl.XsltOld.AttributeAction.Compile(), and System.Xml.Xsl.XsltOld.AttributeAction.Execute().