Many government organisations use static, HTML files to deliver their information on the web. However, for appropriate applications, dynamic publishing methods offer great advantages over websites constructed from static HTML pages.
Instead of a website comprising a collection of manually constructed HTML pages, server-side scripting and database access techniques are used to piece together web pages directly in response to requests from users’ browsers.
The development and implementation costs of dynamically generated websites are can be substantially higher than the alternative. However, for appropriate applications, there will be savings in running costs including efficiency gains in the management of content updates and changes to the site structure.
The use of dynamic publishing techniques offers the opportunity to deliver web content that is highly customised to the needs of individual users.
Before embarking on a dynamic publishing project, web managers should ensure they have the necessary information systems project management, development and implementation resources available to ensure the project’s success.
In order to simplify procurement procedures and avoid ‘re-inventing the wheel’ the Office of the e-Envoy is developing a centralised offering which will include database and content management functionality.
Use each checklist to ensure that your web pages comply with these guidelines
5.1.1 Checklist and summary
Checklist
Summary
The decision on which dynamic web publishing system will be used is likely to take into account the systems technologies and products already supported within the organisation
5.1.2 Introduction
Most dynamic page publishing solutions involve a ‘scripting language’. Normal web pages are created, with extra instructions embedded in them. These instructions access databases, other websites, or system services, and format the results returned.
The raw page, containing a mixture of HTML and scripting language, is served through a special type of program (‘interpreter’) which executes the scripting instructions and renders their results into HTML. The resulting ‘page’ is then served through a web server.
5.1.3 Personalised content delivery
Dynamic publishing enables the construction of websites capable of delivering content that is highly tailored to the needs of individual users. Site content, navigation and appearance can be customised in response to preferences and queries expressed by users via HTML forms. It can also be customised to work optimally with individual user’s browser and Internet connection technology.
The distinction between a dynamically published website and a transactional website (that passes information into, and retrieves information from, back-end business systems) is a fine one. Many of the underlying technologies involved are the same.
5.1.4 Content management
It is common for dynamic publishing website developments to employ databases to store some or all of the sites’ content, structure and appearance data. Such implementations typically also include a ‘content management’ application of some degree of sophistication that allows the stored data to be updated and otherwise manipulated.
Content management systems, which may themselves be web-based applications, are usually designed to allow website managers to update and manipulate the content of their sites without having to be concerned with the intricacies of HTML, CSS and so on. They typically also automate a lot of the routine website management work.
5.1.5 Web server performance and resource considerations
Since each dynamically published Web page is created on- the-fly, the web server must work harder to produce results. This will typically have a performance overhead that may be substantial.
Most dynamic publishing implementation systems try to deal with this problem in different ways. Often a reverse-proxy server such as Squid can address performance problems. Other solutions involve the periodic bulk generation of static HTML pages from the dynamic publishing system that can then be served to the Internet as if the site were a traditional static one. However, the latter approach will reduce the extent to which the website can deliver personalised responses to user requests. It is entirely possible to employ different server resource conservation techniques on different sections of a single website.
These issues should be considered when developing the specification for a dynamic publishing website project
5.1.6 Technologies and tools
It is beyond the scope of this handbook to go into the detail of the technologies and tools available for the development and deployment of dynamic websites. This section lists a number of widely used products and technologies to illustrative the huge range and variation in scope that is available.
It is recommended that the advice of your organisation’s information technology professionals should always be sought from the outset when contemplating the development of a dynamic publishing website.
5.1.6.1 Active Server Pages (ASP)
ASP is a scripting platform and is a part of Microsoft’s Internet Information Server. In particular, it provides interfaces to other Microsoft products and technologies such as SQL Server, COM and .NET. For the scripting language, ASP uses VBScript (which is similar to Microsoft Visual Basic) or JScript (which is Microsoft’s server-side version of JavaScript).
A third-party implementation, Sun’s ChiliSoft ASP, will run ASP on a range of non-Microsoft platforms and servers
5.1.6.2 CGI
CGI (Common Gateway Interface) is a basic standard for web servers to interact with programmed content. All web servers support CGI.
CGI programs can be written in any programming language. The most common being Perl. CGIs are usually less flexible than scripted web pages, but are easier to install and run.
5.1.6.3 ColdFusion
Cold Fusion is a complete authoring system made by Macromedia (formerly Allaire). Scripting instructions are usually embedded in pages using CFML, with the help of the Cold Fusion Studio programming environment.
It has a wide range of third party libraries available and runs on a variety of operating systems.
5.1.6.4 Java Server Pages (JSP) / J2EE
Java Server Pages are written using Sun’s cross-platform programming language, Java. However, they work on a very similar basis to other scripting languages, and can be served by any one of a number of ‘Servlet containers’, the most popular of which is the free Open Source Tomcat server (now part of the Apache Foundation).
J2EE is a more ambitious specification for building entire “web applications.” It is used in very large enterprise-scale projects. JBoss, is an open source J2EE server.
5.1.6.5 Lotus Notes and Domino
Lotus uses the Domino name to refer to a set of Notes server applications specifically designed for web usage. Notes itself refers to the overall product.
A Domino server can effectively be configured to serve an Intranet-style GroupWare solution implemented in Notes, on the Internet.
It is a solution for projects where integration with an existing Notes network is required.
5.1.6.6 Mediasurface
MediaSurface is another example of a product that enables the development of complete dynamically published websites and the collateral content management systems. It also uses the Oracle RDBMS as the repository for the website data. It has its own built-in web server.
http://www.mediasurface.com [External lInk]
5.1.6.7 Perl
Perl is one of the first all-purpose scripting languages. It excels at fast text processing, and is widely used. An important feature is the enormous range of third party libraries available.
It can be used to create dynamic pages both using CGI scripts, or special server modules like mod_perl for Apache.
5.1.6.8 PHP Hypertext Pre-processor
PHP is also a scripting system. It runs on most web servers and operating system platforms. It is Open Source software, and therefore free.
Its main features are speed at runtime and fast development speed. It has a large library of third party components, and can interface with COM, CORBA, MySQL, etc.
5.1.6.9 Vignette Storyserver
Vignette Story server is an example of a product that enables the development of complete dynamically published websites and the collateral content management systems. It uses a version of the TCL scripting language and the Oracle RDBMS as the repository for the website data.
5.1.6.10 Zope
Zope serves pages written using the cross-platform scripting language, Python. It can use its internal database or external databases for storing content. It also comes with a number of basic content management needs provided for ‘out of the box’.
Refer to section 2.4 Building in universal accessibility.
2.4 Building in universal accessibility + checklist