A control panel (CP) allows a user to navigate to any view specified in the navigation tree.
There are two navigation approaches:
Static navigation is declarative, as the navigation tree is declared in metadata of the APS package.
The tree is built basing on different types of navigation elements:
Navigation is the root element in the tree. The <navigation> element declares it. Different
types of CP can visualize this element differently. For example, in an Odin Service Automation CP, when using
an APS predefined placeholder, it is represented by a top level tab.
Item creates a tree branch by means of the <item> element. An item is bound to the <navigation>
element or to another item, its parent. The <navigation> element and several <item> elements create the
tree skeleton. There are no loops in the tree. In a CP, an item is visualized as a tab.
If an item does not have a child view, it is not visualized in the navigation tree.
if there are child items (with their own child views) under this item,
they will move up and replace the parent item in the navigation tree.
View corresponds to a screen in a CP. A <view> element defines a navigation view and it is
bound to an item or to another view. The one that is bound to an item will be activated when
the item tab is selected in a CP.
Group is similar to an item. The only difference is that it is not visualized. You can use it to
group some items in order to assign the same variable for them or plug them to a certain placeholder.
Placeholder reserves a place where navigation elements of other applications can plug to. It must have
a unique ID in the form of URI. To plug a navigation element to it, the <plugs-to> element must refer to
the placeholder ID.
Dynamic navigation is imperative, as it implies navigation from a view to another view by calling
the aps.apsc.gotoView() method and specifying the destination view ID.
The navigation process is based on the following principles:
A navigation tree may have unlimited number of layers built by means of linked navigation items.
In APS implementations, the number of layers can be limited.
Each view can play its own role: for example, one represents a resource in general, another
shows a list of resources, one more provides an interface to create or edit a resource.
A navigation element is the parent of all navigation elements that are linked with it and placed
on the lower layer of the tree. They are linked by the parent-child relation.
When a view is called, it gets the structure, called context (or visual context) that contains
definition of the view and all its parents up to the root of the tree.
implementing a view. The variables are included into the context structure.
A navigation element can allow other trees or tree branches to plug into it. Therefore, it must declare
itself as a <placeholder> with a unique ID.
A navigation element with the branch below can it be plugged into a placeholder, if it contains the <plugs-to>
element referring to an existent placeholder ID.
In the customer control panel or MyCP, one application is able to plug its navigation part to
a navigation tree of another application only if resources of both applications are in the same subscription.