@abc.abstractmethod<EOL><INDENT>def get_catalogs_by_provider(self, resource_id):<DEDENT>
return<EOL>
Gets a ``CatalogList`` from the given provider.

        In plenary mode, the returned list contains all known subjects
        or an error results. Otherwise, the returned list may contain
        only those catalogs that are accessible through this session.

        :param resource_id: a resource ``Id``
        :type resource_id: ``osid.id.Id``
        :return: the returned ``Catalog list``
        :rtype: ``osid.cataloging.CatalogList``
        :raise: ``NullArgument`` -- ``resource_id`` is ``null``
        :raise: ``OperationFailed`` -- unable to complete request
        :raise: ``PermissionDenied`` -- authorization failure

        *compliance: mandatory -- This method must be implemented.*