Advanced Routes?

I have a question concerning routes.

I want to be able to display a url like so…

Of course each of those have their own model and would display the
name field of each of those.

Basically categories have tags, tags have pages. All pages belong to a
category and has many tags.

How would I even begin to set this up in routes?