Web Information Systems

31
Web Information Systems Geert-Jan Houben

description

Web Information Systems. Geert-Jan Houben. Hypermedia. hypertext + multimedia informatie-objecten (tekst, plaatjes, animaties, audio, video) alles in één keer tonen gaat niet: layout timing navigatie presentatie ontwerpen of genereren , voor Web, Wap, PDAs, etc. - PowerPoint PPT Presentation

Transcript of Web Information Systems

Web Information Systems

Geert-Jan Houben

Hypermedia

hypertext + multimedia– informatie-objecten (tekst,

plaatjes, animaties, audio, video)– alles in één keer tonen gaat niet:

• layout• timing• navigatie

– presentatie ontwerpen of genereren, voor Web, Wap, PDAs, etc.

Evolutie in Hypermedia

• vroeger: stand-alone special-purpose systemen

• nu: alles is Web-based– van authoring naar designing en

dan naar generating– van statisch naar dynamisch– van single site naar portals– van read-only naar interactief en

vaak ook collaboratief

Drie Generaties Web

• 1: door auteur geschreven HTML– eenvoudig, eenvormig interface– grote onderhoudsinspanning– niet geschikt voor veranderende info

• 2: automatisch genereren van info– eerst met templates (en databases)– later met XML en XSLT transformaties

• 3: automatische verwerking van info– expliciete meta-data (RDF)– afspraken over betekenis (ontologieën)

Web-based IS

• Web-browser als front-end• Database als back-end• Ontwerp van:

– datastructuren (vgl. ER-modelleren)

– presentatie (layout)– navigatie

• Implementatie:– on-line (directe database toegang)– off-line (uit database gegenereerd)

RMM

Relationship Management Methodology– basis: entity-relationship

modellering– transformatie van datamodel naar

een data+navigatiemodel– RMDM: Relationship Management

Data Model geeft objecten en navigationele verbanden weer

RMDM

• (applicatie)domein model primitieven– entiteiten– attributen– verbanden

• slices om grote objecten (met vele attributen) op te splitsen in kleinere eenheden met (samenhangende) attributen

Volledig RMDM Schema

Toekomst van het Web

1. gemeenschappelijke syntax• HTML: een vaste set tags maakt

het moeilijk om informatie-elementen te benoemen

• XML: laat toe datastructuren te definiëren:• tags met vrij te kiezen namen• vrij te kiezen attributen• eenvoudige definitie: DTD• uitgebreide definitie: XML-Schema

<skills> <people> <person> <name>Bob</name> <know-how>Quilt</know-how> </person> <person> <name>Peter</name> <know-how>Quilt</know-how> <know-how>XML-GL</know-how> </person> </people> <seminars> <seminar> <topic>Quilt</topic> <participant> <name>Karin</name> <name>Alice</name> </participant> </seminar> </seminars> </skills>

Toekomst van het Web

2. beschrijving van betekenis:RDF• resource: verwijst naar een

informatie-item, vb. via een URL• property type: naam van een

eigenschap van de resource• value: waarde voor die eigenschap

voorbeeld: resource=URL van webpage, property type=“author”, value=“John Smith”

<?xml:namespace ns = "http://www.w3.org/RDF/RDF/" prefix = "RDF" ?>

<?xml:namespace ns = "http://purl.oclc.org/DC/" prefix = "DC" ?>

<?xml:namespace ns = "http://person.org/BusinessCard/" prefix = "CARD" ?>

<RDF:RDF> <RDF:Description RDF:HREF = "http://uri-of-Document-1"> <DC:Creator RDF:HREF = "#Creator_001"/> </RDF:Description>

<RDF:Description ID="Creator_001"> <CARD:Name>John Smith</CARD:Name> <CARD:Email>[email protected]</CARD:Email> <CARD:Affiliation>Home, Inc.</CARD:Affiliation> </RDF:Description> </RDF:RDF>

Toekomst van het Web

3. betekenis: ontologieën• ontologie = een woordenschat met

daaraan verbonden betekenis• mogelijkheid om synoniemen,

specialisaties en andere verbanden te definiëren

• gebruik van dezelfde ontologie = overeenkomst over wat de woorden (tags, attributen) betekenen

Toekomst van het Web

4. Logica: om conclusies te trekken• nodig bijv. in electronic commerce

(wat betekenen berichten die klant en leverancier uitwisselen?)

5. Einddoel: vertrouwen in de betekenis van communicatie tussen Web-systemen, en daardoor mogelijkheid tot automatisering met agents

XML Querying

(in XQL):

//person/name[../know-how="Quilt"] $union$ //seminar[topic="Quilt"]/participant/

name

Hera project• doel: ondersteun ontwerp (specificatie)

van WIS met “hypermedia access”• data afkomstig uit heterogene legacy

informatiesystemen of het WWW • multimedia-data • customization + personalization • nadruk op navigatie en relaties

partners: CWI en Philips

Hera applicaties

• onroerend-goed verkoop • medewerkers-databases • museum-databases • post-order-catalogi • veilingen• EPG (elektronische TV-gids)

Voorbeeld EPG (Philips)

Voorbeeld EPG (Philips)

Hera architectuur

XML querytaal

• XML voor data-uitwisseling op het Web

• W3C probeert standaard te ontwikkelen: XML Query Working Group

• XML Query Data Model

XML data

<dbgroup><member><name>Smith</name><age>28</age><office><building>A</building>

<room>6</room></office></member>

..<member><name>Clark</name><age>35</age><office><building>A</building>

<room>7</room></office></member>

</dbgroup>

XML-QL

• Graph-based• SELECT-WHERE like SQL• Features from semistructured data• Regular path expressions

WHERE <member><name> $n </name><age> $a </age><office><building> $b </building><room> $r </room></office>

</member> ELEMENT_AS $m IN “www.a.b.c./dbgroup.xml”a < 30CONSTRUCT $m

Lorel

• Literal trees• Extension of OQL

SELECT db.memberFROM dbgroup dbWHERE db.member.age < 30

XQL

• Extension of XSL pattern language (now XPath)

• Origin in document processing community

• Result always preserves document ordering and hierarchy

member [age < 30]

Quilt

• Small implementable language for W3C

• For data from various sources• XML-QL, XQL, SQL, OQL• Tree-like data model

FOR $m IN document (“www.a.b.c/dbgroup.xml”)//member

WHERE $m/age < 30RETURN $m

Other XML query languages

• XML-GL• XQuery• XPointer

• XML Algebras

XPath

• Path expressions in OO databases/Students/Student/Status

• Semistructured: – missing parts

/Students//Status

– conditions/Students/Student[Status=“U4”]

• Indexing, wildcards• Selection, string manipulation,

aggregation, attribute existence, union

XQuery

• http://www.w3.org/XML/Query• “the” standard for XML querying

RDF Query Language

• Querying RDF metadata– SQL/XQL style approach, viewing

RDF metadata as relational or XML database [RDF Query Specification (IBM)]

– viewing Web descr. by RDF metadata as knowledge base, applying knowledge representation and reasoning techniques [W3C related]

Web programming

• Fixed (HTML) pages• Style sheets• Client-side programming

(javascript, applets)• Server-side programming:

– CGI– JAVA servlets– HTML++ / XML++ (SSI: php, asp,

jsp, xsp)