28.06.2013 Views

Papers in PDF format

Papers in PDF format

Papers in PDF format

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Every S-collection (<strong>in</strong>stance) has a unique identifier, a name used by other S-collections for address<strong>in</strong>g, and<br />

generally a "data unit" which will be called content henceforth. Execut<strong>in</strong>g the content will ord<strong>in</strong>arily cause<br />

some <strong>in</strong><strong>format</strong>ion to be presented (text, pictures, audio, video-clips, etc.).<br />

An S-collection encapsulates a particular <strong>in</strong>ternal structure. The <strong>in</strong>ternal structure is a set of other S-collections<br />

(called members henceforth) related by a number of computer-navigable l<strong>in</strong>ks. One of the members of the Scollection<br />

must be designated as head of the S-collection. Note that l<strong>in</strong>ks are encapsulated with<strong>in</strong> a particular<br />

S-collection: they may only be def<strong>in</strong>ed between members of the same S-collection. In this sense, l<strong>in</strong>ks belong to<br />

a particular S-collection; they do not belong to the hypermedia database or to either of the members related by<br />

the l<strong>in</strong>k (hence the "local referential <strong>in</strong>tegrity" [11] of the model). L<strong>in</strong>ks also do not exist as <strong>in</strong>dependent data<br />

objects which are <strong>in</strong>stances of a particular class, operations cannot be addressed to l<strong>in</strong>ks.<br />

Figure 1: Internal Structure of S-collections<br />

The HM Data Model provides a number of predef<strong>in</strong>ed subclasses of S-collection. From a data structur<strong>in</strong>g po<strong>in</strong>t<br />

of view, these predef<strong>in</strong>ed subclasses are similar to the hypermedia topologies <strong>in</strong>troduced by Parunak [18].<br />

Simply speak<strong>in</strong>g, subclasses of S-collection def<strong>in</strong>e a particular topology of encapsulated l<strong>in</strong>ks, as can be seen <strong>in</strong><br />

Figure 1. For the purposes of this paper, it suffices to describe the five predef<strong>in</strong>ed subclasses : Envelope,<br />

Folder, Menu, Freel<strong>in</strong>ks, and Void:<br />

1. Envelope: all members of an envelope are fully related, every member is l<strong>in</strong>ked to every other member.<br />

2. Folder: an ordered set of members, each member hav<strong>in</strong>g l<strong>in</strong>ks to "next" and "previous" members.<br />

3. Menu: a simple hierarchical structure; the head of a menu S-collection <strong>in</strong>cludes l<strong>in</strong>ks to all other<br />

members, and each member is provided with a l<strong>in</strong>k to the head.<br />

4. Freel<strong>in</strong>ks: members of a freel<strong>in</strong>ks S-collection may be arbitrarily connected by means of special<br />

INSERT_LINK and REMOVE_LINK operations.<br />

5. Void: an S-collection devoid of <strong>in</strong>ternal structure, hav<strong>in</strong>g only content (for example, "a" and "b" <strong>in</strong> Figure<br />

1).<br />

Classes 1 to 4 above are termed complex S-collections s<strong>in</strong>ce they embody <strong>in</strong>ternal structure; class Void is<br />

termed simple. Complex S-collections may or may not have associated content; simple S-collections must have<br />

associated content.<br />

Navigational Operations<br />

Navigation with<strong>in</strong> the HM Data Model is accomplished via four operations ACCESS, ZOOM_IN, ZOOM_UP and<br />

ZOOM_BACK, which are addressed to a particular S-collection.<br />

All S-collections can respond to the message ACCESS. It implies execut<strong>in</strong>g the S-collection´s content (i.e.,<br />

present<strong>in</strong>g some text, picture, audio, video clips etc.). Typically, a chunk of hypermedia <strong>in</strong><strong>format</strong>ion associated<br />

with the current S-collection is visualised on the user screen, but any k<strong>in</strong>d of action can happen <strong>in</strong> response to<br />

the message ACCESS if the correspond<strong>in</strong>g method has been overridden. Complex S-collections without content<br />

forward the message to their head.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!