separator
separator
PATH: / Home / help /  24th November, 2004
separator
Help Page for Vision Systems Website:
separator
What is Vision Systems Website: ?
Vision Systems Website is a collection of webpages maintained by Mark R Harding and other members of the Vision Systems research group which works out of the Department of Electronics and Electrical Engineering at the University of Edinburgh.

These pages are hosted on the E. & E.E. Department's own webserver and thanks go to all the Computing Support Officers who maintain both the webserver and the underlying computing systems for their professional and friendly help at all times.

In order to reduce the maintenance effort required to maintain the webpages that appear within this website an automated publishing system has been developed which removes much of the load usually involved in this process. This system employs several techniques to achieve this functionality and an overall summary of how this is achieved is given below.

  • All webpages are stored in a source "tree" as source HTML documents. However, these documents are not complete HTML documents but rather are documents containing only the "body" HTML code - that is the HTML that would normally appear between the <BODY> and </BODY> tags within a complete HTML document.

  • The firstline of each of these source HTML 'body-documents' is a directive providing the title of that webpage within a legal HTML comment-tag environment. This is in the form:

    <!-- DOCTITLE="document title here" -->
    This title is read at the time of publication and is used to define the <TITLE> field of the document header which is usually used to provide the title that appears in the browser-window's title bar.

  • Within the document, to make replication of common HTML code blocks simpler, and to facilitate the easy redesign of the appearance of webpages within the site later on, common HTML templates can be used. Such templates create elements such as the webpage titlebars (containing the "About these webpages" text at the top of this page) and other such items. For example, the HTML code that appears in the source document for this webpage that creates the aforementioned title bar is:

    <!-- REPLACE="full_pagebanner_top.html" -->
    About these webpages:
    <!-- REPLACE="full_pagebanner_bottom.html" -->
    
  • Another technique that facilitates rapid redesign of the website is in the use of "Cascading Style Sheets" to define the appearance of the major HTML objects used to create the page. All this involves is to have a declaration in the header environment of the webpage instructing the browser to use a stylesheet and then defining which file to look at to find this stylesheet. The stylesheet file contains a list of the objects used in the webpages with a definition of the properties of each object to give the desired appearance. A small extract of the stylesheet used to create this webpage (as of 10/01/99 anyway!) is given below:

    DOCUMENT {font-family: arial,helvetica}
    BODY {font-family: arial,helvetica; background: #FFFFFF}
    BASEFONT {font-family: arial,helvetica; background: #FFFFFF}
    P {font-family: arial,helvetica}
    A {font-family: arial,helvetica; font-variant: small-caps}
    OL {font-family: arial,helvetica}
    UL {font-family: arial,helvetica}
    DL {font-family: arial,helvetica}
    H1 {font-family: arial,helvetica}
    
  • The source HTML body-documents for some pages are generated dynamically at the time of publication. This means that pages with frequently changing content can be kept valid and up-to-date with the minimum of effort. Such dynamically rendered pages currently include the "Contact Details" page which is created by examining the online user database.

  • After regenerating any HTML source documents as necessary, the system builds a list of the current source tree and then verifies that a similar tree structure exists at the publication site. Any non-existant branches are created as required.

  • Each source document is then read in turn and a document header and footer are created with appropriate values for document titles and so forth. The header and footer can also contain extra HTML to define such items as the navigation bar and the "last rebuilt" sections visible at the top and bottom of this and every other page respectively. These three parts are then assembled to create the final document which is then published to the website.

  • Finally, all the support documents - which includes images, javascript files, document stylesheets and so on - are also published to the website. The process completes by ensuring that the file permissions on all the published documents have been correctly defined.
To make the rebuild process as automatic as possible, the command used to rebuild the website can then be scheduled to run at a specific time each night by entering the command as a job into the scheduled-jobs queue. (This can be done using the "at" command on a typical unix or NT system or through the "crontab" list under unix.)

NB: At the bottom of every webpage is listed the date when the website was last rebuilt. Since this normally happens on a nightly basis the date usually reflects the current date. Note though that this does not imply that the contents of the "static" webpages have necessarily been so recently updated. (Although the dynamic contact page will of course have been updated as mentioned above.)
 
separator
 
separator
This document was authored by:   Mark R Harding
separator
Website last rebuilt, by m r h, on 24th November, 2004 |  Home  |  Index  |  Help  |
separator