Gets a composition administration session for creating, updating
        and deleting compositions.

        return: (osid.repository.CompositionAdminSession) - a
                CompositionAdminSession
        raise:  OperationFailed - unable to complete request
        raise:  Unimplemented - supports_composition_admin() is false
        compliance: optional - This method must be implemented if
                    supports_composition_admin() is true.

def get_composition_admin_session(self):
        """Gets a composition administration session for creating, updating
        and deleting compositions.

        return: (osid.repository.CompositionAdminSession) - a
                CompositionAdminSession
        raise:  OperationFailed - unable to complete request
        raise:  Unimplemented - supports_composition_admin() is false
        compliance: optional - This method must be implemented if
                    supports_composition_admin() is true.

        """
        if not self.supports_composition_admin():
            raise Unimplemented()
        try:
            from . import sessions
        except ImportError:
            raise  # OperationFailed()
        try:
            session = sessions.CompositionAdminSession(proxy=self._proxy,
                                                       runtime=self._runtime)
        except AttributeError:
            raise  # OperationFailed()
        return session