def __new__(cls,classname,bases,classdict):
if classname in ['<STR_LIT>', '<STR_LIT>', '<STR_LIT>',]:<EOL><INDENT>return type.__new__(cls,classname,bases,classdict)<EOL><DEDENT>if ElementDeclaration in bases:<EOL><INDENT>if ('<STR_LIT>' in classdict) is False  or ('<STR_LIT>' in classdict) is False: <EOL><INDENT>raise AttributeError('<STR_LIT>')<EOL><DEDENT>key = (classdict['<STR_LIT>'],classdict['<STR_LIT>'])<EOL>if key in SchemaInstanceType.elements:<EOL><INDENT>return SchemaInstanceType.elements[key]<EOL><DEDENT>ged = SchemaInstanceType.elements[key] = type.__new__(cls,classname,bases,classdict)<EOL>return ged<EOL><DEDENT>if TypeDefinition in bases:<EOL><INDENT>if ('<STR_LIT:type>' in classdict) is None:<EOL><INDENT>raise AttributeError('<STR_LIT>')<EOL><DEDENT>key = classdict['<STR_LIT:type>']<EOL>if (key in SchemaInstanceType.types) is False:<EOL><INDENT>SchemaInstanceType.types[key] = type.__new__(cls,classname,bases,classdict)<EOL><DEDENT>return SchemaInstanceType.types[key]<EOL><DEDENT>if LocalElementDeclaration in bases:<EOL><INDENT>return type.__new__(cls,classname,bases,classdict)<EOL><DEDENT>raise TypeError('<STR_LIT>')<EOL>
If classdict has literal and schema register it as a
        element declaration, else if has type and schema register
        it as a type definition.