IBM Content Navigator development architecture
IBM Content Navigator uses a model-view-controller (MVC) architecture.
- Web client
- The web client acts as a controller that provides the communication between the view and the model. Users interact with the widgets that are contained in the web client. The web client translates these interactions into the actions that are performed by instances of the model classes.
- Visual widget library
- This library of JavaScript classes defines widgets that are used to build the view for IBM Content Navigator.
- Modeling library
- This library of JavaScript classes defines the model for IBM Content Navigator. The modeling classes
provide the data, server interaction and caching. These classes define
communication with the midtier services to provide access to the content
repositories and their respective application programming interfaces
(APIs).
You can use the modeling classes to customize the communication and data exchange between the web client and the repositories.
You can customize IBM Content Navigator at each level of the architecture by using custom plug-ins. You can create plug-ins to implement custom widgets, services, and other components. By creating custom plug-ins, you can integrate information and content from external sources and augment or modify the behavior of IBM Content Navigator.
IBM Content Navigator uses plug-ins to implement various features. For example, IBM Watson Content Analytics is integrated as a plug-in to IBM Content Navigator. The external data service plug-in augments the behavior of many IBM Content Navigator widgets to support the integration of data from sources other than the content repositories. You can use this feature to add such features as choice lists, choice list dependencies, and validation to the web client.