A method of making a ligand having at least two donor moieties for complexation to a metal selected from a transition metal and lanthanide, wherein the ligand comprises a set of complementary building blocks, each building block having at least one functional group that is complementary to a functional group of another building block or a template, and at least one donor moiety, wherein said one building block is non-covalently bonded through its functional group to a complementary functional group of another building block, the building blocks are not immobilized, and the donor moieties are different, the method comprising:
- contacting the building blocks with each other or with a template to be non-covalently bonded to each other or to the template through their complementary functional groups,
- wherein all building block-template-building block structures are the same when the template contains more than two functional groups.