📚 Looking for current Exponential documentation? This site contains legacy SDK & API reference docs (eZ Publish era). For up-to-date 2026 product documentation, visit doc.exponential.earth.

  kernel / module_system  

<< Kernel  Content classes >> 

Module system

Exponential is module based. The Exponential kernel functionality is available using different interfaces. Interface implementation is plugin based and the current implementations are Web and SOAP. The Web interface is the normal browser based Exponential interface which outputs HTML. The SOAP interface is a general SOAP interface useful for integration with other systems using industri standard XML messages.

TODO — Image not available in archive

Title:   Module System Architecture Diagram
File:    /doc/images/module.png

What this image shows:
Diagram showing the Exponential CMS module system architecture. Illustrates how module definitions (module.php files) declare functions and their views, how the kernel dispatches requests to module functions, and how the module result is passed to the layout template.

Replacement instructions:
Redraw based on sdk/kernel/view/module_system documentation. Save as /doc/images/module.png

See /sdk/missing.html for the full list of missing images.

Module directory structure

There are different types of modules which can be placed in different places in the Exponential directory structure. The kernel modules are located under /kernel/.

/kernel/content/  <- content module
/kernel/content/module.php <- module definition

/kernel/content/web/ <- web implementation
/kernel/content/web/view.php <- web implementation of content / view

/kernel/content/soap/ <- soap implementation
/kernel/content/soap/view.php <- soap implementation of content / view

Module definition

Each module has it's own definition file. This file describes the available functionality.

  • List of available functions ( all functions may not be implemented in all interfaces )
  • List of parameters to each function
  • List of context variables which can be used for permissions

Workflows

Every function in every module will get triggers, pre and post, which can execute a workflow. These workflows can be used to add custom functionality or to add special permission checking. Read the workflow documentation for details.

Permissions

The available modules, functions and context variables are used when creating permission policies. These policies define what a specific user has access to in the system. Permissions are checked before the pre workflow is trigged, i.e. if you don't have access to a function the pre workflow will never be trigged. permission documentation for details.


Exponential Copyright © 1998 - 2026 7x