SetBlockResolved() private method

private SetBlockResolved ( XmlSchemaDerivationMethod value ) : void
value XmlSchemaDerivationMethod
return void
 private void PreprocessElementContent(XmlSchemaElement element)
 {
     this.PreprocessAnnotation(element);
     if (!element.RefName.IsEmpty)
     {
         base.SendValidationEvent("Sch_ForbiddenAttribute", "ref", element);
     }
     if (element.Block == XmlSchemaDerivationMethod.All)
     {
         element.SetBlockResolved(XmlSchemaDerivationMethod.All);
     }
     else if (element.Block == XmlSchemaDerivationMethod.None)
     {
         if (this.blockDefault == XmlSchemaDerivationMethod.All)
         {
             element.SetBlockResolved(XmlSchemaDerivationMethod.All);
         }
         else
         {
             element.SetBlockResolved(this.blockDefault & (XmlSchemaDerivationMethod.Restriction | XmlSchemaDerivationMethod.Extension | XmlSchemaDerivationMethod.Substitution));
         }
     }
     else
     {
         if ((element.Block & ~(XmlSchemaDerivationMethod.Restriction | XmlSchemaDerivationMethod.Extension | XmlSchemaDerivationMethod.Substitution)) != XmlSchemaDerivationMethod.Empty)
         {
             base.SendValidationEvent("Sch_InvalidElementBlockValue", element);
         }
         element.SetBlockResolved(element.Block & (XmlSchemaDerivationMethod.Restriction | XmlSchemaDerivationMethod.Extension | XmlSchemaDerivationMethod.Substitution));
     }
     if (element.SchemaType != null)
     {
         this.SetParent(element.SchemaType, element);
         if (!element.SchemaTypeName.IsEmpty)
         {
             base.SendValidationEvent("Sch_TypeMutualExclusive", element);
         }
         if (element.SchemaType is XmlSchemaComplexType)
         {
             this.PreprocessComplexType((XmlSchemaComplexType) element.SchemaType, true);
         }
         else
         {
             this.PreprocessSimpleType((XmlSchemaSimpleType) element.SchemaType, true);
         }
     }
     if (!element.SchemaTypeName.IsEmpty)
     {
         this.ValidateQNameAttribute(element, "type", element.SchemaTypeName);
     }
     if ((element.DefaultValue != null) && (element.FixedValue != null))
     {
         base.SendValidationEvent("Sch_DefaultFixedAttributes", element);
     }
     for (int i = 0; i < element.Constraints.Count; i++)
     {
         XmlSchemaIdentityConstraint child = (XmlSchemaIdentityConstraint) element.Constraints[i];
         this.SetParent(child, element);
         this.PreprocessIdentityConstraint(child);
     }
 }
        private void PreprocessElementContent(XmlSchemaElement element) {
            PreprocessAnnotation(element); //Set parent for Annotation child of element
            if (!element.RefName.IsEmpty) {
                SendValidationEvent(Res.Sch_ForbiddenAttribute, "ref", element);
            } 
            if (element.Block == XmlSchemaDerivationMethod.All) {
                element.SetBlockResolved(XmlSchemaDerivationMethod.All);
            }
            else if (element.Block == XmlSchemaDerivationMethod.None) {
                if (this.blockDefault == XmlSchemaDerivationMethod.All) {
                    element.SetBlockResolved(XmlSchemaDerivationMethod.All);
                }
                else {
                    element.SetBlockResolved(this.blockDefault & elementBlockAllowed);
                }
            }
            else {
                if ((element.Block & ~elementBlockAllowed) != 0) {
                    SendValidationEvent(Res.Sch_InvalidElementBlockValue, element);
                }
                element.SetBlockResolved(element.Block & elementBlockAllowed);
            }
            if (element.SchemaType != null) {
                SetParent(element.SchemaType, element); //Set parent for simple / complex type child of element
                if (!element.SchemaTypeName.IsEmpty) {
                    SendValidationEvent(Res.Sch_TypeMutualExclusive, element);
                } 
                if (element.SchemaType is XmlSchemaComplexType) {
                    PreprocessComplexType((XmlSchemaComplexType)element.SchemaType, true);
                } 
                else {
                    PreprocessSimpleType((XmlSchemaSimpleType)element.SchemaType, true);
                }
            }
            if (!element.SchemaTypeName.IsEmpty) {
                ValidateQNameAttribute(element, "type", element.SchemaTypeName);
            } 
            if (element.DefaultValue != null && element.FixedValue != null) {
                SendValidationEvent(Res.Sch_DefaultFixedAttributes, element);
            }

            for (int i = 0; i < element.Constraints.Count; ++i) {
                XmlSchemaIdentityConstraint identityConstraint = (XmlSchemaIdentityConstraint)element.Constraints[i];
                SetParent(identityConstraint, element);
                PreprocessIdentityConstraint(identityConstraint);
            }
        }