'Return the string id in the last (kind, id) pair, if any.
Returns:
A string id, or None if the key has an integer id or is incomplete.'

def string_id(self):

    id = self.id()
    if (not isinstance(id, basestring)):
        id = None
    return id
