WASD Hypertext Menu Primer

[next] [previous] [contents] [full-page]

2 - Data Organisation

Organisation of Hypertext information falls naturally into two aspects:

  1. The physical organisation of the files.
  2. The logical organisation of the information (structure, relationships, interrelationships, etc.)
As this document is a primer, this section will mainly concern itself with the physical organisation of data, which coupled with an emphasis on the menuing capability within WASD (see 3 - Menus), naturally results in a somewhat hierarchical logical organisation. Discussion of inter-document referencing is best left to texts on HTML. Basic references are provided in 6 - References.

Physical Organisation

WASD online information resources will have VMS file space provided for them. This will comprise a single top level directory under which data files and subdirectories can be organised by the manager(s) as required. PC users will be able to USE to their area.


2.1 - File Paths

The information in this section contains some technical information on Hypertext referencing and links. This is directly applicable to specifying files in menus (see 3 - Menus).

File and directory locations are specified using URL syntax (see 5 - Glossary), where slash-separated ("/") elements delineate a hierarchy leading to a data item. Anyone familiar with the syntax of the Unix file system, or the MS-DOS file system (where back-slashes are hierarchy delimiters), will feel at home with URL syntax. File specifications under VMS are not case-sensitive.

A VMS directory specification

  WEB:[HTML.HTML-PRIMER]
would be represented in URL syntax as
  /web/html/html-primer/
and a VMS file specification
  WEB:[HTML.HTML-PRIMER]HTML-PRIMER.HTML
represented as
  /web/html/html-primer/html-primer.html
- NOTE -

It is not required (although not forbidden) to supply a VMS master file directory component ("[000000]", "[000000.", etc.) in a URL specification. Hence the file specification
  WEB:[000000]HOME.HTML
should be represented as
  /web/home.html


2.1.1 - Absolute File Path

A file may be specified using an absolute, or full path. This must specify the location of the file exactly. Absolute paths always begin with a forward-slash ("/"). For example:

  /web/committee/minutes/1994/1994-09-27.txt
  /web/committee/constitution.txt
  /web/committee/membership/fred-bloggs.txt


2.1.2 - Partial (or Relative) File Path

A file may be specified relative to its current location. That is, a current document (or menu) may specify another document file relative to itself. This may be at the current level, a subdirectory, or in another part of the directory tree related to the current. Relative paths never begin with forward-slash ("/").

For example, documents at the same level as the current may be specified without any hierachy being indicated:

  1994-07-22.txt
  1994-08-24.txt
  1994-09-27.txt

Documents at an inferior point in the hierarchy may be specified as in the following example:

  1993/1993-02-17.txt
  1993/reports/membership.txt
  other/etc.txt

Documents in a related part of the hierarchy may be referenced using the "../" construct. As with MS-DOS and Unix this syntax indicates the immediately superior directory.

  ../other_committee/1993/1993-02-17.txt
  ../other_committee/1993/reports/balance-sheet.txt
  ../../other_section/committee/constitution.txt


2.1.3 - WEB Root

Arbitrary files may not be accessed.

The Basic HyperText Server (BHTS, see 5 - Glossary) will only access files where the path begins with the string WEB. This is done as a security measure, preventing clients requesting the server to roam all through the file system. It is effectively constrained to specified hierarchies using this mechanism.

If a new hierarchy is required contact VMS systems management.

- NOTE -

The server executes as a normally privileged process and cannot be used to subvert security. It only has access to files are world-readable. Preventing it from roaming the file system keeps the number of security alarms at an acceptable level!


2.1.4 - File Permissions

As the server executes as a normally privileged process, files it accesses must be world-readable, or specifically have the server account granted access in an ACL.

A protected file results in the server returning an error message and aborting the request.


[next] [previous] [contents] [full-page]