protected virtual void Visit(XmlSchemaContent content) { XmlSchemaSimpleContentExtension simpleContentExtension; XmlSchemaSimpleContentRestriction simpleContentRestriction; XmlSchemaComplexContentExtension complexContentExtension; XmlSchemaComplexContentRestriction complexContentRestriction; if (Casting.TryCast(content, out simpleContentExtension)) Visit(simpleContentExtension); else if (Casting.TryCast(content, out simpleContentRestriction)) Visit(simpleContentRestriction); else if (Casting.TryCast(content, out complexContentExtension)) Visit(complexContentExtension); else if (Casting.TryCast(content, out complexContentRestriction)) Visit(complexContentRestriction); else throw ExceptionBuilder.UnexpectedSchemaObjectType(content); }