Information Agents that Learn to Understand Each Other via Semantic Negotiation