Champion classes should not be defined by being AP or AD
Not every champion who builds AP or does magic damage should be referred to as a mage. Mordekaiser and Katarina aren't mages just because they build AP. Even Riot officially defines Mordekaiser as a Fighter>Juggernaut and Katarina as a Slayer>Assassin, demonstrating that AP Fighters and AP Assassins do exist. When considering actual gameplay patterns, there are even AP marksmen, such as the following when they build AP/on-hit: Teemo, Neeko, Kennen, Kog'Maw, and Twisted Fate.
Part of the confusion is Riot's fault for even trying to define 'Mage' as one of the champion classes, when it doesn't fit with the rest of the champion classification scheme. 'Mage' is too generic of a term that in common player discussion includes champions in other classes, such as 'CC Mages' that are properly classified as Catchers, 'Utility Mages' that are Enchanters, 'Burst Mages' that are occasionally AP Assassins or AP Divers. It would have made more sense to classify all squishy backline ranged damage dealers as a class named 'Artillery' and divide it into Marksmen (most ADCs, but some AP/On-Hit DPS dealers) and Casters (most APC mages, but some very skill-shot oriented AD champions, such as Ezreal, could be considered either AD Casters or hybrid Marksmen/Casters).
There are some other issues with Riot's classification scheme, like Divers, Skirmishers, and Assassins all overlap too much in gameplay, but that's another discussion.
Fighters: durable damage dealers Tanks: durable utility sources Controllers: high-target-access utility sources Slayers: high-target-access (mobility/stealth) damage dealers Artillery: high-target-access (ranged) damage dealers
Any of the above can be AD or AP, magic damage or physical damage, just as a tank can build either armor or magic resistance and can be anti-physical or anti-magical.