Top Banner
12 October 2011 Andrew Brown IMu Technology EMu Global Users’ Group 12 October 2011 IMu Technology
16

12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Mar 28, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

12 October 2011Andrew Brown

IMu Technology

EMu Global Users’ Group12 October 2011

IMu Technology

Page 2: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

What is IMu?

“KE's strategy and toolset for distributing data held within EMu via the Internet.”

Page 3: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Why “IMu”?

EMu is the electronic museum

IMu is putting this on the Internet

By Internet we mean any connected devices in the broadest sense:

•Conventional Web Pages for Desktops

•Web Publication for Mobile Devices

•Web Services for Many Different Apps

•Tools for Remote Data Capture

It’s more than “web pages for EMu”(but it definitely is part of EMu)

Page 4: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

So what actually is IMu?

A set of tools for accessing data within EMu

At its core are two components•Server•Application Programming Interfaces (APIs)

These provide the building blocks for the rest of what we call “IMu”

•Web services•Web publication•Others

Page 5: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Server

• Runs within EMu environment• Comes with 4.0.03 (many of you have it

already)• Independently upgradeable (mostly)

• Uses one or more EMu licences• Like texxmlserver

• “Understands” EMu• High-level Schema• Multimedia• Lookup lists etc.

Page 6: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Server (cont.)

• Easily extended• Plugin architecture via Perl modules

• Increased flexibility• General or client-specific plugins

• Increased efficiency• Operations performed on server (where

appropriate)

• Increased security• No generic query language statements• Only expose controlled sets of operations

Page 7: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

APIs

• Provide low-level programmer access to EMu• Available: PHP, Java, .Net, Perl• In Development: Objective C, Ruby, Python

• Client/Server• Effectively RPC interface• Uses JSON as communications protocol

• Stateless or “stateful”• “Anonymous” or authenticated access• Understands EMu environment

• High-level access to modules, lookup lists etc.

• Open Source

Page 8: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Basic IMu Architecture

Database Engine

IMu Server

texapi

JSON

EMu Host Machine

PHPClient machine

Java .Net Perl

Client application

Page 9: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

What can you do with IMu?

• Use the APIs directly

• Build client/server apps

• Build highly customised web pages

• PHP/JSP/ASP

• CMS plugins

• Build Web Services

• Use IMu web framework

Page 10: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Web Services

• No user-interface component• HTTP-based (web server)• Requests use HTTP GET/POST• Responses are XML, JSON or binary data (e.g.

multimedia)• Uses stateless API (typically PHP/Java)

Page 11: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Kinds of web services

Three kinds of services:

• Standards-based• OAI

• Generic

• Multimedia

• Communications Layer

• Bespoke - Application/Site-specific

• Manchester Museum iPhone app

• Bristol Museum touch screen kiosks

Page 12: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Web Services Architecture

Database Engine

IMu Server

texapi

JSON

EMu Host Machine

IMu PHP/Java API

IMu Web Services Framework (PHP/Java)Web Server Machine

Web ClientWeb service client

Web Server (Apache, IIS, Jetty etc.)

HTML/JSON/binaryHTTP

Page 13: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Web Publication

• Internet/Intranet interface to EMu collection• Web 2.0 based components (e.g. auto-

complete)• Theme-able client pages• MVC setup (XML -> XSLT -> HTML)• Collection List Management• Displays results from multiple modules• Customisable interface via XSLT

Page 14: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Web Publication Technology

• Internet/Intranet interface to EMu collection• Uses conventional web servers such as

Apache and IIS• Uses IMu’s PHP API to fetch data from EMu• Marks up data as XML• Processes XML using XSLT to generate HTML

(Theming)• Includes Javascript for Web 2.0 features

• Auto-completion• Page transition effects• My Collection updates

Page 15: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

Web Publication Architecture

Database Engine

IMu Server

texapi

JSON

EMu Host Machine

IMu PHP API

IMu Web Framework (PHP)

Web Server Machine

Web Browser Client PC/Mobile

Web Server (Apache, IIS etc.)

HTTP HTML/JSON

HTTP Theming Engine(XSLT Processor)

HTML

XML

Page 16: 12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.

The future

IMu is powerful framework for accessing information in EMuWe are just starting to exploit what it can do

•New themes for web framework• More dynamic (Javascript)• Mobile themes for tablets and phones

•Google site maps•Web components

• Pluggable components into other pages• Based on JQuery

•Web apps• Simple data capture interfaces

•More web services• Communication Layer• Mobile apps

In the longer term it will be driven by you