ORange has nothing to rhyme with... nor does purple.
orange does semi ryme with lozenge.
The principle of a half-rhyme in these cases is quite simple. Whereas a full and stressed rhyme (e.g. hand / stand) or even an unstressed rhyme (such as handing / standing) contain vowels that are common to both words, a half-rhyme like orange / lozenge or silver / salver (technically speaking, pararhymes) has obvious differences between vowels in certain syllables.