Index: openacs-4/packages/acs-templating/www/doc/requirements.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/www/doc/requirements.adp,v diff -u -r1.2.2.4 -r1.2.2.5 --- openacs-4/packages/acs-templating/www/doc/requirements.adp 9 Jun 2016 13:03:12 -0000 1.2.2.4 +++ openacs-4/packages/acs-templating/www/doc/requirements.adp 5 Jul 2016 12:14:22 -0000 1.2.2.5 @@ -15,11 +15,11 @@

I. Introduction

The following is a requirements document for the ACS Templating -System version 0.5. It has also been called Karl's Templates, the -Dynamic Publishing System (DPS), and Stencil. The official package -name for the system is now acs-templating -. - +System version 0.5. It has also been called Karl's Templates, +the Dynamic Publishing System (DPS), and Stencil. The official +package name for the system is now +acs-templating +.

II. Vision Statement

On websites of sufficient size, a consistent look and feel (the UI, @@ -34,8 +34,8 @@ on a script or program that generates the dynamic content that fills the blanks in the template. In addition, the templating system provides a way to use a single layout specification for the -majority - if not all - of a website's pages, so the overall layout -of a site can be more easily administered. +majority - if not all - of a website's pages, so the overall +layout of a site can be more easily administered.

III. System Overview

The templating system provides: @@ -54,17 +54,17 @@

The template system is designed to be used by two classes of users: programmers and designers. In bulding a web site, programmers are generally responsible for defining and implementing -the application logic of the site, while designers are more -responsible for the presentation. Generally speaking, the -application logic generates data for the presentation to display to -the user. The template system must provide mechanisms that supports -both of these tasks and allows the designer and programmer to work -seperately, but for their work to be combined at runtime into -something that the user sees as a single page.

+the application logic of the site, while designers are +more responsible for the presentation. Generally speaking, +the application logic generates data for the presentation to +display to the user. The template system must provide mechanisms +that supports both of these tasks and allows the designer and +programmer to work seperately, but for their work to be combined at +runtime into something that the user sees as a single page.

Thus, pages are naturally split into two parts. The logic part executes application logic and generates data, and the -presentation part that specifies the layout of the page and -so on.

+presentation part that specifies the layout of the page +and so on.

What is needed is:

  1. A notation and API for the programmer specify the application @@ -92,7 +92,8 @@

    Alternate scenario: Judy Designer is familiar with the template system. She starts directly from a defined page contract, -so Jane Programmer doesn't need to write the draft template.

    +so Jane Programmer doesn't need to write the draft +template.

    V. Related Links

    @@ -106,45 +107,47 @@ should look or function.

    10.0.5

    Publishers should be able to change the default presentation of any module using a single methodology with minimal exposure to code.

    -10.5 Programmer's API

    It must be easy to use/integrate the templating system with any +10.5 Programmer's API

    It must be easy to use/integrate the templating system with any application. This implies a stable, simple, and comprehensive API for programmers to use when writing or converting modules.

    10.5.1 Page Properties -Publishing

    Programmers must be able to publish a page's data sources, so -that a graphic designer knows what data sources are available.

    10.5.2 Page Contract Implementation

    Programmers must be able to generate and populate the page +Publishing

    Programmers must be able to publish a page's data sources, +so that a graphic designer knows what data sources are +available.

    10.5.2 Page Contract Implementation

    Programmers must be able to generate and populate the page properties they promise. This includes page properties of types: onevalue, onerow, multirow, onelist, and multilist.

    -
    10.10 Graphic Designer's API

    It must be simple for graphic designers to create and maintain +10.10 Graphic Designer's API

    It must be simple for graphic designers to create and maintain templates that include dynamic data, and other templates. This requires a stable, simple, and comprehensive API for graphic designers to use when creating the layout pages for a site.