Danius T. Michaelides, David E. Millard, Mark J. Weal, David De Roure Auld Leaky: A Contextual Open Hypermedia Link Server.

Slides:



Advertisements
Similar presentations
Medical Imaging Resource Center A Tour of the MIRC Community.
Advertisements

TU e technische universiteit eindhoven / department of mathematics and computer science Specification of Adaptive Behavior Using a General- purpose Design.
Java Script Session1 INTRODUCTION.
Snejina Lazarova Senior QA Engineer, Team Lead CRMTeam Dimo Mitev Senior QA Engineer, Team Lead SystemIntegrationTeam Telerik QA Academy SOAP-based Web.
The Pipeline of Enrichment Don Cruickshank (sotonoid) 15 th August 2001 The 7th International Workshop on Open Hypermedia Systems.
Bookshelf.EXE - BX A dynamic version of Bookshelf –Automatic submission of algorithm implementations, data and benchmarks into database Distributed computing.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
B.Sc. Multimedia ComputingMedia Technologies Database Technologies.
David E. Millard, Danius T. Michaelides, David De Roure, Mark J. Weal Beyond the Traditional Domains of Hypermedia.
Mark Weal Auld Linky and the AKT - EQUATOR Bridge.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
Adaptive Hypermedia on the Web: Methods, Technology and Applications Paul De Bra Eindhoven University of Technology Eindhoven, The Netherlands Centrum.
World Wide Web1 Applications World Wide Web. 2 Introduction What is hypertext model? Use of hypertext in World Wide Web (WWW) – HTML. WWW client-server.
Introduction to Web Interface Technology (CSE2030)
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
1 Workflow Description for Open Hypermedia Systems Sanjay Vivek, David C. De Roure Department of Electronics and Computer Science.
CHIME: A Metadata-Based Distributed Software Development Environment Stephen E. Dossick Dept. of Computer Science Columbia University
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Mark J. Weal, Gareth V. Hughes, David E. Millard, Luc Moreau Open Hypermedia as a Navigational Interface to Ontological Information Spaces.
XLink: Open Linking Standard XML / XSL separate  data semantics  presentation semantics Need to also separate out  navigation semantics Single unique.
WWW and Internet The Internet Creation of the Web Languages for document description Active web pages.
1 The World Wide Web. 2  Web Fundamentals  Pages are defined by the Hypertext Markup Language (HTML) and contain text, graphics, audio, video and software.
COHSE Informed WWW Link Navigation Using Ontologies Prof. Carole Goble, Sean Bechhofer Dr. Leslie Carr, Prof. Wendy Hall, Prof. David De Roure, Steve Harris,
Sys Prog & Scripting - HW Univ1 Systems Programming & Scripting Lecture 15: PHP Introduction.
INTRODUCTION TO WEB DATABASE PROGRAMMING
IT 210 The Internet & World Wide Web introduction.
Chapter 9 Using Perl for CGI Programming. Computation is required to support sophisticated web applications Computation can be done by the server or the.
DHTML. What is DHTML?  DHTML is the combination of several built-in browser features in fourth generation browsers that enable a web page to be more.
NETWORK CENTRIC COMPUTING (With included EMBEDDED SYSTEMS)
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Chapter 33 CGI Technology for Dynamic Web Documents There are two alternative forms of retrieving web documents. Instead of retrieving static HTML documents,
Chapter 4: Core Web Technologies
Web Architecture & Services (2) Representational State Transfer (REST)
USING PERL FOR CGI PROGRAMMING
Samhaa R. El-Beltagy, Wendy Hall, David De Roure, and Leslie Carr Intelligence, Agents, Multimedia Department of Electronics and Computer Science University.
Java CGI Lecture notes by Theodoros Anagnostopoulos.
Murach’s ASP.NET 4.0/VB, C1© 2006, Mike Murach & Associates, Inc.Slide 1.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Chapter 6 Server-side Programming: Java Servlets
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Architectural Patterns Support Lecture. Software Architecture l Architecture is OVERLOADED System architecture Application architecture l Architecture.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Web Programming Brian Toone 8/27/2014. Outline for today 1.Understanding the architecture of the web 2.Overview of programming languages – Client-side.
Secure Systems Research Group - FAU SW Development methodology using patterns and model checking 8/13/2009 Maha B Abbey PhD Candidate.
SNOWTAM Trial: REST Interface. AIXM XML Developers' Seminar 2 Contents Digital-SNOWTAM Trial Introduction REST Introduction REST in the Digital-SNOWTAM.
A FIRST TOUCH ON NOSQL SERVERS: COUCHDB GENOVEVA VARGAS SOLAR, JAVIER ESPINOSA CNRS, LIG-LAFMIA, FRANCE
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
Saving State on the WWW. The Issue  Connections on the WWW are stateless  Every time a link is followed is like the first time to the server — it has.
2007cs Servers on the Web. The World-Wide Web 2007 cs CSS JS HTML Server Browser JS CSS HTML Transfer of resources using HTTP.
SSE3 Hypertext concepts 1. Agenda Pioneers and evolution Hypermedia – Modern hypermedia technology – Structure domains Architectural evolution The project.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
EMBL-EBI MSD Search and Visualization tools Jawahar Swaminathan.
SOAP-based Web Services Telerik Software Academy Software Quality Assurance.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
Representational State Transfer (REST). What is REST? Network Architectural style Overview: –Resources are defined and addressed –Transmits domain-specific.
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
Web Server.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Introduction and Principles Web Server Scripting.
RESTful Web Services What is RESTful?
Software Reuse Course: # The Johns-Hopkins University Montgomery County Campus Fall 2000 Lecture # 2 - September 14, 2004.
How CGI and Java Servlets are Run By David Stein 14 November 2006.
COSC 2328 – Web Programming.  PHP is a server scripting language  It’s widely-used and free  It’s an alternative to Microsoft’s ASP and Ruby  PHP.
Web Design Terminology Unit 2 STEM. 1. Accessibility – a web page or site that address the users limitations or disabilities 2. Active server page (ASP)
General Architecture of Retrieval Systems 1Adrienn Skrop.
REST API Design. Application API API = Application Programming Interface APIs expose functionality of an application or service that exists independently.
Section 6.3 Server-side Scripting
Introduction and Principles
Chapter 27 WWW and HTTP.
Presentation transcript:

Danius T. Michaelides, David E. Millard, Mark J. Weal, David De Roure Auld Leaky: A Contextual Open Hypermedia Link Server

FOHM to Auld Linky The Fundamental Open Hypermedia Model (FOHM) Open Hypermedia Protocol (OHP) Open Hypermedia Systems Working Group (OHSWG) FOHM is based on the OHP data model It extends the model to be more generic to cover several domains of hypertext Always intended to include Context and Behaviour We are now using a simple notion of these (lists of key/value pairs)

FOHM to Auld Linky Auld Linky (Leaky) serves FOHM structures Stand alone process Written in Perl –Cross-platform –Availability of code libraries –Eval for free Uses XML representations of linkbases Communicates over HTTP (module) Query via pattern matching Results are filtered by context

FOHM Navigational Structure

HTTP Communication HTTP GET – sent with an id –Returns the object in the link base with that id HTTP POST – sent with FOHM object as content –Pattern matched against linkbase and sub-linkbase returned HTTP PUT – sent with FOHM object as content –Object is added to the linkbase HTTP DELETE – sent with an id –Object with that id is removed from the linkbase

Pattern Matching Natural way of specifying complex queries Queries and structures are interchangeable –Store queries in a linkbase Not tied to a query language –Interchangeable back-ends –Database back-end a possibility –Current version is self-contained (a single executable)

Variables and Constraints To enable pattern matching we have added variables and constraints to the FOHM structures –Variable objects will match any other object of the same type –Constraints on variables add conditions to that matching (currently these are specified in Perl but other languages could be supported in the future)

Context Context objects can be attached at any point on the FOHM structure They are simple lists of key/value pairs A Context Object can also be attached to a query office ( $_[0] gt "19:05");

SRCDEST Link

SRCDEST Link

SRCDEST Link

SRCDEST Link

Behaviour Behaviour is opaque to the Auld Leaky implementation, and is interpreted by the client It allows hypermedia authors to specify how certain events, such as ‘follow link’, alter the users context, e.g. progressing them through a timeline

Applications : Short Story Engine CGI based Hypertext Story Engine Constructs short stories for the reader on the fly It maintains a user profile, in the form of a context, that it uses to find the next appropriate story fragment Readers move through the story and Behaviour objects alter their context (or profile) accordingly Thus we enable some form of narrative structure over otherwise loosely coupled story fragments

Short Story Structures

SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link

SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link

SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link

SRCDEST Story Fragment Link SRCDEST Story Fragment Link SRCDEST Story Fragment Link

Applications : Glasgow Applet Generates a dynamic document about the History of Glasgow Based on user interests (e.g. Government, Culture) We have now re-written the applet as a servlet (to enable outside access through our firewall!)

Tours and LoDs 132 Tour (list) 13 text 2 LoD (list) 1 text 2 LoD (list) 13 text 2 LoD (list)

Tours and LoDs 132 Tour (list) 13 text 2 LoD (list) 1 text 2 LoD (list) 13 text 2 LoD (list)

Tours and LoDs 132 Tour (list) 13 text 2 LoD (list) 1 text 2 LoD (list) 13 text 2 LoD (list)

Tours and LoDs 132 Tour (list) 1 text 2 LoD (list) 13 text LoD (list)

Tours and LoDs 132 Tour (list) 1 text 2 LoD (list) 13 text LoD (list)

Glasgow Applet/Servlet

Glasgow Applet II

Future Work More complex model of Context and Behaviour (perhaps an ontology) Explore a peer to peer architecture –Distributed query –Naming strategies –Caching issues Narrative structures –E.g. replacing the linear tour of Glasgow with a more dynamic structure similar to the short story engine