def as_unicode(self):
result = self.domain<EOL>if self.local:<EOL><INDENT>result = self.local + '<STR_LIT:@>' + result<EOL><DEDENT>if self.resource:<EOL><INDENT>result = result + '<STR_LIT:/>' + self.resource<EOL><DEDENT>if result not in JID.cache:<EOL><INDENT>JID.cache[result] = self<EOL><DEDENT>return result<EOL>
Unicode string JID representation.

        :return: JID as Unicode string.