@utilities.arguments_not_none<EOL><INDENT>def get_compositions_by_provider(self, resource_id):<DEDENT>
return self._provider_session.get_compositions_by_provider(resource_id)<EOL>
Gets a ``CompositionList`` from the given provider ````.

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

        In sequestered mode, no sequestered compositions are returned.
        In unsequestered mode, all compositions are returned.

        arg:    resource_id (osid.id.Id): a resource ``Id``
        return: (osid.repository.CompositionList) - the returned
                ``Composition list``
        raise:  NullArgument - ``resource_id`` is ``null``
        raise:  OperationFailed - unable to complete request
        raise:  PermissionDenied - authorization failure
        *compliance: mandatory -- This method must be implemented.*