by
Erik Sandewall
Department of Computer and Information Science
Linköping University
58183 Linköping, Sweden
Think of "WWW technology" as the use of large structures, built from small, interlinked text files.
(HTML pages use one particular syntax in those text files; they may co-exist with other syntaxes).
Our proposal: organize a database using WWW technology.
That means:
France:countries =
{ CAPITAL ~ Paris,
LANGUAGE ~ french,
CURRENCY ~ FRF,
NEIGHBORS ~ { Belgium, Germany, Switzerland,
Italy, Spain, Andorra },
ANTHEM-FIRSTLINE ~ "Allons enfants de la Patrie",
ANTHEM ~ [http://vir.liu.se/lit/anthems/France.html] }
Examples in Electronic Colloquium on Spatial and Temporal Reasoning (ECSTER)
This requires an underlying database representation, from which the HTML pages can be generated. Generation can be done on demand (query mode) or on update (derivation mode). Our colloquium application uses generation on update.
Baral96A : confpapers =
{FIRSTAUTHOR ~ Baral,
OTHERAUTHORS ~ {Gabaldon, Provetti},
TITLE ~ "Formalizing narratives using nested circumscription",
CONFERENCE ~ CommonSense96,
WEBPAGE ~ [http://www-formal.Stanford.EDU/tjc/96FCS/Final-Papers/alfredo@cs.utep.edu.ps],
RESTOPICS ~ {filtering}}
Baral : authors =
{FIRSTNAME ~ "Chitta",
WEB ~ [http://cs.utep.edu/chitta/chitta.html],
EMAIL ~ [chitta@cs.utep.edu],
AFFIL-GROUP ~ ElPaso-KRG,
PAPERS ~ {Baral95A:confpapers, Baral95B:confpapers,
Baral96A:confpapers},
GENERATORS ~ {contents ~ (ALLMYTENANTS indexpaper-full)},
BRC ~ [/brs/A/Baral/descrip.html]}
Conclusion: a straight-forward query language is not enough. One needs to use programs, in particular, large numbers of small program modules (object-orientation) and/or a rule-based system.
Our colloquium application uses Lisp as programming language.
/-------------\ /-------------\ /--------------\
| | | | | |
| text files, | | database | | colloquium |
| one per |--->| browser/ |===>| as browsable |
| object | | generator | | structure of |
| |<===| written in |<***| HTML pages |
| | | CommonLisp | | |
| | | | | |
\-------------/ \-------------/ \--------------/
* / |
* /-----/ |
* / |
maintainer end user
Baral96A : confpapers =
{FIRSTAUTHOR ~ Baral,
OTHERAUTHORS ~ {Gabaldon, Provetti},
TITLE ~ "Formalizing narratives using nested circumscription",
CONFERENCE ~ CommonSense96,
WEBPAGE ~ [http://www-formal.Stanford.EDU/tjc/96FCS/Final-Papers/alfredo@cs.utep.edu.ps],
RESTOPICS ~ {filtering}}
authors : types =
{ACCESSMODE ~ SUBDIR,
ACCESSPATH ~ [file:/info/www/ext/brs/A],
PROPERTIES ~
{LASTNAME ~ STRING,
FIRSTNAME ~ STRING,
...
WEB ~ STRING},
TYPICAL-MEMBER ~ Pattern}
This defines that the location of the descriptive text file for
the object Baral:authors is
file:/info/www/ext/brs/A/Baral/descrip.horl
system-core : concierges =
{TENANTS ~
{articles:types ~
{ACCESSPATH ~ [file:/home/erisa/wpd/cb]},
authors:types ~
{ACCESSPATH ~ [file:/info/www/ext/brs/cb]},
cities:types ~
{ACCESSPATH ~ [http://www.isy.liu.se/wwdb/geogr]},
...
webpages:types ~
{ACCESSPATH ~ [file:/info/www/ext/brs/cb]} }}
Note the functionality of a concierge!