Ну хорошо. Другой пример. Компонентов на сайте, как Вы догадываетесь, может быть много. Представьте ситуацию: приходит ссылка: articles/article. По логике, нужно залезть в БД и проверить на наличие категории articles у каждого компонента. Понимаете, в чём подвох? Поэтому существуют пункты меню, к которым и привязаны компоненты. Роутер сначала парсит меню, выясняет, что это за компонент, что за вид, а потом делает запрос. Так вот, если пункта меню нет, то роутер формирует ссылки с названием компонента "component/компонент-1/вид/элемент". Всё очень продумано и логично.
А по поводу ссылки вида "категория/категория/категория" — тут вы опять ошибаетесь: возьмите к примеру телефонный справочник, да и разные компоненты могут иметь одноимённые алиасы, даже идентификаторы могут совпадать: "компонент-1/1-uncategorised/2-article", "компонент-2/1-uncategorised/2-article".
Joomla даёт возможность создать структуру каталогов любого уровня вложенности, новостной сайт, например. Но в каждой системе роутинга существуют и плюсы, и минусы. Посмотрите на WP — там всё просто (даже компонентов нет), поэтому и роутинг такой простой. Однако функционал такой платформы сильно ограничен.