Defining the page concept raises further questions. Common page metadata includes attributes such as title, description and keywords. Other resources, including JS and CSS files, also need to be considered.
A module may need to define the page's title, description or keywords.
When defining a website layout, all pages normally share some CSS and JS. A particular module may also require an external script.
For this reason, as in the back end, the system must allow each module’s files to be included on the particular page that needs them.
Modules can call methods on the page instantiating them to set these values. This has not been implemented in the practical application, but it has been taken into account.