This page is part of the Aggregated Layout Management Convergence 2.x effort that will be added to 3.x.
There are two internal representations of a user's layout in the DLM world. One is known as the Personal Layout Fragment or PLF and contains the layout for a user as found in the database tables. The second is the Integrated Layout Fragment or ILF and represents the layout viewed by the user in the browser including UI elements merged in from other layouts.
Personal Layout Fragment (PLF)
The PLD model contains three categories of nodes. Categories in this discussion do not map to some attribute on the nodes. It is only a term used for this discussion.
Category |
Description |
---|---|
Traditional |
These are nodes identical in format and structure as those found in the traditional nested tables layouts. These nodes represent nodes that this user owns outright, namely folders, tabs and columns, that were created by this user or channels to which this user subscribed. |
Directive |
These nodes are used to record changes made by the user on nodes that were incorporated from other layouts via the DLM merge process at login. These nodes are identified by having element names that are part of the 'cp' namespace and include cp:editSet, cp:deleteSet, cp:pref, cp:positionSet, and cp:position. |
Ghost |
These nodes are a minimalistic representation of nodes incorporated from another layout and work in combination with directive nodes. These nodes are identified in two ways, first, they have a node ID and a cp:origin attribute both containing a system wide globally unique node ID that looks like 'u' + <userId> + 'l' + <layoutId> + 's' or 'n' + <structId>. This indicates the original layout from which this node was merged into the current user's layout. Additionally, these nodes have a cp:plfId attribute that holds a layout ID that is typical in the traditional layout model. (ie: s27 for folders or n27 for channels.) The value of this attribute corresponds to the structure id by which this node is stored in the user's layout in the database. The cp:origin and cp:plfID attributes combined are the mechanism for persisting nodes of this type in the user's layout using traditional node IDs while maintaining the tie the node incorporated from another layout via the non-traditional globally unique node ID. The purpose of these ghost nodes is to preserve changes made by this user to some incorporated node and allow the DLM merging algorithm to re-apply those changes at log-in time if such actions are still allowed for by the layout owner. |
For example, suppose that an "All Users" fragment contained an "All Users Sample" tab with some helpful content.
For example It also contains to by this user.