Documents of legal law dating back to the Magna Carta are soon to
be made available online through object oriented database
techniques
The Statutory Publications Office (SPO), part of the Lord
Chancellors Department, is responsible for maintaining a database
of primary and secondary legislation. Unfortunately, paper copies
only appear as originally passed by Parliament, and do not contain
subsequent amendments. To find the current state of the law, one
has to manually apply the amendments. This requires a detailed
understanding of the legislative process and is time consuming.
A unique feature of the Statute Law Database is that it holds the
original version of an Act along with subsequent amendments. Thus,
it is possible to view an Act at a specific date with all the
amendments applied.
The problemThe system comprised of two
components: a document management system used to maintain the law
and a publishing system, allowing end users to view the text of the
law. Two years ago it was realised that the character-based
interface of the publishing system had severe limitations and an
alternative was sought.
Initial studySyntegra provided the
SPO with the document management system several years earlier and
had a detailed understanding of the SPO's business. The first stage
of the project was to fully specify what was required from the new
publishing system. The SPO commissioned Syntegra to carry out a
study. As well as producing a study report, Syntegra developed a
demonstration model of how the end system would look. The
demonstration model was constructed using a series of hand crafted
HTML pages.The demonstration model provided a simple way to capture
the user interface definition. Discussion between the SPO and
Syntegra allowed the user interface to be refined before any
development work commenced. The SPO demonstrated the model to
various groups of users and gained much useful feedback. The model
was also used as a sales tool by the SPO to get full support and
backing for the project.
ImplementationThe system was
implemented on a Sun machine running a Netscape Commerce server and
Verity's Topic database. The development work consisted of
producing a Common Gateway Interface (CGI) program to handle the
user interface and the construction of documents on the fly. A
filter program was also developed for converting documents from
their existing format to HTML, for loading into the Topic database.
The CGI program acts as "middleware" between the Netscape Commerce
server and the Topic database. The software was designed using
object-orientated design techniques and implemented using the C++
programming language. An "off the shelf" C++ class library was used
to reduce the programming effort and save re-inventing the wheel.
The software developed consisted of a set of libraries for handling
the CGI interface and the interface to the Topic database, and for
constructing documents on the fly. Also application modules were
developed for each frame or page within the system. The application
modules make extensive use of the common libraries and are thus
fairly simple and compact. During construction of the system, stub
modules were provided for the components not yet developed. Early
on in the project the SPO were provided with dial-up access to the
development system. This enabled the SPO to provide early feedback
and monitor progress.
The filter programThe filter program,
which loads documents from the current editorial database into the
Topic database, has a set of Excel tables at its core. The Excel
tables map SGML tags onto HTML tags and specify any special
processing required. The initial approach to exporting SGML data
from the editorial system proved too complex and slow. It would
have taken four weeks of continuous processing to populate the
Topic database. The filter was therefore modified to open the
editorial system files directly and process the binary format data.
This enabled the entire database to be processed in less than four
hours. This has simplified the operation of the update process as a
full update can be done over night rather than performing
incremental updates of documents marked for translation.
SummaryProducing a quick demonstration model using HTML and
"smoke and mirrors" was an easy way to capture the user interface.
An unexpected benefit of the demonstration model was to provide the
SPO with a powerful marketing tool. By using object orientated
techniques, the software libraries could be re-used on other
projects. During the project the CGI library was used to develop
the user registration and management software for the Syntegra
website. Several other projects are planned which may re-use parts
of the software produced.A large amount of effort was put into
making the user interface easy to use and in optimising the
performance of the system. This has paid off with users commenting
on how impressed they are with the system.The Statutory
Publications Office plan to launch a public Internet service
sometime during 2000 when the database will be fully up to
date.
Compiled by Will Garside from
http://www.nl72.dial.pipex.com/sldcs.htm