exponential.earth / exponential / documentation / exponential basics / content management in exponential / objects, nodes and the content node tree
These documentation pages are no longer maintained. Please visit the new documentation site.
A content object is an instance of a content class. When the system is in use, new content objects are created on the fly. For instance, when a news article is composed, a new content object is created to store the actual contents of the article (the object will also take care of storing all the different versions and languages of the article). Obviously, the content objects can't just fly around in space. They have to be organized and structured in some way. This is where the nodes and the content node tree comes in.
A node can be thought of as an encapsulation of a content object. The content node tree is built up of nodes. It is a hierarchical tree structure representation of all content that belongs to a site. In other words, this is the mechanism that is used to organize every content object that is present in the system. A usual way of categorizing content within the tree is by making use of containers (for example folders) under which relevant content objects are placed (roughly in the same way as on a filesystem).
When using the administration interface to manage folders, articles, files, images, etc., the user inter acts with the content node tree. The tree can be easily used to generate a sitemap. The following diagram illustrates the relation between content objects and nodes.
Each leaf in the content tree is a node. At the minimum, the tree consists of one node, which is called the root node. This is the actual root folder under which all content is placed. Each node (except the root node) has two pointers, one that points to a parent node and one that points to a content object. A node can only point to one parent node and one content object. However, a content object can be pointed to by several nodes, which means that the same object may appear at different locations within the tree. An unpublished content object (draft) doesn't have a node associated to it. In other words, only published objects appear in the content node tree. Archived content objects will also lose their node and thus disappear from the tree. Because of the node-encapsulation of objects, any type of content object can be placed anywhere in the tree (but will still exist in the system). The number of levels in the tree is unlimited. Clearly, this is an extremely flexible and generic solution that can be used to structure any kind of custom content.
Comments
Object links
Yaron Gilboa
Thursday 07 April 2005 2:44:19 pm