def find(self, path, resolved=True):
result = None<EOL>parts = self.split(path)<EOL>try:<EOL><INDENT>result = self.root(parts)<EOL>if len(parts) > <NUM_LIT:1>:<EOL><INDENT>result = result.resolve(nobuiltin=True)<EOL>result = self.branch(result, parts)<EOL>result = self.leaf(result, parts)<EOL><DEDENT>if resolved:<EOL><INDENT>result = result.resolve(nobuiltin=True)<EOL><DEDENT><DEDENT>except PathResolver.BadPath:<EOL><INDENT>log.error('<STR_LIT>' % path)<EOL><DEDENT>return result<EOL>
Get the definition object for the schema type located at the specified path.
The path may contain (.) dot notation to specify nested types.
Actually, the path separator is usually a (.) but can be redefined
during contruction.
@param path: A (.) separated path to a schema type.
@type path: basestring
@param resolved: A flag indicating that the fully resolved type
    should be returned.
@type resolved: boolean
@return: The found schema I{type}
@rtype: L{xsd.sxbase.SchemaObject}