@abc.abstractmethod<EOL><INDENT>def alias_id(self, primary_id, equivalent_id):<DEDENT>
pass<EOL>
Makes two ``Ids`` equivalent.

        The primary and equivalent ``Ids`` are already known to this
        service ````. If the external ``Id`` is already mapped to
        another ``Id,`` it is changed to map to the given primary
        ``Id``. Calls to ``IdLookupSession.getId(equivalentId)`` return
        the ``primaryId``.

        :param primary_id: the primary ``Id``
        :type primary_id: ``osid.id.Id``
        :param equivalent_id: an ``Id`` to be made equivalent
        :type equivalent_id: ``osid.id.Id``
        :raise: ``NotFound`` -- ``primary_id`` or ``equivalent_id`` is not found
        :raise: ``NullArgument`` -- ``primary_id`` or ``equivalent_id`` is ``null``
        :raise: ``OperationFailed`` -- unable to complete request
        :raise: ``PermissionDenied`` -- authorization failure

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