!--a11y-->
Navigation API 
The navigation API provides methods for the navigation connector, the data level, and the navigation Portal applications, the visualization level. The navigation API has following interfaces:
· INavigationConnectorRegistration
Used by the navigation connector to call the navigation service methods. This interface includes methods to register or cancel the registration of a navigation connector to the navigation service.
· INavigationConnector
Every navigation connector has to implement this interface in order to get registered to the navigation service as a valid navigation connector. This interface includes methods to retrieve navigation nodes from the navigation connectors.
· INavigationConnectorNode
Defines the behavior of a single navigation noderetrieved from the navigation connector. Only objects that implement this interface can be retrieved by the navigation service and therefore are accessible by the navigation Portal applications.
· INavigationService
Provides information about the navigation hierarchy to the navigation Portal applications.
· INavigationGenerator
Generating unique names to launch navigation nodes.
· INavigationNode
Defines a single navigation node that is used by the navigation Portal applications. These objects are wrappers of the navigation nodes retrieved from the navigation connector (INavigationConnectorNode).
· INavigationConstants
Constants used by the navigation service.
To implementing a navigation connector, the following interfaces have to be implemented:
· INavigationConnector
Is the main interface of the navigation connector to implement.
· INavigationConnectorNode
Has to be implemented by the navigation nodes, which are returned by the navigation connector. The INavigationConnectorNode interface has three implementation levels. The basic level has to be implemented while the implementation of the other levels is optional. Implementing all levels allows the navigation Portal application to use the behavior of the navigation nodes.
A navigation connector registers to be navigation data provider using the method:
INavigationConnectorRegistration registerConnector(String connectorKey, INavigationConnector connector);

The navigation connector must call the registerConnector() method in the afterInit() method. At this stage the navigation service has already created the registration environment.
Canceling a registration removes a navigation connector from the navigation service as data provider. To cancel the registration use the method:
INavigationConnectorRegistration unregisterConnector(String connectorKey);
You get the initial nodes with following method:
INavigationService getInitialNodes(Hashtable environment);
The environment parameter must contain the user name and can contain any other environment variable. The navigation nodes are returned as NavigationNodes. This is a list of type java.util.List with INavigationNode objects.
To get a specific node use the following method:
INavigationService public INavigationNode getNode(Hashtable environment, String nodeName);
The environment parameter must contain the user name and can contain any other environment variable. The nodeName parameter specifies the name of the node to be retrieved.
