32 return !
base.HasErrors;
39 if (!
value.SubstitutionGroup.IsEmpty)
196 if (
value5.ElementDecl ==
null)
203 if (
value6.AttDef ==
null)
210 if (
value7.CompiledConstraint ==
null)
245 schemaInfo.TargetNamespaces[
value.QualifiedName.Namespace] =
true;
246 schemaInfo.ElementDecls.
Add(
value.QualifiedName,
value.ElementDecl);
250 schemaInfo.TargetNamespaces[
value2.QualifiedName.Namespace] =
true;
255 schemaInfo.TargetNamespaces[
value3.QualifiedName.Namespace] =
true;
258 schemaInfo.ElementDeclsByType.
Add(
value3.QualifiedName,
value3.ElementDecl);
263 schemaInfo.TargetNamespaces[
value4.QualifiedName.Namespace] =
true;
364 for (
int i = 0; i < attributes.
Count; i++)
388 for (
int i = 0; i < items.
Count; i++)
460 if (
group.IsProcessing)
467 if (
group.CanonicalParticle ==
null)
562 if (
ex.SourceSchemaObject ==
null)
842 if (
ex.SourceSchemaObject ==
null)
981 if (particle ==
null || particle.
IsEmpty)
1084 for (
int i = 0; i <
all.Items.
Count; i++)
1106 if (!root &&
all.Items.
Count == 1 &&
all.MinOccurs == 1
m &&
all.MaxOccurs == 1
m)
1455 if (
sequence.MaxOccurs == decimal.MaxValue)
1530 if (particle.
MaxOccurs == decimal.MaxValue)
1542 if (items.
Count == 0)
1549 for (
int j = 0;
j < items.
Count;
j++)
1568 if (particle.
MaxOccurs == decimal.MaxValue)
1590 if (particle !=
null && !particle.
IsEmpty)
1660 for (
int i = 0; i < attributes.
Count; i++)
1816 if (
xa.IsProcessing)
1822 if (
xa.AttDef !=
null)
1830 if (!
xa.RefName.IsEmpty)
1847 if (
xa.DefaultValue !=
null)
1851 if (
xa.FixedValue !=
null)
1881 if (
xa.SchemaType !=
null)
1884 xa.SetAttributeType(
xa.SchemaType);
1888 else if (!
xa.SchemaTypeName.IsEmpty)
1910 if (
xa.DefaultValue !=
null ||
xa.FixedValue !=
null)
1912 if (
xa.DefaultValue !=
null)
1949 if (
ex.SourceSchemaObject ==
null)
1965 if (
xi.IsProcessing)
1972 if (
xi.CompiledConstraint !=
null)
2007 if (
ex.SourceSchemaObject ==
null)
2023 if (
xe.IsProcessing)
2029 if (
xe.ElementDecl !=
null)
2037 if (!
xe.RefName.IsEmpty)
2054 if (
xe.SchemaType !=
null)
2056 xe.SetElementType(
xe.SchemaType);
2058 else if (!
xe.SchemaTypeName.IsEmpty)
2061 if (
xe.ElementSchemaType ==
null)
2066 else if (!
xe.SubstitutionGroup.IsEmpty)
2128 if ((
xe.DefaultValue !=
null ||
xe.FixedValue !=
null) &&
schemaElementDecl.ContentValidator !=
null)
2132 if (
xe.DefaultValue !=
null)
2152 if (
xe.HasConstraints)
2170 if (
ex.SourceSchemaObject ==
null)
2273 for (
int i = 0; i < items.
Count; i++)
2333 for (
int i = 0; i < items.
Count; i++)
bool ContainsKey(TKey key)
bool ICollection< KeyValuePair< TKey, TValue > >. Contains(KeyValuePair< TKey, TValue > keyValuePair)
void AddRange(IEnumerable< KeyValuePair< TKey, TValue > > collection)
void Add(TKey key, TValue value)
static string Sch_GroupCircularRef
static string Sch_UndefAttributeGroupRef
static string Sch_SubstitutionCircularRef
static string Sch_ElementCircularRef
static string Sch_NonDeterministic
static string Sch_AttributeRestrictionInvalid
static string Sch_InvalidExamplar
static string Sch_IdentityConstraintCircularRef
static string Sch_NotSimpleContent
static string Sch_TypeCircularRef
static string Sch_ElementCannotHaveValue
static string Sch_UndeclaredEquivClass
static string Sch_InvalidContentRestriction
static string Sch_InvalidParticleRestriction
static string Sch_UndefGroupRef
static string Sch_DupAttributeUse
static string Sch_InvalidSimpleTypeRestriction
static string Sch_RefInvalidCardin
static string Sch_UndeclaredSimpleType
static string Sch_BaseFinalUnion
static string Sch_AttributeRestrictionInvalidFromWildcard
static string Sch_RefInvalidElement
static string Sch_NeedSimpleTypeChild
static string Sch_InvalidAttributeExtension
static string Sch_DifContentType
static string Sch_UnionFromUnion
static string Sch_AttributeRestrictionProhibited
static string Sch_UndeclaredType
static string Sch_FixedInRef
static string Sch_InvalidSubstitutionMember
static string Sch_NotComplexContent
static string Sch_BaseFinalExtension
static string Sch_ElementTypeCollision
static string Sch_InvalidAnyAttributeRestriction
static string Sch_BaseFinalList
static string Sch_AllRefMinMax
static string Sch_DerivedNotFromBase
static string Sch_UnexpressibleAnyAttribute
static string Sch_FixedDefaultInRef
static string Sch_EmptyChoice
static string Sch_DupElement
static string Sch_NoExamplar
static string Sch_UndeclaredElement
static string Sch_AttributeIgnored
static string Sch_RefInvalidIdentityConstraint
static string Sch_RefInvalidAttribute
static string Sch_AttributeGroupCircularRef
static string Sch_UndeclaredIdentityConstraint
static string Sch_ComplexContentModel
static string Sch_ReftoKeyref
static string Sch_UndefBaseExtension
static string Sch_AttributeCircularRef
static string Sch_UndefBaseRestriction
static string Sch_BaseFinalRestriction
static string Sch_NonDeterministicAnyEx
static string Sch_TwoIdAttrUses
static string Sch_UndeclaredAttribute
static string Sch_AllRefNotRoot
static string Sch_NonDeterministicAnyAny
static string Sch_NotAllAlone
void SendValidationEvent(string code, XmlSchemaObject source)
static readonly CompiledIdentityConstraint Empty
static readonly ContentValidator Empty
static readonly ContentValidator Mixed
static readonly ContentValidator TextOnly
static XmlSchemaSimpleType AnySimpleType
static XmlQualifiedName QnAnySimpleType
static XmlSchemaSimpleType GetTokenTypeV1Compat()
static XmlQualifiedName QnAnyType
static XmlSchemaSimpleType GetNormalizedStringTypeV1Compat()
static XmlSchemaSimpleType GetSimpleTypeFromXsdType(XmlQualifiedName qname)
static bool IsSubset(NamespaceList sub, NamespaceList super)
static readonly SchemaAttDef Empty
bool IsGroupBaseFromAny(XmlSchemaGroupBase derivedGroupBase, XmlSchemaAny baseAny)
void CompileComplexContentRestriction(XmlSchemaComplexType complexType, XmlSchemaComplexContent complexContent, XmlSchemaComplexContentRestriction complexRestriction)
static void Cleanup(XmlSchema schema)
void CalculateEffectiveTotalRange(XmlSchemaParticle particle, out decimal minOccurs, out decimal maxOccurs)
bool IsAnyFromAny(XmlSchemaAny derivedAny, XmlSchemaAny baseAny)
void CompileLocalAttributes(XmlSchemaComplexType baseType, XmlSchemaComplexType derivedType, XmlSchemaObjectCollection attributes, XmlSchemaAnyAttribute anyAttribute, XmlSchemaDerivationMethod derivedBy)
void CheckSubstitutionGroup(XmlSchemaSubstitutionGroup substitutionGroup)
void CompileSimpleContentRestriction(XmlSchemaComplexType complexType, XmlSchemaSimpleContentRestriction simpleRestriction)
bool IsValidRestriction(XmlSchemaParticle derivedParticle, XmlSchemaParticle baseParticle)
XmlSchemaParticle CannonicalizeParticle(XmlSchemaParticle particle, bool root, bool substitution)
ContentValidator CompileComplexContent(XmlSchemaComplexType complexType)
XmlSchemaSimpleType GetSimpleType(XmlQualifiedName name)
bool IsElementFromGroupBase(XmlSchemaElement derivedElement, XmlSchemaGroupBase baseGroupBase, bool skipEmptableOnly)
int GetMappingParticle(XmlSchemaParticle particle, XmlSchemaObjectCollection collection)
bool IsSequenceFromChoice(XmlSchemaSequence derivedSequence, XmlSchemaChoice baseChoice)
void CheckUnionType(XmlSchemaSimpleType unionMember, List< XmlSchemaSimpleType > memberTypeDefinitions, XmlSchemaSimpleType parentType)
bool IsValidOccurrenceRangeRestriction(decimal minOccurs, decimal maxOccurs, decimal baseMinOccurs, decimal baseMaxOccurs)
static void CleanupAttribute(XmlSchemaAttribute attribute)
void CompileAttributeGroup(XmlSchemaAttributeGroup attributeGroup)
void PushComplexType(XmlSchemaComplexType complexType)
static void CleanupGroup(XmlSchemaGroup group)
readonly Stack< XmlSchemaComplexType > _complexTypeStack
static void CleanupComplexType(XmlSchemaComplexType complexType)
void CompileGroup(XmlSchemaGroup group)
bool IsSequenceFromAll(XmlSchemaSequence derivedSequence, XmlSchemaAll baseAll)
XmlSchemaComplexType GetComplexType(XmlQualifiedName name)
SchemaCollectionCompiler(XmlNameTable nameTable, ValidationEventHandler eventHandler)
static void CleanupAttributes(XmlSchemaObjectCollection attributes)
XmlSchemaParticle CannonicalizeElement(XmlSchemaElement element, bool substitution)
void CompileSimpleContentExtension(XmlSchemaComplexType complexType, XmlSchemaSimpleContentExtension simpleExtension)
void CalculateSequenceRange(XmlSchemaSequence sequence, out decimal minOccurs, out decimal maxOccurs)
bool _compileContentModel
void CompileComplexContentExtension(XmlSchemaComplexType complexType, XmlSchemaComplexContent complexContent, XmlSchemaComplexContentExtension complexExtension)
void CompileAttribute(XmlSchemaAttribute xa)
void CompileCompexTypeElements(XmlSchemaComplexType complexType)
void BuildParticleContentModel(ParticleContentValidator contentValidator, XmlSchemaParticle particle)
XmlSchemaSimpleType[] CompileBaseMemberTypes(XmlSchemaSimpleType simpleType)
XmlSchemaParticle CannonicalizeAll(XmlSchemaAll all, bool root, bool substitution)
static void CleanupElement(XmlSchemaElement element)
void CompileElement(XmlSchemaElement xe)
bool IsParticleEmptiable(XmlSchemaParticle particle)
bool Execute(XmlSchema schema, SchemaInfo schemaInfo, bool compileContentModel)
XmlSchemaType GetAnySchemaType(XmlQualifiedName name)
void CompileSubstitutionGroup(XmlSchemaSubstitutionGroupV1Compat substitutionGroup)
static void CleanupSimpleType(XmlSchemaSimpleType simpleType)
XmlSchemaParticle CompileContentTypeParticle(XmlSchemaParticle particle, bool substitution)
XmlSchemaAnyAttribute CompileAnyAttributeUnion(XmlSchemaAnyAttribute a, XmlSchemaAnyAttribute b)
XmlSchemaParticle CannonicalizeGroupRef(XmlSchemaGroupRef groupRef, bool root, bool substitution)
bool IsElementFromAny(XmlSchemaElement derivedElement, XmlSchemaAny baseAny)
void CompileParticleElements(XmlSchemaComplexType complexType, XmlSchemaParticle particle)
bool IsValidOccurrenceRangeRestriction(XmlSchemaParticle derivedParticle, XmlSchemaParticle baseParticle)
void CheckParticleDerivation(XmlSchemaComplexType complexType)
XmlSchemaParticle CannonicalizeChoice(XmlSchemaChoice choice, bool root, bool substitution)
void CompileIdentityConstraint(XmlSchemaIdentityConstraint xi)
bool IsGroupBaseFromGroupBase(XmlSchemaGroupBase derivedGroupBase, XmlSchemaGroupBase baseGroupBase, bool skipEmptableOnly)
XmlSchemaParticle CannonicalizeSequence(XmlSchemaSequence sequence, bool root, bool substitution)
void CompileComplexType(XmlSchemaComplexType complexType)
readonly XmlSchemaObjectTable _examplars
void CompileSimpleType(XmlSchemaSimpleType simpleType)
XmlSchemaContentType GetSchemaContentType(XmlSchemaComplexType complexType, XmlSchemaComplexContent complexContent, XmlSchemaParticle particle)
void Output(SchemaInfo schemaInfo)
bool IsElementFromElement(XmlSchemaElement derivedElement, XmlSchemaElement baseElement)
XmlSchemaAnyAttribute CompileAnyAttributeIntersection(XmlSchemaAnyAttribute a, XmlSchemaAnyAttribute b)
static void CleanupParticle(XmlSchemaParticle particle)
static void CleanupAttributeGroup(XmlSchemaAttributeGroup attributeGroup)
static readonly SchemaElementDecl Empty
static bool IsSubset(XmlSchemaAnyAttribute sub, XmlSchemaAnyAttribute super)
static XmlSchemaAnyAttribute Intersection(XmlSchemaAnyAttribute o1, XmlSchemaAnyAttribute o2, bool v1Compat)
static XmlSchemaAnyAttribute Union(XmlSchemaAnyAttribute o1, XmlSchemaAnyAttribute o2, bool v1Compat)
static XmlSchemaComplexType AnyType
static ContentValidator AnyTypeContentValidator
XmlSchemaDatatype DeriveByList(XmlSchemaType schemaType)
XmlTokenizedType TokenizedType
static XmlSchemaDatatype DeriveByUnion(XmlSchemaSimpleType[] types, XmlSchemaType schemaType)
XmlSchemaType? SchemaType
XmlSchemaObjectCollection Constraints
XmlSchemaDerivationMethod BlockResolved
XmlQualifiedName QualifiedName
void Remove(XmlQualifiedName name)
void Insert(XmlQualifiedName name, XmlSchemaObject value)
void Add(XmlQualifiedName name, XmlSchemaObject value)
static readonly XmlSchemaParticle Empty
static bool IsDerivedFrom([NotNullWhen(true)] XmlSchemaType? derivedType, [NotNullWhen(true)] XmlSchemaType? baseType, XmlSchemaDerivationMethod except)
static bool IsDerivedFromDatatype(XmlSchemaDatatype derivedDataType, XmlSchemaDatatype baseDataType, XmlSchemaDerivationMethod except)
XmlSchemaObjectTable SchemaTypes
XmlSchemaObjectTable AttributeGroups
XmlSchemaObjectTable Groups
XmlSchemaObjectTable Notations
XmlSchemaObjectTable IdentityConstraints
XmlSchemaObjectTable Attributes
XmlSchemaObjectTable Elements
static readonly XmlQualifiedName Empty
XmlSchemaDerivationMethod