@abc.abstractmethod<EOL><INDENT>def can_delete_package(self, package_id):<DEDENT>
return<EOL>
Tests if this user can delete a specified ``Package``.

        A return of true does not guarantee successful authorization. A
        return of false indicates that it is known deleting the
        ``Package`` will result in a ``PermissionDenied``. This is
        intended as a hint to an application that may opt not to offer a
        delete operation to an unauthorized user for this function.

        :param package_id: the ``Id`` of the ``Package``
        :type package_id: ``osid.id.Id``
        :return: ``false`` if ``Package`` deletion is not authorized, ``true`` otherwise
        :rtype: ``boolean``
        :raise: ``NullArgument`` -- ``package_id`` is ``null``

        *compliance: mandatory -- This method must be implemented.*
        *implementation notes*: If the ``package_id`` is not found, then
        it is acceptable to return false to indicate the lack of a
        delete available.