Navigation
  • Home
  • Recent
  • Most Active
  • Popular
  • Blog
  • Credits
  • RSS
  •   Interaction
  • Register
  • Statistics
  •   Help
  • Suggestions
  • Contact Us
  • How to Edit
  • Help



  • [Edit]





    A web template system is a kind of "View subsystem" in a Model-View-Controller (MVC or similar) design pattern, to separate presentation from content, on web document production.
    It is a web development tool present in Content management systems, Software frameworks, HTML editors, and many Web applications.


    A web template system is characterized by (parts):

        Content resource: a input supplier, like a SQL database or a XML file.
    The basic process (pictured) shows how to put all together: content and web template are processed by the template engine to produce web documents.


        Web template system
            Motivations and typical uses
                Style standardization
                Separation of concerns
                Massive production
            Kinds of template systems
                Outside server systems
                Server-side system
                Distributed systems
            History
        See also

    top

    Motivations and typical uses
    For an introductory overview, a news website is used as example.

    top

    Style standardization
    Websites often require regular content updates, and standardization of appearance. Without a uniform style to browsing and to see different kinds of contents, the reader may be feel lost in the website. Style standardization also is a part of the identity of the website.

    The news website example needs to be updated daily.
    Each news item will be contextualized by a standard presentation (page layout, structure, etc.). A typical strategy to automate this standardization is:

      group news items with different presentation needs;
      specify the "presentation standards" through web templates, for each group of news;
      specify a content resource to generate or update the content of each news item.

    top

    Separation of concerns

    The idea behind the "template method" is
    to separate content (data) from presentation (data representation), and to separate business-logic from presentation-logic. It have many advantages in using:
      Ease of design change
      Ease of interface localization
      Possibility to work separately on design and code by different people at one and the same time
      Etc.


    top

    Massive production
    (stub)

    top

    Kinds of template systems
    There are many software packages and commercial solutions of web templates and template engines, but they also can be grouped in template systems.

    The architecture of this systems, into a client-server reference model, is the main divion criteria.
    Although the use of diverse modern web cache strategies, architectures can be characterized.

    About system attributes and other classification criteria:

    Notes:
      Many template systems are a component of a platform or framework. They are reffered to as the "platform's template system".

    top

    Outside server systems






    Web template on this context produce only static web pages, and can viewed as a ready-made web design, used to mass-produce "cookie cutter" websites for rapid deployment.

    HTML editors are the tipical systems using outside server subsystems. They also commonly include themes in place of CSS styles. In general the template language is to be used only with the editor's software.


    FrontPage and Dreamweaver are the most popular editors with template sub-system. On Dreamweaver the template tool may also include a graphical template making it easy to edit or customise graphics and images. A Flash web template uses Macromedia Flash to create visually appealing sites.


    Many server-side template systems have the option to publish the output pages on the server, them the published pages be static. It is a commom feature on content management systems, like Vignette. But this does not have to be considered a out-server generation.

    In the majority of the cases, this "publish option" not interferes with the template system, and it can be made by external software, as Wget.


    top

    Server-side system







    Server-side dynamic pages began generated by
    templates with pre-existent software adaptated for this task.
    This early softwares was the preprocessors and macro languages,
    adapted for the web use, running on CGI. Next,
    a simple but relevant technology was the direct execution made on extension modules, started with SSI.

    A lot of template systems are typically used as server-side template systems:


    Technically, the methodology of embedding programming languages within HTML (or XML, etc.), used in many "server-side included script languages" are also templates. All of them are embedded complex languages.


    There are also preprocessors used as server-side template engines. Examples:


    top

    Distributed systems






    The more simple form are transclusions (HTML frames). In other cases it need Dynamic web pages to run.

    Examples:


     

     


     


    top

    History
    Is difficult to be precise about "template system beginnings"
    or chronology, because it started only after the "widespread development of web pages", and there are a lot of parallel developments. Context and dates of the "web beginnings":

    HTTP protocol has been in use by the Web since 1990, HTML, as standard, since 1996.
    The web browsers explosion started with 1993's Mosaic.

    Web templates, as "web designers necessity", started with the HTML and web browsers popularization. After this, different kinds of template systems was dominated the web template scenery:
      Outside server systems: at the middle of 1990s. The main "necessity" in this first times of the web, was for static pages production. Many independent software and HTML editors adopted a variation of static web template.
      Server-side systems: a widespread use was after middle of 1990s.
        The first use was able with the Common Gateway Interface (for dynamic page generation), stable in the 1993's. Perhaps the first rudimentary server-side web templates was on typical Unix web servers, for AWK (plugged on CGI) report generator, or a M4 template.
        At final 1990s and beginning 2000s, with the growing of on-line and e-commerce systems, and popularization of web portals (with your CMS), the use of server-side template systems growed and domined the "template system scenery".

    The high diversity of "template languages" (as a kind of "sub-language" of the CMS or the server-side programming languages), pointed to the need for a "template standard language". The matureness of XSLT and standardization of XQuery, promises, for near future, a kind of convergence.

    top

    See also




     
    Search more:
     

       
    Source Privacy License Download Contact Us Atlas
    Scientus.org Dictionary (Yet Another Wiki) RC : 1.39
    MIT OpenCourseWare
    This article is licensed under the GNU Free Documentation License [copyleft]. It uses material from the Wikipedia article "Web template system". link