Users access the user interface components of Metrici through a browser.
The user interface components communicate with back-end services to get and set data, using XML-based calls.
In the case of nodes, the service calls pass control to a node controller object which manages access to the data. Most nodes use the default node controller class, but there are a small number of alternative node controller classes which provide specialised behaviour. For example, there is a node controller class which provides access to nodes which mirror the definition of users, and which allow access to the node based on permissions on either the node or the user.
When the services return data to the user interface, the data in XML format must be rendered (turned into HTML) before it is sent back to the client. In the case of nodes, this is achieved using a set of node render stylesheets. These support both the browse and edit view of nodes.