28.06.2013 Views

Papers in PDF format

Papers in PDF format

Papers in PDF format

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

long: <strong>in</strong> the music database, the composer page for Wolfgang Amadeus Mozart would list several hundred<br />

correspond<strong>in</strong>g pieces. This list would be somewhat cumbersome to view <strong>in</strong> a s<strong>in</strong>gle web page. An <strong>in</strong>termediate<br />

directory should be generated <strong>in</strong> cases where lists grow to long, conta<strong>in</strong><strong>in</strong>g l<strong>in</strong>ks such as ``A-B'', ``C-D''... Also,<br />

this could <strong>in</strong> many cases significantly reduce the time required for load<strong>in</strong>g parts of lists, which is especially<br />

important <strong>in</strong> the case of low Internet transmission rate.<br />

Very short pages:<br />

<strong>in</strong> a database, some tables can conta<strong>in</strong> only very few short columns. However, presently a web page will be<br />

generated for each table entry, unless it is an associative entity (see Section 6.3). This is not satisfy<strong>in</strong>g; a better<br />

solution <strong>in</strong> this case would be to generate web pages conta<strong>in</strong><strong>in</strong>g more than one table entry, separated by a<br />

dist<strong>in</strong>guished border, such as a horizontal rule.<br />

Code Translation:<br />

In many applications short str<strong>in</strong>gs or s<strong>in</strong>gle letter codes are used to code <strong>in</strong><strong>format</strong>ion (e. g. <strong>in</strong> the Music database,<br />

``CH'' stands for choir, ``S'' for soloist). An automatic translation of such str<strong>in</strong>gs would improve the readability of<br />

the hypertext. Add<strong>in</strong>g a table Codetranslations (one-to-many relationship to Columns) to the meta base would<br />

implement this concept.<br />

7.2 Structural Improvements<br />

Weak entities:<br />

<strong>in</strong> our system catalog, the table Columns would be a weak entity: it cannot exist without its parent. All<br />

<strong>in</strong><strong>format</strong>ion <strong>in</strong> entries <strong>in</strong> the Columns table should be added to the strong entity Tables. An analysis based on<br />

3,000 tables <strong>in</strong> a large Austrian bank showed an average of 13 columns per table [Pönighaus 1993]: this means<br />

that if we generated a system catalog browser we could save 13 web pages per entry <strong>in</strong> the table Tables (3,000<br />

<strong>in</strong>stead of 3,000 + 39,000 pages).<br />

Denormalized data:<br />

for performance reasons, data <strong>in</strong> practical applications are often denormalized: e. g. many-to-many relationships<br />

are implemented via fixed-length arrays [Premerlani &Blaha 1994]. In order to generate appropriate hypertext<br />

this situation must be recognized (by additional user <strong>in</strong>put) and handled accord<strong>in</strong>gly.<br />

Slices:<br />

[Isakowitz et al. 1995] <strong>in</strong>troduced the concept of <strong>in</strong><strong>format</strong>ion slices <strong>in</strong> their<br />

Relationship-Management-Methodology (RMM): splitt<strong>in</strong>g an entity <strong>in</strong>to mean<strong>in</strong>gful slices for presentation of<br />

<strong>in</strong><strong>format</strong>ion, result<strong>in</strong>g <strong>in</strong> a separate web page for each slice of a table entry. In the present version of our<br />

generator, all fields of a table would be presented <strong>in</strong> one page. There are situations where this is not satisfy<strong>in</strong>g;<br />

we consider the <strong>in</strong>tegration of this concept <strong>in</strong>to our meta base to be comparatively easy.<br />

Dynamic HTML generation:<br />

<strong>in</strong> our prototype the generation of the hypertext is done <strong>in</strong> batch mode, but the meta base can also be used for<br />

dynamically generat<strong>in</strong>g SQL statements which extract the relevant data from the RDBMS. In this case the data<br />

would always be up-to-date, which obviously is a requirement <strong>in</strong> many applications. The concepts discussed <strong>in</strong><br />

this work essentially rema<strong>in</strong> unchanged for this task; <strong>in</strong> particular, there will be no need for any changes to the<br />

meta base.<br />

8 Conclusion<br />

In this work we show an approach to the automatic generation of hypertext from relational databases us<strong>in</strong>g metadata.<br />

Reverse eng<strong>in</strong>eer<strong>in</strong>g applied to relational databases proves to be applicable to this problem, s<strong>in</strong>ce the referenc<strong>in</strong>g<br />

<strong>in</strong><strong>format</strong>ion provided by the database system is ideally suited for automatically generat<strong>in</strong>g hypertext l<strong>in</strong>ks between<br />

documents for <strong>in</strong>stances of entities. The use of a meta base which is extracted from the system catalog and which can be<br />

augmented by the user allows for a flexible solution to the problems typically found <strong>in</strong> practical database applications.<br />

In this text the method is applied to a database on music records. Interested readers are <strong>in</strong>vited to take a look at the<br />

music database at http://exaic.wu-wien.ac.at/~poenigh/platten/entry.htm.<br />

References

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

Saved successfully!

Ooh no, something went wrong!