Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
SchemaNames.cs
Go to the documentation of this file.
1namespace System.Xml.Schema;
2
3internal sealed class SchemaNames
4{
5 public enum Token
6 {
7 Empty,
38 XdrRoot,
90 XsdAll,
93 XsdAny,
98 XsdKey,
101 XsdField,
108 XsdLength,
129 XmlLang
130 }
131
132 private readonly XmlNameTable _nameTable;
133
134 public string NsDataType;
135
136 public string NsDataTypeAlias;
137
138 public string NsDataTypeOld;
139
140 public string NsXml;
141
142 public string NsXmlNs;
143
144 public string NsXdr;
145
146 public string NsXdrAlias;
147
148 public string NsXs;
149
150 public string NsXsi;
151
152 public string XsiType;
153
154 public string XsiNil;
155
156 public string XsiSchemaLocation;
157
159
160 public string XsdSchema;
161
162 public string XdrSchema;
163
165
167
169
171
173
175
177
179
181
183
185
187
189
191
193
195
197
199
201
203
205
207
209
211
213
215
217
219
221
223
225
227
229
231
233
235
237
239
241
243
245
247
249
251
253
255
257
259
261
263
265
267
269
271
273
275
277
279
281
283
285
287
289
291
293
295
297
299
301
303
305
307
309
311
313
315
317
319
321
323
325
327
329
331
333
335
337
339
341
343
345
347
349
351
353
355
357
359
361
363
365
367
369
371
373
375
377
379
381
383
385
387
389
391
393
395
397
399
401
403
405
407
409
411
413
415 {
417 NsDataType = nameTable.Add("urn:schemas-microsoft-com:datatypes");
418 NsDataTypeAlias = nameTable.Add("uuid:C2F41010-65B3-11D1-A29F-00AA00C14882");
419 NsDataTypeOld = nameTable.Add("urn:uuid:C2F41010-65B3-11D1-A29F-00AA00C14882/");
420 NsXml = nameTable.Add("http://www.w3.org/XML/1998/namespace");
421 NsXmlNs = nameTable.Add("http://www.w3.org/2000/xmlns/");
422 NsXdr = nameTable.Add("urn:schemas-microsoft-com:xml-data");
423 NsXdrAlias = nameTable.Add("uuid:BDC6E3F0-6DA3-11D1-A2A3-00AA00C14882");
424 NsXs = nameTable.Add("http://www.w3.org/2001/XMLSchema");
425 NsXsi = nameTable.Add("http://www.w3.org/2001/XMLSchema-instance");
426 XsiType = nameTable.Add("type");
427 XsiNil = nameTable.Add("nil");
428 XsiSchemaLocation = nameTable.Add("schemaLocation");
429 XsiNoNamespaceSchemaLocation = nameTable.Add("noNamespaceSchemaLocation");
430 XsdSchema = nameTable.Add("schema");
431 XdrSchema = nameTable.Add("Schema");
432 QnPCData = new XmlQualifiedName(nameTable.Add("#PCDATA"));
433 QnXml = new XmlQualifiedName(nameTable.Add("xml"));
434 QnXmlNs = new XmlQualifiedName(nameTable.Add("xmlns"), NsXmlNs);
436 QnXmlLang = new XmlQualifiedName(nameTable.Add("lang"), NsXml);
437 QnName = new XmlQualifiedName(nameTable.Add("name"));
438 QnType = new XmlQualifiedName(nameTable.Add("type"));
439 QnMaxOccurs = new XmlQualifiedName(nameTable.Add("maxOccurs"));
440 QnMinOccurs = new XmlQualifiedName(nameTable.Add("minOccurs"));
441 QnInfinite = new XmlQualifiedName(nameTable.Add("*"));
442 QnModel = new XmlQualifiedName(nameTable.Add("model"));
443 QnOpen = new XmlQualifiedName(nameTable.Add("open"));
444 QnClosed = new XmlQualifiedName(nameTable.Add("closed"));
445 QnContent = new XmlQualifiedName(nameTable.Add("content"));
446 QnMixed = new XmlQualifiedName(nameTable.Add("mixed"));
447 QnEmpty = new XmlQualifiedName(nameTable.Add("empty"));
448 QnEltOnly = new XmlQualifiedName(nameTable.Add("eltOnly"));
449 QnTextOnly = new XmlQualifiedName(nameTable.Add("textOnly"));
450 QnOrder = new XmlQualifiedName(nameTable.Add("order"));
451 QnSeq = new XmlQualifiedName(nameTable.Add("seq"));
452 QnOne = new XmlQualifiedName(nameTable.Add("one"));
453 QnMany = new XmlQualifiedName(nameTable.Add("many"));
454 QnRequired = new XmlQualifiedName(nameTable.Add("required"));
455 QnYes = new XmlQualifiedName(nameTable.Add("yes"));
456 QnNo = new XmlQualifiedName(nameTable.Add("no"));
457 QnString = new XmlQualifiedName(nameTable.Add("string"));
458 QnID = new XmlQualifiedName(nameTable.Add("id"));
459 QnIDRef = new XmlQualifiedName(nameTable.Add("idref"));
460 QnIDRefs = new XmlQualifiedName(nameTable.Add("idrefs"));
461 QnEntity = new XmlQualifiedName(nameTable.Add("entity"));
462 QnEntities = new XmlQualifiedName(nameTable.Add("entities"));
463 QnNmToken = new XmlQualifiedName(nameTable.Add("nmtoken"));
464 QnNmTokens = new XmlQualifiedName(nameTable.Add("nmtokens"));
465 QnEnumeration = new XmlQualifiedName(nameTable.Add("enumeration"));
466 QnDefault = new XmlQualifiedName(nameTable.Add("default"));
467 QnTargetNamespace = new XmlQualifiedName(nameTable.Add("targetNamespace"));
468 QnVersion = new XmlQualifiedName(nameTable.Add("version"));
469 QnFinalDefault = new XmlQualifiedName(nameTable.Add("finalDefault"));
470 QnBlockDefault = new XmlQualifiedName(nameTable.Add("blockDefault"));
471 QnFixed = new XmlQualifiedName(nameTable.Add("fixed"));
472 QnAbstract = new XmlQualifiedName(nameTable.Add("abstract"));
473 QnBlock = new XmlQualifiedName(nameTable.Add("block"));
474 QnSubstitutionGroup = new XmlQualifiedName(nameTable.Add("substitutionGroup"));
475 QnFinal = new XmlQualifiedName(nameTable.Add("final"));
476 QnNillable = new XmlQualifiedName(nameTable.Add("nillable"));
477 QnRef = new XmlQualifiedName(nameTable.Add("ref"));
478 QnBase = new XmlQualifiedName(nameTable.Add("base"));
479 QnDerivedBy = new XmlQualifiedName(nameTable.Add("derivedBy"));
480 QnNamespace = new XmlQualifiedName(nameTable.Add("namespace"));
481 QnProcessContents = new XmlQualifiedName(nameTable.Add("processContents"));
482 QnRefer = new XmlQualifiedName(nameTable.Add("refer"));
483 QnPublic = new XmlQualifiedName(nameTable.Add("public"));
484 QnSystem = new XmlQualifiedName(nameTable.Add("system"));
485 QnSchemaLocation = new XmlQualifiedName(nameTable.Add("schemaLocation"));
486 QnValue = new XmlQualifiedName(nameTable.Add("value"));
487 QnUse = new XmlQualifiedName(nameTable.Add("use"));
488 QnForm = new XmlQualifiedName(nameTable.Add("form"));
489 QnAttributeFormDefault = new XmlQualifiedName(nameTable.Add("attributeFormDefault"));
490 QnElementFormDefault = new XmlQualifiedName(nameTable.Add("elementFormDefault"));
491 QnSource = new XmlQualifiedName(nameTable.Add("source"));
492 QnMemberTypes = new XmlQualifiedName(nameTable.Add("memberTypes"));
493 QnItemType = new XmlQualifiedName(nameTable.Add("itemType"));
494 QnXPath = new XmlQualifiedName(nameTable.Add("xpath"));
496 QnXdrElementType = new XmlQualifiedName(nameTable.Add("ElementType"), NsXdr);
497 QnXdrElement = new XmlQualifiedName(nameTable.Add("element"), NsXdr);
498 QnXdrGroup = new XmlQualifiedName(nameTable.Add("group"), NsXdr);
499 QnXdrAttributeType = new XmlQualifiedName(nameTable.Add("AttributeType"), NsXdr);
500 QnXdrAttribute = new XmlQualifiedName(nameTable.Add("attribute"), NsXdr);
501 QnXdrDataType = new XmlQualifiedName(nameTable.Add("datatype"), NsXdr);
502 QnXdrDescription = new XmlQualifiedName(nameTable.Add("description"), NsXdr);
503 QnXdrExtends = new XmlQualifiedName(nameTable.Add("extends"), NsXdr);
505 QnDtType = new XmlQualifiedName(nameTable.Add("type"), NsDataType);
506 QnDtValues = new XmlQualifiedName(nameTable.Add("values"), NsDataType);
507 QnDtMaxLength = new XmlQualifiedName(nameTable.Add("maxLength"), NsDataType);
508 QnDtMinLength = new XmlQualifiedName(nameTable.Add("minLength"), NsDataType);
509 QnDtMax = new XmlQualifiedName(nameTable.Add("max"), NsDataType);
510 QnDtMin = new XmlQualifiedName(nameTable.Add("min"), NsDataType);
511 QnDtMinExclusive = new XmlQualifiedName(nameTable.Add("minExclusive"), NsDataType);
512 QnDtMaxExclusive = new XmlQualifiedName(nameTable.Add("maxExclusive"), NsDataType);
514 QnXsdAnnotation = new XmlQualifiedName(nameTable.Add("annotation"), NsXs);
515 QnXsdInclude = new XmlQualifiedName(nameTable.Add("include"), NsXs);
516 QnXsdImport = new XmlQualifiedName(nameTable.Add("import"), NsXs);
517 QnXsdElement = new XmlQualifiedName(nameTable.Add("element"), NsXs);
518 QnXsdAttribute = new XmlQualifiedName(nameTable.Add("attribute"), NsXs);
519 QnXsdAttributeGroup = new XmlQualifiedName(nameTable.Add("attributeGroup"), NsXs);
520 QnXsdAnyAttribute = new XmlQualifiedName(nameTable.Add("anyAttribute"), NsXs);
521 QnXsdGroup = new XmlQualifiedName(nameTable.Add("group"), NsXs);
522 QnXsdAll = new XmlQualifiedName(nameTable.Add("all"), NsXs);
523 QnXsdChoice = new XmlQualifiedName(nameTable.Add("choice"), NsXs);
524 QnXsdSequence = new XmlQualifiedName(nameTable.Add("sequence"), NsXs);
525 QnXsdAny = new XmlQualifiedName(nameTable.Add("any"), NsXs);
526 QnXsdNotation = new XmlQualifiedName(nameTable.Add("notation"), NsXs);
527 QnXsdSimpleType = new XmlQualifiedName(nameTable.Add("simpleType"), NsXs);
528 QnXsdComplexType = new XmlQualifiedName(nameTable.Add("complexType"), NsXs);
529 QnXsdUnique = new XmlQualifiedName(nameTable.Add("unique"), NsXs);
530 QnXsdKey = new XmlQualifiedName(nameTable.Add("key"), NsXs);
531 QnXsdKeyRef = new XmlQualifiedName(nameTable.Add("keyref"), NsXs);
532 QnXsdSelector = new XmlQualifiedName(nameTable.Add("selector"), NsXs);
533 QnXsdField = new XmlQualifiedName(nameTable.Add("field"), NsXs);
534 QnXsdMinExclusive = new XmlQualifiedName(nameTable.Add("minExclusive"), NsXs);
535 QnXsdMinInclusive = new XmlQualifiedName(nameTable.Add("minInclusive"), NsXs);
536 QnXsdMaxInclusive = new XmlQualifiedName(nameTable.Add("maxInclusive"), NsXs);
537 QnXsdMaxExclusive = new XmlQualifiedName(nameTable.Add("maxExclusive"), NsXs);
538 QnXsdTotalDigits = new XmlQualifiedName(nameTable.Add("totalDigits"), NsXs);
539 QnXsdFractionDigits = new XmlQualifiedName(nameTable.Add("fractionDigits"), NsXs);
540 QnXsdLength = new XmlQualifiedName(nameTable.Add("length"), NsXs);
541 QnXsdMinLength = new XmlQualifiedName(nameTable.Add("minLength"), NsXs);
542 QnXsdMaxLength = new XmlQualifiedName(nameTable.Add("maxLength"), NsXs);
543 QnXsdEnumeration = new XmlQualifiedName(nameTable.Add("enumeration"), NsXs);
544 QnXsdPattern = new XmlQualifiedName(nameTable.Add("pattern"), NsXs);
545 QnXsdDocumentation = new XmlQualifiedName(nameTable.Add("documentation"), NsXs);
546 QnXsdAppinfo = new XmlQualifiedName(nameTable.Add("appinfo"), NsXs);
547 QnXsdComplexContent = new XmlQualifiedName(nameTable.Add("complexContent"), NsXs);
548 QnXsdSimpleContent = new XmlQualifiedName(nameTable.Add("simpleContent"), NsXs);
549 QnXsdRestriction = new XmlQualifiedName(nameTable.Add("restriction"), NsXs);
550 QnXsdExtension = new XmlQualifiedName(nameTable.Add("extension"), NsXs);
551 QnXsdUnion = new XmlQualifiedName(nameTable.Add("union"), NsXs);
552 QnXsdList = new XmlQualifiedName(nameTable.Add("list"), NsXs);
553 QnXsdWhiteSpace = new XmlQualifiedName(nameTable.Add("whiteSpace"), NsXs);
554 QnXsdRedefine = new XmlQualifiedName(nameTable.Add("redefine"), NsXs);
555 QnXsdAnyType = new XmlQualifiedName(nameTable.Add("anyType"), NsXs);
557 }
558
560 {
561 TokenToQName[1] = QnName;
562 TokenToQName[2] = QnType;
567 TokenToQName[7] = QnOpen;
570 TokenToQName[10] = QnMixed;
571 TokenToQName[11] = QnEmpty;
574 TokenToQName[14] = QnOrder;
575 TokenToQName[15] = QnSeq;
576 TokenToQName[16] = QnOne;
577 TokenToQName[17] = QnMany;
579 TokenToQName[19] = QnYes;
580 TokenToQName[20] = QnNo;
582 TokenToQName[22] = QnID;
583 TokenToQName[23] = QnIDRef;
605 TokenToQName[45] = QnDtMax;
606 TokenToQName[46] = QnDtMin;
613 TokenToQName[53] = QnFixed;
615 TokenToQName[55] = QnBlock;
617 TokenToQName[57] = QnFinal;
619 TokenToQName[59] = QnRef;
620 TokenToQName[60] = QnBase;
624 TokenToQName[64] = QnRefer;
628 TokenToQName[68] = QnValue;
631 TokenToQName[121] = QnXPath;
675 TokenToQName[114] = QnXsdList;
678 TokenToQName[72] = QnUse;
679 TokenToQName[73] = QnForm;
682 TokenToQName[122] = QnXmlLang;
684 }
685
686 public SchemaType SchemaTypeFromRoot(string localName, string ns)
687 {
688 if (IsXSDRoot(localName, ns))
689 {
690 return SchemaType.XSD;
691 }
692 if (IsXDRRoot(localName, XmlSchemaDatatype.XdrCanonizeUri(ns, _nameTable, this)))
693 {
694 return SchemaType.XDR;
695 }
696 return SchemaType.None;
697 }
698
699 public bool IsXSDRoot(string localName, string ns)
700 {
701 if (Ref.Equal(ns, NsXs))
702 {
703 return Ref.Equal(localName, XsdSchema);
704 }
705 return false;
706 }
707
708 public bool IsXDRRoot(string localName, string ns)
709 {
710 if (Ref.Equal(ns, NsXdr))
711 {
712 return Ref.Equal(localName, XdrSchema);
713 }
714 return false;
715 }
716}
static bool Equal(string strA, string strB)
Definition Ref.cs:5
XmlQualifiedName QnXsdAnnotation
XmlQualifiedName QnXsdDocumentation
XmlQualifiedName QnXsdSimpleContent
XmlQualifiedName QnXdrAliasSchema
SchemaNames(XmlNameTable nameTable)
XmlQualifiedName QnProcessContents
XmlQualifiedName QnEnumeration
XmlQualifiedName QnFinalDefault
XmlQualifiedName QnXdrAttribute
XmlQualifiedName QnXsdEnumeration
XmlQualifiedName QnXsdExtension
SchemaType SchemaTypeFromRoot(string localName, string ns)
XmlQualifiedName QnXsdElement
XmlQualifiedName QnXsdAnyType
XmlQualifiedName QnXsdMinExclusive
XmlQualifiedName QnXsdComplexType
XmlQualifiedName QnTargetNamespace
XmlQualifiedName QnXsdSimpleType
XmlQualifiedName QnXdrAttributeType
XmlQualifiedName QnXsdMaxExclusive
XmlQualifiedName QnXdrDescription
XmlQualifiedName QnElementFormDefault
XmlQualifiedName QnMemberTypes
XmlQualifiedName QnBlockDefault
XmlQualifiedName QnXsdRestriction
XmlQualifiedName QnXsdSequence
XmlQualifiedName QnXsdAppinfo
XmlQualifiedName QnXsdTotalDigits
bool IsXSDRoot(string localName, string ns)
XmlQualifiedName QnXsdPattern
XmlQualifiedName QnXsdMaxInclusive
XmlQualifiedName QnXdrExtends
XmlQualifiedName QnAttributeFormDefault
XmlQualifiedName QnXsdAttribute
XmlQualifiedName[] TokenToQName
XmlQualifiedName QnXsdMaxLength
XmlQualifiedName QnSchemaLocation
XmlQualifiedName QnXsdAttributeGroup
XmlQualifiedName QnXsdRedefine
XmlQualifiedName QnXsdMinLength
XmlQualifiedName QnXdrDataType
XmlQualifiedName QnXsdAnyAttribute
XmlQualifiedName QnXsdMinInclusive
XmlQualifiedName QnXsdNotation
XmlQualifiedName QnDtMinLength
XmlQualifiedName QnXsdComplexContent
XmlQualifiedName QnDtMinExclusive
XmlQualifiedName QnDtMaxLength
XmlQualifiedName QnXsdSelector
XmlQualifiedName QnXsdFractionDigits
readonly XmlNameTable _nameTable
XmlQualifiedName QnSubstitutionGroup
XmlQualifiedName QnXdrElement
XmlQualifiedName QnXsdWhiteSpace
XmlQualifiedName QnDtMaxExclusive
XmlQualifiedName QnXsdInclude
bool IsXDRRoot(string localName, string ns)
XmlQualifiedName QnXdrElementType
static string XdrCanonizeUri(string uri, XmlNameTable nameTable, SchemaNames schemaNames)
static readonly XmlQualifiedName Empty