Can the Moodle system Architecture be described as three tiered? I'm trying to look at this from the code point of view.
So for example when an outputrender function makes use of the $USER variable could it be described like this:
Presentation Layer - Outputrender.php
$USER->id
| /\
\/ |
Logic Layer - user/lib.php
return $DB->get_records_list('user', 'id', $userids);
| /\
\/ |
Data Layer