Open hypermedia for WWW 1Kaj Grønbæk, Aarhus University Open hypermedia for WWW Plan –Motivation...
-
date post
22-Dec-2015 -
Category
Documents
-
view
214 -
download
0
Transcript of Open hypermedia for WWW 1Kaj Grønbæk, Aarhus University Open hypermedia for WWW Plan –Motivation...
Open hypermedia for WWW 1 Kaj Grønbæk, Aarhus University
Open hypermedia for WWW
• Plan– Motivation
– Emerging open hypermedia systems for the WWW
– Utilising the Devise Hypermedia framework on the WWW
– Concluding remarks
32. Serving Information to the Web with Hyper-G Andrews et al, Computer Networks and ISDN Systems
33. Designing Dexter-based hypermedia services for the World Wide Web K. Grønbæk et al,
34. The Distributed Link Service: A Tool for Publishers, Authors and Readers Carr et al
Open hypermedia for WWW 2 Kaj Grønbæk, Aarhus University
Why open hypermedia for the WWW?
Aiming to support the visions of cooperative hypermedia that support users in seamless sharing and creation of hypermedia structures on the Internet
The WWW doesn’t yet allow users’ to create links from and into materials they don’t own!
WWW documents need to be changed in order to create links from them!
WWW provides no support for organizing documents in individual or shared collections!
The WWW does not support cooperation on documents!
Open hypermedia for WWW 3 Kaj Grønbæk, Aarhus University
Open hypermedia
hypermedia objects in separate database - instead of embedded addresses
open: no requirement for special content-formats – use applications’ own formats
anchors may reference segments in any data-type, e.g. video, bitmaps
integrates the users’ favorite applications via inter-application communication
distinction between edit og browse user interface not necessary
link relations can be inspected and maps may be generated
collaborative manipulation of hypermedia structures – requires no write permission to content
Go to
Link object
Jump-addresses:
E.g. WWW
Open hypermedia:
E.g. DEVISE Hypermedia
Open hypermedia for WWW 4 Kaj Grønbæk, Aarhus University
Hyper-G
Developed at Graz University of Technology, Austria, 1993 ->
Combines hierarchical navigation, linking, and attribute/content search
Uses its own SGML document format HTF - but WWW compatible
Uses its own browsers: Harmony (UNIX) and Amadeus (PC-Windows)
Datamodel: document, cluster, collection, search, link
Uses object-oriented database to store hypermedia objects
Check: http://www.iicm.edu
Open hypermedia for WWW 5 Kaj Grønbæk, Aarhus University
Hyper-G: Datamodel example
Open hypermedia for WWW 6 Kaj Grønbæk, Aarhus University
Hyper-G: Architecture
Harmony User Interface
Hyper-G interface in Netscape
Hyper-G pages can be viewed in Netscape with “in-page” access to attrbutes and Hyper-G menu
Example: accessing external document attributes
Open hypermedia for WWW 9 Kaj Grønbæk, Aarhus University
Microcosm Distributed Link Service (DLS)
Developed at University of Southampton, UK, 1994 ->
Built on top of the general open hypermedia system called Microcosm• Inherits link model: Generic links, local links, specific links
Attaches a pop-up menu to the titlebar of Netscape windows on PCs or spawns a separate menu application on UNIX/Motif
Support compilation of DLS links into WWW documents on the fly
Stores links in separate linkbases (called filters)
Check:
wwwcosm.ecs.soton.ac.uk/dls/dls.html
<link type=local>
<src><doc>http://diana.ecs.soton.ac.uk/~lac/cv.html
<offset>
<sel>Microcosm
<dest><doc>http://bedrock.ecs.soton.ac.uk/
<offset>
<sel>The Microcosm Home Page
<owner>Les@holly
<time-stamp>Fri Mar 31 13:32:34 GMT 1995
<title>Hypermedia Research at the University of Southampton
Open hypermedia for WWW 10 Kaj Grønbæk, Aarhus University
Microcosm: Link concepts
Specific link• from an object at a specific location in a source document to an object at a
specific location in a destination document
Local Link• from an object at an arbitrary location in a source document to an object at a
specific location in a destination document
Generic Link• from an object at an arbitrary location in an arbitrary source document to an
object at a specific location in a destination document
(“object” is typically a textstring)
Text retrieval links - computed destination• search for string match across registered documents
• lookup in inverted indexes and computation of “similarity coefficient”
Open hypermedia for WWW 11 Kaj Grønbæk, Aarhus University
Node Content Viewer
Selection
ActionMenu Microcosm Filter Chain
User makes selectionand chooses actionfrom menu. e.g. Follow Link
Viewer passes messageto Microcosm, containingthe selection, the source fi le,the action chosen, and if possible, the position of the selection
Microcosm passes messagethrough filter programswhich decide what actionsto take (e.g. what links areavailable)
User SelectedLink Destinationssent to Microcosmwhich loadsappropriate data and viewer
Microcosm: Architecture
Open hypermedia for WWW 12 Kaj Grønbæk, Aarhus University
Microcosm DLS
Open hypermedia for WWW 13 Kaj Grønbæk, Aarhus University
Microcosm/DLS interface
Open hypermedia for WWW 14 Kaj Grønbæk, Aarhus University
Microcosm/DLS interface
Open hypermedia for WWW 15 Kaj Grønbæk, Aarhus University
Devise Hypermedia - a step towards cooperation support
Current attempts (Hyperwave, WebCosm) share a number of limitations:
They are not platform independent
They require special browsers (and formats)
Restricted data models
No explict cooperation support
Devise Hypermedia for the WWW:
Cooperation support is part of the general framework
Aim to use a generic interface which will work with any browser (Java-based )
Provides an extensive, general and tailorable data model
Advanced navigation facilities
Browser and platform independence is not as easy as it should be...
Architecture for DHM/WWW
Communication
Layer
Server hosts
OHP via HTTP
HypermediaDataBase server
Application Layer
Storage Layer
(Physical)
RuntimeLayer
(Conceptual)
(Within Component Layer)
Hypermedia Service Process
Application Interfaces
Storage Classes
Runtime Classes
(Storage Classes)
User’s
WWW browserWWW browser
Java Applet
with hypermediauser interface
DHM/WWW Applet
with hypermediauser interface
CGI scripts
Server hosts
LiveConnector OLEUser’s
WWW browser
Site X’s
WWW serverHTTP
Direct
TCP/IP
Connection
Application layer: DHM/WWW applet
Opening a page via DHM/WWW
QuickTime™ and aPhoto - JPEG decompressor
are needed to see this picture.
Making a selection for a link endpoint
QuickTime™ and aPhoto - JPEG decompressor
are needed to see this picture.
A temporary link dialog(forced by Java security)
A source link endpoint has been created
Making a selection in a destination page
QuickTime™ and aPhoto - JPEG decompressor
are needed to see this picture.
A destination endpoint has been added
Destination endpoint is
marked
QuickTime™ and aPhoto - JPEG decompressor
are needed to see this picture.
Overview of DHM anchors in a page
QuickTime™ and aPhoto - JPEG decompressor
are needed to see this picture.
Inspection of an anchor
QuickTime™ and aPhoto - JPEG decompressor
are needed to see this picture.
Open hypermedia for WWW 26 Kaj Grønbæk, Aarhus University
Communication Layer: CGI-script
A single CGI-script to handle the protocol• Link creation:
webBrowser,0002,http://www.daimi.aau.dk/~bouvin/DHM/,1,("http://www.daimi.aau.dk/~bouvin/DHM/""DEVISE""This is a home page for the DEVISE Hypermedia""369""6""0")
• Addition of endpoint:
webBrowser,0102,http://www.daimi.aau.dk/~kgronbak/DEVISE,1,("http://www.daimi.aau.dk/~kgronbak/DEVISE/""DEVISE""The name DEVISE is inspired""258""6""0")
The WWWInstCom class is specialized to generate textual response to the Applet instead of launching and communicating with an application
• Get locSpecs:
webBrowser,0900,http://www.daimi.aau.dk/~bouvin/DHM/
• Response - list of LocSpecs:
(1,1,("http://www.daimi.aau.dk/~bouvin/DHM/""DEVISE""This is a home page for the DEVISE Hypermedia""369""6""0"))
Open hypermedia for WWW 27 Kaj Grønbæk, Aarhus University
Application Layer: Structure of DHM Applet
by Oe.
by <a href=“DHM://382761471”>Oe</a>.
by <a href=““ onClick=“parent.h_f.document.dhmWeb.followLink(382761471)” onMouseOver=“window.status=‘DHM:
// 382761471’; return true”>Oe</a>
printFrame(“by <a href=\”\” onClick=\”parent.h_f.document.dhmWeb.followLink(382761471)\” onM...>Oe</a>“)
by Oe.
ExampleWeb server
DecodeLocSpecs
DHM server
Receive HTML
Insert anchors
Add Javascriptto anchors
Generate JS codeto display doc.
NetscapeFrame
Applet
HTTP CGI
LiveConnect
Open hypermedia for WWW 28 Kaj Grønbæk, Aarhus University
Extensions to the Devise Hypermedia Framework
Component
WWWComponent
STORAGE
Instantiation
WWWInstantiation
RUNTIME
InstCom
WWWInstCom
COMMUNICATION APPLICATION
DHM/WWW
Applet
Open hypermedia for WWW 29 Kaj Grønbæk, Aarhus University
Storage/Runtime layers
Straightforward specializations and a few modifications of kernel functionality
Component stores document URL as contents and modification date in an attribute
• Date is used to raise exceptions when documents have changed since DHM server was notified
Anchor uses text selection, position and length to locate parts of documents
• Extensions to locate parts of other MIME-types via plug-in such as Shockwave and Quicktime is a future design issue
Instantiations needs to buffer information e.g. on multiple destinations and return them in a single communication.
• (A little complicated in the current model)
At the RUNTIME layer the handling of current link needs to be changed, since many users may interact with the same RUNTIME process
Open hypermedia for WWW 30 Kaj Grønbæk, Aarhus University
Towards cooperation support for the WWW
Browsing:
DHM/WWW provides multiple structures to the same body of WWW documents • Similar to the 1985 ideas in Intermedia - providing multiple Webs
• Links into and from
• Private, public and group structures
Authoring:
Groups may manage and coordinate authoring of a body of WWW documents via a DHM/WWW service
• Assumes login to common server(s)
• Assumes a Java compatible DHM-extended HTML editor
Lock management for distributed documents • Assumes that the DHM-extended editor always requests lock from the relevant DHM/WWW server
Awareness Notifications for changing WWW documents• Assumes direct server to Applet communication
Open hypermedia for WWW 31 Kaj Grønbæk, Aarhus University
Performance issues
Adding DHM/WWW links to an existing Web page requires:
Establishing communication with an additional server • (when we get beyond the current Java limitation)
Transfer of a set of LocSpecs - typically less than 100 bytes each
Processing of the HTML code to insert additional links + JavaScript control code
• (JavaScript not necessary in an ActiveX/Explorer solution)
The overhead in terms of data transferred is quite modest compared to most Web pages containing graphics, applets, Shockwave and the like
Processing of the HTML is fairly fast compared to rendering of pictures etc.
The additional server requests may cause delays
Open hypermedia for WWW 32 Kaj Grønbæk, Aarhus University
Status
DHM/WWW Java applet prototype implemented• Cannot access selections in browsers due to security limitations (Netscape 4
promise a solution for this)
• Cannot connect to any otherserver than the one it came from(Signed Java applets promise a solution for this)
CGI scripts in BETA establish communication to DHM Server process• Only Applet to Server communication supported up till now
A version without Locking and Awareness features demonstrated at Hypertext ‘97, April 6-11...
Next steps• Support for cooperation
• Support for non-HTML pages (e.g. QT, VRML)
Open hypermedia for WWW 33 Kaj Grønbæk, Aarhus University
Next generation: COCONUT architecture
Peer-to-peer communication using TCP/IP
Three different ways of managing structures
• Applet
• Helper App.
• Proxy
http://www.cit.dk/coconut
Web serverOffice apps.
Applications
StructureServer
Hyperstore
OHP
Office apps.Web Browsers
MS IE NS C
NavLets
Webvise
HSP
JDBC/ODBC
Proxy
Web server
Open hypermedia for WWW 34 Kaj Grønbæk, Aarhus University
Next generation(1): Navette
Java Applet running in a separate window
Written with a generic framework called Arakne
Specially tailored for MS Internet Explorer using COM
Open hypermedia for WWW 35 Kaj Grønbæk, Aarhus University
Arakne framework
Extensible with beans in internal frame
Encapsulates browser in a single class
StructureServer
StructureServer
Common Applet Framework (Arakne)
NavigationalTool
SpatialTool
Proxy
Web Server
StructureServer
WebBrowser
Client-Lib
HTTP
JavaScript
OHP
Browser
HTTP
StructureServer
Gateway
OHP
SBMS
XToolApplication
Layer
ServiceLayer
StructureLayer
Open hypermedia for WWW 36 Kaj Grønbæk, Aarhus University
Next generation (2): Webvise
Helper application
Tailored to Internet Explorer using COM
Catches all browser events
Node Browser Link Browser
Current Context
MS Word MS ExcelMS Internet Explorer
IHyperviseApplObj
IWebbrowser2
Other InterfacesOther InterfacesOther Interfaces
_Application_Application
Hypervise Client
Application Object
SessionMgrPres
Server Comm . Handler
SessionPres
SessionPres
IE WrapperWord Wrapper
Excel Wrapper
Structure Server
Server Notification Handler
DWebBrowserEvents2
Client Side
Server Side
Webvise architecture