'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}'

def find(self, path, resolved=True):

    result = None
    parts = self.split(path)
    try:
        result = self.root(parts)
        if (len(parts) > 1):
            result = result.resolve(nobuiltin=True)
            result = self.branch(result, parts)
            result = self.leaf(result, parts)
        if resolved:
            result = result.resolve(nobuiltin=True)
    except PathResolver.BadPath:
        log.error(('path:    "%s",    not-found' % path))
    return result
