TurtolCMS Internals -- version 1.0+
The 1.0 version of the TurtolCMS is a huge step forward in the flexibility of the underlying application platform and database mechanism. This architecture comes about due to our experiences creating web-based applications on top of the 0.5 series TurtolCMS code, with all the ensuing trials and tribulations. The 1.0 series is designed to correct as many of the 0.5 series defects and shortcomings as possible, without painting us too much into a corner.
Assets
Central to the TurtolCMS application platform it the Asset. To be blunt, every object we manage is an Asset. Even the old pages and widgets are now Assets. If this seems extreme, it's because it is. But all will be revealed, in due course. And see below, where we discuss Flattening, before you get all riled up.
Each Asset may belong to one or more AssetType and be associated with zero or more AssetTag, per the definition(s) in the corresponding AssetType list.
Assets are versioned (which, really, limits visibility, since there is nothing versionable directly associated with the database rows for Assets), as are Asset data (collections of fields and other data) and Asset tags. This latter is more a true versioning, where changes may be browsed and rolled back.